From d00cf61c1d1358940b9b97cf6362e40ed278e138 Mon Sep 17 00:00:00 2001 From: Ledo Date: Fri, 11 Jul 2025 13:57:06 +0800 Subject: [PATCH] =?UTF-8?q?=E5=93=81=E8=B4=A8=E5=BC=82=E5=B8=B8=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UnqualifiedNotificationController.java | 27 ++++++-- .../UnqualifiedNotificationService.java | 2 +- .../UnqualifiedNotificationServiceImpl.java | 5 ++ mes-ui/mini-app/src/manifest.json | 2 +- mes-ui/mini-app/src/pages/index/index.vue | 9 +++ .../src/pages/pgMaster/pgMaster-detail.vue | 10 ++- .../components/dataItem.vue | 13 +++- .../unqualifiedNotification-detail.vue | 68 +++++++++++++++++-- .../unqualifiedNotification.vue | 3 - .../pages/zjPgMaster/zjPgMaster-detail.vue | 16 ++--- mes-ui/mini-app/src/services/home.ts | 8 ++- .../src/services/unqualifiedNotification.ts | 3 + 12 files changed, 131 insertions(+), 35 deletions(-) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/unqualifiednotification/UnqualifiedNotificationController.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/unqualifiednotification/UnqualifiedNotificationController.java index 4cb4b92..d5d7cff 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/unqualifiednotification/UnqualifiedNotificationController.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/controller/admin/unqualifiednotification/UnqualifiedNotificationController.java @@ -174,8 +174,7 @@ public class UnqualifiedNotificationController { @Operation(summary = "获得品质异常通知单审核分页") @PreAuthorize("@ss.hasPermission('heli:unqualified-notification:query')") public CommonResult> getUnqualifiedNotificationPageWx(@Valid UnqualifiedNotificationPageReqVO pageReqVO) { - int i = pageReqVO.getPageNo() * pageReqVO.getPageSize(); - if (pageReqVO.getPageNo() == 1) i = 0; + int i = (pageReqVO.getPageNo()-1) * pageReqVO.getPageSize(); pageReqVO.setPageNum(i); PageResult unqualifiedNotificationPage = unqualifiedNotificationService.getUnqualifiedNotificationPageWx(pageReqVO); List list = unqualifiedNotificationPage.getList(); @@ -200,12 +199,32 @@ public class UnqualifiedNotificationController { return success(unqualifiedNotificationPage); } - + @GetMapping("/countWx") + @Operation(summary = "获得品质异常通知单审核分页") + @PreAuthorize("@ss.hasPermission('heli:unqualified-notification:query')") + public CommonResult countWx(@Valid UnqualifiedNotificationPageReqVO pageReqVO) { + return success(unqualifiedNotificationService.countWx(pageReqVO)); + } @GetMapping("/detailWx") @Operation(summary = "获得品质异常通知单审核分页") @PreAuthorize("@ss.hasPermission('heli:unqualified-notification:query')") public CommonResult detailWx(@Valid UnqualifiedNotificationPageReqVO pageReqVO) { - return success(unqualifiedNotificationService.getUnqualifiedNotificationWxById(pageReqVO)); + UnqualifiedNotificationDO unqualifiedNotificationDO = unqualifiedNotificationService.getUnqualifiedNotificationWxById(pageReqVO); + List fileUrlList = new ArrayList<>(); + Integer type = 0; + if (unqualifiedNotificationDO.getTypeName().equals("过程检")){ + type = 2; + }else if (unqualifiedNotificationDO.getTypeName().equals("终检")){ + type = 1; + } + List unqualifiedNotificationFileDOS = unqualifiedNotificationFileService.queryUnqualifiedNotificationFileBySuperId(unqualifiedNotificationDO.getId(),type); + if(CollUtil.isNotEmpty(unqualifiedNotificationFileDOS)){ + for (UnqualifiedNotificationFileDO unqualifiedNotificationFileDO : unqualifiedNotificationFileDOS) { + fileUrlList.add(unqualifiedNotificationFileDO.getFileUrl()); + } + unqualifiedNotificationDO.setFileUrlList(fileUrlList); + } + return success(unqualifiedNotificationDO); } @GetMapping("/export-excel") diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/unqualifiednotification/UnqualifiedNotificationService.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/unqualifiednotification/UnqualifiedNotificationService.java index 54b50f4..f0b88e0 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/unqualifiednotification/UnqualifiedNotificationService.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/unqualifiednotification/UnqualifiedNotificationService.java @@ -46,7 +46,7 @@ public interface UnqualifiedNotificationService { * @return 品质异常通知单审核 */ UnqualifiedNotificationDO getUnqualifiedNotification(Long id); - + Long countWx(@Valid UnqualifiedNotificationPageReqVO updateReqVO); /** * 获得品质异常通知单审核分页 * diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/unqualifiednotification/UnqualifiedNotificationServiceImpl.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/unqualifiednotification/UnqualifiedNotificationServiceImpl.java index cd220dc..797ea70 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/unqualifiednotification/UnqualifiedNotificationServiceImpl.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/service/unqualifiednotification/UnqualifiedNotificationServiceImpl.java @@ -240,6 +240,11 @@ try { return pageResult; } @Override + public Long countWx(UnqualifiedNotificationPageReqVO pageReqVO) { + PageResult pageResult = new PageResult<>(); + return unqualifiedNotificationMapper.selectCountPageWx(2, 5,5); + } + @Override public void operate(UnqualifiedNotificationSaveReqVO operateReqVO) { if(operateReqVO.getId() == null){ createUnqualifiedNotification(operateReqVO); diff --git a/mes-ui/mini-app/src/manifest.json b/mes-ui/mini-app/src/manifest.json index a0d2301..13b7a8b 100644 --- a/mes-ui/mini-app/src/manifest.json +++ b/mes-ui/mini-app/src/manifest.json @@ -106,7 +106,7 @@ }, /* 小程序特有相关 */ "mp-weixin" : { - "appid" : "wxa29fe397274614b5", + "appid" : "wx48fad418e2753b1c", "setting" : { "minified" : true, "urlCheck" : true, diff --git a/mes-ui/mini-app/src/pages/index/index.vue b/mes-ui/mini-app/src/pages/index/index.vue index 21541b8..d509a20 100644 --- a/mes-ui/mini-app/src/pages/index/index.vue +++ b/mes-ui/mini-app/src/pages/index/index.vue @@ -111,6 +111,7 @@ const getHomeCategory = async () => { const unReadCount = await getUnreadMessage(); const count = await countReview(); + const unqualifiedNotificationCount = await countUnqualifiedNotification(query); // 把未读数放到消息通知项 const cgdsp = categoryList.value.find( (e) => e.path === "cgdsp" @@ -118,6 +119,9 @@ const getHomeCategory = async () => { const msgItem = categoryList.value.find( (e) => e.path === "messageNotification" ); + const unqualifiedNotificationItem = categoryList.value.find( + (e) => e.path === "unqualifiedNotification" + ); if (cgdsp){ cgdsp.unReadCount = count; // cgdsp.auth=true @@ -126,6 +130,11 @@ const getHomeCategory = async () => { msgItem.unReadCount = unReadCount; // msgItem.auth=true } + if(unqualifiedNotificationItem){ + unqualifiedNotificationItem.unReadCount = unqualifiedNotificationCount + } + + if (loginStore.userInfo.userId) { const obj = { ...loginStore.userInfo, diff --git a/mes-ui/mini-app/src/pages/pgMaster/pgMaster-detail.vue b/mes-ui/mini-app/src/pages/pgMaster/pgMaster-detail.vue index 0ee810e..b0d6b9c 100644 --- a/mes-ui/mini-app/src/pages/pgMaster/pgMaster-detail.vue +++ b/mes-ui/mini-app/src/pages/pgMaster/pgMaster-detail.vue @@ -147,7 +147,7 @@ // uni.redirectTo({ // url, // }) - await initPage(); + const pages = getCurrentPages(); // 获取当前页面栈 const currentPage = pages[pages.length - 1]; // 当前页面 const url = `/${currentPage.route}?${Object.entries(currentPage.options).map(([key, val]) => `${key}=${val}`).join('&')}`; @@ -200,8 +200,8 @@ if (isQua.value == 1) { await imgUpload() } + const pages = getCurrentPages(); // 获取当前页面栈 - await initPage(); const currentPage = pages[pages.length - 1]; // 当前页面 const url = `/${currentPage.route}?${Object.entries(currentPage.options).map(([key, val]) => `${key}=${val}`).join('&')}`; uni.reLaunch({ url }); // 重新加载当前页面 @@ -223,8 +223,8 @@ if (isQua.value == 1) { await imgUpload() } + const pages = getCurrentPages(); // 获取当前页面栈 - await initPage(); const currentPage = pages[pages.length - 1]; // 当前页面 const url = `/${currentPage.route}?${Object.entries(currentPage.options).map(([key, val]) => `${key}=${val}`).join('&')}`; uni.reLaunch({ url }); // 重新加载当前页面 @@ -292,8 +292,6 @@ }) } finally { isLoading.value = false - await initPage() - const pages = getCurrentPages(); // 获取当前页面栈 const currentPage = pages[pages.length - 1]; // 当前页面 const url = `/${currentPage.route}?${Object.entries(currentPage.options).map(([key, val]) => `${key}=${val}`).join('&')}`; @@ -540,7 +538,7 @@ 异常描述:{{ item.remark }} - + diff --git a/mes-ui/mini-app/src/pages/unqualifiedNotification/components/dataItem.vue b/mes-ui/mini-app/src/pages/unqualifiedNotification/components/dataItem.vue index b1d2ff2..bf6bb42 100644 --- a/mes-ui/mini-app/src/pages/unqualifiedNotification/components/dataItem.vue +++ b/mes-ui/mini-app/src/pages/unqualifiedNotification/components/dataItem.vue @@ -127,7 +127,7 @@ const handleDetail = (item) => { 检验单据: (单号:{{ item.code }}) - + {{ statusText }} @@ -136,7 +136,14 @@ const handleDetail = (item) => { 项目:{{ item.projectName}} 通知日期:{{ item.createTime }} - + + + 零件名称:{{ item.materialName }} + + + 工序:{{ item.procedureName }} + + 质检员:{{ item.creatorName }} @@ -243,7 +250,7 @@ const handleDetail = (item) => { font-size: 24rpx; background: linear-gradient(149deg, #2DACE6 4%, #356899 98%); color: #fff; - + } } diff --git a/mes-ui/mini-app/src/pages/unqualifiedNotification/unqualifiedNotification-detail.vue b/mes-ui/mini-app/src/pages/unqualifiedNotification/unqualifiedNotification-detail.vue index 010a8fa..17e9d3e 100644 --- a/mes-ui/mini-app/src/pages/unqualifiedNotification/unqualifiedNotification-detail.vue +++ b/mes-ui/mini-app/src/pages/unqualifiedNotification/unqualifiedNotification-detail.vue @@ -143,8 +143,25 @@ uni.reLaunch({ url }); // 重新加载当前页面 } } - + const range = [ + { value: 1, text: "返修" }, + { value: 2, text: "让步接收" }, + { value: 3, text: "报废" }, + ] // 提交报工 + const handleOk = async() =>{ + if(detailInfo.value.auditOpinion){ + await submitForm(detailInfo.value.auditOpinion); + }else{ + uni.showToast({ + icon: 'none', + duration: 3000, + title: '请选择审核意见后提交', + }) + return; + } + + } const submitForm = async (active) => { try { const params = { @@ -187,7 +204,9 @@ await getDetailData(idValue.value, typeName.value) } - + const audit = ()=>{ + popup.value.open() + } const detailId = ref() @@ -207,6 +226,14 @@ {{' ' + detailInfo.projectSubName }} 通知日期:{{detailInfo.createTime}} + + + 零件名称:{{ detailInfo.materialName }} + + + 工序:{{ detailInfo.procedureName }} + + 质检员:{{ detailInfo.creatorName }} @@ -260,11 +287,36 @@ - 报废 + + 取消 + 审核 + + + + + 审核信息 + + + + + + + + *审核意见: + + + + + + 确定 + @@ -513,7 +565,9 @@ width: 272rpx; height: 86rpx; border-radius: 24rpx; - +&.info { + background: linear-gradient(157deg, #A9A9A9 -3%, #A9A9A9 90%); + } &.start { background: linear-gradient(157deg, #2EACE6 -3%, #356899 90%); } @@ -604,4 +658,4 @@ } } } - \ No newline at end of file + diff --git a/mes-ui/mini-app/src/pages/unqualifiedNotification/unqualifiedNotification.vue b/mes-ui/mini-app/src/pages/unqualifiedNotification/unqualifiedNotification.vue index 675b89b..6bbc9ff 100644 --- a/mes-ui/mini-app/src/pages/unqualifiedNotification/unqualifiedNotification.vue +++ b/mes-ui/mini-app/src/pages/unqualifiedNotification/unqualifiedNotification.vue @@ -77,9 +77,6 @@ const handlePopClose = (flag) => { - diff --git a/mes-ui/mini-app/src/pages/zjPgMaster/zjPgMaster-detail.vue b/mes-ui/mini-app/src/pages/zjPgMaster/zjPgMaster-detail.vue index d590b09..d1dc254 100644 --- a/mes-ui/mini-app/src/pages/zjPgMaster/zjPgMaster-detail.vue +++ b/mes-ui/mini-app/src/pages/zjPgMaster/zjPgMaster-detail.vue @@ -147,7 +147,7 @@ // uni.redirectTo({ // url, // }) - await initPage(); + const pages = getCurrentPages(); // 获取当前页面栈 const currentPage = pages[pages.length - 1]; // 当前页面 const url = `/${currentPage.route}?${Object.entries(currentPage.options).map(([key, val]) => `${key}=${val}`).join('&')}`; @@ -194,8 +194,8 @@ if (isQua.value == 1) { await imgUpload() } + const pages = getCurrentPages(); // 获取当前页面栈 - await initPage(); const currentPage = pages[pages.length - 1]; // 当前页面 const url = `/${currentPage.route}?${Object.entries(currentPage.options).map(([key, val]) => `${key}=${val}`).join('&')}`; uni.reLaunch({ url }); // 重新加载当前页面 @@ -217,8 +217,8 @@ if (isQua.value == 1) { await imgUpload() } - const pages = getCurrentPages(); // 获取当前页面栈 await initPage(); + const pages = getCurrentPages(); // 获取当前页面栈 const currentPage = pages[pages.length - 1]; // 当前页面 const url = `/${currentPage.route}?${Object.entries(currentPage.options).map(([key, val]) => `${key}=${val}`).join('&')}`; uni.reLaunch({ url }); // 重新加载当前页面 @@ -287,7 +287,7 @@ }) } finally { isLoading.value = false - await initPage() + const pages = getCurrentPages(); // 获取当前页面栈 const currentPage = pages[pages.length - 1]; // 当前页面 @@ -396,7 +396,6 @@ icon: 'none', // 显示纯文本时icon设为none duration: 2000 }); - await initPage() popup.value.close(); }, @@ -408,7 +407,6 @@ icon: 'none', // 显示纯文本时icon设为none duration: 2000 }); - await initPage() }, complete: () => { uni.hideLoading(); @@ -505,10 +503,10 @@ {{ item.amount }} - + 是否复检: - {{ item.isRepre == 0 ? '是':'否' }} + {{ item.isRepre == 1? '是':'否' }} 是否合格: @@ -913,4 +911,4 @@ } } } - \ No newline at end of file + diff --git a/mes-ui/mini-app/src/services/home.ts b/mes-ui/mini-app/src/services/home.ts index 59803a0..51009f4 100644 --- a/mes-ui/mini-app/src/services/home.ts +++ b/mes-ui/mini-app/src/services/home.ts @@ -17,7 +17,13 @@ export const getHomeCategoryAPI = () => { url: '/system/auth/get-permission-info', }) } - +export const countUnqualifiedNotification = (data: Object) => { + return http({ + method: 'GET', + url: '/heli/unqualified-notification/countWx', + data, + }) +} export const getUnreadMessage = () => { return http({ method: 'GET', diff --git a/mes-ui/mini-app/src/services/unqualifiedNotification.ts b/mes-ui/mini-app/src/services/unqualifiedNotification.ts index c89b948..b52f35a 100644 --- a/mes-ui/mini-app/src/services/unqualifiedNotification.ts +++ b/mes-ui/mini-app/src/services/unqualifiedNotification.ts @@ -31,6 +31,9 @@ export const operateWx = (data: Object) => { data, }) } + + + // 获取零件分页 export const getBomPageAPI = (data: Object) => { return http({