514 lines
		
	
	
		
			27 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			514 lines
		
	
	
		
			27 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
 | ||
| /// <summary>
 | ||
| ///INTERFACE IMPLIMENT FOR TABLE t_wmsOutRequest
 | ||
| ///By wm with codesmith. 
 | ||
| ///on 05/18/2017
 | ||
| /// </summary>
 | ||
| 
 | ||
| using System;
 | ||
| using System.Data.SqlClient;
 | ||
| using DeiNiu.Utils; 
 | ||
| namespace DeiNiu.wms.Data.Model
 | ||
| {
 | ||
|     [Serializable]  class WmsOutRequest_Imp : WmsOutRequest_base_Imp
 | ||
|     { 
 | ||
|         protected override void CmdPrepare(SqlCommand sqlCmd)
 | ||
|         { 
 | ||
|             base.CmdPrepare(sqlCmd);
 | ||
|             WmsOutRequest mObj = ( WmsOutRequest)modelObj;
 | ||
|             switch (_cust_op_flag)
 | ||
|             {
 | ||
| 
 | ||
|                 case 99:  //query orders with free parameters 
 | ||
|                     _strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo  FROM t_wmsOutRequest WHERE DR = 1 " + mObj.CmdParameters[0].ToString();
 | ||
|                     _strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END " + " ORDER BY PRIORITY desc,ID desc"; ;
 | ||
|                     _strSql += ";SELECT COUNT(*) FROM t_wmsOutRequest WHERE DR = 1  " + mObj.CmdParameters[0].ToString();
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@START", this._rownumStart);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@END", this._rownumEnd);
 | ||
|                     break;
 | ||
|                 case 100:  //by orderNo
 | ||
|                     _strSql = "SELECT * FROM t_wmsOutRequest WHERE orderNo = @orderNo";
 | ||
|                     sqlCmd.CommandText = _strSql; 
 | ||
|                      sqlCmd.Parameters.AddWithValue("@orderNo",   mObj.CmdParameters[0]  );
 | ||
|                     break;
 | ||
|                 case 200:  // 
 | ||
|                     _strSql = "SELECT * FROM t_wmsOutRequest r WHERE state = @state";
 | ||
|                      
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[0]);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 201:  // 待出库 
 | ||
|                     _strSql = "SELECT top(@cnt) * FROM t_wmsOutRequest r with(nolock)  WHERE pickOrderNo is null"
 | ||
|                         + " and state = @state"
 | ||
|                         //+ " and startOn =@startOn "
 | ||
| 
 | ||
|                         + " and isnull(dueDate,getdate())<=getdate()+@daysLater";
 | ||
|                         
 | ||
|                         /*+
 | ||
|                               // 据上次发货时间间隔满足客户发货间隔定义;满足集货时间定义的
 | ||
|                         " and ( exists(select 1 from v_customerCanStockOut where custid = r.customerid) " +
 | ||
|                         "   or exists( select 1 from v_erp_bussinessDoc where r.customerid =businessId) )" +
 | ||
|                         */
 | ||
|                         
 | ||
|                  
 | ||
|                     // _strSql += " and not exists(select 1 from v_stockOutDetailStockNotAvailable where orderno = r.orderno )";
 | ||
| 
 | ||
|                     /*WaveRule wr = (WaveRule)mObj.CmdParameters[1];
 | ||
| 
 | ||
|                      if (wr.lineId > 0)
 | ||
|                      {
 | ||
|                          _strSql += " and exists(select 1 from t_tmsLineDetail where custId =r.customerId and lineid =@lineId ) ";
 | ||
|                          sqlCmd.Parameters.AddWithValue("@lineId", wr.lineId);
 | ||
|                      }
 | ||
| 
 | ||
|                      if (!string.IsNullOrEmpty(wr.sales))
 | ||
|                      {
 | ||
|                          _strSql += " and salesperson =@sales ";
 | ||
|                          sqlCmd.Parameters.AddWithValue("@sales", wr.sales);
 | ||
|                      } */
 | ||
|                     //  _strSql += " order by orderType, priority desc,lastModified,customerId,owner ";
 | ||
|                     _strSql += " order by  lastModified ";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@cnt", WmsConstants.OUT_PROCESS_ORDERS_CNT*10);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@daysLater", WmsConstants.DUE_DAYS_AUTO_PICK);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[0]);
 | ||
