2023-05-23 16:13:17 +08:00
/// <summary>
///INTERFACE IMPLIMENT FOR TABLE t_wmsStockMaintain
///By wm with codesmith.
///on 06/21/2017
/// </summary>
2024-11-02 21:03:22 +08:00
using DeiNiu.Utils ;
2023-05-23 16:13:17 +08:00
using System ;
using System.Data.SqlClient ;
namespace DeiNiu.wms.Data.Model
{
[Serializable] class WmsStockMaintain_Imp : WmsStockMaintain_base_Imp
{
protected override void CmdPrepare ( SqlCommand sqlCmd )
{
base . CmdPrepare ( sqlCmd ) ;
WmsStockMaintain mObj = ( WmsStockMaintain ) modelObj ;
switch ( _cust_op_flag )
{
case 99 : //query with dic
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo FROM t_wmsStockMaintain 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_wmsStockMaintain 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_wmsStockMaintain WHERE NAME = @NAME" ;
sqlCmd . CommandText = _strSql ;
sqlCmd . Parameters . AddWithValue ( "@NAME" , mObj . CmdParameters [ 0 ] ) ;
break ;
case 200 : //data for maintain
int days = 3 ;
#if DEBUG
days = 60 ;
#else
#endif
string locId = mObj . CmdParameters [ 0 ] . ToString ( ) ;
_strSql = "SELECT top 50 * FROM [v_stockMaintain4wince] " ;
string strWh = " WHERE 下次养护 <= getdate() + " + days ;
if ( ! string . IsNullOrEmpty ( locId ) )
{
strWh + = " and 货位 =@locationId " ;
sqlCmd . Parameters . AddWithValue ( "@locationId" , locId ) ;
}
_strSql + = strWh + " order by 货位 ;" ;
_strSql + = "SELECT count(*) FROM [v_stockMaintain4wince] " + strWh ;
sqlCmd . CommandText = _strSql ;
break ;
2024-11-02 21:03:22 +08:00
2023-05-23 16:13:17 +08:00
case 300 : //issue data for maintain
2023-05-23 23:33:56 +08:00
_strSql = "SELECT * FROM [v_stockMaintain4wince] WHERE state =" + ( int ) DeiNiu . Utils . enumStockLocationStatus . 养 护 异 常 ;
2023-05-23 16:13:17 +08:00
if ( ! string . IsNullOrEmpty ( mObj . CmdParameters [ 0 ] . ToString ( ) ) )
{
_strSql + = " and skuId =@skuId " ;
sqlCmd . Parameters . AddWithValue ( "@skuId" , mObj . CmdParameters [ 0 ] ) ;
}
_strSql + = " order by 货位 " ;
sqlCmd . CommandText = _strSql ;
break ;
case 400 : // 待维护商品列表[v_stockMaintainRecord]
2024-11-02 21:03:22 +08:00
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo FROM v_stockgoodsMaintain WHERE " +
// " (ISNULL(maintainDate ,getdate()-1)< getdate()) " +
" nextMainTainDate < getdate() + " + WmsConstants . MAINTAIN_TASK_DAYS
+ mObj . CmdParameters [ 0 ] . ToString ( ) ;
2023-05-23 16:13:17 +08:00
_strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END" + " ORDER BY [nextMainTainDate],part,locationId DESC" ;
2024-11-02 21:03:22 +08:00
_strSql + = ";SELECT COUNT(*) FROM v_stockgoodsMaintain WHERE " +
//"( (ISNULL(maintainDate ,getdate()-1)< getdate())) "
" nextMainTainDate < getdate() + " + WmsConstants . MAINTAIN_TASK_DAYS
+ mObj . CmdParameters [ 0 ] . ToString ( ) ;
2023-05-23 16:13:17 +08:00
sqlCmd . CommandText = _strSql ;
sqlCmd . Parameters . AddWithValue ( "@START" , this . _rownumStart ) ;
sqlCmd . Parameters . AddWithValue ( "@END" , this . _rownumEnd ) ;
sqlCmd . CommandText = _strSql ;
break ;
case 420 : // 养护记录
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo FROM v_stockMaintainRecord WHERE 1= 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_stockMaintainRecord 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 430 : // 临近有效期列表
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo FROM v_stockgoodsMaintain WHERE validdate > GETDATE() AND validdate < GETDATE() + @days " ;
_strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END" + " ORDER BY validdate ASC" ;
_strSql + = ";SELECT COUNT(*) FROM v_stockGoods WHERE validdate > GETDATE() and validdate < GETDATE() + @days " ;
sqlCmd . CommandText = _strSql ;
sqlCmd . Parameters . AddWithValue ( "@START" , this . _rownumStart ) ;
sqlCmd . Parameters . AddWithValue ( "@END" , this . _rownumEnd ) ;
sqlCmd . Parameters . AddWithValue ( "@days" , mObj . CmdParameters [ 0 ] ) ;
sqlCmd . CommandText = _strSql ;
break ;
case 440 : // 过有效期列表
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo FROM v_stockgoodsMaintain WHERE validdate < GETDATE() " ;
_strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END" + " ORDER BY validdate ASC" ;
_strSql + = ";SELECT COUNT(*) FROM v_stockGoods WHERE validdate < GETDATE()" ;
sqlCmd . CommandText = _strSql ;
sqlCmd . Parameters . AddWithValue ( "@START" , this . _rownumStart ) ;
sqlCmd . Parameters . AddWithValue ( "@END" , this . _rownumEnd ) ;
sqlCmd . CommandText = _strSql ;
break ;
2024-11-02 21:03:22 +08:00
case 500 : //根据货位的分区、巷道获取待养护的任务
_strSql = "SELECT top 50 * FROM [v_stockGoodsMaintain] " +
" where nextMainTainDate < getdate() +" + WmsConstants . MAINTAIN_TASK_DAYS +
" and part=@part" +
" and channel =@channel" +
" order by shelf,layer,col " ; ;
sqlCmd . CommandText = _strSql ;
sqlCmd . Parameters . AddWithValue ( "@part" , mObj . CmdParameters [ 0 ] ) ;
sqlCmd . Parameters . AddWithValue ( "@channel" , mObj . CmdParameters [ 1 ] ) ;
sqlCmd . CommandText = _strSql ;
break ;
2023-05-23 16:13:17 +08:00
}
}
}
}