From 774e6e650b6235a9e34dfecab65c4322c1767714 Mon Sep 17 00:00:00 2001 From: 石广澎 <shiguangpeng@163.com> Date: 星期五, 01 十二月 2023 16:48:15 +0800 Subject: [PATCH] feat: 库存管理 查询条件梳理 --- admin-web/src/views/stock/accessStock/outboundDetails/index.vue | 328 ++++++++++++++++++++++++++---------------------------- 1 files changed, 157 insertions(+), 171 deletions(-) diff --git a/admin-web/src/views/stock/accessStock/outboundDetails/index.vue b/admin-web/src/views/stock/accessStock/outboundDetails/index.vue index 2936cd9..095d378 100644 --- a/admin-web/src/views/stock/accessStock/outboundDetails/index.vue +++ b/admin-web/src/views/stock/accessStock/outboundDetails/index.vue @@ -14,71 +14,126 @@ </el-col> </el-row> <!--娣诲姞/缂栬緫寮圭獥--> - <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/> + <!-- <detail/>--> + <component v-if="detailSetting.show" :setting="detailSetting" @close="detailSetting.show = false" + :is="activeDetail"></component> </el-card> </el-container> </el-container> - <my-import - :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 {getBaseUrl} from '@/utils/base'; +import myImport from '@/views/components/myImport'; +import * as DateFormatter from '@/utils/DateFormatter'; +import stockType from '@/utils/stockType'; +import detail from '../outbound/detail'; +import purchaseDetail from '@/views/stock/procure/purchaseOrder/detail.vue'; // 閲囪喘鍗曡鎯� +import transferDetail from '@/views/stock/transfer/transferissue/detail.vue'; // 璋冩嫧鍗曡鎯� +import inventoryDetail from '@/views/stock/inventorycount/inventorytask/detail.vue'; // 鐩樼偣鍗曡鎯� +import scrapDetail from '@/views/stock/scrap/itemScrapping/detail.vue'; // 鎶ュ簾鍗曡鎯� +import distributionDetail from '@/views/departmentitem/itemdis/distribution/detail.vue'; // 鍒嗗彂鍗曡鎯� +import itemscrDetail from '@/views/departmentitem/itemscr/scrapping/detail.vue'; // 閮ㄩ棬鎶ュ簾鍗曡鎯� +import returnNoteDetail from '@/views/departmentitem/itemret/returnNote/detail.vue'; // 閮ㄩ棬閫�杩樺崟璇︽儏 export default { - name: "index", - components: {MyButton, MyTableV2, edit, myImport}, + name: 'index', + components: { + MyButton, + MyTableV2, + detail, + myImport, + purchaseDetail, + transferDetail, + inventoryDetail, + scrapDetail, + distributionDetail, + itemscrDetail, + returnNoteDetail + }, data() { return { + activeDetail: '', // 鎼滅储妗� items: [ { type: 'text', - dataIndex: 'name', + dataIndex: 'businessFormCode', label: '鍗曞彿', placeholder: '璇疯緭鍏�', - defaultValue: '' + defaultValue: '', }, { type: 'select', - dataIndex: 'status', + dataIndex: 'flowType', label: '绫诲瀷', placeholder: '璇烽�夋嫨', - defaultValue: '1', - options: [ - { - label: '鍚敤', - value: '1' - }, - { - label: '绂佺敤', - value: '0' - } - ] + defaultValue: '', + options: [], + optionsConfig: { + label: 'dict_label', + value: 'dict_value', + url: SettingIplatform.apiBaseURL + '/permit/dict/data/type/FLOW_TYPE', + }, }, { - type: 'text', - dataIndex: 'name', + type: 'cascader', + dataIndex: 'agencyId', + label: '鏈烘瀯', + placeholder: '璇烽�夋嫨', + optionsConfig: {url: '/pc/fin/sys/tenant/select/tree_fin_tenant', props: null}, + cascader: [{key:'goodsTemplateId',queryKey: 'agencyId'}], + defaultValue: '', + options: [], + }, + { + type: 'select', + dataIndex: 'goodsTemplateId', label: '鐗╁搧鍚嶇О', - placeholder: '璇疯緭鍏�', - defaultValue: '' + placeholder: '璇烽�夋嫨', + defaultValue: '', + options: [], + cascader: [{key: 'baseGoodsModelsId', queryKey: 'goodsTemplatesId'}], + optionsConfig: { + label: 'goodsName', + value: 'id', + url: SettingIplatform.apiBaseURL + '/pc/base/goods/template/query/goodsTemplate', + }, + }, + { + type: 'select', + dataIndex: 'baseGoodsModelsId', + label: '瑙勬牸鍨嬪彿', + placeholder: '璇烽�夋嫨', + defaultValue: '', + options: [], + optionsConfig: { + label: 'modelName', + value: 'id', + url: SettingIplatform.apiBaseURL + '/pc/base/goods/models/query/goodsModel', + }, }, { type: 'text', - dataIndex: 'name', + dataIndex: 'createName', label: '鍒涘缓浜�', placeholder: '璇疯緭鍏�', - defaultValue: '' + defaultValue: '', + }, + { + type: 'date-picker', + dataIndex: 'startTime', + label: '鏃堕棿', + defaultValue: '', + }, + { + type: 'date-picker', + dataIndex: 'endTime', + label: '鑷�', + defaultValue: '', }, ], // 鏍戞暟鎹� @@ -88,25 +143,7 @@ tenantId: null, userName: null, userPhone: null, - 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 + status: 1, }, editSetting: { title: '', @@ -114,44 +151,64 @@ orgId: '', show: false, }, + detailSetting: { + title: '璇︽儏', + id: '', + show: false, + }, // 琛ㄦ牸鏁版嵁 table: { showIndex: true, // 鏄惁鏄剧ず搴忓彿 expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁 - url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃 + url: SettingIplatform.apiBaseURL + '/pc/l/wh/form/output/detail/list', // 璇锋眰鍦板潃 // 宸ュ叿鏉� tools: { - columnsCtrl: {// 鍒楁帶鍒舵寜閽� - show: false + columnsCtrl: { + // 鍒楁帶鍒舵寜閽� + show: false, }, - generalExport: {// 閫氱敤瀵煎嚭鎸夐挳 - show: false + generalExport: { + // 閫氱敤瀵煎嚭鎸夐挳 + show: false, }, // 鑷畾涔夊伐鍏锋潯鎸夐挳 - custom: [ - ] + custom: [], }, // 鍒椾俊鎭� 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: 'summary', align: 'left',}, + { + title: '绫诲瀷', field: 'thisType', align: 'left', + formatter: (row) => { + let result = stockType(row) + return {value: result}; + }, + }, + {title: '鍗曞彿', field: 'businessFormCode', align: 'center', width: 130}, + {title: '鐗╁搧鍚嶇О', field: 'goodsTemplateName', align: 'left', minWidth: 130}, + {title: '瑙勬牸鍨嬪彿', field: 'baseGoodsModelsName', align: 'left', minWidth: 130}, + {title: '鍑哄叆搴撴暟閲�', field: 'thisCount', align: 'center', width: 100}, + {title: '閲戦', field: 'totalPrice', align: 'center', width: 100}, + {title: '鎵�灞炴満鏋�', field: 'agencyName', align: 'left', minWidth: 130}, + {title: '鍒涘缓浜�', field: 'operatorName', align: 'left', width: 100}, + { + title: '鎿嶄綔鏃堕棿', + field: 'dealTime', + align: 'center', + width: 160, + formatter: (row) => { + return {value: DateFormatter.LongToDateTime(row.dealTime)}; + }, + }, ], // 鎿嶄綔淇℃伅 operation: { show: true, // 鏄剧ず鎿嶄綔鍒� - width: '150', // 鍒楀 + width: 100, // 鍒楀 attr: [ { title: '璇︽儏', events: (row) => { - this.showAudit(row); + this.showDetail(row); }, }, ], @@ -163,118 +220,47 @@ small: false, pageNum: 1, pageSize: 10, - total: 0 - } - } + total: 0, + }, + }, }, - } + components: { + '1': 'purchaseDetail', + '2': 'returnNoteDetail', + '3': 'transferDetail', + '4': 'inventoryDetail', + '5': 'itemscrDetail', + '6': 'transferDetail', + '7': 'inventoryDetail', + '8': 'scrapDetail', + '9': 'detail', + } + }; }, 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() - } - }, - // 宸︿晶鏍戝垵濮嬪寲 - 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() - } - }) - }) - }, - del(row) { - this.$modal - .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�') - .then(function () { - finsystenant.del({id: row.id}).then((res) => { - }); - }) - .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; - // } - }, - showAudit(row) { - this.editSetting.id = row.id; - this.editSetting.info = JSON.stringify(row); - 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) + showDetail(row) { + this.activeDetail = this.components[row.mixType] + this.detailSetting.id = row.id; + this.detailSetting.info = JSON.stringify(row); + this.detailSetting.title = '璇︽儏'; + this.detailSetting.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) - } - } -} + this.filterFrom = Object.assign(this.filterFrom, params); + this.search(1); + }, + }, +}; </script> -<style scoped> - -</style> +<style scoped></style> -- Gitblit v1.9.1