|                    // sqlCmd.Parameters.AddWithValue("@startOn", mObj.CmdParameters[1]);
 | ||
|                     break;
 | ||
|                 case 2011:  // customer 待出库 
 | ||
|                     _strSql = "SELECT   * FROM t_wmsOutRequest r with(nolock)  WHERE pickOrderNo is null"
 | ||
|                         + " and state = @state" 
 | ||
|                         + " and isnull(dueDate,getdate())<=getdate()+@daysLater" +
 | ||
|                         " and  r.customerid =@custId";   
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@custId", mObj.CmdParameters[1]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@daysLater", WmsConstants.DUE_DAYS_AUTO_PICK);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[0]);
 | ||
|                     // sqlCmd.Parameters.AddWithValue("@startOn", mObj.CmdParameters[1]);
 | ||
|                     break;
 | ||
|                 case 202:  //插入待同步临时数据
 | ||
|                     _strSql = "DELETE FROM  t_erp_sale_tmp; "
 | ||
|                         + "INSERT INTO t_erp_sale_tmp  " +
 | ||
|                         "SELECT top (@cnt) ID, orderNo,timeFromErp FROM [v_stockOutRequest_Available] order by timeFromErp";
 | ||
|                     sqlCmd.Parameters.AddWithValue("@cnt", WmsConstants.OUT_PROCESS_ORDERS_CNT);
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     break; 
 | ||
|                 case 300:  //get order request detail by ORDERNO
 | ||
|                     _strSql = "SELECT * FROM t_wmsOutRequestDetail WHERE ORDERNO = @ORDERNO";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@ORDERNO", mObj.CmdParameters[0]);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 400:  //get order out detail by ORDERNO
 | ||
|                     _strSql = "SELECT * FROM v_stockOutDetail_wms WHERE ORDERNO = @ORDERNO";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@ORDERNO", mObj.CmdParameters[0]);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 500: //sync sales order with erp
 | ||
|                     // pay attention on the insert order 
 | ||
|                      
 | ||
|                     string cols = "[locationid],[orderNo],[goodsId],[skuId],[skuCode] ,[batch]  ,[count] ,[bulkCount],[batch1Count],[boxcnt],[productDate],[state]  ,[validDate],[whtype],[price],[priority]";
 | ||
|                     
 | ||
|                     _strSql  = string.Format(" ; insert into t_wmsoutdetail({0}) SELECT {1} FROM [v_stockOutDetail_available] ", cols, cols); // first insert outdetail
 | ||
| 
 | ||
|                     cols = "[locationid],[orderNo]  ,[orderSn]  ,[goodsId]  ,[skuId],[skuCode] ,[batch]  ,[productDate]  ,[validDate]  ,[Count] ,[saleDate]   ,[state]  ,[whtype],[price],[priority]";
 | ||
|                     _strSql  += string.Format(" ; insert into t_wmsOutRequestDetail({0}) SELECT {1} FROM [v_stockOutRequestDetail_available] ", cols, cols);//second insert request out detail
 | ||
|                     /*
 | ||
|                     cols = "[orderNo],[orderType],[orderTypeName],[ownerCode],[customerId],[customerName],[custAddress] ,[delivery],[phone1],[phone2] ,[salesperson] ,[contactperson] ,[totalnumber],[remark] ,[orderDate] ,[dueDate],[fandian],[priority]";
 | ||
|                     _strSql += string.Format(" ;insert  into t_wmsOutRequest({0}) SELECT {1} FROM [v_stockOutRequest_Available] ", cols, cols); //insert detail first, then main table
 | ||
|                     */
 | ||
