From 35b92e62a6ba557f7feeea1a344e104d8db7ffb4 Mon Sep 17 00:00:00 2001
From: wuyouming666 <2265557248@qq.com>
Date: 星期二, 12 十二月 2023 16:59:44 +0800
Subject: [PATCH] A01启动 B01启动 增加plc地址 单独写入

---
 springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java |   34 ++++++++++++++++++++++++----------
 1 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java b/springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java
index a8ea2dd..be079cd 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java
@@ -20,7 +20,7 @@
      
      //@Select("(select*from storage_cage as a  where a.state=0 and cage%2=0 ORDER BY id LIMIT 1)union (select a.* from storage_cage a inner join  (select cage,if(shu2=1,shu3,shu5) as gezi from ( select  cage, count(case when state1=1 and state2=0 then cell else null end)as shu1,  count(case when state1=0 then cell else null end) as shu2, min(case when state1=1 and state2=0 then cell else null end) as shu3, min(case when state1=0 then cell else null end) as shu4, min(case when state1=0 or state2=0 then cell else null end) as shu5 from  (select *,max(state) as state1,min(state) as state2 from storage_cage group by cage,cell) as a where  cage%2!=0  GROUP BY cage HAVING shu2>1 or (shu2=1 and shu1>0)  ) as sss limit 1)as b on a.cage=b.cage and a.cell=b.gezi and a.state=0 order by tier limit 1) ORDER BY id LIMIT 1;")
     //鑾峰彇璁㈠崟鍙锋帓搴忕殑绌鸿鍗曠瀛�
-     @Select("select a.cage,COUNT(if(a.order_id=#{orderids},a.order_id,null))as orderid,b.shu,c.shu2,a.cell,min(a.state)as state1 from storage_cage a left join (select COUNT(*)shu,cage from storage_cage  where order_id=#{orderids} GROUP BY cage)as b on a.cage=b.cage left join(select cage ,COUNT(glass_id)as shu2 from storage_cage GROUP BY cage)c  on a.cage=c.cage where (order_id=#{orderids} or ''='') GROUP BY cage,cell HAVING state1=0 ORDER BY shu desc,shu2,cage asc; ")
+     @Select("select a.cage,COUNT(if(a.order_id=#{orderids},a.order_id,null))as orderid,b.shu,c.shu2,a.cell,min(a.state)as state1,disabled from storage_cage a left join (select COUNT(*)shu,cage from storage_cage  where order_id=#{orderids} GROUP BY cage)as b on a.cage=b.cage left join(select cage ,COUNT(glass_id)as shu2 from storage_cage GROUP BY cage)c  on a.cage=c.cage where (order_id=#{orderids} or ''='') GROUP BY cage,cell HAVING state1=0 ORDER BY shu desc,shu2,cage asc; ")
      List<StorageCage> selectAll(String orderids);
     //鑾峰彇鍒ゆ柇璇ユ牸瀛愭槸鍚﹂渶瑕佹妸澶栫墖鎺ㄥ叆鍐呯墖浣嶇疆
      @Select("select state from storage_cage where  cage=#{cage} and cell=#{cell} and tier=1;")
@@ -29,7 +29,7 @@
      @Select("select cage,cell,tier,id,ROUND(id/2)as prcId,width from storage_cage where cage=#{cage1} and cell=#{cell} and state=0 and disabled=0 and width>=#{width} ORDER BY cell asc,tier asc LIMIT 1")
      StorageCage selectCage1(int  cage1,int cell,double width);
      //鍒ゆ柇绗煎瓙鍐呯幓鐠冩暟
-     @Select("select COUNT(tier)as tier from storage_cage where  cage=#{cage} and cell=#{cell} and state=1;")
+     @Select("select COUNT(tier)as tier from storage_cage where  cage=#{cage} and cell=#{cell} and state!=0;")
      int selectsum(int cage,int cell);
      //瀹屾垚杩涚墖涓殑鐜荤拑鐘舵��
      @Update("update storage_cage set state=#{state} where glass_id=#{glassid};")
@@ -54,12 +54,15 @@
      int selectGlassState(int  cage,int cell);
 
      //鍒ゆ柇璇ヨ皟鎷ㄧ殑绗煎瓙
-     @Select("select glass_id,cage,cell,max(state)as shu,ROUND(id/2)as prcid,id from storage_cage where width>=#{width} and cage>#{cage1} and cage<#{cage2} GROUP BY cage,cell HAVING shu=0 order by abs(#{cage} - cage) limit 1;")
+     @Select("select glass_id,cage,cell,max(state)as shu,ROUND(id/2)as prcid,id from storage_cage where width>=#{width} and cage>#{cage1} and cage<#{cage2} GROUP BY cage,cell HAVING shu=0 order by abs(#{cage} - cage),cell desc  limit 1;")
      StorageCage selectGlassCage(int cage,double width,int cage1,int cage2);
 
     //鍒犻櫎绗煎瓙淇℃伅(鍑虹墖)
