From 626ed23b65e045c24ba5b4117cefd1f61d5aca8c Mon Sep 17 00:00:00 2001 From: shenzhouyu Date: Thu, 27 Nov 2025 13:39:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=A2=86=E6=96=99=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E6=95=B0=E9=87=8F=E7=BC=96=E8=BE=91=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/IssureNotifyController.java | 10 ++++++++++ .../notify/mapper/IssureNotifyMapper.java | 2 ++ .../notify/service/IssureNotifyService.java | 2 ++ .../service/impl/IssureNotifyServiceImpl.java | 20 +++++++++++++++++++ .../mapper/notify/IssureNotifyMapper.xml | 3 +++ 5 files changed, 37 insertions(+) diff --git a/src/main/java/com/gaotao/modules/notify/controller/IssureNotifyController.java b/src/main/java/com/gaotao/modules/notify/controller/IssureNotifyController.java index 8a757c7..6b06322 100644 --- a/src/main/java/com/gaotao/modules/notify/controller/IssureNotifyController.java +++ b/src/main/java/com/gaotao/modules/notify/controller/IssureNotifyController.java @@ -153,6 +153,16 @@ public class IssureNotifyController { return R.ok(); } + @PostMapping(value="/updateMaterialDetail") + @ResponseBody + public R updateMaterialDetail(@RequestBody SOIssueNotifyOrderMaterialList data) { + int i = issureNotifyService.updateMaterialDetail(data); + if(i >0){ + return R.ok(); + } + return R.error("修改失败"); + } + /** * @Description TODO * @Title deleteNotifySOS diff --git a/src/main/java/com/gaotao/modules/notify/mapper/IssureNotifyMapper.java b/src/main/java/com/gaotao/modules/notify/mapper/IssureNotifyMapper.java index cb3f881..64b267b 100644 --- a/src/main/java/com/gaotao/modules/notify/mapper/IssureNotifyMapper.java +++ b/src/main/java/com/gaotao/modules/notify/mapper/IssureNotifyMapper.java @@ -167,4 +167,6 @@ public interface IssureNotifyMapper extends BaseMapper { IPage searchNoOrderNotifyHeader(Page page, @Param("data") ShipmentIssueDto data); List getNotifyNoOrderDetailByType(SOIssueNotifyOrderList data); + + int updateMaterialDetail(SOIssueNotifyOrderMaterialList data); } diff --git a/src/main/java/com/gaotao/modules/notify/service/IssureNotifyService.java b/src/main/java/com/gaotao/modules/notify/service/IssureNotifyService.java index f9b8e67..21b7584 100644 --- a/src/main/java/com/gaotao/modules/notify/service/IssureNotifyService.java +++ b/src/main/java/com/gaotao/modules/notify/service/IssureNotifyService.java @@ -180,4 +180,6 @@ public interface IssureNotifyService { List getNotifyNoOrderDetailByType(SOIssueNotifyOrderList data)throws Exception; List uploadNoorderNotifyExcel(MultipartFile file, String site, String notifyNo)throws Exception; + + int updateMaterialDetail(SOIssueNotifyOrderMaterialList data); } diff --git a/src/main/java/com/gaotao/modules/notify/service/impl/IssureNotifyServiceImpl.java b/src/main/java/com/gaotao/modules/notify/service/impl/IssureNotifyServiceImpl.java index 9039b79..4cb5f77 100644 --- a/src/main/java/com/gaotao/modules/notify/service/impl/IssureNotifyServiceImpl.java +++ b/src/main/java/com/gaotao/modules/notify/service/impl/IssureNotifyServiceImpl.java @@ -1175,4 +1175,24 @@ public class IssureNotifyServiceImpl implements IssureNotifyService { return null; } + + @Override + public int updateMaterialDetail(SOIssueNotifyOrderMaterialList data) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("site", data.getSite()); + queryWrapper.eq("notify_no", data.getNotifyNo()); + SOIssueNotifyHeader notifyHeader = issureNotifyMapper.selectOne(queryWrapper); + + if (notifyHeader == null) { + throw new RuntimeException("申请单不存在"); + } + + // 判断是否已推送WCS,如果已推送则不允许取消下达 + if (!"未推送".equals(notifyHeader.getPushWcsFlag())) { + throw new RuntimeException("申请单已推送WCS,不允许修改"); + } + int i = issureNotifyMapper.updateMaterialDetail(data); + + return i; + } } diff --git a/src/main/resources/mapper/notify/IssureNotifyMapper.xml b/src/main/resources/mapper/notify/IssureNotifyMapper.xml index 07415c4..48571f5 100644 --- a/src/main/resources/mapper/notify/IssureNotifyMapper.xml +++ b/src/main/resources/mapper/notify/IssureNotifyMapper.xml @@ -488,4 +488,7 @@ record_version,out_work_order_flag,project_id,order_type,auth_rule_id,bu) LEFT JOIN area ar ON a.production_area = ar.area_id where a.site=#{site} and a.notify_no=#{notifyNo} and b.order_type='noorder' + + update SOIssueNotifyOrderMaterialList set qty_to_issue = #{qtyToIssue} where notify_no = #{notifyNo} and site =#{site} and item_no=#{itemNo} and BOM_item_no=#{bOMItemNo} + \ No newline at end of file