|                     cols = "[orderNo],[orderType],[orderTypeName],[ownerCode],[customerId],[customerName],[custAddress] ,[delivery],[phone1],[phone2] ,[salesperson] ,[contactperson] ,[totalnumber],[remark] ,[orderDate] ,[dueDate],[fandian],[priority]";
 | ||
|                     _strSql += string.Format(" ;insert  into t_wmsOutRequest({0}) SELECT {1} FROM [v_stockOutRequest_Available_tmp] ", cols, cols); //insert detail first, then main table
 | ||
|                      
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     
 | ||
|                     break;
 | ||
|            
 | ||
|                     //自动核准需立即分拣的订单类型进入分拣环节
 | ||
|                 case 501:
 | ||
| 
 | ||
|                   //  _strSql = "UPDATE t_wmsOutRequest SET STATE =@status,operater =@operater where exists(select 1 from v_stockOutRequest_LastSycs where orderNo = t_wmsOutRequest.orderNo)";
 | ||
|                     _strSql = "UPDATE v_stockOutRequest_LastSycs SET STATE =@status,operater =@operater ,lastmodified =getdate() where 1=1";
 | ||
|                    //  _strSql += " and  pickStartOn =  " + (int)enumOutPickStartOn.立即分拣;  
 | ||
|                   /* if (WmsConstants.FENDIAN_IN_ONE_PICK_ORDER)
 | ||
|                    {
 | ||
|                         _strSql += " and  custType!=@custType and priority =@priority ";  
 | ||
|                         sqlCmd.Parameters.AddWithValue("@custType", (int)enumCustomerType.连锁分店);
 | ||
|                         sqlCmd.Parameters.AddWithValue("@priority", (int)enumOutPriority.高);
 | ||
|                     }
 | ||
|                     */
 | ||
| 
 | ||
