From d813b2b12be7ab063ddabf0beceb3c13bed416cd Mon Sep 17 00:00:00 2001 From: ruanqi Date: Tue, 3 Sep 2024 16:54:33 +0800 Subject: [PATCH] 1 --- src/api/orderIssure/soIssueNotify.js | 13 + .../soIssueNotify/newSoIssueNotify.vue | 334 ++++--- .../soIssueNotify/searchIssureNotify.vue | 816 ++++++++++++++++++ 3 files changed, 1035 insertions(+), 128 deletions(-) create mode 100644 src/views/modules/orderIssure/soIssueNotify/searchIssureNotify.vue diff --git a/src/api/orderIssure/soIssueNotify.js b/src/api/orderIssure/soIssueNotify.js index 6a53eb1..47f6fad 100644 --- a/src/api/orderIssure/soIssueNotify.js +++ b/src/api/orderIssure/soIssueNotify.js @@ -10,3 +10,16 @@ export const getSOScheduledRoutingListForIssure= data => createAPI(`/orderIssure export const getSOSBOMForIssure= data => createAPI(`/orderIssure/issureNotify/getSOSBOMForIssure`,'post',data) export const saveSOIssueNotifyOrderList= data => createAPI(`/orderIssure/issureNotify/saveSOIssueNotifyOrderList`,'post',data) export const saveMaterialDetail= data => createAPI(`/orderIssure/issureNotify/saveMaterialDetail`,'post',data) + + +export const deleteNotifySOS= data => createAPI(`/orderIssure/issureNotify/deleteNotifySOS`,'post',data) +export const deleteNotify= data => createAPI(`/orderIssure/issureNotify/deleteNotify`,'post',data) + +export const xiadaNotify= data => createAPI(`/orderIssure/issureNotify/xiadaNotify`,'post',data) + + +export const searchNotifyHeader= data => createAPI(`/orderIssure/issureNotify/searchNotifyHeader`,'post',data) + +export const searchNotifyOrderList= data => createAPI(`/orderIssure/issureNotify/searchNotifyOrderList`,'post',data) + +export const searchNotifyMaterialList= data => createAPI(`/orderIssure/issureNotify/searchNotifyMaterialList`,'post',data) diff --git a/src/views/modules/orderIssure/soIssueNotify/newSoIssueNotify.vue b/src/views/modules/orderIssure/soIssueNotify/newSoIssueNotify.vue index 27197c8..68416fc 100644 --- a/src/views/modules/orderIssure/soIssueNotify/newSoIssueNotify.vue +++ b/src/views/modules/orderIssure/soIssueNotify/newSoIssueNotify.vue @@ -5,8 +5,8 @@ 新建申请单 选择派工单 - 下达申请单 - 删除申请单 + 下达申请单 + 删除申请单 @@ -52,6 +52,16 @@ + + + + + + @@ -96,7 +106,7 @@ label="操作"> @@ -181,15 +191,61 @@ width="60" label="操作"> - 保存 关闭 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 保存 + 关闭 + + @@ -211,6 +267,7 @@ :height="400" :data="sobomList" border + v-loading="bomLoadFlag" style="width: 100%;"> import { eamGroupSearch, - eamGroupSave, - eamGroupEdit, - eamGroupDelete, + getSiteAndBuByUserName } from "@/api/eam/eam.js" import {userFavoriteList, saveUserFavorite, removeUserFavorite} from '@/api/userFavorite.js' @@ -266,6 +321,10 @@ getSOSBOMForIssure, saveSOIssueNotifyOrderList, saveMaterialDetail, + deleteNotifySOS, + deleteNotify, + xiadaNotify, + }from "@/api/orderIssure/soIssueNotify.js" export default { watch: { @@ -293,6 +352,7 @@ userName:'', userDisplay:'', remark:'', + planIssueDate:'', }, // 是否收藏 favorite: false, @@ -317,6 +377,16 @@ orderno:'', seqno:'', }, + notifyOrderData:{ + partNo:'', + orderno:'', + itemno:'', + seqno:'', + partDesc:'', + qtyrequired:'', + sResourceid:'', + issureQty:'', + }, seqNoData:{ site: this.$store.state.user.site, orderno:'', @@ -337,6 +407,8 @@ seqNoModalFlag:false, materialModalFlag:false, modalDisableFlag:false, + saveSeqNoModalFlag:false, + bomLoadFlag:false, modalData:{ flag:'', bu: '', @@ -559,7 +631,7 @@ columnProp: 'qtyrequired', headerAlign: "center", align: "right", - columnLabel: '派工单数量', + columnLabel: '派工数量', columnHidden: false, columnImage: false, columnSortable: false, @@ -577,7 +649,7 @@ columnProp: 'qtyreported', headerAlign: "center", align: "right", - columnLabel: '已报工数量', + columnLabel: '报工数量', columnHidden: false, columnImage: false, columnSortable: false, @@ -753,13 +825,13 @@ { userId: this.$store.state.user.name, functionId: 701001002, - serialNumber: '701001002Table3QtyRequired', + serialNumber: '701001002Table3QtyOnHand', tableId: "701001002Table3", tableName: "领料申请BOM子表", - columnProp: 'qtyRequired', + columnProp: 'qtyOnHand', headerAlign: "center", align: "right", - columnLabel: '已发数量', + columnLabel: '现场库存数量', columnHidden: false, columnImage: false, columnSortable: false, @@ -857,9 +929,15 @@ } getUserNotifyNo(inData).then(({data})=>{ if (data.code === 0) { - this.notifyNo = data.row.notifyNo - this.notifyData=data.row - this.getNotifyNoDetail(); + if(data.row!=null){ + this.notifyNo = data.row.notifyNo + this.notifyData=data.row + this.getNotifyNoDetail(); + }else { + this.notifyNo ='' + this.notifyData=null + this.dataList=[] + } }else { this.notifyNo ='' this.notifyData=null @@ -895,7 +973,7 @@ } }) }, - saveSOS(row){ + chooseSOS(row){ if(this.dataList.length>0){ let stop=false for (let i = 0; i < this.dataList.length; i++) { @@ -904,7 +982,39 @@ } } if(stop){ - this.$message.warning('已经选择过此派工单,请返回点击明细直接操作!') + this.$alert('已经选择过此派工单,请返回点击明细直接操作!!', '提示', { + confirmButtonText: '确定' + }) + return false + } + } + this.notifyOrderData.partNo=row.partNo + this.notifyOrderData.orderno=row.orderno + this.notifyOrderData.itemno=row.itemno + this.notifyOrderData.seqno=row.seqno + this.notifyOrderData.partDesc=row.partDesc + this.notifyOrderData.qtyrequired=row.qtyrequired + this.notifyOrderData.sResourceid=row.sResourceid + this.notifyOrderData.issureQty='' + this.saveSeqNoModalFlag=true + }, + saveSOS(){ + if(this.notifyOrderData.issureQty==null||this.notifyOrderData.issureQty==''||this.notifyOrderData.issureQty<=0){ + this.$message.warning('请填写领取数量!') + return false + } + let row=this.notifyOrderData + if(this.dataList.length>0){ + let stop=false + for (let i = 0; i < this.dataList.length; i++) { + if(this.dataList[i].seqNo==row.seqno){ + stop=true + } + } + if(stop){ + this.$alert('已经选择过此派工单,请返回点击明细直接操作!!', '提示', { + confirmButtonText: '确定' + }) return false } } @@ -920,10 +1030,12 @@ sOOrderNo:row.orderno, opsItemNo:row.itemno, seqNo:row.seqno, + issureQty:row.issureQty, outWorkOrderFlag:'N', } saveSOIssueNotifyOrderList(inData).then(({data})=>{ if (data.code === 0) { + this.saveSeqNoModalFlag=false this.getNotifyNoDetail() this.enterSOS(row); }else { @@ -946,6 +1058,14 @@ this.enterSOS(rows) }, enterSOS(row){ + this.seqNoModalFlag = false + this.materialModalFlag=true + this.sobomList = [] + this.sobomData={ + orderno:row.orderno, + seqno:row.seqno, + } + this.bomLoadFlag=true let inData={ site:this.$store.state.user.site, notifyNo:this.notifyNo, @@ -955,14 +1075,10 @@ itemno:row.itemno, } getSOSBOMForIssure(inData).then(({data})=>{ + this.bomLoadFlag=false if (data.code === 0) { this.sobomList = data.rows - this.sobomData={ - orderno:row.orderno, - seqno:row.seqno, - } - this.seqNoModalFlag = false - this.materialModalFlag=true + } }) }, @@ -998,7 +1114,9 @@ } let materialList=this.sobomList.filter(item => item.qtyToIssue > 0) if(materialList.length==0){ - this.$message.warning('没有需要保存的内容!') + this.$alert('没有需要保存的内容!', '提示', { + confirmButtonText: '确定' + }) return false } saveMaterialDetail(materialList).then(({data})=>{ @@ -1087,70 +1205,82 @@ return s }, - // 获取数据列表 - getDataList () { - eamGroupSearch(this.searchData).then(({data}) => { + // // 获取数据列表 + // getDataList () { + // eamGroupSearch(this.searchData).then(({data}) => { + // if (data.code === 0) { + // this.dataList = data.page.list + // } + // }) + // }, + // 每页数 + // sizeChangeHandle (val) { + // this.pageSize = val + // this.pageIndex = 1 + // this.getDataList() + // }, + // // 当前页 + // currentChangeHandle (val) { + // this.pageIndex = val + // this.getDataList() + // }, + + + xiadaNotify() { + if(this.dataList.length==0){ + this.$alert('没有明细记录无法下达!!', '提示', { + confirmButtonText: '确定' + }) + return false + } + if(this.notifyData.planIssueDate==null||this.notifyData.planIssueDate==''){ + this.$alert('请选择要求发料日期!!', '提示', { + confirmButtonText: '确定' + }) + return false + } + xiadaNotify(this.notifyData).then(({data})=>{ if (data.code === 0) { - this.dataList = data.page.list + this.getUserNotifyNo() + this.$message.success( '操作成功') + }else { + this.$alert(data.msg, '错误', { + confirmButtonText: '确定' + }) } }) }, - // 每页数 - sizeChangeHandle (val) { - this.pageSize = val - this.pageIndex = 1 - this.getDataList() - }, - // 当前页 - currentChangeHandle (val) { - this.pageIndex = val - this.getDataList() - }, - // 多选 - selectionChangeHandle (val) { - this.dataListSelections = val - }, - addModal () { - this.modalData = { - flag: '1', - bu: this.userBuList[0].buNo, - site: this.$store.state.user.site, - groupID: '', - groupDesc: '', - active: 'Y', - createBy: this.$store.state.user.name, - updateBy: this.$store.state.user.name, + deleteNotify() { + if(this.dataList.length>0){ + this.$alert('请先删除已经申请的明细记录!!', '提示', { + confirmButtonText: '确定' + }) + return false } - this.modalDisableFlag = false - this.seqNoModalFlag = true + deleteNotify(this.notifyData).then(({data})=>{ + if (data.code === 0) { + this.getUserNotifyNo() + this.$message.success( '操作成功') + }else { + this.$alert(data.msg, '错误', { + confirmButtonText: '确定' + }) + } + }) }, - updateModal (row) { - this.modalData = { - flag: '2', - site: row.site, - bu: row.site + '_' + row.buNo, - groupID: row.groupID, - groupDesc: row.groupDesc, - active: row.active, - createBy: this.$store.state.user.name, - updateBy: this.$store.state.user.name, - } - this.modalDisableFlag = true - this.seqNoModalFlag = true - }, // 删除 - deleteGroup (row) { - this.$confirm(`是否删除这个分组?`, '提示', { + deleteNotifySOS (row) { + this.$confirm(`是否删除这个派工单的申请信息?`, '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { - eamGroupDelete(row).then(({data}) => { - if (data && data.code === '0') { - this.getDataList() + deleteNotifySOS(row).then(({data}) => { + if (data && data.code === 0) { + this.getNotifyNoDetail() this.$message({ message: '操作成功', type: 'success', @@ -1167,59 +1297,7 @@ }) }, - saveData () { - if (this.modalData.bu === '' || this.modalData.bu == null) { - this.$message.warning('请选择BU!') - return - } - if (this.modalData.groupID === '' || this.modalData.groupID == null) { - this.$message.warning('请输入分组编码!') - return - } - if (this.modalData.groupDesc === '' || this.modalData.groupDesc == null) { - this.$message.warning('请输入分组名称!') - return - } - if (this.modalData.active === '' || this.modalData.active == null) { - this.$message.warning('选择是否在用!') - return - } - if (this.modalData.flag === '1') { - eamGroupSave(this.modalData).then(({data}) => { - if (data && data.code === '0') { - this.getDataList() - this.seqNoModalFlag=false - this.$message({ - message: '操作成功', - type: 'success', - duration: 1500, - onClose: () => {} - }) - } else { - this.$alert(data.msg, '错误', { - confirmButtonText: '确定' - }) - } - }) - } else { - eamGroupEdit(this.modalData).then(({data}) => { - if (data && data.code === '0') { - this.getDataList() - this.seqNoModalFlag=false - this.$message({ - message: '操作成功', - type: 'success', - duration: 1500, - onClose: () => {} - }) - } else { - this.$alert(data.msg, '错误', { - confirmButtonText: '确定' - }) - } - }) - } - }, + // 动态列开始 获取 用户保存的 格式列 async getTableUserColumn(tableId, columnId) { diff --git a/src/views/modules/orderIssure/soIssueNotify/searchIssureNotify.vue b/src/views/modules/orderIssure/soIssueNotify/searchIssureNotify.vue new file mode 100644 index 0000000..43bee8a --- /dev/null +++ b/src/views/modules/orderIssure/soIssueNotify/searchIssureNotify.vue @@ -0,0 +1,816 @@ + + + + +