From 3ca19bf8f8356440d4bede84cde8450327e189cb Mon Sep 17 00:00:00 2001 From: mrzhssss <pro6@qq.com> Date: 星期五, 06 五月 2022 17:03:25 +0800 Subject: [PATCH] 新增库存同步excel导出功能 --- src/main/java/zy/cloud/wms/manager/controller/LocSyncController.java | 40 +++++++++++++++++++++++++++++++--------- 1 files changed, 31 insertions(+), 9 deletions(-) diff --git a/src/main/java/zy/cloud/wms/manager/controller/LocSyncController.java b/src/main/java/zy/cloud/wms/manager/controller/LocSyncController.java index c2baaf6..c0c88c3 100644 --- a/src/main/java/zy/cloud/wms/manager/controller/LocSyncController.java +++ b/src/main/java/zy/cloud/wms/manager/controller/LocSyncController.java @@ -10,6 +10,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -17,6 +18,8 @@ import zy.cloud.wms.common.model.BillDto; import zy.cloud.wms.common.service.erp.ErpService; import zy.cloud.wms.common.web.BaseController; +import zy.cloud.wms.manager.entity.LocSum; +import zy.cloud.wms.manager.entity.Pakin; import zy.cloud.wms.manager.entity.WrkLocSync; import zy.cloud.wms.manager.service.LocSyncService; import zy.cloud.wms.manager.service.WrkLocSyncService; @@ -24,6 +27,9 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; + +import static jdk.nashorn.api.scripting.ScriptUtils.convert; @RestController @Slf4j @@ -52,18 +58,26 @@ @RequestMapping(value = "/locSync/insertWrklocSync") @ManagerAuth(memo = "鍚屾涓婁紶娓呭崟鏁版嵁鎻掑叆") + @Transactional public R insertWrklocSync(@RequestBody JSONObject param) { + Date now = new Date(); + Long userId = getUserId(); List<WrkLocSync> list = JSONObject.parseArray(param.getJSONArray("list").toJSONString(), WrkLocSync.class); - // 鎻掑叆鍒涘缓浜哄憳鍜屽垱寤烘椂闂� - if (list.size() > 0) { - for (WrkLocSync elist : list) { - elist.setCreateBy(getUserId()); - elist.setCreateTime(new Date()); + for (WrkLocSync wrkLocSync : list) { + WrkLocSync sync = new WrkLocSync(); + sync.setMatnr(wrkLocSync.getMatnr()); + sync.setQty(wrkLocSync.getQty()); + sync.setState("N"); + sync.setCreateTime(now); + sync.setCreateBy(userId); + sync.setUpdateBy(userId); + sync.setUpdateTime(now); + if (!wrkLocSyncService.insert(sync)) { + throw new CoolException("鍚屾澶辫触"); } + } - Integer result = 0; - result = wrkLocSyncService.insertWrkLocSync(list); - return R.ok(result); + return R.ok(list.size()); } @@ -109,7 +123,7 @@ res.setMatnr(executeData.getMatnr()); res.setQty(executeData.getQty()); dtos.add(res); - if (erpService.uploadBill(dtos, docId, docNum)) { + if (erpService.uploadBill(dtos, docId, docNum).getSuccess()) { // 鎴愬姛鍚庡垹闄や换鍔� if (!wrkLocSyncService.delete(new EntityWrapper<WrkLocSync>().eq("matnr", executeData.getMatnr()))) { log.info("搴撳瓨鍚屾鍒犻櫎浠诲姟澶辫触,浠诲姟matnr=" + executeData.getMatnr() + "鏃堕棿=" + new Date()); @@ -127,4 +141,12 @@ } } + + @RequestMapping(value = "/locsync/export/auth") + @ManagerAuth + public R export(@RequestBody JSONObject param){ + List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class); + List<LocSum> locSums = locSyncService.queryLocSum(); + return R.ok(exportSupport(locSums, fields)); + } } -- Gitblit v1.9.1