|                     sqlCmd.Parameters.AddWithValue("@status", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@operater", mObj.CmdParameters[1]);
 | ||
|                
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 502: // 新仓库出库订单按客户属性预分拣设置
 | ||
|                     _strSql = "update v_stockOutRequest_LastSycs "
 | ||
|                             + "set pickType =custPickType,pickGroup =custPickGroup,pickStartOn =custPickStartOn";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
|                 case 503: // 新仓库出库订单 
 | ||
|                     _strSql = "select * from v_stockOutRequest_LastSycs ";
 | ||
|                             
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
|              case 504:
 | ||
| 
 | ||
|                     _strSql = " SELECT * FROM v_stockOutRequest_Available_tmp order by timeFromErp desc";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
| 
 | ||
|                     break;
 | ||
|                 case 600: //get new orders to sync with erp
 | ||
|                     
 | ||
|                     //_strSql = string.Format("SELECT {0} FROM [v_stockOutRequest_Available] order by customerId", "-1 as id,*");
 | ||
|                     _strSql =  "SELECT * FROM [v_stockOutRequest_Available] a "
 | ||
|                         + " where exists (select 1 from t_erp_sale_tmp where orderNo= a.orderNo )"
 | ||
|                         +" order by customerId" ;
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
| 
 | ||
|                 case 800: //get orders by order type and status
 | ||
| 
 | ||
|                    // _strSql = "SELECT * FROM [t_wmsoutdetail] a where exists(select 1 from t_wmsoutrequest  where orderNo = a.orderNo and orderType =@orderType and status =@status)";
 | ||
|                     _strSql = "SELECT a.*,b.customerId FROM [t_wmsoutdetail] a left outer join t_wmsoutrequest b on a.orderNo = b.orderNo "
 | ||
|                                 + " where  b.orderType =@orderType and b.status =@status "
 | ||
|                                 + " order by b.[customerId]";
 | ||
|                     sqlCmd.Parameters.AddWithValue("@orderType", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@status", mObj.CmdParameters[1]);
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql; 
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
| 
 | ||
|                 case 900: //get order details group by custid
 | ||
|                    // string cols2 = "-1 as operater,GETDATE() as lastmodified,true as dr,  -1 as id ";
 | ||
|                    // _strSql = string.Format("SELECT  {0} FROM [v_stockOutDetailByCust] order by customerName,custAddress ", "*");
 | ||
|                     _strSql =  " SELECT  * FROM [v_stockOutDetailByCust] " ;
 | ||
|                           //   + "SELECT * FROM t_wmsOutRequest WHERE state = @state";
 | ||
|                     
 | ||
|                     //sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.CommandText = _strSql; 
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 1000: //get error pickdetails
 | ||
|                    
 | ||
|                     _strSql = "SELECT * FROM [t_wmsOutPickDetail_error] order by pickOrderNo" ;
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
|                   case 1100: //get error pickdetails
 | ||
| 
 | ||
|                     _strSql = "SELECT * FROM [v_stockOutRequestSales] ";
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
|                      
 | ||
|                 case 1200: // update order status
 | ||
| 
 | ||
|                     _strSql = " update t_wmsOutRequest set state =@state ,pickOrderNo =@pickOrderNo"
 | ||
|                               + ",operater =@operId,lastmodified = getdate() "
 | ||
|                               +" where   state =@stateOld "
 | ||
| 		                      +" and customerId = @custId and customerName =@custName and custAddress =@custAddress  ";
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                    
 | ||
|                      sqlCmd.Parameters.AddWithValue("@custId", mObj.CmdParameters[0]);
 | ||
|                      sqlCmd.Parameters.AddWithValue("@custName", mObj.CmdParameters[1]);
 | ||
|                      sqlCmd.Parameters.AddWithValue("@custAddress", mObj.CmdParameters[2]);
 | ||
|                      sqlCmd.Parameters.AddWithValue("@pickOrderNo", mObj.CmdParameters[3]);
 | ||
|                      sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[4]);
 | ||
|                      sqlCmd.Parameters.AddWithValue("@stateOld", mObj.CmdParameters[5]);
 | ||
|                      sqlCmd.Parameters.AddWithValue("@operId", mObj.CmdParameters[6]);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 1210: // update order status and pickorderNo  with tmp table
 | ||
| 
 | ||
|                     _strSql = " update t_wmsOutRequest set state =@state ,pickOrderNo =@pickOrderNo"
 | ||
|                               + ",operater =@operId,lastmodified = getdate() "
 | ||
|                               + " where 1=1"  
 | ||
|                              + " and exists(select 1 from t_wmsOutRequestTmp where orderno = t_wmsoutRequest.orderNo) ;";
 | ||
|                     _strSql += "delete from t_wmsStockLack where exists(select 1 from t_wmsOutRequestTmp where orderno = t_wmsStockLack.orderNo);";
 | ||
|                  sqlCmd.CommandText = _strSql; 
 | ||
|                    
 | ||
|                     sqlCmd.Parameters.AddWithValue("@pickOrderNo", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[1]); 
 | ||
|                     sqlCmd.Parameters.AddWithValue("@operId", mObj.CmdParameters[2]);
 | ||
|                     break;
 | ||
|              
 | ||
|                 case 1211: // update order status with pickorderno and new status
 | ||
| 
 | ||
|                     _strSql = " update t_wmsOutRequest set state =@state "
 | ||
|                               + ",operater =@operId,lastmodified = getdate() "
 | ||
|                               + " where   state =@stateOld and  pickOrderNo =@pickOrderNo ";
 | ||
|                              
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     sqlCmd.Parameters.AddWithValue("@pickOrderNo", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[1]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@stateOld", mObj.CmdParameters[2]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@operId", mObj.CmdParameters[3]);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 1212: // update order status with pickorderno and new status
 | ||
| 
 | ||
|                     _strSql = " update t_wmsOutRequest set state =@state "
 | ||
|                               + ",operater =@operId,lastmodified = getdate() "
 | ||
|                               + " where    pickOrderNo =@pickOrderNo ";
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     sqlCmd.Parameters.AddWithValue("@pickOrderNo", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[1]); 
 | ||
|                     sqlCmd.Parameters.AddWithValue("@operId", mObj.CmdParameters[2]);
 | ||
|                     break;
 | ||
| 
 | ||
| 
 | ||
|                 case 1300: //prepare the out request orders for pick 
 | ||
| 
 | ||
|                      
 | ||
|                    //待合并订单,库存满足,则进入合并流程
 | ||
|                     _strSql = " update t_wmsOutRequest  set state =@statePrepare "
 | ||
|                               + " where 1=1 " 
 | ||
|                               + "  and state > @orderStateReady  "
 | ||
|                               + " and pickOrderNo is null"
 | ||
|                               +"  and not exists(select 1 from [v_stockOutRequestNoStock] "
 | ||
|                               +"  where orderNo = t_wmsOutRequest.orderNo);";
 | ||
| 
 | ||
|                     //待合并订单,库存不满足,则缺货状态
 | ||
|                     _strSql += " update t_wmsOutRequest  set state =@orderStateNoStock "
 | ||
|                           + " where 1=1 "
 | ||
|                         //+"  and state < @orderStateReady  "
 | ||
|                           +"  and state >= @orderStateApproved  "   
 | ||
|                         //  + " and state = @orderStateApproved  "
 | ||
|                           + " and pickOrderNo is null"
 | ||
|                           + "  and exists(select 1 from [v_stockOutRequestNoStock] "
 | ||
|                           + "  where orderNo = t_wmsOutRequest.orderNo);";
 | ||
| 
 | ||
|                     // 更新订单明细状态 库存不足
 | ||
|                        _strSql  += "  update t_wmsOutDetail  set state =@stateNoStock ,description =@descNoStock"
 | ||
|                                 + ",operater =@operId,lastmodified = getdate() "
 | ||
|                                 + " where exists(select 1 from [v_stockOutRequestNoStock] "
 | ||
|                                 +" where id = t_wmsOutDetail.id);";
 | ||
|                     //更新明细,若明细是已经缺货状态,从新检查库存,更新状态
 | ||
|                        _strSql += "  update t_wmsOutDetail set state =@dStateReady ,description =''"
 | ||
|                                 + ",operater =@operId,lastmodified = getdate() "
 | ||
|                                 + " where  state =@stateNoStock "
 | ||
|                                 + " and exists (select 1 from t_wmsOutRequest where pickOrderNo is null and orderNo = t_wmsOutDetail.orderNo)"
 | ||
|                                 + " and not exists(select 1 from [v_stockOutRequestNoStock]"
 | ||
|                                 + " where id = t_wmsOutDetail.id);";
 | ||
|                      
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
|                      //  _strSql += " delete from t_wmsOutRequestTmp;";
 | ||
|                        sqlCmd.CommandText = _strSql;
 | ||
|                        sqlCmd.Parameters.AddWithValue("@stateNoStock", mObj.CmdParameters[0]);
 | ||
|                        sqlCmd.Parameters.AddWithValue("@descNoStock", mObj.CmdParameters[1]);
 | ||
|                        sqlCmd.Parameters.AddWithValue("@dStateReady", mObj.CmdParameters[2]); 
 | ||
|                        sqlCmd.Parameters.AddWithValue("@statePrepare", mObj.CmdParameters[3]); 
 | ||
|                        sqlCmd.Parameters.AddWithValue("@operId", mObj.CmdParameters[4]);
 | ||
| 
 | ||
|                        sqlCmd.Parameters.AddWithValue("@orderStateReady", (int)enumOutStockRequestStatus.待审核);
 | ||
|                        sqlCmd.Parameters.AddWithValue("@orderStateNoStock", (int)enumOutStockRequestStatus.库存不足);
 | ||
|                        sqlCmd.Parameters.AddWithValue("@orderStateApproved", (int)enumOutStockRequestStatus.待出库);
 | ||
| 
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
|               
 | ||
| 
 | ||
|                 case 1400:
 | ||
|                     _strSql = "select * from  v_stockOutDetailByOrder where orderNo =@orderNo";
 | ||
|                     sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
|                 case 1500: //delete bad data
 | ||
|                     _strSql = "delete from t_wmsOutDetail where exists"
 | ||
|                         + "(select 1 from t_wmsOutRequest where state =0 and orderNo = t_wmsOutDetail.orderNo);";
 | ||
|                     _strSql += " delete from  t_wmsOutRequest where state =0  ";
 | ||
|                   
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
| 
 | ||
|                 case 1600:
 | ||
|                     _strSql = "select top(@cnt) * from  t_wmsOutRequest where state =@state order by customerId";
 | ||
|                     sqlCmd.Parameters.AddWithValue("@cnt", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[1]);
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 1610:
 | ||
|                     _strSql = "insert into t_wmsOutRequestTmp values(@orderNo);";
 | ||
|                     _strSql += " update t_wmsOutRequest set lastmodified=getdate() where orderNo=@orderNo;";
 | ||
|                     sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);  
 | ||
