78 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			78 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								/// <summary>
							 | 
						|||
| 
								 | 
							
								///INTERFACE IMPLIMENT FOR TABLE t_tmsStock
							 | 
						|||
| 
								 | 
							
								///By wm with codesmith. 
							 | 
						|||
| 
								 | 
							
								///on 07/27/2017
							 | 
						|||
| 
								 | 
							
								/// </summary>
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								using System;
							 | 
						|||
| 
								 | 
							
								using System.Data.SqlClient; 
							 | 
						|||
| 
								 | 
							
								namespace DeiNiu.wms.Data.Model
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
								    [Serializable]  class TmsStock_Imp : TmsStock_base_Imp
							 | 
						|||
| 
								 | 
							
								    { 
							 | 
						|||
| 
								 | 
							
								        protected override void CmdPrepare(SqlCommand sqlCmd)
							 | 
						|||
| 
								 | 
							
								        { 
							 | 
						|||
| 
								 | 
							
								            base.CmdPrepare(sqlCmd);
							 | 
						|||
| 
								 | 
							
								            TmsStock mObj = ( TmsStock)modelObj;
							 | 
						|||
| 
								 | 
							
								            switch (_cust_op_flag)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								             case 99:  //query with dic
							 | 
						|||
| 
								 | 
							
								                    _strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo  FROM t_tmsStock  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 t_tmsStock  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 name
							 | 
						|||
| 
								 | 
							
								                    _strSql = "SELECT * FROM t_tmsStock WHERE NAME = @NAME";
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.CommandText = _strSql; 
							 | 
						|||
| 
								 | 
							
								                     sqlCmd.Parameters.AddWithValue("@NAME",   mObj.CmdParameters[0]  );
							 | 
						|||
| 
								 | 
							
								                    break;
							 | 
						|||
| 
								 | 
							
								                case 200:  //to find free location 
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    string locationId = mObj.CmdParameters[0].ToString();
							 | 
						|||
| 
								 | 
							
								                    _strSql = "  SELECT TOP (@cnt) LOC.* FROM t_wmsLocation LOC WHERE LOC.STATE = " + (int)DeiNiu.Utils.enumStockLocationState.正常
							 | 
						|||
| 
								 | 
							
								                                + " AND (isnull(loc.transLine,0) =@transLine or isnull(loc.transLine,0) = 0)"
							 | 
						|||
| 
								 | 
							
								                                + " AND LOC.VOLTYPE = @VOLTYPE AND LOC.WHTYPE =@WHTYPE AND NOT EXISTS (SELECT 1 FROM T_TMSSTOCK WHERE LOCATIONID = LOC.LOCATIONID) "
							 | 
						|||
| 
								 | 
							
								                               ;
							 | 
						|||
| 
								 | 
							
								                    /*
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(locationId))
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        _strSql = _strSql + " AND   LOCATIONID < @LOCATIONID  ORDER BY LOC.layer,LOC.locationId DESC;" //货位序号小优先
							 | 
						|||
| 
								 | 
							
								                                 + _strSql + " AND   LOCATIONID > @LOCATIONID  ORDER BY LOC.layer,LOC.locationId ;";
							 | 
						|||
| 
								 | 
							
								                    }*/
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    _strSql += " ORDER BY loc.transLine, LOC.layer,LOC.locationId DESC;"; //线路货位不足,取公共货位 
							 | 
						|||
| 
								 | 
							
								                     
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.Parameters.AddWithValue("@transLine", mObj.CmdParameters[0]);
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.Parameters.AddWithValue("@VOLTYPE", mObj.CmdParameters[1]);
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.Parameters.AddWithValue("@cnt", mObj.CmdParameters[2]);
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.Parameters.AddWithValue("@WHTYPE", mObj.CmdParameters[3]);
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.CommandText = _strSql;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    break;
							 | 
						|||
| 
								 | 
							
								                case 300:  //get line 整货集货货位 where the cust in
							 | 
						|||
| 
								 | 
							
								                    _strSql = "SELECT top 1 locationId FROM v_tmsLineLocation WHERE custId = @custId and  volType = 6";
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.CommandText = _strSql;
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.Parameters.AddWithValue("@custId", mObj.CmdParameters[0]);
							 | 
						|||
| 
								 | 
							
								                    break;
							 | 
						|||
| 
								 | 
							
								                case 301:  //get public 整货集货货位 
							 | 
						|||
| 
								 | 
							
								                    _strSql = "  SELECT top 1 locationId FROM t_wmsLocation where isnull(transLine,0) =0 and  volType = 6   ";
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.CommandText = _strSql; 
							 | 
						|||
| 
								 | 
							
								                    break;
							 | 
						|||
| 
								 | 
							
								                case 400:  //get 零货集货信息
							 | 
						|||
| 
								 | 
							
								                    _strSql = "  SELECT * from  v_tmsPickRequestBulks where pickOrderNo =@pickOrderNo and (volType = 4 or volType =5)  ";
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.Parameters.AddWithValue("@pickOrderNo", mObj.CmdParameters[0]);
							 | 
						|||
| 
								 | 
							
								                    sqlCmd.CommandText = _strSql;
							 | 
						|||
| 
								 | 
							
								                    break;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 |