-    @Update("update storage_cage as a set state=#{state},glass_id=#{glassid},order_id=#{orderid},glasswidth=0 where cage=#{cage} and cell=#{cell} and tier=#{tier};")
-    void UpdataGlassCage(String orderid,String glassid,double width,int cage,int cell,int tier,int state);
+    @Update("update storage_cage as a set state=#{state},glass_id=null,order_id=null,glasswidth=0,a.glassheight=null,a.glasswidthmm=null,a.glassheightmm=null,a.listid=null,a.boxid=null where glass_id=#{glassid} and state=3;")
+    void UpdataGlassCage(String glassid,int state);
+     //鏀瑰彉鐜荤拑鐘舵�佷负鍑虹墖涓�
+    @Update("update storage_cage as a set state=#{state} where glass_id=#{glassid};")        
+    void UpdataGlassCageState(String glassid,int state);
 
     //淇敼绗煎瓙淇℃伅(杩涚墖)
     @Update("update storage_cage set state=#{state},glass_id=#{glassid},order_id=#{orderid},glasswidth=#{width} where id=#{id};")
@@ -86,8 +89,8 @@
     // @Insert("insert into user(name, date, address, user_no) values (#{name}, #{date}, #{address}, #{userNo})")
     // void insert (Spian spian);
     //鏂板浠诲姟琛�
-    @Insert("INSERT INTO `canadames`.`storage_task`(`task_type`, `task_state`, `shelf_rack`, `load_rack`,start_time,glass_id) VALUES (#{tasktype},#{taskstate},#{shelfrack},#{loadrack},now(),#{glassid});")
-    void Inserttask(int tasktype,int taskstate,int shelfrack,int loadrack,String glassid);
+    @Insert("INSERT INTO `canadames`.`storage_task`(`task_type`, `task_state`, `shelf_rack`, `load_rack`,start_time,glass_id,count) VALUES (#{tasktype},#{taskstate},#{shelfrack},#{loadrack},now(),#{glassid},#{count});")
+    void Inserttask(int tasktype,int taskstate,int shelfrack,int loadrack,String glassid,int count);
     //淇敼浠诲姟琛�
     @Update("update storage_task set task_state=#{state} where task_type=#{type} and task_state=0;")
     void Updatetask(int state,int type);
@@ -152,14 +155,25 @@
      @Select("select state from queue where type=1")
      int Selectqueuestate();
      //鍒ゆ柇閾濇鍑虹墖琛ㄦ槸鍚︽湁鐜荤拑闇�瑕佸嚭
-     @Select("SELECT glassid FROM `out_slice` where state=0  order by id limit 1;")
+     @Select("SELECT glassid FROM `out_slice` where state=0  order by sequence,id  limit 1;")
      String SelectOutSlice();
      //鍒ゆ柇閾濇鍑虹墖琛ㄦ槸鍚︽湁鐜荤拑姝e湪鍑虹墖涓�
      @Select("SELECT count(*) FROM `out_slice` where state=1;")
      int SelectOutSliceshu();
-     //瀹屾垚鍑虹墖闃熷垪鐨勪换鍔�
+     //鏇存柊鍑虹墖闃熷垪鐨勪换鍔$姸鎬�
      @Update("update out_slice set state=#{state} where glassid=#{glassid}")
      void OverOutSlice(String glassid,int state);
-  
+     //鑾峰彇鐜荤拑鐨勯摑妗唅d
+     @Select("select barcode from out_slice where glassid=#{glassid};")
+     String SelectBarcode(String glassId);    
+     //鑾峰彇鍑虹墖闃熷垪鐨勯摑妗嗘槸鍚﹀叏閮ㄥ畬鎴�
+     @Select("select MIN(state) from out_slice where barcode=#{barcode};")
+     int SelectOverState(String barcode);
+     //鍒犻櫎鍑虹墖闃熷垪璇ラ摑妗嗙殑id
+     @Delete("delete from out_slice where barcode=#{barcode};")
+     void DeleteQueue(String barcode);
+     //鎶婅杩涚墖鐨勭幓鐠冩洿鏂板埌鍑虹墖闃熷垪
+     @Select("update out_slice set state=0 where glassId=#{glassId} and state=3")
+     void UpdateAddQueue(String glassId);
 }   
     
\ No newline at end of file

--
Gitblit v1.8.0