|                     sqlCmd.CommandText = _strSql; 
 | ||
|                     break;
 | ||
|                 case 1620:
 | ||
|                     _strSql = "delete from t_wmsOutRequestTmp";
 | ||
|                     if(!string.IsNullOrEmpty( mObj.CmdParameters[0].ToString())){
 | ||
|                       _strSql+="  where orderNo =@orderNo ;";
 | ||
|                       sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
 | ||
|                     } 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 1630:
 | ||
|                     _strSql = "select top(@cnt) * from  t_wmsOutRequest where state =@state order by customerId";
 | ||
|                     sqlCmd.Parameters.AddWithValue("@cnt", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@state", mObj.CmdParameters[1]);
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
|                     //check store by skuId 
 | ||
|                   case 1640:
 | ||
|                     _strSql = "select * from  v_stockOutDetailByCustStockNotAvailableBySkuId  "; 
 | ||
|                     sqlCmd.CommandText = _strSql; 
 | ||
| 
 | ||
|                     break;
 | ||
|                     //check store by goodsId and batch
 | ||
|                   case 1670:
 | ||
|                     _strSql = "select * from  v_stockOutDetailByCustStockNotAvailableByBatch  ";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
|                   case 1680:
 | ||
|                     _strSql = "select * from  v_stockOutDetailByCustStockNotAvailableByGoodsId  ";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
|                   case 1650:
 | ||
|                     _strSql = "select 1 from  v_stockOutDetailByCust ";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
|                   case 1660:
 | ||
|                     _strSql = "select * from  v_stockOutDetailByCustStockNotAvailable  ";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
|                   case 1700:
 | ||
|                     _strSql = "select * from v_stockOutRequest4DasSumDetailInfo where "
 | ||
|                         +" [pickgroup] =@pickGroup and [pickStartOn] =@pickStartOn "
 | ||
|                         +" and duedate =@dueDate "
 | ||
|                         + " and requestState =@orderState and state =@detailState ";
 | ||
|                      
 | ||
|                     sqlCmd.Parameters.AddWithValue("@pickGroup", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@pickStartOn", mObj.CmdParameters[1]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@dueDate", mObj.CmdParameters[2]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@orderState", mObj.CmdParameters[3]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@detailState", mObj.CmdParameters[4]); 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
|                   case 1701:
 | ||
| 
 | ||
|                     _strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo  FROM v_stockOutRequest4DasSumDetailInfo WHERE 1 = 1 " + mObj.CmdParameters[0].ToString();
 | ||
|                     _strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END order by custcount desc";
 | ||
|                     _strSql += ";SELECT COUNT(*) FROM v_stockOutRequest4DasSumDetailInfo WHERE 1 = 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 1702:
 | ||
|                     _strSql = "select   * from  [v_stockOutRequest4DasDetail] where skuId=@skuId";
 | ||
|                     sqlCmd.Parameters.AddWithValue("@skuId", mObj.CmdParameters[0]);
 | ||
|                   
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
|                   case 1703:
 | ||
|                     _strSql = "select   * from  [v_stockOutRequest4DasDetail] where goodsId=@goodsId";
 | ||
|                     sqlCmd.Parameters.AddWithValue("@goodsId", mObj.CmdParameters[0]); 
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
|                 
 | ||
|                   case 1800:
 | ||
|                    _strSql = "insert into  t_wmsOutPickDetail (pickOrderNo,skuId,skucode,goodsId,batch,count,bulkCount,batch1Count,boxcnt,state,operater )"
 | ||
|                               + " select @pickOrderNo,skuId,skucode,goodsId,batch,count,bulkCount,batch1Count,boxcnt,state, @operater from v_stockOutRequest4DasSumDetailInfo where " 
 | ||
|                               + " [pickgroup] =@pickGroup and [pickStartOn] =@pickStartOn "
 | ||
|                               + " and duedate =@dueDate "
 | ||
|                               + " and requestState =@orderState1 and state =@detailState ";
 | ||
| 
 | ||
|                     _strSql += "; update t_wmsOutRequest set state= @orderState2 ,pickOrderNo =@pickOrderNo " 
 | ||
|                        + "where pickgroup =@pickGroup and pickStartOn =@pickStartOn"
 | ||
|                        + " and duedate =@dueDate "
 | ||
|                        ;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@pickGroup", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@pickStartOn", mObj.CmdParameters[1]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@dueDate", mObj.CmdParameters[2]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@orderState1", mObj.CmdParameters[3]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@detailState", mObj.CmdParameters[4]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@pickOrderNo", mObj.CmdParameters[5]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@operater", mObj.CmdParameters[6]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@orderState2", (int)enumOutStockRequestStatus.准备分拣);
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     break;
 | ||
