diff --git a/src/main/java/com/xujie/sys/modules/ecss/controller/CoDelController.java b/src/main/java/com/xujie/sys/modules/ecss/controller/CoDelController.java index 02e17fb1..a9efccc8 100644 --- a/src/main/java/com/xujie/sys/modules/ecss/controller/CoDelController.java +++ b/src/main/java/com/xujie/sys/modules/ecss/controller/CoDelController.java @@ -6,6 +6,7 @@ import com.xujie.sys.modules.ecss.data.EcssCoDelNotifyData; import com.xujie.sys.modules.ecss.data.EcssCoDelNotifyDetailData; import com.xujie.sys.modules.ecss.data.EcssCoDelNotifyHeaderData; import com.xujie.sys.modules.ecss.entity.EcssCoDelNotify; +import com.xujie.sys.modules.ecss.entity.EcssCoDelNotifyDetail; import com.xujie.sys.modules.ecss.service.CoDelService; import com.xujie.sys.modules.orderIssure.entity.SOIssueNotifyHeaderData; import com.xujie.sys.modules.part.vo.BomComponentVo; @@ -41,4 +42,35 @@ public class CoDelController { coDelService.saveEcssCoDelNotifyByExcel(file, data); return R.ok(); } + + @PostMapping("/updateEcssDelHeader") + public R updateEcssDelHeader(@RequestBody EcssCoDelNotifyHeaderData data) { + coDelService.updateEcssDelHeader(data); + return R.ok(); + } + + @PostMapping("/deleteEcssDelHeader") + public R deleteEcssDelHeader(@RequestBody EcssCoDelNotifyHeaderData data) { + coDelService.deleteEcssDelHeader(data); + return R.ok(); + } + + + @PostMapping("/changeEcssDelStatus") + public R changeEcssDelStatus(@RequestBody EcssCoDelNotifyHeaderData data) { + coDelService.changeEcssDelStatus(data); + return R.ok(); + } + + @PostMapping("/updateEcssDelDetail") + public R updateEcssDelDetail(@RequestBody EcssCoDelNotifyDetailData data) { + coDelService.updateEcssDelDetail(data); + return R.ok(); + } + + @PostMapping("/deleteEcssDelDetail") + public R deleteEcssDelDetail(@RequestBody EcssCoDelNotifyDetailData data) { + coDelService.deleteEcssDelDetail(data); + return R.ok(); + } } diff --git a/src/main/java/com/xujie/sys/modules/ecss/mapper/CoDelMapper.java b/src/main/java/com/xujie/sys/modules/ecss/mapper/CoDelMapper.java index 50f6fe98..29097ed2 100644 --- a/src/main/java/com/xujie/sys/modules/ecss/mapper/CoDelMapper.java +++ b/src/main/java/com/xujie/sys/modules/ecss/mapper/CoDelMapper.java @@ -18,7 +18,7 @@ import java.util.List; public interface CoDelMapper { IPage searchEcssCoDelNotifyHeader(Page ecssCoDelNotifyDataPage, @Param("query") EcssCoDelNotifyHeaderData data); - + List checkEcssCoDelNotifyHeaderByDelNo( @Param("site") String site,@Param("delNo") String delNo); List searchEcssCoDelNotifyDetail(EcssCoDelNotifyHeaderData data); String getSiteByBu(String buNo); @@ -30,4 +30,11 @@ public interface CoDelMapper { void saveEcssCoDelNotifyHeader(EcssCoDelNotifyHeader inData); void batchSaveEcssCoDelNotifyDetail(List list ); List checkPart(@Param("site") String site, @Param("partNo") String partNo); + + void updateEcssDelHeader(EcssCoDelNotifyHeaderData data); + + void changeEcssDelStatus(EcssCoDelNotifyHeaderData data); + + void updateEcssDelDetail(EcssCoDelNotifyDetail data); + void deleteEcssDelDetail(EcssCoDelNotifyDetail data); } diff --git a/src/main/java/com/xujie/sys/modules/ecss/service/CoDelService.java b/src/main/java/com/xujie/sys/modules/ecss/service/CoDelService.java index 2124cb2a..9025af60 100644 --- a/src/main/java/com/xujie/sys/modules/ecss/service/CoDelService.java +++ b/src/main/java/com/xujie/sys/modules/ecss/service/CoDelService.java @@ -16,4 +16,14 @@ public interface CoDelService { PageUtils searchEcssCoDelNotifyHeader(EcssCoDelNotifyHeaderData data); List searchEcssCoDelNotifyDetail(EcssCoDelNotifyHeaderData data); void saveEcssCoDelNotifyByExcel(MultipartFile file, EcssCoDelNotifyHeaderData data); + + void updateEcssDelHeader(EcssCoDelNotifyHeaderData data); + + void deleteEcssDelHeader(EcssCoDelNotifyHeaderData data); + + void changeEcssDelStatus(EcssCoDelNotifyHeaderData data); + + void updateEcssDelDetail(EcssCoDelNotifyDetailData data); + + void deleteEcssDelDetail(EcssCoDelNotifyDetailData data); } diff --git a/src/main/java/com/xujie/sys/modules/ecss/service/impl/CoDelServiceImpl.java b/src/main/java/com/xujie/sys/modules/ecss/service/impl/CoDelServiceImpl.java index 22b09b42..8a0817a7 100644 --- a/src/main/java/com/xujie/sys/modules/ecss/service/impl/CoDelServiceImpl.java +++ b/src/main/java/com/xujie/sys/modules/ecss/service/impl/CoDelServiceImpl.java @@ -1,5 +1,6 @@ package com.xujie.sys.modules.ecss.service.impl; +import com.aspose.words.Run; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -189,6 +190,20 @@ public class CoDelServiceImpl implements CoDelService { } + + @Override + public void updateEcssDelHeader(EcssCoDelNotifyHeaderData data){ + coDelMapper.updateEcssDelHeader(data); + } + + @Override + public void deleteEcssDelHeader(EcssCoDelNotifyHeaderData data){ + List checkEcssCoDelNotifyDetail=coDelMapper.searchEcssCoDelNotifyDetail(data); + if(checkEcssCoDelNotifyDetail.size()>0){ + throw new RuntimeException("该发货通知单下有明细无法删除!"); + } + } + private String getStringCellValue(XSSFRow row, int columnIndex) { Cell cell = row.getCell(columnIndex); if (cell == null || cell.getCellType() == CellType.BLANK) { @@ -239,4 +254,34 @@ public class CoDelServiceImpl implements CoDelService { } } + + @Override + public void changeEcssDelStatus(EcssCoDelNotifyHeaderData data){ + coDelMapper.changeEcssDelStatus(data); + } + + @Override + public void updateEcssDelDetail(EcssCoDelNotifyDetailData data){ + List checkHeader=coDelMapper.checkEcssCoDelNotifyHeaderByDelNo(data.getSite(),data.getDelNo()); + if(checkHeader.size()==0){ + throw new RuntimeException("不存在该发货通知单请刷新界面" ); + } + if(!"已计划".equals(checkHeader.get(0).getNotifyStatus())){ + throw new RuntimeException("发货通知单状态不为已计划,无法修改。" ); + } + coDelMapper.updateEcssDelDetail(data); + } + + @Override + public void deleteEcssDelDetail(EcssCoDelNotifyDetailData data){ + List checkHeader=coDelMapper.checkEcssCoDelNotifyHeaderByDelNo(data.getSite(),data.getDelNo()); + if(checkHeader.size()==0){ + throw new RuntimeException("不存在该发货通知单请刷新界面" ); + } + if(!"已计划".equals(checkHeader.get(0).getNotifyStatus())){ + throw new RuntimeException("发货通知单状态不为已计划,无法删除。" ); + } + coDelMapper.deleteEcssDelDetail(data); + } + } diff --git a/src/main/resources/mapper/ecss/CoDelMapper.xml b/src/main/resources/mapper/ecss/CoDelMapper.xml index 6d56b566..2d5665c4 100644 --- a/src/main/resources/mapper/ecss/CoDelMapper.xml +++ b/src/main/resources/mapper/ecss/CoDelMapper.xml @@ -26,16 +26,27 @@ - - AND a.NotifyNo = #{query.username} - + and D.site is not null order by a.ready_date desc ,a.delNo desc + + + insert into ecss_CoDelNotifyHeader(site,bu_no,delNo,ready_date,customer_name,Destination,shipping_mode,erp_flag,notify_status, -remark,createDate,createBy,cmc_invoice) + remark,createDate,createBy,cmc_invoice) values(#{site},#{buNo},#{delNo},#{readyDate},#{customerName},#{destination},#{shippingMode},'N',#{notifyStatus},#{remark},GetDate(), #{createBy},#{cmcInvoice}) insert into ecss_CoDelNotifyDetail (site,bu_no,delNo,item_no,salesOrder,salesOrder_item_no,customerPO,line,version, - status,family,part_no,part_description,qty,lt,cmc_invoice,cmc_comment,saleType, + status,family,part_no,part_description,qty,lt,cmc_comment,saleType, awb_bl,shipping_number,forwarder_info,currency,tp,ttl_amount,sum_price, so,upc,remark) values (#{item.site},#{item.buNo},#{item.delNo},#{item.itemNo,jdbcType=INTEGER},#{item.salesOrder},#{item.salesOrderItemNo},#{item.customerPO},#{item.line},#{item.version}, - #{item.status},#{item.family},#{item.partNo},#{item.partDescription},#{item.qty,jdbcType=DECIMAL},#{item.lt,jdbcType=DECIMAL},#{item.cmcInvoice},#{item.cmcComment},#{item.saleType}, + #{item.status},#{item.family},#{item.partNo},#{item.partDescription},#{item.qty,jdbcType=DECIMAL},#{item.lt,jdbcType=DECIMAL},#{item.cmcComment},#{item.saleType}, #{item.awbBl},#{item.shippingNumber},#{item.forwarderInfo},#{item.currency},#{item.tp,jdbcType=DECIMAL},#{item.ttlAmount,jdbcType=DECIMAL},#{item.sumPrice,jdbcType=DECIMAL}, #{item.so},#{item.upc},#{item.remark}) @@ -94,4 +105,25 @@ remark,createDate,createBy,cmc_invoice) + + + update ecss_CoDelNotifyHeader set ready_date=#{readyDate,jdbcType=TIMESTAMP} ,customer_name=#{customerName},Destination=#{destination},shipping_mode=#{shippingMode},remark=#{remark} ,cmc_invoice=#{cmcInvoice} + where site=#{site} and delNo=#{delNo} + + + + update ecss_CoDelNotifyHeader set notify_status=#{notifyStatus} where site=#{site} and delNo=#{delNo} + + + + update ecss_CoDelNotifyDetail set salesOrder=#{saleType},customerPO=#{customerPO},line=#{line},version=#{version}, + status=#{status},family=#{family},part_no=#{partNo},part_description=#{partDescription},qty=#{qty,jdbcType=DECIMAL},lt=#{lt,jdbcType=DECIMAL},cmc_comment=#{cmcComment},saleType=#{saleType}, + awb_bl=#{awbBl},shipping_number=#{shippingNumber},forwarder_info=#{forwarderInfo},currency=#{currency},tp=#{tp,jdbcType=DECIMAL},ttl_amount=#{ttlAmount,jdbcType=DECIMAL},sum_price=#{sumPrice,jdbcType=DECIMAL}, + so=#{so},upc=#{upc},remark=#{remark} + where site=#{site} and delNo=#{delNo} and item_no=#{itemNo} + + + + delete from ecss_CoDelNotifyDetail where site=#{site} and delNo=#{delNo} and item_no=#{itemNo} + \ No newline at end of file