From 66e452d698b2fda9d3be730907fb37054f109f5a Mon Sep 17 00:00:00 2001 From: LSH Date: 星期日, 17 九月 2023 18:37:34 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/handler/RailwayPlatformHandler.java | 121 ++++++++++++++++++++++++ src/main/java/com/zy/asrs/controller/OpenController.java | 14 +- src/main/java/com/zy/asrs/controller/MobileController.java | 4 src/main/java/com/zy/asrs/entity/param/TrussCombParam.java | 2 src/main/java/com/zy/asrs/task/BarcodeUploadScheduler.java | 2 src/main/java/com/zy/asrs/entity/param/BalconyWrkMastParam.java | 66 +++++++++++++ src/main/java/com/zy/asrs/task/BareBoardScheduler.java | 2 src/main/java/com/zy/asrs/task/handler/BarcodeUploadHandler.java | 4 src/main/java/com/zy/asrs/task/RailwayPlatformScheduler.java | 30 ++++++ src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 5 src/main/java/com/zy/asrs/entity/LocMast.java | 3 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 5 src/main/resources/application.yml | 1 13 files changed, 241 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java index cd34e8e..59d2898 100644 --- a/src/main/java/com/zy/asrs/controller/MobileController.java +++ b/src/main/java/com/zy/asrs/controller/MobileController.java @@ -195,14 +195,14 @@ } @RequestMapping("/truss/auth") - @ManagerAuth(memo = "閫�搴�") + @ManagerAuth(memo = "閫�搴擄紝1妤兼鏋堕��搴�") public R trussComb(@RequestBody TrussCombParam combParam){ mobileService.trussComb(combParam, getUserId()); return R.ok("缁勬墭鎴愬姛"); } @RequestMapping("/truss/comd/auth") - @ManagerAuth(memo = "鎵嬪姩鍏ュ簱") + @ManagerAuth(memo = "鎵嬪姩鍏ュ簱锛�2妤兼棤闇�妗佹灦鎵嬪姩鍏ュ簱") public R trussComb2(@RequestBody PalletizingCompleteParam combParam){ mobileService.trussComb2(combParam, getUserId()); return R.ok("缁勬墭鎴愬姛"); diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index efc1528..9b67ecc 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -222,7 +222,7 @@ * 涓帶锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭� */ @PostMapping("/palletizing/complete/auth/v1") - @AppAuth(memo = "涓帶锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭�") + @AppAuth(memo = "涓帶(妗佹灦)锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭�") public synchronized R palletizingComplete(@RequestHeader(required = false) String appkey, @RequestBody PalletizingCompleteParam param, HttpServletRequest request) { @@ -260,10 +260,10 @@ /** - * 涓帶锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭� 娴嬭瘯1 + * 娴嬭瘯1 鍏ュ簱鍓嶈緭閫佺嚎鍐欏叆鎵樼洏鐮侊紝216绔欐祴璇曠敤 */ @PostMapping("/cs1/auth/v1") - @AppAuth(memo = "涓帶锛氱爜鍨涘墠涓婃姤鏉$爜,鐢熸垚娴嬭瘯宸ヤ綔妗�") + @AppAuth(memo = "") public synchronized R cs1(@RequestHeader(required = false) String appkey, @RequestBody PalletizingCompleteParam param, HttpServletRequest request) { @@ -273,10 +273,10 @@ } /** - * 涓帶锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭� 娴嬭瘯2 + * 娴嬭瘯2 娓呴櫎鎵樼洏鐮侊紝216绔欐祴璇曠敤 Copy */ @PostMapping("/cs2/auth/v1") - @AppAuth(memo = "涓帶锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭�,鐢熸垚娴嬭瘯宸ヤ綔妗�") + @AppAuth(memo = "") public synchronized R cs2(@RequestHeader(required = false) String appkey, @RequestBody PalletizingCompleteParam param, HttpServletRequest request) { @@ -286,10 +286,10 @@ } /** - * 涓帶锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭� 娴嬭瘯3 + * 娴嬭瘯3 */ @PostMapping("/cs3/auth/v1") - @AppAuth(memo = "涓帶锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭�,鐢熸垚娴嬭瘯宸ヤ綔妗�") + @AppAuth(memo = "") public synchronized R cs3(@RequestHeader(required = false) String appkey, @RequestBody PalletizingCompleteParam param, HttpServletRequest request) { diff --git a/src/main/java/com/zy/asrs/entity/LocMast.java b/src/main/java/com/zy/asrs/entity/LocMast.java index 23d8301..38da56c 100644 --- a/src/main/java/com/zy/asrs/entity/LocMast.java +++ b/src/main/java/com/zy/asrs/entity/LocMast.java @@ -50,6 +50,9 @@ @TableField("loc_sts") private String locSts; + /** + * 寰愬伐姹変簯鎷嗗灈鏍囪 0: 鏈媶 1: 宸叉媶 2:宸插鐞嗗彲涓嬩竴姝ワ紙杞巻鍙叉。锛� + */ @ApiModelProperty(value= "") @TableField("sheet_no") private String sheetNo; diff --git a/src/main/java/com/zy/asrs/entity/param/BalconyWrkMastParam.java b/src/main/java/com/zy/asrs/entity/param/BalconyWrkMastParam.java new file mode 100644 index 0000000..b3659dd --- /dev/null +++ b/src/main/java/com/zy/asrs/entity/param/BalconyWrkMastParam.java @@ -0,0 +1,66 @@ +package com.zy.asrs.entity.param; + +import com.core.common.DateUtils; +import com.zy.asrs.entity.WrkDetl; +import com.zy.asrs.entity.WrkMast; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +/** + * Created by vincent on 2020/6/28 + */ +@Data +public class BalconyWrkMastParam { + + private Integer balcony;// 瀛楃涓� 鏈堝彴 + private String boxType;// 鏄� 瀛楃涓� 鏈ㄧ绫诲瀷 + private String uuid;// 瀛楃涓� 鏃堕棿鎴� + private String createTime;// 瀛楃涓� 鍒涘缓鏃堕棿yyyy-MM-dd HH:mm:ss + + 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;// 瀛楃涓� 瑙勬牸 + } + + public BalconyWrkMastParam(){}; + + public BalconyWrkMastParam(WrkMast wrkMast, List<WrkDetl> wrkDetls){ + this.uuid= String.valueOf(System.currentTimeMillis()); + this.createTime = DateUtils.convert(new Date()); + for (WrkDetl wrkDetl : wrkDetls){ + this.boxType = wrkDetl.getBrand(); + MatList matList = new MatList(); + matList.setMatnr(wrkDetl.getMatnr()); + matList.setMaktx(wrkDetl.getMaktx()); + matList.setBoxNo(wrkDetl.getBatch()); + matList.setPosition(wrkDetl.getOrigin()); + matList.setWeight(wrkDetl.getWeight()); + matList.setAnfme(wrkDetl.getAnfme().intValue()); + matList.setSpecs(wrkDetl.getSpecs()); + matList.setBatch(wrkDetl.getModel()); + this.matLists.add(matList); + } + }; + +} diff --git a/src/main/java/com/zy/asrs/entity/param/TrussCombParam.java b/src/main/java/com/zy/asrs/entity/param/TrussCombParam.java index 9fda3b3..1c49418 100644 --- a/src/main/java/com/zy/asrs/entity/param/TrussCombParam.java +++ b/src/main/java/com/zy/asrs/entity/param/TrussCombParam.java @@ -11,7 +11,9 @@ private String barcode;// 瀛楃涓� 鎵樼洏鐮� private String palletizingNo;// 鏄� 瀛楃涓� 鐮佸灈浣嶇紪鍙� + private String palletizingNo2;// 鏄� 瀛楃涓� 鐩爣鐮佸灈浣嶇紪鍙� private String boxType;// 鏄� 瀛楃涓� 鏈ㄧ绫诲瀷 + private String uuid;// 瀛楃涓� 鏃堕棿鎴� private String createTime;// 瀛楃涓� 鍒涘缓鏃堕棿 private List<MatList> matLists;// 鏄� 鍒楄〃 鎷嗗灈璐х墿淇℃伅锛�2绠憋紝灏剧鍙兘1绠憋級 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 ff3bf4a..86e82cb 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -79,9 +79,8 @@ @Override @Transactional public void trussComb(TrussCombParam param, Long userId) { -// if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) { -// throw new CoolException(BaseRes.PARAM); -// } + param.setUuid(String.valueOf(new Date().getTime())); + } @Override @Transactional diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index 2b64deb..83658c3 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -654,11 +654,12 @@ if (param.getLabResult().equals("OK")){ wrkMast.setWrkSts(54L); + wrkMast.setStaNo(144); if (!wrkMastService.updateById(wrkMast)){ throw new CoolException("寮傚父锛岃閲嶆柊鐢宠"); } }else if (param.getLabResult().equals("NG")){ - wrkMast.setWrkSts(52L); + wrkMast.setWrkSts(52L);//閲嶆柊璐存爣 if (!wrkMastService.updateById(wrkMast)){ throw new CoolException("寮傚父锛岃閲嶆柊鐢宠"); } @@ -819,7 +820,7 @@ wrkMast.setIoTime(now); wrkMast.setWrkSts(51L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID wrkMast.setIoType(202); // 鍏ュ嚭搴撶姸鎬侊細202.鎷嗗灈鍚庡嚭搴� - wrkMast.setIoPri(13D); // 浼樺厛绾� + wrkMast.setIoPri(99D); // 浼樺厛绾� wrkMast.setSourceStaNo(param.getDevNo$()); wrkMast.setStaNo(140); //璐存爣绔欑偣 // 鎿嶄綔浜哄憳鏁版嵁 diff --git a/src/main/java/com/zy/asrs/task/BarcodeUploadScheduler.java b/src/main/java/com/zy/asrs/task/BarcodeUploadScheduler.java index f0d4c9b..617ff6e 100644 --- a/src/main/java/com/zy/asrs/task/BarcodeUploadScheduler.java +++ b/src/main/java/com/zy/asrs/task/BarcodeUploadScheduler.java @@ -17,7 +17,7 @@ private BarcodeUploadHandler barcodeUploadHandler; @Scheduled(cron = "0/3 * * * * ? ") - private void execute(){ + private void execute(){//鏉$爜涓婁紶涓帶 int[] staNos =new int[]{216,220}; for (int staNo : staNos){ ReturnT<String> result = barcodeUploadHandler.start(staNo); diff --git a/src/main/java/com/zy/asrs/task/BareBoardScheduler.java b/src/main/java/com/zy/asrs/task/BareBoardScheduler.java index b16e89c..79283e4 100644 --- a/src/main/java/com/zy/asrs/task/BareBoardScheduler.java +++ b/src/main/java/com/zy/asrs/task/BareBoardScheduler.java @@ -28,7 +28,7 @@ private ConfigService configService; @Scheduled(cron = "0/3 * * * * ? ") - private void execute(){ + private void execute(){//鑷姩璋冪┖鏉垮嚭搴� Config config = configService.selectById(10468); if (!Cools.isEmpty(config) && !Cools.isEmpty(config.getValue()) && config.getValue().equals("Y")){ bareBoardHandler.start(); diff --git a/src/main/java/com/zy/asrs/task/RailwayPlatformScheduler.java b/src/main/java/com/zy/asrs/task/RailwayPlatformScheduler.java new file mode 100644 index 0000000..ccf3e81 --- /dev/null +++ b/src/main/java/com/zy/asrs/task/RailwayPlatformScheduler.java @@ -0,0 +1,30 @@ +package com.zy.asrs.task; + +import com.zy.asrs.task.core.ReturnT; +import com.zy.asrs.task.handler.RailwayPlatformHandler; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +/** + * Created by Monkey D. Luffy on 2023.09.17 + * 寰愬伐姹変簯..............浠ヤ笅.............涓婇ザ姹熼摐.............鑷姩琛ョ┖鏉� + */ +@Component +public class RailwayPlatformScheduler { + + @Autowired + private RailwayPlatformHandler railwayPlatformHandler; + + @Scheduled(cron = "0/3 * * * * ? ") + private void execute(){//涓婃姤鏈堝彴 + int[] staNos =new int[]{144}; + for (int staNo : staNos){ + ReturnT<String> result = railwayPlatformHandler.start(staNo); + if (result.getCode()==200){ + break; + } + } + } + +} diff --git a/src/main/java/com/zy/asrs/task/handler/BarcodeUploadHandler.java b/src/main/java/com/zy/asrs/task/handler/BarcodeUploadHandler.java index 2aa7ee6..14fe7d7 100644 --- a/src/main/java/com/zy/asrs/task/handler/BarcodeUploadHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/BarcodeUploadHandler.java @@ -53,7 +53,7 @@ public ReturnT<String> start(int staNo) { try { BasDevp basDevp = basDevpService.selectById(staNo); - if (!Cools.isEmpty(basDevp) && !Cools.isEmpty(basDevp.getBarcode()) && basDevp.getWrkNo()==9992){ + if (!Cools.isEmpty(basDevp) && !Cools.isEmpty(basDevp.getBarcode()) && basDevp.getWrkNo()==9992){ //涓婁紶鍓嶅伐浣滃彿璺熺數鎺х害瀹氫负9992锛堜綘鍙互鑷畾涔夛級 WaitPakin waitPakin = waitPakinService.selectOne(new EntityWrapper<WaitPakin>().eq("zpallet", basDevp.getBarcode())); if (Cools.isEmpty(waitPakin)){ ReturnT<String> result = null; @@ -102,7 +102,7 @@ "涓婃姤erp绯荤粺", erpUrl + erpPath, null, - "127.0.0.1", + erpUrl, JSON.toJSONString(combParam), response, success diff --git a/src/main/java/com/zy/asrs/task/handler/RailwayPlatformHandler.java b/src/main/java/com/zy/asrs/task/handler/RailwayPlatformHandler.java new file mode 100644 index 0000000..4933811 --- /dev/null +++ b/src/main/java/com/zy/asrs/task/handler/RailwayPlatformHandler.java @@ -0,0 +1,121 @@ +package com.zy.asrs.task.handler; + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.core.common.Cools; +import com.core.exception.CoolException; +import com.zy.asrs.entity.*; +import com.zy.asrs.entity.param.BalconyWrkMastParam; +import com.zy.asrs.service.*; +import com.zy.asrs.task.AbstractHandler; +import com.zy.asrs.task.core.ReturnT; +import com.zy.common.service.CommonService; +import com.zy.common.utils.HttpHandler; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * Created by Monkey D. Luffy on 2023.09.17 + * 寰愬伐姹変簯..............浠ヤ笅.............涓婇ザ姹熼摐.............鑷姩涓婃姤鏈堝彴 + */ +@Slf4j +@Service +@Transactional +public class RailwayPlatformHandler extends AbstractHandler<String> { + + @Autowired + private WrkMastService wrkMastService; + @Autowired + private WrkDetlService wrkDetlService; + @Autowired + private CommonService commonService; + @Autowired + private StaDescService staDescService; + @Autowired + private ApiLogService apiLogService; + @Autowired + private BasDevpService basDevpService; + @Autowired + private OrderService orderService; + + @Value("${srXghyErp.url}") + private String erpUrl; + @Value("${srXghyErp.railwayPlatformpath}") + private String railwayPlatformpath; + + public ReturnT<String> start(int staNo) { + try { + BasDevp basDevp = basDevpService.selectById(staNo); + if (!Cools.isEmpty(basDevp) && !Cools.isEmpty(basDevp.getWrkNo()) && basDevp.getWrkNo()<9990){ + WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()).eq("sta_no", staNo).eq("wrk_sts", 55L)); + if (!Cools.isEmpty(wrkMast)){ + List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); + BalconyWrkMastParam balconyWrkMastParam = new BalconyWrkMastParam(wrkMast, wrkDetls); + + ReturnT<String> result = null; + for (int i=1;i<7;i++){ + balconyWrkMastParam.setBalcony(i); + result = postMesData(railwayPlatformpath,balconyWrkMastParam); +// System.out.println(result); + if (result.getCode()==200){ + return SUCCESS; + }else { + log.error("鍑哄簱淇℃伅涓婁紶涓帶澶辫触,鏈堝彴缂栧彿{}",i); + } + } + + } + } + }catch (Exception e){ + log.error("寮傚父锛侊紒锛�"+e); + return FAIL; + } + return FAIL; + } + + private ReturnT<String> postMesData(String erpPath,Object combParam){ + if(combParam != null){ + String response = ""; + boolean success = false; + try { + response = new HttpHandler.Builder() + .setUri(erpUrl) + .setPath(erpPath) + .setJson(JSON.toJSONString(combParam)) + .build() + .doPost(); + JSONObject jsonObject = JSON.parseObject(response); + if (jsonObject.getString("result").equals("Y")) { + success = true; + } else { + log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}"+erpUrl+erpPath, JSON.toJSONString(combParam), response); + throw new CoolException("涓婃姤erp绯荤粺澶辫触"); + } + } catch (Exception e) { + log.error("fail", e); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return FAIL.setMsg(e.getMessage()); + } finally { + try { + // 淇濆瓨鎺ュ彛鏃ュ織 + apiLogService.save( + "涓婃姤erp绯荤粺", + erpUrl + erpPath, + null, + erpUrl, + JSON.toJSONString(combParam), + response, + success + ); + } catch (Exception e) { log.error("", e); } + } + } + return SUCCESS; + } +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 485aabb..d88b5cd 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -62,6 +62,7 @@ url: 192.168.101.250:1082 # 鐮佸灈浣嶆潯鐮佷笂鎶� barcodeUploadPath: EosServer/PluginGateway.ashx?pluginid=DataIOHttp&func=senddata&userno=ASRS&sign=5DD885999945BA2F3DC9A61F1B857DB3&dataname=cprkwc + railwayPlatformpath: EosServer/PluginGateway.ashx?pluginid=DataIOHttp&func=senddata&userno=ASRS&sign=5DD885999945BA2F3DC9A61F1B857DB3&dataname=cprkwc # 鍏ュ簱涓婃姤 inPath: EosServer/PluginGateway.ashx?pluginid=DataIOHttp&func=senddata&userno=ASRS&sign=5DD885999945BA2F3DC9A61F1B857DB3&dataname=cprkwc # 鍑哄簱涓婃姤 -- Gitblit v1.9.1