| 
 | ||
| 
 | ||
|                   case 1900:
 | ||
|                     _strSql = "select   * from  [v_stockOutRequestDetail_available] where  skuId is null or skuId=0";
 | ||
|                    
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
| 
 | ||
|                     break;
 | ||
| 
 | ||
|                   case 2000:
 | ||
|                     _strSql = "select   * from  t_wmsOutRequest where  pickOrderno=@pickorder";
 | ||
| 
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     sqlCmd.Parameters.AddWithValue("@pickorder", mObj.CmdParameters[0]);
 | ||
|                     break; 
 | ||
| 
 | ||
|                   case 2100:
 | ||
|                     _strSql = "  update t_wmsOutDetail set state= @stateLack ,description= @desc "
 | ||
|                       + " where orderNo =@orderNo and skuId =@skuId"; 
 | ||
|                     sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@skuId", mObj.CmdParameters[1]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@desc", mObj.CmdParameters[2]);
 | ||
|                     sqlCmd.Parameters.AddWithValue("@stateLack", (int)enumOutStockDetailStatus.库存不足);
 | ||
|                     break;
 | ||
| 
 | ||
|                 case 3000:
 | ||
|                     _strSql = "select * from t_wmsOutRequestTmp";
 | ||
|                     sqlCmd.CommandText = _strSql;
 | ||
|                     break;
 | ||
| 
 | ||
|             }
 | ||
|         }
 | ||
|     }
 | ||
| } |