|
|
@@ -20,10 +20,11 @@
|
|
|
<el-button type="primary" icon="refresh" @click="onReset" class="bt">切换显示方式</el-button>
|
|
|
<el-button type="primary" icon="plus" @click="onAdd" class="bt">新增</el-button>
|
|
|
<el-button type="primary" icon="delete" @click="onDel" class="bt">删除</el-button>
|
|
|
+ <el-button type="primary" class="bt" icon="download" @click="jcToExcel" >导出到Excel</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
- <el-table ref="multipleTable" style="width: 100%" border tooltip-effect="dark" :data="tableData"
|
|
|
- row-key="ID" :show-overflow-tooltip="true" highlight-current-row
|
|
|
+ <el-table ref="multipleTable" style="width: 100%;height: 74vh" border tooltip-effect="dark" :data="tableData"
|
|
|
+ row-key="ID" :show-overflow-tooltip="true" highlight-current-row id="Exceltable"
|
|
|
:row-style="{ height: '20px' }" :cell-style="{ padding: '0px' }"
|
|
|
:header-row-style="{ height: '20px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
@selection-change="handleSelectionChange" @row-dblclick="handleDoubleClick"
|
|
|
@@ -394,6 +395,11 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
+import $script from 'scriptjs'
|
|
|
+import $ from 'jquery';
|
|
|
+import * as XLSX from 'xlsx'
|
|
|
+import FileSaver from 'file-saver'
|
|
|
+import LuckyExcel from 'luckyexcel';
|
|
|
import {
|
|
|
getRewardDetail,
|
|
|
getRewardList,
|
|
|
@@ -450,17 +456,31 @@
|
|
|
const displayMod = ref('')
|
|
|
// 侧边栏
|
|
|
const RewardTab = async () => {
|
|
|
- const getRewardTabs = await getRewardTab()
|
|
|
- if (getRewardTabs.code === 0) {
|
|
|
- treeData.value = getRewardTabs.data.map((item) => ({
|
|
|
- label: `${item.date.replace(/-/g, '.')}【单据数: ${item.counts}张】`,
|
|
|
- params: {
|
|
|
- date: item.date.replace(/\./g, '-'),
|
|
|
- }
|
|
|
- }))
|
|
|
- displayMod.value = 'date'
|
|
|
- }
|
|
|
- }
|
|
|
+ try {
|
|
|
+ const getRewardTabs = await getRewardTab();
|
|
|
+ if (getRewardTabs.code === 0) {
|
|
|
+ // 格式化数据为树形结构
|
|
|
+ const formattedTreeData = [];
|
|
|
+ for (const month in getRewardTabs.data) {
|
|
|
+ if (getRewardTabs.data.hasOwnProperty(month)) {
|
|
|
+ formattedTreeData.push({
|
|
|
+ label: month,
|
|
|
+ children: getRewardTabs.data[month].map(item => ({
|
|
|
+ label: item.date.replace(/\./g, '-'),
|
|
|
+ counts: item.counts,
|
|
|
+ })),
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ treeData.value = formattedTreeData;
|
|
|
+ } else {
|
|
|
+ ElMessage.error('获取奖励标签数据失败: ' + getRewardTabs.msg);
|
|
|
+ }
|
|
|
+ } catch (error) {
|
|
|
+ console.error('加载奖励标签数据时发生错误:', error);
|
|
|
+ ElMessage.error('加载数据失败,请稍后再试。');
|
|
|
+ }
|
|
|
+ };
|
|
|
RewardTab()
|
|
|
|
|
|
const RewardTabByGd = async () => {
|
|
|
@@ -478,9 +498,9 @@
|
|
|
|
|
|
const handleNodeClick = (node, check) => {
|
|
|
// 存放当前节点的nodeId
|
|
|
- // console.log(node, check)
|
|
|
- if (node.params) {
|
|
|
- params.date = node.params.date
|
|
|
+ console.log(node.label)
|
|
|
+ if (node.label) {
|
|
|
+ params.date = node.label
|
|
|
getTableData()
|
|
|
}
|
|
|
}
|
|
|
@@ -1071,6 +1091,22 @@
|
|
|
// }
|
|
|
// })
|
|
|
}
|
|
|
+
|
|
|
+ //导出到Excel按钮
|
|
|
+ const jcToExcel = ()=>{
|
|
|
+ const el = document.getElementById('Exceltable');
|
|
|
+ // 文件名
|
|
|
+ const filename = '工序大废品.xlsx';
|
|
|
+ const wb = XLSX.utils.table_to_book(el, { raw: true });
|
|
|
+ const wbout = XLSX.write(wb, { bookType: 'xlsx', bookSST: true, type: 'array' });
|
|
|
+ try {
|
|
|
+ FileSaver.saveAs(new Blob([wbout], { type: 'application/octet-stream' }), filename);
|
|
|
+ } catch (e) {
|
|
|
+ console.log(e);
|
|
|
+ }
|
|
|
+ return wbout;
|
|
|
+}
|
|
|
+
|
|
|
//日报表上传
|
|
|
const SubmitDailyProduction = async () => {
|
|
|
|