164 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			164 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
 | ||
| /// <summary>
 | ||
| ///INTERFACE IMPLIMENT FOR TABLE t_wmsImportSeeds
 | ||
| ///By wm with codesmith. 
 | ||
| ///on 07/21/2019
 | ||
| /// </summary>
 | ||
| 
 | ||
| using System;
 | ||
| using System.Data.SqlClient;
 | ||
| using DeiNiu.Utils; 
 | ||
| namespace DeiNiu.wms.Data.Model
 | ||
| {
 | ||
|     [Serializable]  class WmsImportSeeds_Imp : WmsImportSeeds_base_Imp
 | ||
|     { 
 | ||
|         protected override void CmdPrepare(SqlCommand sqlCmd)
 | ||
|         { 
 | ||
|             base.CmdPrepare(sqlCmd);
 | ||
|             WmsImportSeeds mObj = ( WmsImportSeeds)modelObj;
 | ||
|             switch (_cust_op_flag)
 | ||
|             {
 | ||
|              case 99:  //query with dic
 | ||
|                     _strSql = "SELECT *,0 AS isLightUp, 0 AS isPicked ,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo  FROM v_seeds  WHERE DR = 1 " + mObj.CmdParameters[0].ToString();
 | ||
|                     _strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END" + " ORDER BY ID DESC";
 | ||
|                     _strSql += ";SELECT COUNT(*) FROM v_seeds  WHERE DR = 1 " + mObj.CmdParameters[0].ToString();
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@START", this._rownumStart);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@END", this._rownumEnd);
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
|                 case 100:  //by seedsNo
 | ||
|                     _strSql = "SELECT * FROM t_wmsImportSeeds WHERE seedsNo = @seedsNo order by custName";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@seedsNo", mObj.CmdParameters[0]);
 | ||
|                     break;
 | ||
|                 case 201:// start load seeds with deskId, 适合不同仓库不同seedsno的情况
 | ||
|                     String cols = "[deskId], [elabId] ,[port],[seedsNo] ,[barcode] ,[custName] ,[itemName]  ,[count] ,[countOut] ,[unit] ,[category1] ,[category2],[category3] ,[spec] ,[elabAddress] ,[description]";
 | ||
|                     _strSql = "insert t_wmsImportSeeds_tmp({0}) select {1} from v_availableSeeds "
 | ||
|                                 + " WHERE deskId = @deskId and seedsNo =@seedsNo ";
 | ||
|                     _strSql = String.Format(_strSql, cols, cols);
 | ||
|                     _strSql += ";";
 | ||
|                     _strSql += "delete from  t_wmsImportSeeds WHERE deskId = @deskId and seedsNo =@seedsNo ";
 | ||
|                     sqlCmd.CommandText = _strSql; 
 | ||
|                       
 | ||
|                      sqlCmd.Parameters.AddWithValue("@deskId", mObj.CmdParameters[0]);                  
 | ||
|                      sqlCmd.Parameters.AddWithValue("@seedsNo", mObj.CmdParameters[1]);
 | ||
|                       
 | ||
|                     break;
 | ||
|                 case 301:  //start light an item, 适合不同仓库不同seedsno的情况,deskid 已分配好
 | ||
|                     _strSql = "update t_wmsImportSeeds_tmp "
 | ||
|                         + "set color= @color,operater =@operater,state=1"
 | ||
|                         + "WHERE deskId = @deskId and seedsNo=@seedsNo and barcode =@barcode";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@deskId", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@seedsNo", mObj.CmdParameters[1]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@barcode", mObj.CmdParameters[2]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@operater", mObj.CmdParameters[3]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@color", mObj.CmdParameters[4]);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 200:// start load seeds ,不分配deskId
 | ||
|                     cols = "[deskId],[empId], [elabId] ,[port],[seedsNo] ,[barcode] ,[custName] ,[itemName]  ,[count] ,[countOut] ,[unit] ,[category1] ,[category2],[category3] ,[spec] ,[elabAddress] ,[description],[picktime],[createtime]";
 | ||
|                      _strSql = "insert t_wmsImportSeeds_tmp({0},[state]) select {1},{2} from t_wmsImportSeeds "
 | ||
|                                 + " WHERE  seedsNo =@seedsNo ";
 | ||
|                     
 | ||
|                     _strSql += ";delete from  t_wmsImportSeeds WHERE seedsNo =@seedsNo ";
 | ||
|                     _strSql += ";insert t_wmsImportSeeds_history({0},[state],[operater],[lastmodified]) "
 | ||
|                                + " select {1},[state],[operater],[lastmodified] from t_wmsImportSeeds_tmp";//把历史已完成分拣的数据导入history
 | ||
|                     _strSql += " where state={3}";
 | ||
|                     _strSql += ";delete from  t_wmsImportSeeds_tmp WHERE state={3} ";
 | ||
|                     _strSql = String.Format(_strSql, cols, cols, (int)enumSeedsState.处理中, (int)enumSeedsState.已亮灯); 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     //sqlCmd.Parameters.AddWithValue("@deskId", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@seedsNo", mObj.CmdParameters[1]);
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 300:  //start light an item,根据deskId ->custNames, 结合 barcode找到亮灯数据
 | ||
|                     _strSql = "select * from t_wmsImportSeeds_tmp "
 | ||
|                         + " WHERE  seedsNo=@seedsNo and barcode =@barcode "
 | ||
|                         + " and state <@state"
 | ||
|                         + " and deskId=@deskId";
 | ||
|                         // + " and (/*elabId > 0*/ or exists(select 1 from t_wmsDeskCustomer where deskId=@deskId and custName = t_wmsImportSeeds_tmp.custName))";
 | ||
|                      //  +" and (  exists(select 1 from t_wmsDeskCustomer where deskId=@deskId and custName = t_wmsImportSeeds_tmp.custName))"; 
 | ||
| 
 | ||
|                         sqlCmd.CommandText = _strSql;
 | ||
|                      sqlCmd.Parameters.AddWithValue("@deskId", mObj.CmdParameters[0]);                  
 | ||
|                      sqlCmd.Parameters.AddWithValue("@seedsNo", mObj.CmdParameters[1]);
 | ||
|                      sqlCmd.Parameters.AddWithValue("@barcode", mObj.CmdParameters[2]);
 | ||
|                      sqlCmd.Parameters.AddWithValue("@state", enumSeedsState.已亮灯);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 302:  //反查亮灯
 | ||
|                     _strSql = "select * from v_seeds "
 | ||
|                         + "WHERE  seedsNo=@seedsNo and barcode =@barcode "
 | ||
|                         + " and state =@state"
 | ||
|                         + " and operater =@operater"
 | ||
| 
 | ||
|                         + " and exists(select 1 from t_wmsDeskCustomer where deskId=@deskId and custName = v_seeds.custName)";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@deskId", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@seedsNo", mObj.CmdParameters[1]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@barcode", mObj.CmdParameters[2]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@operater", mObj.CmdParameters[3]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@state", enumSeedsState.已按灭);
 | ||
|                     break;
 | ||
|                 case 400:  //get seeds by barcode
 | ||
|                     _strSql = "update t_wmsImportSeeds_tmp "
 | ||
|                         + "set color= @color,operater =@operater,state=1"
 | ||
|                         + "WHERE deskId = @deskId and seedsNo=@seedsNo and barcode =@barcode";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@deskId", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@seedsNo", mObj.CmdParameters[1]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@barcode", mObj.CmdParameters[2]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@operater", mObj.CmdParameters[3]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@color", mObj.CmdParameters[4]);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 500:  //更新亮灯状态 相应灯光按灭事件
 | ||
|                     _strSql = "update t_wmsImportSeeds_tmp set state = @stateLight, picktime = getdate()  WHERE id =@id "
 | ||
|                           + " and state!= @stateLight";
 | ||
|                 //    _strSql += " and state < @statePicked";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@id", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@stateLight", mObj.CmdParameters[1]);
 | ||
|                  //   sqlCmd.Parameters.AddWithValue("@statePicked", enumSeedsState.已亮灯);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 600:  //删除分拣单
 | ||
|                     _strSql = "delete from t_wmsImportSeeds where seedsNo =@seedsNo ; ";
 | ||
|                     _strSql += " delete from t_wmsImportSeeds_tmp where seedsNo =@seedsNo ; "; 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@seedsNo", mObj.CmdParameters[0]); 
 | ||
|                     break;
 | ||
|                 case 601:  //查询可删除分拣单
 | ||
|                     _strSql = " select count(1) from v_seeds where seedsNo =@seedsNo and state >= @state; "; 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@seedsNo", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@state",(int)enumSeedsState.已亮灯);
 | ||
|                     break;
 | ||
|                 case 700:  //查询可删除分拣单
 | ||
|                     _strSql = " select sum(countOut),sum(count) from v_seeds where seedsNo =@seedsNo and barcode = @barcode; ";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@seedsNo", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@barcode", mObj.CmdParameters[1]);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 800:  //by deskid,barcode
 | ||
|                     _strSql = "SELECT * FROM t_wmsImportSeeds_tmp WHERE deskId = @deskId and barcode=@barcode";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@deskId", mObj.CmdParameters[1]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@barcode", mObj.CmdParameters[0]);
 | ||
|                     break;
 | ||
|                 case 900:  //by deskid
 | ||
|                     _strSql = "SELECT * FROM t_wmsLocation WHERE partion = @deskId ";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@deskId", mObj.CmdParameters[0]);
 | ||
|                    
 | ||
|                     break;
 | ||
|             }
 | ||
|         }
 | ||
|     }
 | ||
| } |