From 209a57aecbf26911f6a3ae0692b51ed0289f5b1a Mon Sep 17 00:00:00 2001 From: wu <731351411@qq.com> Date: 星期四, 14 九月 2023 17:04:56 +0800 Subject: [PATCH] 优化理片笼逻辑 --- springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java | 187 +++++++++++++++++++++------------------------- 1 files changed, 86 insertions(+), 101 deletions(-) diff --git a/springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java b/springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java index b1001ea..942e6dd 100644 --- a/springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java +++ b/springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java @@ -19,6 +19,8 @@ // @GetMapping("/all2") public Result selectout(String orderid) { + + spianMapper.UpdatetaskOut(); //瀹屾垚涓婁竴娆″嚭鐗囨垨鑰呰皟搴︿换鍔� // 瀹氫箟PRC鏁版嵁浼犻�佹暟缁� List<String> adddresslist = new ArrayList<>(); adddresslist.add("DB105.6");// 鍑虹墖杞﹁捣濮嬩綅缃� @@ -28,6 +30,13 @@ List<Short> datas = new ArrayList<>(); // 鑾峰彇浼樺厛鍑虹墖鐨勪綅缃� StorageCage cageout = spianMapper.selectOut(orderid); + if(cageout==null){ + return Result.success("200"); + } + + + + int cage = cageout.getCage(); // 鍌ㄥ瓨鍑虹墖浣嶇疆锛岀瀛愭牸瀛愬嚑鍙风幓鐠� int cell = cageout.getCell();// 鍑虹墖鏍煎彿 int tier = cageout.getTier();// 鍑虹墖鍐呭鐗� @@ -41,10 +50,6 @@ if (tier == 2) { // 鍒ゆ柇鐜荤拑鍙洿鎺ュ嚭鐗囨椂 // 淇敼鏁版嵁搴撶瀛愯〃(鍑虹墖) - spianMapper.Inserttask(1, 0,cageout.getId(),1000 );//鏂板浠诲姟 - - - datas.add((short) prcid); datas.add((short) 1000); datas.add((short) 1); @@ -52,9 +57,12 @@ spianMapper.UpdataOutCage1(glasswidth, cage, cell);//澧炲姞鍘熸牸瀛愬搴� spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, tier, 0);//娓呴櫎鏍煎瓙鐜荤拑淇℃伅 - S7control.getinstance().WriteWord(adddresslist, datas); - spianMapper.Updatetask(1, 1);//瀹屾垚浠诲姟 - return Result.success(datas); + spianMapper.Inserttask(1, 0,cageout.getId(),1000 );//鏂板浠诲姟 + + S7control.getinstance().WriteWord("DB106.22", (short)0); //鍑虹墖浠诲姟瀹屾垚鏀规垚0 + S7control.getinstance().WriteWord("DB106.20", (short)1); //鍑虹墖杞︾姸鎬佹敼鎴愬繖纰� + S7control.getinstance().WriteWord(adddresslist, datas);//娲惧彂鍑虹墖杞︿换鍔� + return Result.success(datas);//缁撴潫 } else { // 鑾峰彇鏍煎瓙鐨勭幓鐠冩暟閲� int state = spianMapper.selectGlassState(cage, cell); @@ -68,9 +76,12 @@ spianMapper.Inserttask(1, 0,cageout.getId(),1000 );//鏂板浠诲姟 spianMapper.UpdataOutCage1(glasswidth, cage, cell);//澧炲姞鍘熸牸瀛愬搴� spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, tier, 0);//娓呴櫎鏍煎瓙鐜荤拑淇℃伅 - S7control.getinstance().WriteWord(adddresslist, datas); - spianMapper.Updatetask(1, 1);//瀹屾垚浠诲姟 - return Result.success("鐘舵�佷负0,鐩存帴鍑虹墖"); + S7control.getinstance().WriteWord("DB106.22", (short)0); //鍑虹墖浠诲姟瀹屾垚鏀规垚0 + S7control.getinstance().WriteWord("DB106.20", (short)1); //鍑虹墖杞︾姸鎬佹敼鎴愬繖纰� + S7control.getinstance().WriteWord(adddresslist, datas);//娲惧彂鍑虹墖杞︿换鍔� + //spianMapper.Updatetask(1, 1);//瀹屾垚浠诲姟 + return Result.success(datas);//缁撴潫 + } else { // 鐜荤拑闇�瑕佽皟鎷ㄦ椂锛屽垽鏂睘浜庡摢涓崐鍖虹殑绗煎瓙 if (cage < 6) { @@ -83,34 +94,25 @@ ids = cagecell.getId();// 璋冩嫧鐩爣浣岻D cages=cagecell.getCage();//璋冩嫧鐩爣浣嶇瀛� cells=cagecell.getCell();//璋冩嫧鐩爣浣嶆牸瀛� - spianMapper.Inserttask(2, 0,cageout.getId(),ids );//鏂板璋冨害浠诲姟 - + - // 鏇存崲鐜荤拑鐨勭瀛� - spianMapper.UpdataAddCage1(glasswidth, cages, cells);//鍑忓皯鏂版牸瀛愬搴� - spianMapper.UpdateDBCage(ids, cage, cell);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� + // 濉叆璋冩嫧鏁版嵁 datas.add((short) prcid);// 璋冩嫧澶栫墖璧峰浣嶇疆 datas.add((short) prcid2); datas.add((short) 2); datas.add((short) 1); + // 鏇存崲鐜荤拑鐨勭瀛� + spianMapper.UpdataAddCage1(glasswidth, cages, cells);//鍑忓皯鏂版牸瀛愬搴� + spianMapper.UpdateDBCage(ids, cage, cell);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� + spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 0);// 娓呴櫎琚皟鎷ㄦ牸瀛愭暟鎹� + spianMapper.Inserttask(2, 0,cageout.getId(),ids );//鏂板璋冨害浠诲姟 // 浼犺緭mes鏁版嵁,鍧愭爣锛屾暟鎹� - S7control.getinstance().WriteWord(adddresslist, datas); - spianMapper.Updatetask(1, 2);//瀹屾垚浠诲姟 - datas.clear(); // 娓呯┖鏁翠釜鍒楄〃 - // 鍒ゆ柇璋冩嫧缁撴潫鍚庡啀娆″嚭鐗�,濉叆鍑虹墖鏁版嵁 - datas.add((short) prcid); - datas.add((short) 1000); - datas.add((short) 1); - datas.add((short) 1); - spianMapper.Inserttask(2, 0,cageout.getId(),1000 );//鏂板鍑虹墖浠诲姟 - spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 0);// 娓呴櫎鍘熸牸瀛愭暟鎹� - spianMapper.UpdataOutCage1(glasswidth, cage, cell);//澧炲姞鍘熸牸瀛愬搴� - S7control.getinstance().WriteWord(adddresslist, datas); - // 淇敼鏁版嵁搴撶瀛愯〃(鍑虹墖) - spianMapper.Updatetask(1, 1);//瀹屾垚浠诲姟 - return Result.success(cagecell); // 璋冩嫧浣嶇疆鐨勫弬鏁板唴瀹� + S7control.getinstance().WriteWord("DB106.22", (short)0); //鍑虹墖浠诲姟瀹屾垚鏀规垚0 + S7control.getinstance().WriteWord("DB106.20", (short)1); //鍑虹墖杞︾姸鎬佹敼鎴愬繖纰� + S7control.getinstance().WriteWord(adddresslist, datas);//娲惧彂鍑虹墖杞︿换鍔� + return Result.success(cagecell); //缁撴潫 } else {// 绗煎瓙鍙峰ぇ浜�5鏃� StorageCage cagecell = spianMapper.selectGlassCage(cage, glasswidth, 5, 11); @@ -128,25 +130,14 @@ datas.add((short) 2); datas.add((short) 1); spianMapper.Inserttask(2, 0,cageout.getId(),ids );//鏂板璋冨害浠诲姟 - // 杞Щ鍘熻皟鎷ㄦ牸瀛愭暟鎹� spianMapper.UpdataAddCage1(glasswidth, cages, cells);//鍑忓皯鏂版牸瀛愬搴� spianMapper.UpdateDBCage(ids, cage, cell);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� + spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 0);// 娓呴櫎琚皟鎷ㄦ牸瀛愭暟鎹� // 浼犺緭mes鏁版嵁,鍧愭爣锛屾暟鎹� - S7control.getinstance().WriteWord(adddresslist, datas); - spianMapper.Updatetask(1, 2);//瀹屾垚浠诲姟 - datas.clear(); // 娓呯┖鏁翠釜鍒楄〃 - // 鍒ゆ柇璋冩嫧缁撴潫鍚庡啀娆″嚭鐗� - // 濉叆鍑虹墖鏁版嵁 - datas.add((short) prcid); - datas.add((short) 1000); - datas.add((short) 1); - datas.add((short) 1); - spianMapper.Inserttask(2, 0,cageout.getId(),1000 );//鏂板鍑虹墖浠诲姟 - spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 0);// 娓呴櫎鍘熸牸瀛愭暟鎹嚭鐗� - spianMapper.UpdataOutCage1(glasswidth, cage, cell);//澧炲姞鍘熸牸瀛愬搴� - S7control.getinstance().WriteWord(adddresslist, datas); - spianMapper.Updatetask(1, 1);//瀹屾垚浠诲姟 - return Result.success(cagecell); // 璋冩嫧浣嶇疆鐨勫弬鏁板唴瀹� + S7control.getinstance().WriteWord("DB106.22", (short)0); //鍑虹墖浠诲姟瀹屾垚鏀规垚0 + S7control.getinstance().WriteWord("DB106.20", (short)1); //鍑虹墖杞︾姸鎬佹敼鎴愬繖纰� + S7control.getinstance().WriteWord(adddresslist, datas);//娲惧彂鍑虹墖杞︿换鍔� + return Result.success(cagecell); //缁撴潫 } @@ -167,9 +158,11 @@ int tiers; int prctier; - + spianMapper.Updatetask(1, 0);//瀹屾垚浠诲姟 Glass glasslist = spianMapper.selectGlass(glassid); - + if(glasslist==null){ + return (300); + } double widths = glasslist.getWidth(); Short orderids = glasslist.getOrderId(); @@ -198,11 +191,12 @@ tiers = cages1.getTier();// 鍐呭鐗� cells = cages1.getCell();// 鏍煎瓙鍙� prcid = cages1.getPrcId();// 浼犵粰prc鐨勭洰鏍囧湴id - spianMapper.Inserttask(0, 0, 1000, ids);//鏂板浠诲姟 + if (glasslist == null) { return (300); } + spianMapper.Inserttask(0, 0, 1000, ids);//鏂板浠诲姟 prctier = spianMapper.selectsum(cage1, cells);// 浼犵粰prc鐨勬牸瀛愬唴鐜荤拑鏁� // 鏈夊悎閫傜┖鏍兼椂杩涚墖 if (cages > 1 && cages1.getTier() != null) { @@ -214,9 +208,10 @@ // 鏁版嵁搴撲慨鏀圭瀛愯〃鏂板涓�鏉$幓鐠� spianMapper.UpdataAddCage(orderids, glassid, widths, cage1, cells, ids, 1); spianMapper.UpdataAddCage1(widths, cage1, cells);//鍑忓皯鏍煎瓙瀹藉害 - spianMapper.Updatetask(1, 0);//瀹屾垚浠诲姟 + S7control.getinstance().WriteWord(adddresslist, datas); - + S7control.getinstance().WriteWord("DB106.10", (short)0); //杩涚墖浠诲姟瀹屾垚鏀规垚0 + S7control.getinstance().WriteWord("DB106.8", (short)1); //杩涚墖杞︾姸鎬佹敼鎴愬繖纰� return (200); } } @@ -227,7 +222,7 @@ } // @GetMapping("/all2") - public Result selectout2(String glassid) { + public Short selectout2(String glassid) { // 瀹氫箟PRC鏁版嵁浼犻�佹暟缁� List<String> adddresslist = new ArrayList<>(); adddresslist.add("DB105.6");// 鍑虹墖杞﹁捣濮嬩綅缃� @@ -237,7 +232,14 @@ List<Short> datas = new ArrayList<>(); // 鑾峰彇浼樺厛鍑虹墖鐨勪綅缃� StorageCage cageout = spianMapper.selectOut2(glassid); - int cage = cageout.getCage(); // 鍌ㄥ瓨鍑虹墖浣嶇疆锛岀瀛愭牸瀛愬嚑鍙风幓鐠� + if(cageout==null){ + return (300); + } + + + + + int cage = cageout.getCage(); // 鍌ㄥ瓨鍑虹墖浣嶇疆锛岀瀛愭牸瀛愬嚑鍙风幓鐠� int cell = cageout.getCell();// 鍑虹墖鏍煎彿 int tier = cageout.getTier();// 鍑虹墖鍐呭鐗� int prcid = cageout.getPrcId();// prcid @@ -250,10 +252,6 @@ if (tier == 2) { // 鍒ゆ柇鐜荤拑鍙洿鎺ュ嚭鐗囨椂 // 淇敼鏁版嵁搴撶瀛愯〃(鍑虹墖) - spianMapper.Inserttask(1, 0,cageout.getId(),1000 );//鏂板浠诲姟 - - - datas.add((short) prcid); datas.add((short) 1000); datas.add((short) 1); @@ -261,9 +259,12 @@ spianMapper.UpdataOutCage1(glasswidth, cage, cell);//澧炲姞鍘熸牸瀛愬搴� spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, tier, 0);//娓呴櫎鏍煎瓙鐜荤拑淇℃伅 - S7control.getinstance().WriteWord(adddresslist, datas); - spianMapper.Updatetask(1, 1);//瀹屾垚浠诲姟 - return Result.success(datas); + spianMapper.Inserttask(1, 0,cageout.getId(),1000 );//鏂板浠诲姟 + + S7control.getinstance().WriteWord("DB106.22", (short)0); //鍑虹墖浠诲姟瀹屾垚鏀规垚0 + S7control.getinstance().WriteWord("DB106.20", (short)1); //鍑虹墖杞︾姸鎬佹敼鎴愬繖纰� + S7control.getinstance().WriteWord(adddresslist, datas);//娲惧彂鍑虹墖杞︿换鍔� + return (200);//缁撴潫 } else { // 鑾峰彇鏍煎瓙鐨勭幓鐠冩暟閲� int state = spianMapper.selectGlassState(cage, cell); @@ -277,54 +278,49 @@ spianMapper.Inserttask(1, 0,cageout.getId(),1000 );//鏂板浠诲姟 spianMapper.UpdataOutCage1(glasswidth, cage, cell);//澧炲姞鍘熸牸瀛愬搴� spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, tier, 0);//娓呴櫎鏍煎瓙鐜荤拑淇℃伅 - S7control.getinstance().WriteWord(adddresslist, datas); - spianMapper.Updatetask(1, 1);//瀹屾垚浠诲姟 - return Result.success("鐘舵�佷负0,鐩存帴鍑虹墖"); + S7control.getinstance().WriteWord("DB106.22", (short)0); //鍑虹墖浠诲姟瀹屾垚鏀规垚0 + S7control.getinstance().WriteWord("DB106.20", (short)1); //鍑虹墖杞︾姸鎬佹敼鎴愬繖纰� + S7control.getinstance().WriteWord(adddresslist, datas);//娲惧彂鍑虹墖杞︿换鍔� + //spianMapper.Updatetask(1, 1);//瀹屾垚浠诲姟 + return (200);//缁撴潫 + } else { // 鐜荤拑闇�瑕佽皟鎷ㄦ椂锛屽垽鏂睘浜庡摢涓崐鍖虹殑绗煎瓙 if (cage < 6) { StorageCage cagecell = spianMapper.selectGlassCage(cage, glasswidth, 0, 6); if (cagecell == null) { - return Result.success(cagecell); + return (300); } // 鑾峰彇璋冩嫧浣嶇疆杩涜璋冩嫧 prcid2 = cagecell.getPrcId();// 璋冩嫧鐩爣浣峆RCID ids = cagecell.getId();// 璋冩嫧鐩爣浣岻D cages=cagecell.getCage();//璋冩嫧鐩爣浣嶇瀛� cells=cagecell.getCell();//璋冩嫧鐩爣浣嶆牸瀛� - spianMapper.Inserttask(2, 0,cageout.getId(),ids );//鏂板璋冨害浠诲姟 + - // 鏇存崲鐜荤拑鐨勭瀛� - spianMapper.UpdataAddCage1(glasswidth, cages, cells);//鍑忓皯鏂版牸瀛愬搴� - spianMapper.UpdateDBCage(ids, cage, cell);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� + // 濉叆璋冩嫧鏁版嵁 datas.add((short) prcid);// 璋冩嫧澶栫墖璧峰浣嶇疆 datas.add((short) prcid2); datas.add((short) 2); datas.add((short) 1); + // 鏇存崲鐜荤拑鐨勭瀛� + spianMapper.UpdataAddCage1(glasswidth, cages, cells);//鍑忓皯鏂版牸瀛愬搴� + spianMapper.UpdateDBCage(ids, cage, cell);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� + spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 0);// 娓呴櫎琚皟鎷ㄦ牸瀛愭暟鎹� + spianMapper.Inserttask(2, 0,cageout.getId(),ids );//鏂板璋冨害浠诲姟 // 浼犺緭mes鏁版嵁,鍧愭爣锛屾暟鎹� - S7control.getinstance().WriteWord(adddresslist, datas); - spianMapper.Updatetask(1, 2);//瀹屾垚浠诲姟 - datas.clear(); // 娓呯┖鏁翠釜鍒楄〃 - // 鍒ゆ柇璋冩嫧缁撴潫鍚庡啀娆″嚭鐗�,濉叆鍑虹墖鏁版嵁 - datas.add((short) prcid); - datas.add((short) 1000); - datas.add((short) 1); - datas.add((short) 1); - spianMapper.Inserttask(2, 0,cageout.getId(),1000 );//鏂板鍑虹墖浠诲姟 - spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 0);// 娓呴櫎鍘熸牸瀛愭暟鎹� - spianMapper.UpdataOutCage1(glasswidth, cage, cell);//澧炲姞鍘熸牸瀛愬搴� - S7control.getinstance().WriteWord(adddresslist, datas); - // 淇敼鏁版嵁搴撶瀛愯〃(鍑虹墖) - spianMapper.Updatetask(1, 1);//瀹屾垚浠诲姟 - return Result.success(cagecell); // 璋冩嫧浣嶇疆鐨勫弬鏁板唴瀹� + S7control.getinstance().WriteWord("DB106.22", (short)0); //鍑虹墖浠诲姟瀹屾垚鏀规垚0 + S7control.getinstance().WriteWord("DB106.20", (short)1); //鍑虹墖杞︾姸鎬佹敼鎴愬繖纰� + S7control.getinstance().WriteWord(adddresslist, datas);//娲惧彂鍑虹墖杞︿换鍔� + return (200); //缁撴潫 } else {// 绗煎瓙鍙峰ぇ浜�5鏃� StorageCage cagecell = spianMapper.selectGlassCage(cage, glasswidth, 5, 11); if (cagecell == null) { - return Result.success(cagecell); + return (300); } // 鑾峰彇璋冩嫧浣嶇疆杩涜璋冩嫧 prcid2 = cagecell.getPrcId();// 璋冩嫧鐩爣浣峱rcID @@ -337,28 +333,16 @@ datas.add((short) 2); datas.add((short) 1); spianMapper.Inserttask(2, 0,cageout.getId(),ids );//鏂板璋冨害浠诲姟 - // 杞Щ鍘熻皟鎷ㄦ牸瀛愭暟鎹� spianMapper.UpdataAddCage1(glasswidth, cages, cells);//鍑忓皯鏂版牸瀛愬搴� spianMapper.UpdateDBCage(ids, cage, cell);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� + spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 0);// 娓呴櫎琚皟鎷ㄦ牸瀛愭暟鎹� // 浼犺緭mes鏁版嵁,鍧愭爣锛屾暟鎹� - S7control.getinstance().WriteWord(adddresslist, datas); - spianMapper.Updatetask(1, 2);//瀹屾垚浠诲姟 - datas.clear(); // 娓呯┖鏁翠釜鍒楄〃 - // 鍒ゆ柇璋冩嫧缁撴潫鍚庡啀娆″嚭鐗� - // 濉叆鍑虹墖鏁版嵁 - datas.add((short) prcid); - datas.add((short) 1000); - datas.add((short) 1); - datas.add((short) 1); - spianMapper.Inserttask(2, 0,cageout.getId(),1000 );//鏂板鍑虹墖浠诲姟 - spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 0);// 娓呴櫎鍘熸牸瀛愭暟鎹嚭鐗� - spianMapper.UpdataOutCage1(glasswidth, cage, cell);//澧炲姞鍘熸牸瀛愬搴� - S7control.getinstance().WriteWord(adddresslist, datas); - spianMapper.Updatetask(1, 1);//瀹屾垚浠诲姟 - return Result.success(cagecell); // 璋冩嫧浣嶇疆鐨勫弬鏁板唴瀹� + S7control.getinstance().WriteWord("DB106.22", (short)0); //鍑虹墖浠诲姟瀹屾垚鏀规垚0 + S7control.getinstance().WriteWord("DB106.20", (short)1); //鍑虹墖杞︾姸鎬佹敼鎴愬繖纰� + S7control.getinstance().WriteWord(adddresslist, datas);//娲惧彂鍑虹墖杞︿换鍔� + return (200);//缁撴潫 } - } } @@ -383,3 +367,4 @@ // } } + -- Gitblit v1.8.0