From b2446e63f853736ba29a5576931652b4bf0119c5 Mon Sep 17 00:00:00 2001 From: "SERVERM-0FVHDNN\\Administrator" <942005050@qq.com> Date: Thu, 30 Mar 2023 10:39:29 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E5=BA=93=E4=BD=8D=E7=BB=84=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WarehouseManage/LocationGroup.vue | 68 ++++++++++--------- 1 file changed, 36 insertions(+), 32 deletions(-) diff --git a/fe/PC/src/views/basicData/WarehouseManage/LocationGroup.vue b/fe/PC/src/views/basicData/WarehouseManage/LocationGroup.vue index e042969da..a91453697 100644 --- a/fe/PC/src/views/basicData/WarehouseManage/LocationGroup.vue +++ b/fe/PC/src/views/basicData/WarehouseManage/LocationGroup.vue @@ -128,7 +128,7 @@ export default { //新增 CreateFormData: { remark: null, - warehouseCode: null, + warehouseCode: localStorage.getItem('warehouseCode'), name: null, description: null, areaCode: null, @@ -174,7 +174,7 @@ export default { //编辑 editFormData: { remark: null, - warehouseCode: null, + warehouseCode: localStorage.getItem('warehouseCode'), name: null, description: null, areaCode: null, @@ -213,21 +213,23 @@ export default { { type: "input", label: "拣料优先级", prop: "pickPriority", colSpan: 12 }, { type: "input", label: "描述", prop: "description", colSpan: 12 }, { type: "input", label: "溢流库位组", prop: "overflowLocationGroup", colSpan: 12 }, - { type: "select", label: "是否混物品", prop: "enableMixItem", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否混批次", prop: "enableMixLot", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否混状态", prop: "enableMixStatus", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否负库存", prop: "enableNegative", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否保留零库存", prop: "enableKeepZero", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否盘点", prop: "enableOpportunityCount", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否领料", prop: "enablePick", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否过量领料", prop: "enableOverPick", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否整包存储", prop: "enableWholeStore", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否散件存储", prop: "enableBreakStore", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否发出", prop: "enableShip", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否接收", prop: "enableReceive", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否退货给供应商", prop: "enableReturnToSupplier", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否接收客户退货", prop: "enableReturnFromCustomer", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否拆箱", prop: "enableSplitBox", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以混物品", prop: "enableMixItem", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以混批次", prop: "enableMixLot", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以混状态", prop: "enableMixStatus", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以负库存", prop: "enableNegative", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以保留零库存", prop: "enableKeepZero", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以盘点", prop: "enableOpportunityCount", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以领料", prop: "enablePick", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以过量领料", prop: "enableOverPick", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以整包存储", prop: "enableWholeStore", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以散件存储", prop: "enableBreakStore", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以发出", prop: "enableShip", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以接收", prop: "enableReceive", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以退货给供应商", prop: "enableReturnToSupplier", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以接收客户退货", prop: "enableReturnFromCustomer", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "是否可以拆箱", prop: "enableSplitBox", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "是否可以拆托", prop: "enableSplitPallet", options: "whetherOrNot", colSpan: 12 }, + { type: "input", label: "仓库", prop: 'warehouseCode', disabled:"true", colSpan: 12 }, // { type: "objectSelect", label: "是否混物品", prop: "locSwitch", showProp: "enableMixItem", options: "whetherOrNot", colSpan: 12 }, // { type: "objectSelect", label: "是否混批次", prop: "locSwitch", showProp: "enableMixLot", options: "whetherOrNot", colSpan: 12 }, // { type: "objectSelect", label: "是否混状态", prop: "locSwitch", showProp: "enableMixStatus", options: "whetherOrNot", colSpan: 12 }, @@ -255,21 +257,23 @@ export default { { type: "input", label: "拣料优先级", prop: "pickPriority", colSpan: 12 }, { type: "input", label: "描述", prop: "description", colSpan: 12 }, { type: "input", label: "溢流库位组", prop: "overflowLocationGroup", colSpan: 12 }, - { type: "select", label: "是否混物品", prop: "enableMixItem", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否混批次", prop: "enableMixLot", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否混状态", prop: "enableMixStatus", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否负库存", prop: "enableNegative", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否保留零库存", prop: "enableKeepZero", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否盘点", prop: "enableOpportunityCount", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否领料", prop: "enablePick", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否过量领料", prop: "enableOverPick", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否整包存储", prop: "enableWholeStore", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否散件存储", prop: "enableBreakStore", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否发出", prop: "enableShip", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否接收", prop: "enableReceive", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否退货给供应商", prop: "enableReturnToSupplier", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否接收客户退货", prop: "enableReturnFromCustomer", options: "whetherOrNot", colSpan: 12 }, - { type: "select", label: "是否拆箱", prop: "enableSplitBox", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以混物品", prop: "enableMixItem", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以混批次", prop: "enableMixLot", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以混状态", prop: "enableMixStatus", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以负库存", prop: "enableNegative", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以保留零库存", prop: "enableKeepZero", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以盘点", prop: "enableOpportunityCount", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以领料", prop: "enablePick", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以过量领料", prop: "enableOverPick", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以整包存储", prop: "enableWholeStore", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以散件存储", prop: "enableBreakStore", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以发出", prop: "enableShip", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以接收", prop: "enableReceive", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以退货给供应商", prop: "enableReturnToSupplier", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "可以接收客户退货", prop: "enableReturnFromCustomer", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "是否可以拆箱", prop: "enableSplitBox", options: "whetherOrNot", colSpan: 12 }, + { type: "select", label: "是否可以拆托", prop: "enableSplitPallet", options: "whetherOrNot", colSpan: 12 }, + { type: "input", label: "仓库", prop: 'warehouseCode', disabled:"true", colSpan: 12 }, { type: "input", label: "备注", prop: 'remark', colSpan: 12 }, ], editRules: { From 28161d139479d1f88fbdc5fa76ce7b543b926133 Mon Sep 17 00:00:00 2001 From: "SERVERM-0FVHDNN\\Administrator" <942005050@qq.com> Date: Thu, 30 Mar 2023 10:47:32 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E4=B8=AD=E5=BF=83?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E7=99=BB=E5=BD=95=E4=BA=BA=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- fe/PC/src/api/wms-auth.js | 4 ++-- fe/PC/src/views/profileuser/index.vue | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/fe/PC/src/api/wms-auth.js b/fe/PC/src/api/wms-auth.js index fb00d9258..e93410557 100644 --- a/fe/PC/src/api/wms-auth.js +++ b/fe/PC/src/api/wms-auth.js @@ -179,9 +179,9 @@ export function SetUserWorkgroupPermissions(data,id) { }) } //加载用户登录信息 -export function loadLoginUserInfo() { +export function loadLoginUserInfo(id) { return request({ - url: baseURL + '/identity/my-profile', + url: baseURL + '/identity/users/' + id, method: 'get' }) } diff --git a/fe/PC/src/views/profileuser/index.vue b/fe/PC/src/views/profileuser/index.vue index 7217453c7..2a4893e06 100644 --- a/fe/PC/src/views/profileuser/index.vue +++ b/fe/PC/src/views/profileuser/index.vue @@ -96,7 +96,7 @@ export default { }, methods: { getUser() { - loadLoginUserInfo().then((response) => { + loadLoginUserInfo(this.$store.getters.name.id).then((response) => { this.user = response; }); }, From f82e1dddb00b75ad6a766e0163c3afa77395b6c0 Mon Sep 17 00:00:00 2001 From: "SERVERM-0FVHDNN\\Administrator" <942005050@qq.com> Date: Thu, 30 Mar 2023 10:47:57 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E5=AF=BC=E5=85=A5=E4=BF=AE=E6=94=B9=20?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E6=8A=A5=E5=91=8A=E5=BE=85=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- fe/PC/src/api/wms-api.js | 1 + fe/PC/src/mixins/mixins.js | 327 +++++++++++++++++++------------------ 2 files changed, 167 insertions(+), 161 deletions(-) diff --git a/fe/PC/src/api/wms-api.js b/fe/PC/src/api/wms-api.js index 53e23dbc3..27ad86c46 100644 --- a/fe/PC/src/api/wms-api.js +++ b/fe/PC/src/api/wms-api.js @@ -125,6 +125,7 @@ export function postImport(data, url,isSpecial) { headers: { 'Content-Type': 'multipart/form-data;' }, + responseType: 'blob', data }) } diff --git a/fe/PC/src/mixins/mixins.js b/fe/PC/src/mixins/mixins.js index 88447e802..9b32dcd01 100644 --- a/fe/PC/src/mixins/mixins.js +++ b/fe/PC/src/mixins/mixins.js @@ -185,45 +185,6 @@ export const mixins = { }) }) }, - //导出存储 - // blob(res) { - // // const name = decodeURIComponent (res.disposition.slice(res.disposition.indexOf('=') + 1)) - // const name = filters.Roles(this.$route.name) - // // delete res.disposition - // let blob = new Blob([res], { - // type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', - // }) - // const href = URL.createObjectURL(blob) //创建新的URL表示指定的blob对象 - // const a = document.createElement('a') //创建a标签 - // a.style.display = 'none' - // a.href = href // 指定下载链接 - // a.download = name //指定下载文件名 - // a.click() //触发下载 - // URL.revokeObjectURL(a.href) //释放URL对象 - // }, - downloadFile(data, fileName) { - var byteString = atob(data) - var arrayBuffer = new ArrayBuffer(byteString.length) // 创建缓冲数组 - var intArray = new Uint8Array(arrayBuffer) // 创建视图 - for (var i = 0; i < byteString.length; i++) { - intArray[i] = byteString.charCodeAt(i) - } - const blob = new Blob([intArray], { type: '' }) - // 获取heads中的filename文件名 - const downloadElement = document.createElement('a') - // 创建下载的链接 - const href = window.URL.createObjectURL(blob) - downloadElement.href = href - // 下载后文件名 - downloadElement.download = fileName - document.body.appendChild(downloadElement) - // 点击下载 - downloadElement.click() - // 下载完成移除元素 - document.body.removeChild(downloadElement) - // 释放掉blob对象 - window.URL.revokeObjectURL(href) - }, //导出存储-新 blob(res, fileName) { let blob = new Blob([res], { @@ -251,102 +212,58 @@ export const mixins = { let { formFile } = val[1] + + // 特殊导入接口判断 + let _uploadURL = that.importUploadURL || that.URL + let _isSpecial = that.importUploadURL ? true : false + let fd = new FormData(); - let fileName = '' - let rd = new FileReader(); // 创建文件读取对象 - // formFile.forEach((item) => { - // fd.append("formFile", item) - // fd.append("method", val[1].method) - // fd.append("isAllowPartImport", val[1].isAllowPartImport=='0'?true:false) - // }) - // 目前只有单文件上传,写法只适用于单文件上传 - fileName = formFile[0].name - rd.readAsDataURL(formFile[0]) - rd.onloadend = function(){ - var arrayBuffer = rd.result - let params = { - fileName: fileName, - bytes: arrayBuffer.substring(arrayBuffer.indexOf(',') + 1, arrayBuffer.length) - } - // 特殊导入接口判断 - let _uploadURL = that.importUploadURL || that.URL - let _isSpecial = that.importUploadURL ? true : false - // fileStorageCreate(params).then( createRes => { - // let importParams = { - // fileType: 1, //文件类型 固定1 - // method: val[1].method, //导入方式 0 更新 1 追加 2 覆盖 - // isAllowPartImport: val[1].isAllowPartImport=='0'?true:false, //是否部分错误导入 - // route: _isSpecial ? _uploadURL : _uploadURL + '/import', //路由 - // function: menuName, //菜单名 - // blobName: menuName, - // file: params.bytes - // } - let importParams = { - fileType: null, //文件类型 固定1 - method: 'Append', //导入方式 0 更新 1 追加 2 覆盖 - isAllowPartImport: null, //是否部分错误导入 - route: null, //路由 - function: null, //菜单名 - blobName: null, - file: params.bytes - } - postImport(importParams, _uploadURL, _isSpecial).then(res => { - // 判断是否有错误记录 - if (res.errorNum > 0) { - that.$alert('发现导入错误数据共:' + res.errorNum + '条', '错误报告', { - confirmButtonText: '下载错误报告', - callback: action => { - if (action == 'confirm') { - fileStorage({blobName: res.fileCode}).then( fileStorageRes => { - that.downloadFile(fileStorageRes.bytes, fileStorageRes.fileName) - }).catch( err => { - console.log(err) - }) - } - } - }) - } else if (res.exceptionMessage != null) { - that.$alert('错误信息:' + res.exceptionMessage, '错误', { - confirmButtonText: '确定', - callback: action => { - } - }) - // that.$alert('导入模板错误,请导入正确的模板文件!', '模板错误', { - // confirmButtonText: '确定', - // callback: action => { - // } - // }) - } else { - // that.$successMsg('全部导入成功') - that.$alert('全部导入成功,是否下载导入报告', '导入报告', { - confirmButtonText: '下载导入报告', - cancelButtonText: '取消', - callback: action => { - if (action == 'confirm') { - fileStorage({blobName: res.fileCode}).then( fileStorageRes => { - that.downloadFile(fileStorageRes.bytes, fileStorageRes.fileName) - }).catch( err => { - console.log(err) - }) - } - } - }) - + fd.append("fileType", 1) //文件类型 固定1 + fd.append("method", val[1].method) //导入方式 0 更新 1 追加 2 覆盖 + fd.append("isAllowPartImport", val[1].isAllowPartImport=='0'?true:false) //是否部分错误导入 + fd.append("route", _isSpecial ? _uploadURL : _uploadURL + '/import') //路由 + fd.append("function", menuName) //菜单名 + fd.append("blobName", menuName) + fd.append("file", formFile[0]) + + postImport(fd, _uploadURL, _isSpecial).then(res => { + // 判断是否有错误记录 + if (res.errorNum > 0) { + that.$alert('发现导入错误数据共:' + res.errorNum + '条', '错误报告', { + confirmButtonText: '下载错误报告', + callback: action => { + if (action == 'confirm') { + that.blob(res.bytes, menuName + '错误报告') + } } - that.Loading.importLoading = false - that.FormRemove(val[0]); - that.displayDialog.importDialog = false; - that.paging() - }).catch(err => { - that.Loading.importLoading = false - that.FormRemove(val[0]); - that.displayDialog.importDialog = false; - that.paging() }) - // }).catch(err => { - // console.log(err) - // }) - } + } else if (res.exceptionMessage != null) { + that.$alert('错误信息:' + res.exceptionMessage, '错误', { + confirmButtonText: '确定', + callback: action => { + } + }) + } else { + that.$alert('全部导入成功,是否下载导入报告', '导入报告', { + confirmButtonText: '下载导入报告', + cancelButtonText: '取消', + callback: action => { + if (action == 'confirm') { + that.blob(res, menuName + '导入报告') + } + } + }) + } + that.Loading.importLoading = false + that.FormRemove(val[0]); + that.displayDialog.importDialog = false; + that.paging() + }).catch(err => { + that.Loading.importLoading = false + that.FormRemove(val[0]); + that.displayDialog.importDialog = false; + that.paging() + }) } else { that.$errorMsg('请按照提示继续操作') that.displayDialog.importDialog = false; @@ -355,45 +272,133 @@ export const mixins = { }); } }, - //导入文件 应该暂无使用 - // importClick(val) { + + // downloadFile(data, fileName) { + // var byteString = atob(data) + // var arrayBuffer = new ArrayBuffer(byteString.length) // 创建缓冲数组 + // var intArray = new Uint8Array(arrayBuffer) // 创建视图 + // for (var i = 0; i < byteString.length; i++) { + // intArray[i] = byteString.charCodeAt(i) + // } + // const blob = new Blob([intArray], { type: '' }) + // // 获取heads中的filename文件名 + // const downloadElement = document.createElement('a') + // // 创建下载的链接 + // const href = window.URL.createObjectURL(blob) + // downloadElement.href = href + // // 下载后文件名 + // downloadElement.download = fileName + // document.body.appendChild(downloadElement) + // // 点击下载 + // downloadElement.click() + // // 下载完成移除元素 + // document.body.removeChild(downloadElement) + // // 释放掉blob对象 + // window.URL.revokeObjectURL(href) + // }, + //导入文件-旧 + // postImportMergeClick(val) { + // let that = this + // let menuName = this.$route.meta.title // if (val[0][0] == 0) { - // this.FormRemove(val[0]); - // this.displayDialog.importDialog = false; + // that.FormRemove(val[0]); + // that.displayDialog.importDialog = false; // } else { // val[0][1].validate((valid) => { // if (valid) { - // this.Loading.importLoading = true; + // that.Loading.importLoading = true; // let { // formFile // } = val[1] // let fd = new FormData(); - // formFile.forEach((item) => { - // fd.append("formFile", item) - // }) - // postImport(fd, this.URL).then(res => { - // if (res.failList.length === 0) { - // this.$successMsg('全部导入成功') - // } else { - // let failListCode = '' - // res.failList.forEach(key => { - // failListCode = failListCode.concat(key.code + ';') - // }) - // this.$errorMsg('部分导入失败,失败代码为:' + failListCode) + // let fileName = '' + // let rd = new FileReader(); // 创建文件读取对象 + // // formFile.forEach((item) => { + // // fd.append("formFile", item) + // // fd.append("method", val[1].method) + // // fd.append("isAllowPartImport", val[1].isAllowPartImport=='0'?true:false) + // // }) + // // 目前只有单文件上传,写法只适用于单文件上传 + // fileName = formFile[0].name + // rd.readAsDataURL(formFile[0]) + // rd.onloadend = function(){ + // var arrayBuffer = rd.result + // let params = { + // fileName: fileName, + // bytes: arrayBuffer.substring(arrayBuffer.indexOf(',') + 1, arrayBuffer.length) // } - // this.Loading.importLoading = false - // this.FormRemove(val[0]); - // this.displayDialog.importDialog = false; - // this.paging() - // }).catch(err => { - // this.Loading.importLoading = false - // this.FormRemove(val[0]); - // this.displayDialog.importDialog = false; - // this.paging() - // }) + // // 特殊导入接口判断 + // let _uploadURL = that.importUploadURL || that.URL + // let _isSpecial = that.importUploadURL ? true : false + // fileStorageCreate(params).then( createRes => { + // let importParams = { + // fileType: 1, //文件类型 固定1 + // method: val[1].method, //导入方式 0 更新 1 追加 2 覆盖 + // isAllowPartImport: val[1].isAllowPartImport=='0'?true:false, //是否部分错误导入 + // route: _isSpecial ? _uploadURL : _uploadURL + '/import', //路由 + // function: menuName, //菜单名 + // blobName: createRes, + // company: window.SITE_CONFIG['company'] + // } + // postImport(importParams, _uploadURL, _isSpecial).then(res => { + // // 判断是否有错误记录 + // if (res.errorNum > 0) { + // that.$alert('发现导入错误数据共:' + res.errorNum + '条', '错误报告', { + // confirmButtonText: '下载错误报告', + // callback: action => { + // if (action == 'confirm') { + // fileStorage({blobName: res.fileCode}).then( fileStorageRes => { + // that.downloadFile(fileStorageRes.bytes, fileStorageRes.fileName) + // }).catch( err => { + // console.log(err) + // }) + // } + // } + // }) + // } else if (res.exceptionMessage != null) { + // that.$alert('错误信息:' + res.exceptionMessage, '错误', { + // confirmButtonText: '确定', + // callback: action => { + // } + // }) + // // that.$alert('导入模板错误,请导入正确的模板文件!', '模板错误', { + // // confirmButtonText: '确定', + // // callback: action => { + // // } + // // }) + // } else { + // // that.$successMsg('全部导入成功') + // that.$alert('全部导入成功,是否下载导入报告', '导入报告', { + // confirmButtonText: '下载导入报告', + // cancelButtonText: '取消', + // callback: action => { + // if (action == 'confirm') { + // fileStorage({blobName: res.fileCode}).then( fileStorageRes => { + // that.downloadFile(fileStorageRes.bytes, fileStorageRes.fileName) + // }).catch( err => { + // console.log(err) + // }) + // } + // } + // }) + // } + // that.Loading.importLoading = false + // that.FormRemove(val[0]); + // that.displayDialog.importDialog = false; + // that.paging() + // }).catch(err => { + // that.Loading.importLoading = false + // that.FormRemove(val[0]); + // that.displayDialog.importDialog = false; + // that.paging() + // }) + // }).catch(err => { + // console.log(err) + // }) + // } // } else { - // this.$errorMsg('请按照提示继续操作') - // this.displayDialog.importDialog = false; + // that.$errorMsg('请按照提示继续操作') + // that.displayDialog.importDialog = false; // return false; // } // }); From 214e48f60839a1703a8fb25b89fd9aabf4cfb2b3 Mon Sep 17 00:00:00 2001 From: "SERVERM-0FVHDNN\\Administrator" <942005050@qq.com> Date: Thu, 30 Mar 2023 10:59:26 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E7=B1=BB=E6=B7=BB=E5=8A=A0=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- fe/PC/src/views/basicData/BomManage/Bom.vue | 4 ++-- fe/PC/src/views/basicData/SupplierManage/Supplier.vue | 2 +- fe/PC/src/views/basicData/WarehouseManage/LocationGroup.vue | 2 +- fe/PC/src/views/basicData/WarehouseManage/WorkGroup.vue | 2 +- fe/PC/src/views/basicData/WorkshopManage/ProductionLine.vue | 4 ++-- fe/PC/src/views/basicData/WorkshopManage/Shift.vue | 2 +- fe/PC/src/views/basicData/WorkshopManage/Team.vue | 2 +- fe/PC/src/views/basicData/WorkshopManage/WorkCenter.vue | 4 ++-- fe/PC/src/views/basicData/documentSetting/documentBasic.vue | 4 ++-- 9 files changed, 13 insertions(+), 13 deletions(-) diff --git a/fe/PC/src/views/basicData/BomManage/Bom.vue b/fe/PC/src/views/basicData/BomManage/Bom.vue index ca31f71ad..727110da5 100644 --- a/fe/PC/src/views/basicData/BomManage/Bom.vue +++ b/fe/PC/src/views/basicData/BomManage/Bom.vue @@ -145,8 +145,8 @@ export default { }, editOptions: {}, CreateForm: [ - { type: "input", label: "父物料号", prop: "product", colSpan: 12 }, - { type: "input", label: "子物料号", prop: 'component', colSpan: 12 }, + { type: "input", label: "父物料号", prop: "product", validType:'numberLetter', colSpan: 12 }, + { type: "input", label: "子物料号", prop: 'component', validType:'numberLetter', colSpan: 12 }, { type: "input", label: "子物料用量", prop: 'componentQty', colSpan: 12, validType:'pointNumber' }, { type: "input", label: "子物料用量单位", prop: 'componentUom', colSpan: 12 }, { type: "dateTime", label: "开始时间", prop: "beginTime", colSpan: 12 }, diff --git a/fe/PC/src/views/basicData/SupplierManage/Supplier.vue b/fe/PC/src/views/basicData/SupplierManage/Supplier.vue index 5808adc39..0591e825e 100644 --- a/fe/PC/src/views/basicData/SupplierManage/Supplier.vue +++ b/fe/PC/src/views/basicData/SupplierManage/Supplier.vue @@ -153,7 +153,7 @@ export default { }, editOptions: {}, CreateForm: [ - { type: "input", label: "供应商代码", prop: "code", colSpan: 12 }, + { type: "input", label: "供应商代码", prop: "code", validType:'numberLetter', colSpan: 12 }, { type: "input", label: "供应商名称", prop: "name", colSpan: 12 }, { type: "select", label: "状态", prop: "isActive", options: "openToCloseBit", colSpan: 12 }, { type: "select", label: "类型", prop: "type", options: "supplierType", colSpan: 12 }, diff --git a/fe/PC/src/views/basicData/WarehouseManage/LocationGroup.vue b/fe/PC/src/views/basicData/WarehouseManage/LocationGroup.vue index a91453697..6198c2ea7 100644 --- a/fe/PC/src/views/basicData/WarehouseManage/LocationGroup.vue +++ b/fe/PC/src/views/basicData/WarehouseManage/LocationGroup.vue @@ -206,7 +206,7 @@ export default { { type: "filterSelect", label: "区域代码", prop: "areaCode", optionsLabel: "name", optionsValue: "code", focus: (type,val) => { return this.getFilterList(type, val, "basedata/area")}, searchButton: (val) => { this.showSerarchPage(val, 'basedata/area', 'Area', '区域选择', this.CreateFormData) }, colSpan: 12 }, - { type: "input", label: "库位组代码", prop: "code", colSpan: 12 }, + { type: "input", label: "库位组代码", prop: "code", validType:'numberLetter', colSpan: 12 }, { type: "input", label: "库位组名称", prop: 'name', colSpan: 12 }, { type: "select", label: "类型", prop: "groupType", options: "locationType", colSpan: 12 }, { type: "select", label: "状态", prop: "defaultInventoryStatus", options: "inventoryStage", colSpan: 12 }, diff --git a/fe/PC/src/views/basicData/WarehouseManage/WorkGroup.vue b/fe/PC/src/views/basicData/WarehouseManage/WorkGroup.vue index 9152b5dff..fd2131378 100644 --- a/fe/PC/src/views/basicData/WarehouseManage/WorkGroup.vue +++ b/fe/PC/src/views/basicData/WarehouseManage/WorkGroup.vue @@ -126,7 +126,7 @@ export default { }, editOptions: {}, CreateForm: [ - { type: "input", label: "工作组代码", prop: "code", colSpan: 12 }, + { type: "input", label: "工作组代码", prop: "code", validType:'numberLetter', colSpan: 12 }, { type: "input", label: "工作组名称", prop: 'name', colSpan: 12 }, { type: "input", label: "仓库代码", prop: 'warehouseCode', disabled:"true", colSpan: 12 }, { type: "input", label: "描述", prop: "description", colSpan: 12 }, diff --git a/fe/PC/src/views/basicData/WorkshopManage/ProductionLine.vue b/fe/PC/src/views/basicData/WorkshopManage/ProductionLine.vue index 2c2b844a2..2ffed2fe9 100644 --- a/fe/PC/src/views/basicData/WorkshopManage/ProductionLine.vue +++ b/fe/PC/src/views/basicData/WorkshopManage/ProductionLine.vue @@ -155,7 +155,7 @@ export default { type: [] }, CreateForm: [ - { type: "input", label: "生产线代码", prop: "code", colSpan: 12 }, + { type: "input", label: "生产线代码", prop: "code", validType:'numberLetter', colSpan: 12 }, { type: "input", label: "生产线名称", prop: 'name', colSpan: 12 }, { type: "select", label: "类型", prop: "type", options: "productionLineType", colSpan: 12 }, { type: "filterSelect", label: "车间代码", prop: "workshopCode", optionsLabel: "name", optionsValue: "code", @@ -174,7 +174,7 @@ export default { { type: "input", label: "备注", prop: 'remark', colSpan: 12 }, ], editForm: [ - { type: "input", label: "生产线代码", disabled:"true", prop: "code", colSpan: 12 }, + { type: "input", label: "生产线代码", disabled:"true", prop: "code", validType:'numberLetter', colSpan: 12 }, { type: "input", label: "生产线名称", prop: 'name', colSpan: 12 }, { type: "select", label: "类型", prop: "type", options: "productionLineType", colSpan: 12 }, { type: "filterSelect", label: "车间代码", prop: "workshopCode", optionsLabel: "name", optionsValue: "code", diff --git a/fe/PC/src/views/basicData/WorkshopManage/Shift.vue b/fe/PC/src/views/basicData/WorkshopManage/Shift.vue index feb001778..a22ddad32 100644 --- a/fe/PC/src/views/basicData/WorkshopManage/Shift.vue +++ b/fe/PC/src/views/basicData/WorkshopManage/Shift.vue @@ -130,7 +130,7 @@ export default { }, editOptions: {}, CreateForm: [ - { type: "input", label: "班次代码", prop: "code", colSpan: 12 }, + { type: "input", label: "班次代码", prop: "code", validType:'numberLetter', colSpan: 12 }, { type: "input", label: "班次名称", prop: "name", colSpan: 12 }, { type: "select", label: "结束到下一天", prop: "endAtNextDay", options: "whetherOrNot", colSpan: 12 }, { type: "input", label: "描述", prop: "description", colSpan: 12 }, diff --git a/fe/PC/src/views/basicData/WorkshopManage/Team.vue b/fe/PC/src/views/basicData/WorkshopManage/Team.vue index 804111447..bdc385cd3 100644 --- a/fe/PC/src/views/basicData/WorkshopManage/Team.vue +++ b/fe/PC/src/views/basicData/WorkshopManage/Team.vue @@ -126,7 +126,7 @@ export default { }, editOptions: {}, CreateForm: [ - { type: "input", label: "班组代码", prop: "code", colSpan: 12 }, + { type: "input", label: "班组代码", prop: "code", validType:'numberLetter', colSpan: 12 }, { type: "input", label: "班组名称", prop: 'name', colSpan: 12 }, { type: "input", label: "成员", prop: "members", colSpan: 12 }, { type: "input", label: "描述", prop: "description", colSpan: 12 }, diff --git a/fe/PC/src/views/basicData/WorkshopManage/WorkCenter.vue b/fe/PC/src/views/basicData/WorkshopManage/WorkCenter.vue index 9f59426e6..d13130273 100644 --- a/fe/PC/src/views/basicData/WorkshopManage/WorkCenter.vue +++ b/fe/PC/src/views/basicData/WorkshopManage/WorkCenter.vue @@ -160,7 +160,7 @@ export default { { type: "filterSelect", label: "成品编号", prop: "productLocation", optionsLabel: "name", optionsValue: "code", focus: (type,val) => { return this.getFilterList(type, val, "basedata/location")}, searchButton: (val) => { this.showSerarchPage(val, 'basedata/location', 'Location', '库位选择', this.CreateFormData) }, colSpan: 12 }, - { type: "input", label: "工作站编号", prop: "code", colSpan: 12 }, + { type: "input", label: "工作站编号", prop: "code", validType:'numberLetter', colSpan: 12 }, { type: "input", label: "工作站名称", prop: 'name', colSpan: 12 }, { type: "select", label: "类型", prop: "type", options: "workCenterType", colSpan: 12 }, { type: "input", label: "描述", prop: "description", colSpan: 12 }, @@ -176,7 +176,7 @@ export default { { type: "filterSelect", label: "成品编号", prop: "productLocation", optionsLabel: "name", optionsValue: "code", focus: (type,val) => { return this.getFilterList(type, val, "basedata/location")}, searchButton: (val) => { this.showSerarchPage(val, 'basedata/location', 'Location', '库位选择', this.editFormData) }, colSpan: 12 }, - { type: "input", label: "工作站编号", prop: "code", colSpan: 12 }, + { type: "input", label: "工作站编号", prop: "code", validType:'numberLetter', colSpan: 12 }, { type: "input", label: "工作站名称", prop: 'name', colSpan: 12 }, { type: "select", label: "类型", prop: "type", options: "workCenterType", colSpan: 12 }, { type: "input", label: "描述", prop: "description", colSpan: 12 }, diff --git a/fe/PC/src/views/basicData/documentSetting/documentBasic.vue b/fe/PC/src/views/basicData/documentSetting/documentBasic.vue index ace54611c..1dc8bbb45 100644 --- a/fe/PC/src/views/basicData/documentSetting/documentBasic.vue +++ b/fe/PC/src/views/basicData/documentSetting/documentBasic.vue @@ -137,7 +137,7 @@ export default { }, CreateForm: [ { type: "input", label: "名称", prop: 'name', colSpan: 12 }, - { type: "input", label: "编码", prop: 'code', colSpan: 12 }, + { type: "input", label: "编码", prop: 'code', validType:'numberLetter', colSpan: 12 }, { type: "input", label: "描述", prop: "description", colSpan: 12 }, { type: "select", label: "事务类型", prop: "transactionType", options: "TransTypeBaseForStr", colSpan: 12 }, { type: "input", label: "单号前缀", prop: "numberPrefix", colSpan: 12 }, @@ -148,7 +148,7 @@ export default { ], editForm: [ { type: "input", label: "名称", prop: 'name', colSpan: 12 }, - { type: "input", label: "编码", prop: 'code', colSpan: 12 }, + { type: "input", label: "编码", prop: 'code', validType:'numberLetter', colSpan: 12 }, { type: "input", label: "描述", prop: "description", colSpan: 12 }, { type: "select", label: "事务类型", prop: "transactionType", options: "TransTypeBaseForStr", colSpan: 12 }, { type: "input", label: "单号前缀", prop: "numberPrefix", colSpan: 12 }, From 6659a60b43b7fc4bb53602bff6269e5e54aa3fcd Mon Sep 17 00:00:00 2001 From: "SERVERM-0FVHDNN\\Administrator" <942005050@qq.com> Date: Thu, 30 Mar 2023 13:12:50 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E7=9B=B8=E5=85=B3bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- fe/PC/src/views/basicData/BomManage/Bom.vue | 31 ++++++++++++++++--- .../CustomerManage/CustomerAddress.vue | 6 +++- .../basicData/CustomerManage/CustomerItem.vue | 14 +++++---- .../views/basicData/WarehouseManage/Dock.vue | 2 +- .../WarehouseManage/LocationGroup.vue | 4 +-- 5 files changed, 42 insertions(+), 15 deletions(-) diff --git a/fe/PC/src/views/basicData/BomManage/Bom.vue b/fe/PC/src/views/basicData/BomManage/Bom.vue index 727110da5..9124f64a2 100644 --- a/fe/PC/src/views/basicData/BomManage/Bom.vue +++ b/fe/PC/src/views/basicData/BomManage/Bom.vue @@ -38,6 +38,7 @@ :Options="editOptions" :Handle="editHandle" :Rules="formReveal ? editRules.cerateRule : editRules.editRule" + @push="selectDataPush" @FormSubmit="FormSubmit" @close="FormClose" @goBack="goBack" @@ -79,6 +80,7 @@ import { drawerMixins } from "@/mixins/drawerMixins" import { TableHeaderMixins } from "@/mixins/TableHeaderMixins" import { newAndEdiDialogMixins } from "@/mixins/newAndEdiDialogMixins" import { mixins } from "@/mixins/mixins" +import { filterSelectMixins } from '@/mixins/filter-Select' export default { name: "Bom", mixins: [ @@ -87,6 +89,7 @@ export default { drawerMixins, TableHeaderMixins, mixins, + filterSelectMixins, newAndEdiDialogMixins ], computed: { @@ -141,12 +144,17 @@ export default { distributionType: 1, truncType: 1, plannedSplitRule: 1, - concurrencyStamp: null + concurrencyStamp: null, + component: null }, editOptions: {}, CreateForm: [ - { type: "input", label: "父物料号", prop: "product", validType:'numberLetter', colSpan: 12 }, - { type: "input", label: "子物料号", prop: 'component', validType:'numberLetter', colSpan: 12 }, + { type: "filterSelect", label: "父物料号", prop: "product", optionsLabel: "name", optionsValue: "code", + focus: (type,val) => { return this.getFilterList(type, val, "basedata/Item-Basic")}, + searchButton: (val) => { this.showSerarchPage(val, 'basedata/Item-Basic', 'ItemBasic', '物料选择', this.CreateFormData) }, colSpan: 12 }, + { type: "filterSelect", label: "子物料号", prop: "component", optionsLabel: "name", optionsValue: "code", + focus: (type,val) => { return this.getFilterList(type, val, "basedata/Item-Basic")}, + searchButton: (val) => { this.showSerarchPage(val, 'basedata/Item-Basic', 'ItemBasic', '物料选择', this.CreateFormData) }, colSpan: 12 }, { type: "input", label: "子物料用量", prop: 'componentQty', colSpan: 12, validType:'pointNumber' }, { type: "input", label: "子物料用量单位", prop: 'componentUom', colSpan: 12 }, { type: "dateTime", label: "开始时间", prop: "beginTime", colSpan: 12 }, @@ -161,6 +169,7 @@ export default { ], editForm: [ { type: "input", label: "父物料号", prop: "product",disabled:"true", colSpan: 12 }, + { type: "input", label: "子物料号", prop: 'component', disabled:"true", colSpan: 12 }, { type: "input", label: "子物料用量", prop: 'componentQty', colSpan: 12, validType:'pointNumber' }, { type: "input", label: "子物料用量单位", prop: 'componentUom', colSpan: 12 }, { type: "dateTime", label: "开始时间", prop: "beginTime", colSpan: 12 }, @@ -175,7 +184,7 @@ export default { ], editRules: { cerateRule: { - componentQty: [{ required: true, message: '不可为空', type: "number", trigger: 'blur' },], + componentQty: [{ required: true, message: '不可为空', trigger: 'blur' },], componentUom: [{ required: true, message: '不可为空', trigger: 'blur' },], beginTime: [{ required: true, message: '不可为空', trigger: 'blur' },], endTime: [{ required: true, message: '不可为空', trigger: 'blur' },], @@ -183,7 +192,7 @@ export default { component: [{ required: true, trigger: "blur", message: "不可为空" }], }, editRule: { - componentQty: [{ required: true, message: '不可为空', type: "number", trigger: 'blur' },], + componentQty: [{ required: true, message: '不可为空', trigger: 'blur' },], componentUom: [{ required: true, message: '不可为空', trigger: 'blur' },], beginTime: [{ required: true, message: '不可为空', trigger: 'blur' },], endTime: [{ required: true, message: '不可为空', trigger: 'blur' },], @@ -223,6 +232,18 @@ export default { mounted () { this.paging(); }, + methods: { + // input下拉框 其他赋值处理 + selectDataPush(val) { + if (val[1].prop == "component") { + if (this.displayDialog.newDialog) { + this.CreateFormData.componentUom = val[0].basicUom + } else { + this.editFormData.componentUom = val[0].basicUom + } + } + }, + } };