From 58d1a051b0d8f523901469947900dea5af8b97dd Mon Sep 17 00:00:00 2001 From: LSH Date: 星期五, 15 九月 2023 16:47:48 +0800 Subject: [PATCH] #PDA接口 --- src/main/java/com/zy/asrs/entity/param/PalletizingCompleteParam.java | 12 ++ src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 103 ++++++++++++++++++++++++- src/main/java/com/zy/asrs/controller/MobileController.java | 70 ++++++++++++++++ src/main/java/com/zy/asrs/entity/param/TrussCombParam.java | 41 ++++++++++ src/main/java/com/zy/asrs/service/MobileService.java | 6 5 files changed, 221 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java index 9d2c9e5..cd34e8e 100644 --- a/src/main/java/com/zy/asrs/controller/MobileController.java +++ b/src/main/java/com/zy/asrs/controller/MobileController.java @@ -9,9 +9,7 @@ import com.core.common.R; import com.core.exception.CoolException; import com.zy.asrs.entity.*; -import com.zy.asrs.entity.param.CombParam; -import com.zy.asrs.entity.param.MobileAdjustParam; -import com.zy.asrs.entity.param.OffSaleParam; +import com.zy.asrs.entity.param.*; import com.zy.asrs.entity.result.MobileAdjustResult; import com.zy.asrs.mapper.ManLocDetlMapper; import com.zy.asrs.service.*; @@ -54,6 +52,8 @@ private PackService packService; @Autowired private ManLocDetlMapper manLocDetlMapper; + @Autowired + private WrkDetlLogService wrkDetlLogService; // 鍟嗗搧涓婃灦 @@ -144,6 +144,70 @@ return R.ok().add(combParams); } + @RequestMapping("/wrkDetl/search/batch/auth") + @ManagerAuth + public R wrkDetlSearchByBatch(@RequestBody String batch){ + if (Cools.isEmpty(batch)){ + return R.error("鍙傛暟涓虹┖"); + } +// List<Order> orders = orderService.selectorderNoL(batch); + WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("batch", batch)); + if (Cools.isEmpty(wrkDetl)){ + WrkDetlLog wrkDetlLog = wrkDetlLogService.selectOne(new EntityWrapper<WrkDetlLog>().eq("batch", batch)); + if (Cools.isEmpty(wrkDetlLog)){ + return R.error("鏈煡鍒版暟鎹�"); + } + wrkDetl = new WrkDetl(); + wrkDetl.sync(wrkDetlLog); + wrkDetl.setBatch(wrkDetlLog.getBatch()); + wrkDetl.setBarcode(wrkDetlLog.getBarcode()); + wrkDetl.setDeadTime(wrkDetlLog.getDeadTime()); + } + if (Cools.isEmpty(wrkDetl)){ + return R.error("鏈煡鍒版暟鎹�"); + } + return R.ok().add(wrkDetl); + } + + @RequestMapping("/order/search/batch/auth") + @ManagerAuth + public R orderSearchByBatch(@RequestBody String batch){ + if (Cools.isEmpty(batch)){ + return R.error("鍙傛暟涓虹┖"); + } +// List<Order> orders = orderService.selectorderNoL(batch); + WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("batch", batch)); + if (Cools.isEmpty(wrkDetl)){ + WrkDetlLog wrkDetlLog = wrkDetlLogService.selectOne(new EntityWrapper<WrkDetlLog>().eq("batch", batch)); + if (Cools.isEmpty(wrkDetlLog)){ + return R.error("鏈煡鍒版暟鎹�"); + } + wrkDetl = new WrkDetl(); + wrkDetl.sync(wrkDetlLog); + wrkDetl.setBatch(wrkDetlLog.getBatch()); + wrkDetl.setBarcode(wrkDetlLog.getBarcode()); + wrkDetl.setDeadTime(wrkDetlLog.getDeadTime()); + } + if (Cools.isEmpty(wrkDetl)){ + return R.error("鏈煡鍒版暟鎹�"); + } + return R.ok(); + } + + @RequestMapping("/truss/auth") + @ManagerAuth(memo = "閫�搴�") + public R trussComb(@RequestBody TrussCombParam combParam){ + mobileService.trussComb(combParam, getUserId()); + return R.ok("缁勬墭鎴愬姛"); + } + + @RequestMapping("/truss/comd/auth") + @ManagerAuth(memo = "鎵嬪姩鍏ュ簱") + public R trussComb2(@RequestBody PalletizingCompleteParam combParam){ + mobileService.trussComb2(combParam, getUserId()); + return R.ok("缁勬墭鎴愬姛"); + } + @RequestMapping("/comb/auth") @ManagerAuth(memo = "缁勬墭") public R comb(@RequestBody CombParam combParam){ diff --git a/src/main/java/com/zy/asrs/entity/param/PalletizingCompleteParam.java b/src/main/java/com/zy/asrs/entity/param/PalletizingCompleteParam.java index df3a2e8..14b5e2a 100644 --- a/src/main/java/com/zy/asrs/entity/param/PalletizingCompleteParam.java +++ b/src/main/java/com/zy/asrs/entity/param/PalletizingCompleteParam.java @@ -12,7 +12,7 @@ private String barcode;// 鏄� 瀛楃涓� 鎵樼洏鐮� private String palletizingNo;// 鏄� 瀛楃涓� 鐮佸灈浣嶇紪鍙� - private String boxType;// 鏄� 瀛楃涓� 鐮佸灈浣嶇紪鍙� + private String boxType;// 鏄� 瀛楃涓� 鏈ㄧ绫诲瀷 private String createTime;// 鏄� 瀛楃涓� 鍒涘缓鏃堕棿 private List<MatList> matLists;// 鏄� 鍒楄〃 鎷嗗灈璐х墿淇℃伅锛�2绠憋紝灏剧鍙兘1绠憋級 @@ -27,6 +27,16 @@ private Integer anfme;// 鏄� 鏁板瓧鍨� 鏈ㄧ涓摐绠旀暟閲� private String batch;// (鏄惁鍒嗘壒) 瀛楃涓� 鎵规鍙� private String specs;// (鏄惁闇�瑕侊級 瀛楃涓� 瑙勬牸 + private List<MatDetlList> matDetlList;// 鏄� 鍒楄〃 鏈ㄧ涓摐绠斾俊鎭� + } + + @Data + public static class MatDetlList{ + private String boxNoDetl;// 鏄� 瀛楃涓� 閾滅當缂栧彿锛堝敮涓�瀛楁锛� + private String positionDetl;// 鏄� 瀛楃涓� 閾滅當浣嶇疆锛堟媶鍨涙椂闇�瑕侊級 + private Double weightDetl;// 鏄� 灏忔暟鍨� 閲嶉噺 + private String batchDetl;// (鏄惁鍒嗘壒) 瀛楃涓� 鎵规鍙� + private String specsDetl;// (鏄惁闇�瑕侊級 瀛楃涓� 瑙勬牸 } public Integer getDevNo$(){ diff --git a/src/main/java/com/zy/asrs/entity/param/TrussCombParam.java b/src/main/java/com/zy/asrs/entity/param/TrussCombParam.java new file mode 100644 index 0000000..9fda3b3 --- /dev/null +++ b/src/main/java/com/zy/asrs/entity/param/TrussCombParam.java @@ -0,0 +1,41 @@ +package com.zy.asrs.entity.param; + +import lombok.Data; +import java.util.List; + +/** + * Created by vincent on 2020/6/28 + */ +@Data +public class TrussCombParam { + + private String barcode;// 瀛楃涓� 鎵樼洏鐮� + private String palletizingNo;// 鏄� 瀛楃涓� 鐮佸灈浣嶇紪鍙� + private String boxType;// 鏄� 瀛楃涓� 鏈ㄧ绫诲瀷 + private String createTime;// 瀛楃涓� 鍒涘缓鏃堕棿 + + private List<MatList> matLists;// 鏄� 鍒楄〃 鎷嗗灈璐х墿淇℃伅锛�2绠憋紝灏剧鍙兘1绠憋級 + + @Data + public static class MatList{ + private String matnr;// 鏄� 瀛楃涓� 鐗╂枡缂栫爜 + private String maktx;// 瀛楃涓� 鐗╂枡鍚嶇О + private String boxNo;// 鏄� 瀛楃涓� 鏈ㄧ缂栧彿锛堝敮涓�瀛楁锛屽嚭搴撲緷鎹紝鍑哄簱鏃舵寜鐓ф湪绠辩紪鍙峰嚭搴擄級 + private String position;// 鏄� 瀛楃涓� 鏈ㄧ浣嶇疆锛堟媶鍨涙椂闇�瑕侊級 + private Double weight;// 鏄� 灏忔暟鍨� 閲嶉噺 + private Integer anfme;// 鏁板瓧鍨� 鏈ㄧ涓摐绠旀暟閲� + private String batch;// 瀛楃涓� 鎵规鍙� + private String specs;// 瀛楃涓� 瑙勬牸 + private List<MatDetlList> matDetlList;// 鏄� 鍒楄〃 鏈ㄧ涓摐绠斾俊鎭� + } + + @Data + public static class MatDetlList{ + private String boxNoDetl;// 鏄� 瀛楃涓� 閾滅當缂栧彿锛堝敮涓�瀛楁锛� + private String positionDetl;// 鏄� 瀛楃涓� 閾滅當浣嶇疆锛堟媶鍨涙椂闇�瑕侊級 + private Double weightDetl;// 鏄� 灏忔暟鍨� 閲嶉噺 + private String batchDetl;// 瀛楃涓� 鎵规鍙� + private String specsDetl;// 瀛楃涓� 瑙勬牸 + } + +} diff --git a/src/main/java/com/zy/asrs/service/MobileService.java b/src/main/java/com/zy/asrs/service/MobileService.java index 6172647..26b564a 100644 --- a/src/main/java/com/zy/asrs/service/MobileService.java +++ b/src/main/java/com/zy/asrs/service/MobileService.java @@ -4,9 +4,7 @@ import com.zy.asrs.entity.BasDevp; import com.zy.asrs.entity.LocDetl; import com.zy.asrs.entity.OrderDetl; -import com.zy.asrs.entity.param.CombParam; -import com.zy.asrs.entity.param.MobileAdjustParam; -import com.zy.asrs.entity.param.OffSaleParam; +import com.zy.asrs.entity.param.*; import java.util.Date; @@ -16,6 +14,8 @@ * 缁勬墭 */ void comb(CombParam param, Long userId); + void trussComb(TrussCombParam param, Long userId); + void trussComb2(PalletizingCompleteParam param, Long userId); /** * 涓婃灦 diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java index e1d63a8..ff3bf4a 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -7,10 +7,7 @@ import com.core.common.*; import com.core.exception.CoolException; import com.zy.asrs.entity.*; -import com.zy.asrs.entity.param.CombParam; -import com.zy.asrs.entity.param.MobileAdjustParam; -import com.zy.asrs.entity.param.OffSaleParam; -import com.zy.asrs.entity.param.OpenOrderPakinParam; +import com.zy.asrs.entity.param.*; import com.zy.asrs.mapper.ManLocDetlMapper; import com.zy.asrs.service.*; import com.zy.asrs.utils.MatUtils; @@ -81,6 +78,104 @@ @Override @Transactional + public void trussComb(TrussCombParam param, Long userId) { +// if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) { +// throw new CoolException(BaseRes.PARAM); +// } + } + @Override + @Transactional + public void trussComb2(PalletizingCompleteParam param, Long userId) { + //鍒ゆ柇param鍙傛暟 + if (Cools.isEmpty(param.getBarcode())){ + throw new CoolException("鍙傛暟锛氭墭鐩樼爜 barcode涓虹┖"); + }else if (Cools.isEmpty(param.getPalletizingNo())){ + throw new CoolException("鍙傛暟锛氱爜鍨涗綅缂栧彿 palletizingNo涓虹┖"); + }else if (Cools.isEmpty(param.getBoxType())){ + throw new CoolException("鍙傛暟锛氭湪绠辩被鍨� boxType涓虹┖"); + }else if (Cools.isEmpty(param.getMatLists()) || param.getMatLists().size()==0){ + throw new CoolException("鍙傛暟锛氱墿鏂欐槑缁� matLists涓虹┖"); + } + + ArrayList<String> positions = new ArrayList<>(); //鏈ㄧ浣嶇疆鏌ラ噸 (orgin) + ArrayList<String> boxNos = new ArrayList<>(); //鏈ㄧ鍞竴缂栫爜鏌ラ噸 锛坆atch锛� + //鍒ゆ柇matLists鍙傛暟 + for (PalletizingCompleteParam.MatList matList:param.getMatLists()){ + if (Cools.isEmpty(matList.getMatnr())){ + throw new CoolException("鍙傛暟锛氱墿鏂欑紪鐮� matnr涓虹┖"); + }else if (Cools.isEmpty(matList.getPosition())){ + throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細鐮佸灈浣嶇疆 position涓虹┖"); + }else if (Cools.isEmpty(matList.getBoxNo())){ + throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細鏈ㄧ缂栧彿 boxNo涓虹┖"); + }else if (Cools.isEmpty(matList.getAnfme()) || matList.getAnfme().equals(0)){ + throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細鏈ㄧ涓摐绠旀暟閲� anfme涓虹┖"); + }else if (Cools.isEmpty(matList.getWeight()) || matList.getWeight().equals(0D)){ + throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細閲嶉噺 weight涓虹┖"); + } + + if (!positions.contains(matList.getPosition())){ + positions.add(matList.getPosition()); + }else { + throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+",鏈ㄧ浣嶇疆瀛樺湪閲嶅锛�"+matList.getPosition()); + } + + if (!boxNos.contains(matList.getBoxNo())){ + boxNos.add(matList.getBoxNo()); + }else { + throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+",鏈ㄧ缂栫爜瀛樺湪閲嶅"); + } + } + +// BasDevp basDevp = basDevpService.selectById(Integer.parseInt(param.getDevNo$())); +// if (Cools.isEmpty(basDevp)){ +// throw new CoolException("鍙傛暟锛氱爜鍨涗綅缂栧彿 palletizingNo="+param.getPalletizingNo()+"涓嶅瓨鍦�"); +// } +// if (Cools.isEmpty(basDevp.getAutoing()) || !basDevp.getAutoing().equals("Y")){ +// throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getPalletizingNo()+" 鎵�澶勭珯鐐逛笉鏄嚜鍔ㄧ姸鎬�"); +// } +// if (Cools.isEmpty(basDevp.getLoading()) || !basDevp.getLoading().equals("Y")){ +// throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getPalletizingNo()+" 鎵�澶勭珯鐐逛笉鏄湁鐗╃姸鎬�"); +// } +// if (Cools.isEmpty(basDevp.getCanining()) || !basDevp.getCanining().equals("Y")){ +// throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getPalletizingNo()+" 鎵�澶勭珯鐐逛笉鏄兘鍏ョ姸鎬�"); +// } + + + if (locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", param.getBarcode()))!=0 + || wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet", param.getBarcode()))!=0 + || waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBarcode()))!=0){ + throw new CoolException("鎵樼洏鏉$爜锛�"+param.getBarcode()+"宸插瓨鍦紝璇峰嬁閲嶅缁勬墭"); + } + + + Date now = new Date(); + for (PalletizingCompleteParam.MatList matList:param.getMatLists()){ + Mat mat = matService.selectByMatnr(matList.getMatnr()); + if (Cools.isEmpty(mat)) { + throw new CoolException(matList.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�"); + } + WaitPakin waitPakin = new WaitPakin(); + waitPakin.sync(mat); + waitPakin.setModel(matList.getBatch()); //鎵规 + waitPakin.setSpecs(matList.getSpecs()); //瑙勬牸 + waitPakin.setBatch(matList.getBoxNo()); //鏈ㄧ缂栫爜 + waitPakin.setBrand(param.getBoxType()); //鏈ㄧ绫诲瀷 + waitPakin.setZpallet(param.getBarcode()); //鎵樼洏鐮� + waitPakin.setOrigin(matList.getPosition()); //鏈ㄧ鍦ㄦ墭鐩樹笂鐨勪綅缃� + waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵�� + waitPakin.setAnfme(matList.getAnfme().doubleValue()); // 鏈ㄧ涓摐绠旀暟閲� + waitPakin.setStatus("Y"); // 鐘舵�� + waitPakin.setAppeUser(userId); + waitPakin.setAppeTime(now); + waitPakin.setModiUser(userId); + waitPakin.setModiTime(now); + if (!waitPakinService.insert(waitPakin)) { + throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�"); + } + } + } + @Override + @Transactional public void comb(CombParam param, Long userId) { if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) { throw new CoolException(BaseRes.PARAM); -- Gitblit v1.9.1