src/main/java/com/zy/asrs/controller/MobileController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/controller/OpenController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/entity/TestMast.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/MobileService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/StartUpTestPACKScheduler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/handler/StarUpTestPACKHandler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/utils/PostMesDataUtils.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/application.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/MobileController.java
@@ -330,22 +330,25 @@ /*...........................赣州新增..............以下.............赣州新增...........................*/ @PostMapping("/test/startUp/auth") @ManagerAuth(memo = "申请PACK测试") public synchronized R startUpTestPACK(@RequestBody TestMast testMast) { if (Cools.isEmpty(testMast)) { return R.parse(BaseRes.PARAM); } mobileService.startUpTestPACK(testMast); //提交测试系统 return R.ok(); } // @PostMapping("/test/startUp/auth") // @ManagerAuth(memo = "申请PACK测试") // public synchronized R startUpTestPACK(@RequestBody TestMast testMast) { // if (Cools.isEmpty(testMast)) { // return R.parse(BaseRes.PARAM); // } // mobileService.startUpTestPACK(testMast); //提交测试系统 // return R.ok(); // } @PostMapping("/test/suspend/auth") // @ManagerAuth(memo = "暂停测试") @ResponseBody public synchronized R suspendTestPACK(@RequestBody SearchLocParam param) { mobileService.suspendTestPACK(param.getBarcode()); //请求暂停测试 return R.ok(); if (mobileService.suspendTestPACK(param.getBarcode())){ //请求暂停测试 return R.ok(); }else { return R.error("暂停失败"); } } /*...........................赣州新增..............以上.............赣州新增...........................*/ src/main/java/com/zy/asrs/controller/OpenController.java
@@ -250,31 +250,30 @@ return R.ok(map); } @PostMapping("/rpv/infoReview/auth/v1") @AppAuth(memo = "测试条码信息复核请求") public synchronized R infoReview(@RequestHeader(required = false) String appkey, @RequestBody(required = false) Review param, HttpServletRequest request) { appkey = "ea1f0459efc02a79f046f982767939ae"; auth(appkey, param, request); if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } TestMast testMast = openService.infoReview(param); if (testMast.getStatus() == 3) { return R.ok(); } else if (testMast.getStatus() == 2) { return R.error("等待员工操作..."); } return R.error(); } // @PostMapping("/rpv/infoReview/auth/v1") // @AppAuth(memo = "测试条码信息复核请求") // public synchronized R infoReview(@RequestHeader(required = false) String appkey, // @RequestBody(required = false) Review param, // HttpServletRequest request) { // appkey = "ea1f0459efc02a79f046f982767939ae"; // auth(appkey, param, request); // if (Cools.isEmpty(param)) { // return R.parse(BaseRes.PARAM); // } // TestMast testMast = openService.infoReview(param); // if (testMast.getStatus() == 3) { // return R.ok(); // } else if (testMast.getStatus() == 2) { // return R.error("等待员工操作..."); // } // return R.error(); // } @PostMapping("/rpv/testFinish/auth/v1") @AppAuth(memo = "测试完成") public synchronized R testFinish(@RequestHeader(required = false) String appkey, @RequestBody(required = false) Review param, HttpServletRequest request) { appkey = "ea1f0459efc02a79f046f982767939ae"; auth(appkey, param, request); Map<String, Boolean> map = new HashMap<>(); src/main/java/com/zy/asrs/entity/TestMast.java
@@ -103,7 +103,7 @@ case 0: return "暂停"; case 1: return "申请中"; return "待测"; case 2: return "复核中"; case 3: src/main/java/com/zy/asrs/service/MobileService.java
@@ -39,6 +39,6 @@ //pda申请测试调用 void startUpTestPACK(TestMast testMast); //暂停测试 void suspendTestPACK(String channel); boolean suspendTestPACK(String channel); } src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -634,70 +634,52 @@ @Transactional public void startUpTestPACK(TestMast testMast) { if(Cools.isEmpty(testMast.getLocNo())){ throw new CoolException("库位号为空"); }else if(Cools.isEmpty(testMast.getUserId())){ throw new CoolException("用户编码为空"); log.error("库位号为空"); return; }else if(Cools.isEmpty(testMast.getBarcode())){ throw new CoolException("PACK码为空"); log.error("PACK码为空"); return; } LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>() .eq("loc_no", testMast.getLocNo()) .eq("loc_sts","F") ); if (Cools.isEmpty(locMast)) { throw new CoolException("未查询到库位号:"+testMast.getLocNo()+" 请检查库位号或者检查库位状态是否未在库"); log.error("未查询到库位号:"+testMast.getLocNo()+" 请检查库位号或者检查库位状态是否未在库"); return; } Date now = new Date(); testMast.setStatus(1); testMast.setChannel(locMast.getChannel()); testMast.setModiTime(now); testMast.setAppeTime(now); // 启动测试请求 ReturnT<String> result=startUpTestPACK1(testMast); if (!result.isSuccess()) { if (Cools.isEmpty(result) || !result.isSuccess()) { log.error("测试申请失败", testMast.getBarcode()); throw new CoolException("测试申请失败"); return; } testMast.setStatus(3); if (!testMastService.update(testMast,new EntityWrapper<TestMast>().eq("barcode", testMast.getBarcode()))){ log.error("更新testMast失败"); return; } TestMast testMast1 = testMastService.selectOne(new EntityWrapper<TestMast>() .eq("loc_no", testMast.getLocNo()) .eq("barcode", testMast.getBarcode()) .eq("user_id",testMast.getUserId()) .eq("channel",locMast.getChannel().toString()) .lt("status",4) ); if (Cools.isEmpty(testMast1)){ if (!testMastService.insert(testMast)){ throw new CoolException("添加testMast失败"); } }else { if (!testMastService.update(testMast,new EntityWrapper<TestMast>() .eq("loc_no", testMast.getLocNo()) .eq("barcode", testMast.getBarcode()) .eq("user_id",testMast.getUserId()) .eq("channel",locMast.getChannel().toString()) .lt("status",4) )){ throw new CoolException("更新testMast失败"); } } locMast.setPackStatus(1); locMast.setPackStatus(2); locMast.setModiTime(now); if (!locMastService.update(locMast,new EntityWrapper<LocMast>().eq("loc_no", testMast.getLocNo()))){ throw new CoolException("申请测试失败"); log.error("申请测试失败"); } // throw new CoolException("异常!!!请规范使用或联系管理员"); } @Override @Transactional public void suspendTestPACK(String channel) { public boolean suspendTestPACK(String channel) { ReturnT<String> result=suspendTestPACK1(channel); if (!result.isSuccess()) { log.error("暂停测试失败"); } return result.isSuccess(); } @Transactional public ReturnT<String> startUpTestPACK1(TestMast testMast){ @@ -705,12 +687,12 @@ try { Review review=new Review(); review.setLocNo(testMast.getLocNo()); review.setUserId(testMast.getUserId()); review.setBarcode(testMast.getBarcode()); review.setChannel(testMast.getChannel().toString()); review.setRequestTime(DateUtils.convert(new Date())); if (testMast.getChannel()<1 || testMast.getChannel()>48){ log.error("通道有误,请查看!"); return null; } else if (testMast.getChannel()<=8){ renUrl=renUrl1; }else if (testMast.getChannel()<=16){ src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -798,12 +798,12 @@ Date date = new Date(); locMast.setPackStatus(3); locMast.setModiTime(date); CombParam combParam = new CombParam(); combParam.setPackNo(locMast.getBarcode()); combParam.setLocNo(locMast.getLocNo()); combParam.setPackSts(3); combParam.setRequestTime(DateUtils.convert(new Date())); new PostMesDataUtils().postMesData("MES系统",mesUrl,inpath,combParam); // CombParam combParam = new CombParam(); // combParam.setPackNo(locMast.getBarcode()); // combParam.setLocNo(locMast.getLocNo()); // combParam.setPackSts(3); // combParam.setRequestTime(DateUtils.convert(new Date())); // new PostMesDataUtils().postMesData("MES系统",mesUrl,inpath,combParam); if (!locMastService.update(locMast, new EntityWrapper<LocMast>().eq("loc_no", review.getLocNo()))){ throw new CoolException("更改产品状态失败"); @@ -839,12 +839,12 @@ Date date = new Date(); locMast.setPackStatus(4); locMast.setModiTime(date); CombParam combParam = new CombParam(); combParam.setPackNo(locMast.getBarcode()); combParam.setLocNo(locMast.getLocNo()); combParam.setPackSts(4); combParam.setRequestTime(DateUtils.convert(new Date())); new PostMesDataUtils().postMesData("MES系统",mesUrl,inpath,combParam); // CombParam combParam = new CombParam(); // combParam.setPackNo(locMast.getBarcode()); // combParam.setLocNo(locMast.getLocNo()); // combParam.setPackSts(4); // combParam.setRequestTime(DateUtils.convert(new Date())); // new PostMesDataUtils().postMesData("MES系统",mesUrl,inpath,combParam); if (!locMastService.update(locMast, new EntityWrapper<LocMast>().eq("loc_no", review.getLocNo()))){ throw new CoolException("更改产品状态失败"); src/main/java/com/zy/asrs/task/StartUpTestPACKScheduler.java
New file @@ -0,0 +1,34 @@ package com.zy.asrs.task; import com.zy.asrs.service.LocMastService; import com.zy.asrs.task.core.ReturnT; import com.zy.asrs.task.handler.StarUpTestPACKHandler; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @Component @Slf4j public class StartUpTestPACKScheduler { @Value("${wcs-slave.doubleDeep}") private boolean confirmDeep; @Autowired private StarUpTestPACKHandler starUpTestPACKHandler; /** * */ @Scheduled(cron = "0/3 * * * * ? ") private void execute() { if (confirmDeep) return; ReturnT<String> result = starUpTestPACKHandler.start(); if (!result.isSuccess()) { log.error("申请测试失败"); } } } src/main/java/com/zy/asrs/task/handler/StarUpTestPACKHandler.java
New file @@ -0,0 +1,46 @@ package com.zy.asrs.task.handler; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; import com.zy.asrs.entity.TestMast; import com.zy.asrs.service.MobileService; import com.zy.asrs.service.TestMastService; import com.zy.asrs.task.AbstractHandler; import com.zy.asrs.task.core.ReturnT; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; /** * Created by vincent on 2020/7/6 */ @Service @Slf4j public class StarUpTestPACKHandler extends AbstractHandler<String> { @Autowired private MobileService mobileService; @Autowired private TestMastService testMastService; @Transactional public ReturnT<String> start() { try{ List<TestMast> testMasts = testMastService.selectList(new EntityWrapper<TestMast>().eq("status", 2)); if (Cools.isEmpty(testMasts)){ return SUCCESS; } for (TestMast testMast : testMasts){ mobileService.startUpTestPACK(testMast); } }catch (Exception e){ log.error("申请测试异常,请联系管理员!"); } return SUCCESS; } } src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -132,19 +132,19 @@ } } // 更新订单完成数量 OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch()); try { if(!Cools.isEmpty(orderDetl)){ if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getAnfme())){ // exceptionHandle("全板入库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", // wrkMast.getWrkNo(), wrkMast.getLocNo()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return FAIL.setMsg("全板入库 ===>> 更新订单完成数量失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]"); } } } catch (Exception ignore){} // // 更新订单完成数量 // OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch()); // try { // if(!Cools.isEmpty(orderDetl)){ // if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), // wrkDetl.getBatch(),wrkDetl.getAnfme())){ //// exceptionHandle("全板入库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", //// wrkMast.getWrkNo(), wrkMast.getLocNo()); // TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); // return FAIL.setMsg("全板入库 ===>> 更新订单完成数量失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]"); // } // } // } catch (Exception ignore){} } // 修改库位状态 S ====>> F @@ -406,38 +406,21 @@ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return FAIL.setMsg("全板出库 ===>> 工作明细档为空; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); } for (WrkDetl wrkDetl : wrkDetls101) { Date date = new Date(); WaitPakin waitPakin = new WaitPakin(); waitPakin.setMatnr(wrkDetl.getMatnr()); waitPakin.setMaktx(wrkDetl.getMaktx()); waitPakin.setZpallet(wrkDetl.getZpallet()); // Pack码 waitPakin.setIoStatus("N"); // 入出状态 waitPakin.setAnfme(1.0); // 数量 waitPakin.setStatus("Y"); // 状态 waitPakin.setManuDate(date.toString()); waitPakin.setAppeUser(null); waitPakin.setAppeTime(date); waitPakin.setModiUser(null); waitPakin.setModiTime(date); // waitPakin.setDeadWarn(wrkDetl.getSettingTimes()); if (!waitPakinService.insert(waitPakin)) { throw new CoolException("保存入库通知档失败"); } // 更新订单完成数量 OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch()); try { if(!Cools.isEmpty(orderDetl)){ if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getAnfme())){ // exceptionHandle("全板出库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", // wrkMast.getWrkNo(), wrkMast.getLocNo()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return FAIL.setMsg("全板出库 ===>> 更新订单完成数量失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); } } } catch (Exception ignore){} } // for (WrkDetl wrkDetl : wrkDetls101) { // // 更新订单完成数量 // OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch()); // try { // if(!Cools.isEmpty(orderDetl)){ // if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), // wrkDetl.getBatch(),wrkDetl.getAnfme())){ //// exceptionHandle("全板出库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", //// wrkMast.getWrkNo(), wrkMast.getLocNo()); // TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); // return FAIL.setMsg("全板出库 ===>> 更新订单完成数量失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); // } // } // } catch (Exception ignore){} // } // 删除工作档源库位的库存明细 if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) { // exceptionHandle("全板出库 ===>> 删除库存明细失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); @@ -467,6 +450,8 @@ locMast.setBarcode(""); locMast.setModiTime(now); locMast.setIoTime(now); locMast.setFireStatus(0); locMast.setPackStatus(0); if (!locMastService.updateById(locMast)) { // exceptionHandle("空板出库 ===>> 修改源库位状态失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); src/main/java/com/zy/asrs/utils/PostMesDataUtils.java
@@ -18,6 +18,10 @@ private ApiLogService apiLogService = new ApiLogServiceImpl(); public ReturnT<String> postMesData(String name,String URL,String mesPath, Object combParam){ if (true){ System.out.println("name:"+name+",URL:"+URL+",mesPath:"+mesPath+",combParam:"+combParam); return SUCCESS; } if(combParam != null){ String response = ""; boolean success = false; src/main/resources/application.yml
@@ -12,7 +12,7 @@ enabled: false datasource: driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver url: jdbc:sqlserver://127.0.0.1:1433;databasename=zjfnasrs url: jdbc:sqlserver://192.168.4.13:1433;databasename=zjfnasrs username: sa password: sa@123 mvc: