From 62b6a7fac3f2acde70b578431147c4a01f19c182 Mon Sep 17 00:00:00 2001 From: 黎星凯 <13949086503@163.com> Date: 星期一, 15 四月 2024 09:07:05 +0800 Subject: [PATCH] bug修改 --- admin-web/src/views/stock/inventorycount/inventorytask/index.vue | 415 ++++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 266 insertions(+), 149 deletions(-) diff --git a/admin-web/src/views/stock/inventorycount/inventorytask/index.vue b/admin-web/src/views/stock/inventorycount/inventorytask/index.vue index 54f2d7d..95a42e1 100644 --- a/admin-web/src/views/stock/inventorycount/inventorytask/index.vue +++ b/admin-web/src/views/stock/inventorycount/inventorytask/index.vue @@ -15,63 +15,95 @@ </el-row> <!--娣诲姞/缂栬緫寮圭獥--> <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/> + <inventory + v-if="inventorySetting.show" + :setting="inventorySetting" + @close="inventorySetting.show = false" + @search="search" + /> + <detail v-if="inventoryDetail.show" :setting="inventoryDetail" @close="inventoryDetail.show = false" + @search="search"/> </el-card> </el-container> </el-container> <my-import - :import-setting="importSetting" - :dialog-show="importSetting.dialogShow" - :dialog-title="importSetting.dialogTitle" + :import-setting="importSetting" + :dialog-show="importSetting.dialogShow" + :dialog-title="importSetting.dialogTitle" /> </div> </template> <script> -import MyTableV2 from "@/components/myTable/myTableV2"; -import MyButton from "@/components/myButton/myButton"; +import MyTableV2 from '@/components/myTable/myTableV2'; +import MyButton from '@/components/myButton/myButton'; import SettingIplatform from '@/utils/settingIplatform'; -import edit from './edit' -import * as finsystenant from '@/api/baseSetting/finsystenant' -import myImport from '@/views/components/myImport' +import edit from './edit'; +import inventory from './inventory'; +import detail from './detail'; +import myImport from '@/views/components/myImport'; import {getBaseUrl} from '@/utils/base'; +import {inventoryDel, inventoryListApi,isAddInventory} from '@/api/stock/inventory'; +import * as DateFormatter from '@/utils/DateFormatter'; +import {mapGetters} from 'vuex'; +import listPage from '@/views/mixins/listPage'; export default { - name: "index", - components: {MyButton, MyTableV2, edit, myImport}, + name: 'index', + mixins: [listPage], + components: {MyButton, MyTableV2, edit, myImport, inventory, detail}, data() { return { // 鎼滅储妗� items: [ { type: 'text', - dataIndex: 'name', + dataIndex: 'businessFormCode', label: '鐩樼偣鍗曞彿', placeholder: '璇疯緭鍏�', - defaultValue: '' + defaultValue: '', }, - // { - // type: 'select', - // dataIndex: 'status', - // label: '绫诲瀷', - // placeholder: '璇烽�夋嫨', - // defaultValue: '1', - // options: [ - // { - // label: '鍚敤', - // value: '1' - // }, - // { - // label: '绂佺敤', - // value: '0' - // } - // ] - // }, { type: 'text', - dataIndex: 'name', + dataIndex: 'businessFormName', label: '浠诲姟鍚嶇О', placeholder: '璇疯緭鍏�', - defaultValue: '' + defaultValue: '', + }, + { + type: 'cascader', + dataIndex: 'agencyId', + label: '鏈烘瀯', + placeholder: '璇烽�夋嫨', + optionsConfig: {url: '/pc/fin/sys/tenant/select/tree_fin_tenant', props: null}, + cascader: [{key:'warehouseId',queryKey: 'agencyId'}], + defaultValue: '', + options: [], + }, + { + type: 'select', + dataIndex: 'warehouseId', + label: '浠撳簱', + placeholder: '璇烽�夋嫨', + defaultValue: '', + options: [], + optionsConfig: { + label: 'warehouseName', + value: 'id', + url: SettingIplatform.apiBaseURL + '/pc/base/warehouse/select/tenant_warehouse' + }, + }, + { + type: 'date-picker', + dataIndex: 'startTime', + label: '鐩樼偣鏃堕棿', + defaultValue: '', + }, + { + type: 'date-picker', + dataIndex: 'endTime', + label: '鑷�', + defaultValue: '', }, ], // 鏍戞暟鎹� @@ -81,27 +113,39 @@ tenantId: null, userName: null, userPhone: null, - status: 1 + status: 1, }, // 瀵煎叆 importSetting: { - dialogTitle: '瀵煎叆', - dialogShow: false, - fileSettings: { - data: {}, - uploadUrl: getBaseUrl()+"/pc/fin/sys/tenant/import", // 涓婁紶鍦板潃 - accept: '.xls', // 鏍煎紡 - type: 'text', // 鍥炴樉褰㈠紡 - loading: false // 瀵煎叆鏁堟灉 - }, - /* 妯℃澘涓嬭浇 */ - templateSettings: { - templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О - templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate' // 涓嬭浇鍦板潃 - }, - onSuccess: null + dialogTitle: '瀵煎叆', + dialogShow: false, + fileSettings: { + data: {}, + uploadUrl: getBaseUrl() + '/pc/fin/sys/tenant/import', // 涓婁紶鍦板潃 + accept: '.xls', // 鏍煎紡 + type: 'text', // 鍥炴樉褰㈠紡 + loading: false, // 瀵煎叆鏁堟灉 + }, + /* 妯℃澘涓嬭浇 */ + templateSettings: { + templateName: '瀵煎叆妯℃澘.xls', // 鍚嶇О + templateUrl: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/getImportTemplate', // 涓嬭浇鍦板潃 + }, + onSuccess: null, }, editSetting: { + title: '', + id: '', + orgId: '', + show: false, + }, + inventorySetting: { + title: '', + id: '', + orgId: '', + show: false, + }, + inventoryDetail: { title: '', id: '', orgId: '', @@ -111,39 +155,140 @@ table: { showIndex: true, // 鏄惁鏄剧ず搴忓彿 expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁 - url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃 + url: SettingIplatform.apiBaseURL + inventoryListApi(), // 璇锋眰鍦板潃 // 宸ュ叿鏉� tools: { - columnsCtrl: {// 鍒楁帶鍒舵寜閽� - show: false + columnsCtrl: { + // 鍒楁帶鍒舵寜閽� + show: false, }, - generalExport: {// 閫氱敤瀵煎嚭鎸夐挳 - show: false + generalExport: { + // 閫氱敤瀵煎嚭鎸夐挳 + show: false, }, // 鑷畾涔夊伐鍏锋潯鎸夐挳 custom: [ - ] + { + name: '鏂板', + click: () => { + this.showAdd(); + }, + }, + ], }, // 鍒椾俊鎭� columns: [ - {title: '鐩樼偣鍗曞彿', field: 'name', align: 'left',}, - {title: '浠诲姟鍚嶇О', field: 'code', align: 'center'}, - {title: '鐩樼偣浠撳簱', field: 'lv', align: 'center', }, - {title: '鐩樼偣浜�', field: 'lv', align: 'center', }, - {title: '鐩戠洏浜�', field: 'summary', align: 'left',}, - {title: '鐩樼偣鏃堕棿', field: 'summary', align: 'left',}, - {title: '鍒涘缓鏃堕棿', field: 'summary', align: 'left',}, - {title: '鐘舵��', field: 'summary', align: 'left',}, - ], + {title: '鐩樼偣鍗曞彿', field: 'businessFormCode', align: 'center', width: 130}, + {title: '浠诲姟鍚嶇О', field: 'businessFormName', align: 'left', minWidth: 140}, + {title: '鐩樼偣浠撳簱', field: 'warehouseName', align: 'left', minWidth: 130}, + {title: '鐩樼偣浜�', field: 'operatorName', align: 'center', width: 120}, + {title: '鐩戠洏浜�', field: 'operatorName2', align: 'center', width: 120}, + { + title: '鐩樼偣鏃堕棿', + field: 'inventoryDate', + align: 'center', + width: 160, + formatter: (row) => { + return {value: row.inventoryDate ? DateFormatter.LongToDateTime(row.inventoryDate) : '-'}; + }, + }, + { + title: '鍒涘缓鏃堕棿', + field: 'createTime', + align: 'center', + width: 160, + formatter: (row) => { + return {value: DateFormatter.LongToDateTime(row.createTime)}; + }, + }, + { + title: '鐘舵��', + field: 'states', + align: 'center', + width: 90, + type: 'primary', + formatter: (row) => { + return { + value: row.states == 0 ? '鏈紑濮�' : row.states == 1 ? '杩涜涓�' : '宸茬洏鐐�', + type: row.states == 0 ? 'danger' : row.states == 1 ? 'success' : 'primary', + }; + }, + }, + ], // 鎿嶄綔淇℃伅 operation: { show: true, // 鏄剧ず鎿嶄綔鍒� - width: '150', // 鍒楀 + align: 'left', + width: '220', // 鍒楀 attr: [ { - title: '璇︽儏', + title: '缂栬緫', + hidden: (row) => { + if (row.states != 0) { + return true; + } + }, events: (row) => { this.showAudit(row); + }, + }, + { + title: '鍒犻櫎', + hidden: (row) => { + if (row.states != 0) { + return true; + } + }, + events: (row) => { + this.del(row); + }, + }, + { + title: '鐩樼偣', + type: 'success', + hidden: (row) => { + if (row.states != 0) { + return true; + } + }, + events: (row) => { + this.showInventory(row); + }, + }, + { + title: '缁х画鐩樼偣', + type: 'success', + hidden: (row) => { + if (row.states != 1) { + return true; + } + }, + events: (row) => { + this.showInventory(row); + }, + }, + { + title: '鐩樼偣璇︽儏', + type: 'info', + hidden: (row) => { + if (row.states != 2) { + return true; + } + }, + events: (row) => { + this.showInventoryDetail(row); + }, + }, + { + title: '鐢熸垚鐩樼偣琛�', + type: 'primary', + hidden: (row) => { + if (row.states != 2) { + return true; + } + }, + events: (row) => { + this.handleExport('inventoryExport', `鐩樼偣琛�-${row.businessFormCode}`, {id: row.id}); }, }, ], @@ -155,79 +300,60 @@ small: false, pageNum: 1, pageSize: 10, - total: 0 - } - } + total: 0, + }, + }, }, - } + }; + }, + computed: { + ...mapGetters(['userInfo']), }, created() { - // 鑾峰彇鏈烘瀯鏍� - this.initTreeData() }, methods: { //瀵煎叆 importOrg() { - this.importSetting.dialogShow = true - this.importSetting.onSuccess = (response, callBack) => { - if (response.code===1){ - this.$message.success(response.msg) - this.search(1) - }else{ - this.$message.warning(response.msg) - } - callBack() + this.importSetting.dialogShow = true; + this.importSetting.onSuccess = (response, callBack) => { + if (response.code === 1) { + this.$message.success(response.msg); + this.search(1); + } else { + this.$message.warning(response.msg); } - }, - // 宸︿晶鏍戝垵濮嬪寲 - initTreeData() { - finsystenant.getTree().then(res => { - const content = res || [] - this.treeDataList.splice(0, this.treeDataList.length) - this.treeDataList = content - if (content.length > 0) { - this.importSetting.fileSettings.data = {pid: content[0].id} - } - }) - }, - updState(row) { - let vm = this - let text = row.status == 0 ? "鍚敤" : "绂佺敤"; - vm.$modal.confirm('纭瑕�' + text + '"' + row.name + '"鍚楋紵').then(function () { - let params = Object.assign({}, row) - params.status = row.status == 1 ? 0 : 1 - finsystenant.edit(params).then(res => { - if (res) { - row.status = row.status === 1 ? 0 : 1 - vm.$modal.msgSuccess(text + "鎴愬姛"); - vm.search() - } - }) - }) + callBack(); + }; }, del(row) { this.$modal - .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�') - .then(function () { - finsystenant.del({id: row.id}).then((res) => { + .confirm('鏄惁纭鍒犻櫎鍗曞彿涓猴細' + row.businessFormCode + ' 鐨勬暟鎹悧锛�') + .then(() => { + inventoryDel({id: row.id}).then((res) => { + this.$message.success('鍒犻櫎鎴愬姛锛�'); + this.search(); + }); + }) + .catch(() => { }); - }) - .then((res) => { - this.$message.success('鍒犻櫎鎴愬姛锛�'); - this.search() - }) - .catch(() => { - }); }, showAdd() { - // if (!this.editSetting.orgId) { - // this.$message.warning('璇峰厛閫夋嫨宸︿晶鏈烘瀯') - // } else { - this.editSetting.id = null; - this.editSetting.info = null; - this.editSetting.title = '鏂板'; - this.editSetting.show = true; - // } + // 鍏堟煡璇㈡槸鍚﹁兘澧炲姞鏂扮殑鐩樼偣浠诲姟 + // 缂栬緫鎺ュ彛 + isAddInventory().then((res) => { + if(res == 0){ + this.$message.warning('褰撳墠鏈夋湭瀹屾垚鐨勭洏鐐逛换鍔★紒'); + }else if(res == -1){ + this.$message.warning('褰撳墠浠撳簱鏃犵墿鍝侊紒'); + }else{ + this.editSetting.id = null; + this.editSetting.info = null; + this.editSetting.title = '鏂板'; + this.editSetting.show = true; + } + }).catch(()=>{ + //this.loading = false + }); }, showAudit(row) { this.editSetting.id = row.id; @@ -235,38 +361,29 @@ this.editSetting.title = '缂栬緫'; this.editSetting.show = true; }, - nodeClick(param) { - param = param || {} - this.p = Object.assign({}, { - id: param.id, - name: param.name - }) - if (this.p.id != undefined && this.p.id != null) { - this.filterFrom.tenantId = this.p.id - this.editSetting.orgId = this.p.id - } else { - this.filterFrom.tenantId = null - this.editSetting.orgId = null - } - this.importSetting.fileSettings.data = {pid: param.id} - this.search(1) + // 鐩樼偣 + showInventory(row) { + this.inventorySetting.id = row.id; + this.inventorySetting.info = JSON.stringify(row); + this.inventorySetting.title = '鐩樼偣浠诲姟'; + this.inventorySetting.show = true; + }, + showInventoryDetail(row) { + this.inventoryDetail.id = row.id; + this.inventoryDetail.info = JSON.stringify(row); + this.inventoryDetail.title = '鐩樼偣璇︽儏'; + this.inventoryDetail.show = true; }, // 鏌ヨtable鍒楄〃 search(pageNum) { if (pageNum != undefined) { - this.$refs.myTable.search(pageNum) + this.$refs.myTable.search({pageNum}); } else { - this.$refs.myTable.search() + this.$refs.myTable.search(); } }, - fifterForm(params) { - this.filterFrom = Object.assign(this.filterFrom, params) - this.search(1) - } - } -} + }, +}; </script> -<style scoped> - -</style> +<style scoped></style> -- Gitblit v1.9.1