From db1edf54ea55cf01f8794627b9e38a549afb951f Mon Sep 17 00:00:00 2001 From: wu <731351411@qq.com> Date: 星期一, 27 十一月 2023 09:15:22 +0800 Subject: [PATCH] 更新理片笼逻辑 --- springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java | 103 ++++++++++++++++++++++++++++++--------------------- 1 files changed, 60 insertions(+), 43 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 9a6cb6a..8bad256 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 @@ -1,6 +1,7 @@ package com.example.springboot.service; import java.lang.reflect.Array; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.List; @@ -11,6 +12,7 @@ import com.example.springboot.component.S7control; import com.example.springboot.entity.Glass; import com.example.springboot.entity.StorageCage; +import com.example.springboot.entity.north_glass_buffer1; import com.example.springboot.mapper.SpianMapper; import com.google.common.primitives.Bytes; @@ -33,12 +35,12 @@ double width; double minwidth = 0; - Glass glasslist = spianMapper.selectGlass(glassid); // 鑾峰彇鐜荤拑鍙傛暟 + north_glass_buffer1 glasslist = spianMapper.selectGlass(glassid); // 鑾峰彇鐜荤拑鍙傛暟 if (glasslist == null) { return (300); } - double widths = glasslist.getwidth(); - String orderids = glasslist.getOrderId(); + double widths = glasslist.getglasslengthmm(); + String orderids = glasslist.getordernumber(); List<String> adddresslist = new ArrayList<>(); adddresslist.add("DB105.0");// 杩涚墖杞﹁捣濮嬩綅缃� @@ -74,20 +76,33 @@ cells = cages1.getCell();// 鏍煎瓙鍙� prcid = cages1.getPrcId();// 浼犵粰prc鐨勭洰鏍囧湴id width = cages1.getWidth();// 鏍煎瓙鍓╀綑瀹藉害 - widths = glasslist.getwidth(); + widths = glasslist.getglasslengthmm(); // 鎵ц杩涚墖 datas.add((short) 1000); datas.add((short) prcid); datas.add((short) prctier); - datas.add((short) 1); - // 鏁版嵁搴撲慨鏀圭瀛愯〃鏂板涓�鏉$幓鐠� + datas.add((short) 1); + //鑾峰彇璇ユ牸瀛愬唴鏄惁鏈夌幓鐠� + int cellint=spianMapper.selectcell(cage1,cells); + if(cellint==1){ + //灏嗗鐗囩幓鐠冪殑鏁版嵁鏇存柊鍒板唴鐗� + spianMapper.UpdateDBCage(ids, cage1, cells,1); + //灏嗘柊鍏ョ殑鐜荤拑瀛樺叆澶栫墖 + spianMapper.UpdataAddCage(orderids.toString(), glassid, widths, cage1, cells, ids-1, 2); + spianMapper.UpdataAddCage1(widths, cage1, cells);// 鍑忓皯鏍煎瓙瀹藉害 + spianMapper.Inserttask(0, 0, 1000, ids, glassid.toString());// 鏂板浠诲姟 + S7control.getinstance().WriteWord(adddresslist, datas); + }else{ + // 鏁版嵁搴撲慨鏀圭瀛愯〃鏂板涓�鏉$幓鐠� spianMapper.UpdataAddCage(orderids.toString(), glassid, widths, cage1, cells, ids, 2); spianMapper.UpdataAddCage1(widths, cage1, cells);// 鍑忓皯鏍煎瓙瀹藉害 spianMapper.Inserttask(0, 0, 1000, ids, glassid.toString());// 鏂板浠诲姟 S7control.getinstance().WriteWord(adddresslist, datas); // S7control.getinstance().WriteByte("DB105.16",glassid); + } + return (200); } @@ -118,7 +133,6 @@ double widths = queGlass.getWidth(); String orderids = queGlass.getOrderId(); int num = spianMapper.SelectQueOrder(); - if (num == 1) { // 鑾峰彇璁㈠崟鐩稿叧搴︽渶楂樼殑绗煎瓙鎺掑簭 @@ -142,12 +156,12 @@ prcid = cages1.getPrcId();// 浼犵粰prc鐨勭洰鏍囧湴id // 鏁版嵁搴撲慨鏀圭瀛愯〃鏂板涓�鏉$幓鐠� for (int i = 2; i > 0; i--) { - Glass qglass = spianMapper.SelectQueueGlass(i); - width = qglass.getwidth();// 鏍煎瓙鍓╀綑瀹藉害 - spianMapper.UpdataAddqueCage(qglass.getOrderId(), qglass.getGlassId(), width, cage1, cells, i, + north_glass_buffer1 qglass = spianMapper.SelectQueueGlass(i); + width = qglass.getglasslengthmm();// 鏍煎瓙鍓╀綑瀹藉害 + spianMapper.UpdataAddqueCage(qglass.getordernumber(), qglass.getbarcode(), width, cage1, cells, i, 1); spianMapper.UpdataAddCage1(width, cage1, cells);// 鍑忓皯鏍煎瓙瀹藉害 - spianMapper.Inserttask(0, 0, 1000, ids, qglass.getGlassId().toString());// 鏂板浠诲姟 + spianMapper.Inserttask(0, 0, 1000, ids, qglass.getbarcode().toString());// 鏂板浠诲姟 } // 鎵ц杩涚墖 datas.add((short) 1000); @@ -163,10 +177,10 @@ } else { for (int i = 2; i > 0; i--) { - Glass qglass = spianMapper.SelectQueueGlass(i); - String orderid = qglass.getOrderId().toString(); - String glassid = qglass.getGlassId(); - widths = qglass.getwidth(); + north_glass_buffer1 qglass = spianMapper.SelectQueueGlass(i); + String orderid = qglass.getordernumber().toString(); + String glassid = qglass.getbarcode(); + widths = qglass.getglasslengthmm(); List<StorageCage> storageCage = spianMapper.selectAll(orderid); if (storageCage == null) { return (400); @@ -192,7 +206,7 @@ cells = cages1.getCell();// 鏍煎瓙鍙� prcid = cages1.getPrcId();// 浼犵粰prc鐨勭洰鏍囧湴id width = cages1.getWidth();// 鏍煎瓙鍓╀綑瀹藉害 - widths = qglass.getwidth(); + widths = qglass.getglasslengthmm(); // 鎵ц杩涚墖 datas.add((short) 1000); @@ -327,7 +341,7 @@ datas.add((short) 1); // 鏇存崲鐜荤拑鐨勭瀛� String glassids = spianMapper.SelectGlassid(cage, cell); // 鑾峰彇琚皟鎷ㄧ殑鐜荤拑id - spianMapper.UpdateDBCage(ids, cage, cell);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� + spianMapper.UpdateDBCage(ids, cage, cell,2);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� spianMapper.UpdataAddCage1(glasswidth, cages, cells);// 鍑忓皯鏂版牸瀛愬搴� spianMapper.UpdataOutCage1(glasswidth, cage, cell);// 澧炲姞鍘熸牸瀛愬搴� spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 3);// 娓呴櫎琚皟鎷ㄦ牸瀛愭暟鎹� @@ -354,7 +368,7 @@ datas.add((short) 2); datas.add((short) 1); String glassids = spianMapper.SelectGlassid(cage, cell); // 鑾峰彇琚皟鎷ㄧ殑鐜荤拑id - spianMapper.UpdateDBCage(ids, cage, cell);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� + spianMapper.UpdateDBCage(ids, cage, cell,2);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� spianMapper.Inserttask(2, 0, cageout.getId(), ids, orderid);// 鏂板璋冨害浠诲姟 spianMapper.UpdataAddCage1(glasswidth, cages, cells);// 鍑忓皯鏂版牸瀛愬搴� spianMapper.UpdataOutCage1(glasswidth, cage, cell);// 澧炲姞鍘熸牸瀛愬搴� @@ -373,7 +387,7 @@ } - // @GetMapping("/all2") + public Short selectout2(String glassid) { // spianMapper.UpdatetaskOut(); //瀹屾垚涓婁竴娆″嚭鐗囨垨鑰呰皟搴︿换鍔�,鏀瑰埌plchold閲岋紝鍑虹墖鎴栬皟搴︿换鍔″畬鎴愮珛鍗虫敼鍙樼粨鏉熶换鍔★紱 // 瀹氫箟PRC鏁版嵁浼犻�佹暟缁� @@ -417,7 +431,7 @@ spianMapper.UpdateDBCage2(cage, cell);// 娓呴櫎鍐呯墖鏁版嵁 } S7control.getinstance().WriteWord(adddresslist, datas);// 娲惧彂鍑虹墖杞︿换鍔� - //outmesid(glassid);// 娲惧彂鍑虹墖ID + outmesid(glassid);// 娲惧彂鍑虹墖ID return (200);// 缁撴潫 } else { @@ -433,7 +447,7 @@ spianMapper.Inserttask(1, 0, cageout.getId(), 1000, glassid);// 鏂板浠诲姟 spianMapper.UpdataOutCage1(glasswidth, cage, cell);// 澧炲姞鍘熸牸瀛愬搴� spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, tier, 3);// 娓呴櫎鏍煎瓙鐜荤拑淇℃伅 - //outmesid(glassid);// 娲惧彂鍑虹墖ID + outmesid(glassid);// 娲惧彂鍑虹墖ID S7control.getinstance().WriteWord(adddresslist, datas);// 娲惧彂鍑虹墖杞︿换鍔� return (200);// 缁撴潫 @@ -458,7 +472,7 @@ datas.add((short) 1); // 鏇存崲鐜荤拑鐨勭瀛� String glassids = spianMapper.SelectGlassid(cage, cell); // 鑾峰彇琚皟鎷ㄧ殑鐜荤拑id - spianMapper.UpdateDBCage(ids, cage, cell);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� + spianMapper.UpdateDBCage(ids, cage, cell,2);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� spianMapper.UpdataAddCage1(glasswidth, cages, cells);// 鍑忓皯鏂版牸瀛愬搴� spianMapper.UpdataOutCage1(glasswidth, cage, cell);// 澧炲姞鍘熸牸瀛愬搴� spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 3);// 娓呴櫎琚皟鎷ㄦ牸瀛愭暟鎹� @@ -488,7 +502,7 @@ String glassids = spianMapper.SelectGlassid(cage, cell); // 鑾峰彇琚皟鎷ㄧ殑鐜荤拑id spianMapper.Inserttask(2, 0, cageout.getId() + 1, ids, glassid);// 鏂板璋冨害浠诲姟 spianMapper.Inserttask(1, 0, cageout.getId(), 1000, glassid);// 鏂板鍑虹墖浠诲姟 - spianMapper.UpdateDBCage(ids, cage, cell);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� + spianMapper.UpdateDBCage(ids, cage, cell,2);// 灏嗗師鏍煎瓙鏁版嵁鏇存柊鍒版柊鏍煎瓙閲� spianMapper.UpdataAddCage1(glasswidth, cages, cells);// 鍑忓皯鏂版牸瀛愬搴� spianMapper.UpdataOutCage1(glasswidth, cage, cell);// 澧炲姞鍘熸牸瀛愬搴� spianMapper.UpdataGlassCage("", "", glasswidth, cage, cell, 2, 3);// 娓呴櫎琚皟鎷ㄦ牸瀛愭暟鎹� @@ -503,7 +517,7 @@ } } - + //娲惧彂璋冩嫧浠诲姟鐜荤拑id public void outmesid(String glassid) { System.out.println("outmesid:" + glassid); List<Byte> glassidlist = new ArrayList(); @@ -514,23 +528,26 @@ System.out.println("outmesidbytes:" + bytes.length); S7control.getinstance().WriteByte("DB105.30", bytes);// 娲惧彂鍑虹墖id } - - /*** 淇敼鐢ㄦ埛* @throws SQLException */ - // public static int updateUser(Glass user) throws SQLException {conn = - // getConn(); - // String sql = "update t_user set name=?,gender=?,age=?,score=?"+ " where - // id=?";ps = conn.prepareStatement(sql); - // ps.setString(1, user.getName());ps.setString(2, user.getGender()); - // ps.setInt(3, user.getAge());ps.setDouble(4, user.getScore());ps.setInt(5, - // user.getId());return ps.executeUpdate();} - // /*** 澧炲姞鐢ㄦ埛* @throws SQLException */ - // public static int insertUser(User user) throws SQLException { - // conn = getConn(); - // String sql = "insert into t_user(name,gender,age,score)"+ " values(?,?,?,?)"; - // ps = conn.prepareStatement(sql);ps.setString(1, - // user.getName());ps.setString(2, user.getGender()); - // ps.setInt(3, user.getAge());ps.setDouble(4, user.getScore());return - // ps.executeUpdate(); - // } - + //鑾峰彇鍦板潃鍐呯殑鐜荤拑id杞瓧绗︿覆 + public StringBuilder queGlassid(String address) { + StringBuilder writedstrIdOut = new StringBuilder(); + byte[] writedglassidbytesOut = S7control.getinstance().ReadByte(address, 13); + if (writedglassidbytesOut != null) { + // 鑾峰彇鐜荤拑id + for (byte iditem : writedglassidbytesOut) { + writedstrIdOut.append((char) iditem); + } + } + return writedstrIdOut; + } + //char鏁扮粍杞寲鎴恇it鏁扮粍 + public static byte[] toBytes(char[] chars) { + String s = new String(chars); + return s.getBytes(StandardCharsets.UTF_8); + } + //bit鏁扮粍杞寲鎴恈har鏁扮粍 + public static char[] toChars(byte[] bytes) { + String s = new String(bytes, StandardCharsets.UTF_8); + return s.toCharArray(); + } } -- Gitblit v1.8.0