270 lines
12 KiB
C#
270 lines
12 KiB
C#
|
|
/// <summary>
|
|
///INTERFACE IMPLIMENT FOR TABLE t_wmsStockPandian
|
|
///By wm with codesmith.
|
|
///on 07/27/2018
|
|
/// </summary>
|
|
|
|
using System;
|
|
using System.Data.SqlClient;
|
|
using DeiNiu.Utils;
|
|
namespace DeiNiu.wms.Data.Model
|
|
{
|
|
[Serializable] class WmsStockPandian_Imp : WmsStockPandian_base_Imp
|
|
{
|
|
protected override void CmdPrepare(SqlCommand sqlCmd)
|
|
{
|
|
base.CmdPrepare(sqlCmd);
|
|
WmsStockPandian mObj = ( WmsStockPandian)modelObj;
|
|
switch (_cust_op_flag)
|
|
{
|
|
case 99: //query with dic
|
|
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo FROM v_pandian 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_pandian 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_wmsStockPandian WHERE [orderNo] = @orderNo";
|
|
sqlCmd.CommandText = _strSql;
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
break;
|
|
case 200:
|
|
string cols = "[locationId] ,[skuId] ,[skuCode] ,[goodsId],[batch],[productDate],[validDate],[shelfCount],[state] ";
|
|
_strSql = string.Format(
|
|
" insert into t_wmsStockPandianStockMirror([orderNo],{0},[operater]) " +
|
|
"select '{1}',{2}, {3} from v_stockGoods where 1=1 {4} "
|
|
, cols, mObj.CmdParameters[1].ToString(),cols,mObj.CmdParameters[2].ToString(), mObj.CmdParameters[0].ToString());
|
|
|
|
//to update stock set loctation to be disabled
|
|
// _strSql += "; update v_stockGoods set locState =@status where 1=1 " + mObj.CmdParameters[0].ToString();
|
|
// _strSql += "; update v_stockGoods set state =@status where 1=1 " + mObj.CmdParameters[0].ToString();
|
|
// sqlCmd.Parameters.AddWithValue("@status", enumStockLocationStatus.盘点锁定);
|
|
|
|
LogHelper.debug(GetType()," to create mirror: " + _strSql + "");
|
|
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 300:
|
|
|
|
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY GOODSID DESC) as sortNo FROM [v_PandianStockBalance_running] WHERE [orderNo] = @orderNo";
|
|
_strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END" + " ORDER BY GOODSID DESC";
|
|
_strSql += ";SELECT COUNT(*) FROM v_PandianStockBalance_running WHERE [orderNo] = @orderNo";
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
sqlCmd.Parameters.AddWithValue("@START", mObj.CmdParameters[1]);
|
|
sqlCmd.Parameters.AddWithValue("@END", mObj.CmdParameters[2]);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 400:
|
|
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY LOCATIONID DESC) as sortNo FROM [v_PandianStockDiff_running] WHERE [orderNo] = @orderNo";
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
string goodsId = mObj.CmdParameters[1].ToString();
|
|
if (!string.IsNullOrEmpty(goodsId))
|
|
{
|
|
_strSql += " and goodsId =@goodsId";
|
|
sqlCmd.Parameters.AddWithValue("@goodsId", goodsId);
|
|
}
|
|
|
|
|
|
|
|
_strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END" + " ORDER BY LOCATIONID DESC";
|
|
_strSql += ";SELECT COUNT(*) FROM v_PandianStockDiff_running WHERE [orderNo] = @orderNo";
|
|
|
|
if (!string.IsNullOrEmpty(goodsId))
|
|
{
|
|
_strSql += " and goodsId =@goodsId";
|
|
}
|
|
_strSql += "; SELECT * FROM t_wmsStockPandian WHERE [orderNo] = @orderNo";
|
|
sqlCmd.CommandText = _strSql;
|
|
sqlCmd.Parameters.AddWithValue("@START", mObj.CmdParameters[2]);
|
|
sqlCmd.Parameters.AddWithValue("@END", mObj.CmdParameters[3]);
|
|
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
case 410:
|
|
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY LOCATIONID DESC) as sortNo FROM [v_pandianReuslt] WHERE [orderNo] = @orderNo";
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
goodsId = mObj.CmdParameters[1].ToString();
|
|
if (!string.IsNullOrEmpty(goodsId))
|
|
{
|
|
_strSql += " and goodsId =@goodsId";
|
|
sqlCmd.Parameters.AddWithValue("@goodsId", goodsId);
|
|
}
|
|
|
|
|
|
|
|
_strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END" + " ORDER BY LOCATIONID DESC";
|
|
_strSql += ";SELECT COUNT(*) FROM v_pandianReuslt WHERE [orderNo] = @orderNo";
|
|
|
|
if (!string.IsNullOrEmpty(goodsId))
|
|
{
|
|
_strSql += " and goodsId =@goodsId";
|
|
}
|
|
|
|
sqlCmd.CommandText = _strSql;
|
|
sqlCmd.Parameters.AddWithValue("@START", mObj.CmdParameters[2]);
|
|
sqlCmd.Parameters.AddWithValue("@END", mObj.CmdParameters[3]);
|
|
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 420:
|
|
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY GOODSID DESC) as sortNo FROM [v_pandianResultSum] WHERE [orderNo] = @orderNo";
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
goodsId = mObj.CmdParameters[1].ToString();
|
|
if (!string.IsNullOrEmpty(goodsId))
|
|
{
|
|
_strSql += " and goodsId =@goodsId";
|
|
sqlCmd.Parameters.AddWithValue("@goodsId", goodsId);
|
|
}
|
|
|
|
|
|
|
|
_strSql = "SELECT * FROM (" + _strSql + " )AS SORTEDTB WHERE sortNo BETWEEN @START AND @END" + " ORDER BY GOODSID DESC";
|
|
_strSql += ";SELECT COUNT(*) FROM v_pandianResultSum WHERE [orderNo] = @orderNo";
|
|
|
|
if (!string.IsNullOrEmpty(goodsId))
|
|
{
|
|
_strSql += " and goodsId =@goodsId";
|
|
}
|
|
|
|
sqlCmd.CommandText = _strSql;
|
|
sqlCmd.Parameters.AddWithValue("@START", mObj.CmdParameters[2]);
|
|
sqlCmd.Parameters.AddWithValue("@END", mObj.CmdParameters[3]);
|
|
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 500:
|
|
_strSql = "SELECT * FROM t_wmsStockPandian WHERE [orderNo] = @orderNo";
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
|
|
case 600:
|
|
_strSql = "SELECT * FROM [v_PandianStockDiff_running] WHERE [orderNo] = @orderNo";
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 700:
|
|
_strSql = "DELETE FROM T_WMSSTOCKPANDIANADJUST WHERE [orderNo] = @orderNo";
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 800:
|
|
_strSql = "SELECT * FROM [t_wmsStockPandian] WHERE [ownerId] = @ownerId and status =@status";
|
|
sqlCmd.Parameters.AddWithValue("@ownerId", mObj.CmdParameters[0]);
|
|
sqlCmd.Parameters.AddWithValue("@status", mObj.CmdParameters[1]);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 810:
|
|
_strSql = "SELECT top 1 * FROM [t_wmsStockPandian] WHERE status >=@status1 and status < @status2";
|
|
|
|
sqlCmd.Parameters.AddWithValue("@status1", (int)enumPandianStatus.开始采集);
|
|
sqlCmd.Parameters.AddWithValue("@status2", (int)enumPandianStatus.盘点结束);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
|
|
case 900:
|
|
|
|
_strSql = " update v_stockGoods set locState =@status where 1=1 " + mObj.CmdParameters[0].ToString();
|
|
_strSql += "; update v_stockGoods set state =@status where 1=1 " + mObj.CmdParameters[0].ToString();
|
|
sqlCmd.Parameters.AddWithValue("@status", mObj.CmdParameters[1]);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 1000:
|
|
_strSql = "SELECT * FROM [v_pandianTarget] WHERE [orderNo] = @orderNo and locationId =@locationId";
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
sqlCmd.Parameters.AddWithValue("@locationId", mObj.CmdParameters[1]);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 1100:
|
|
_strSql = "SELECT * FROM [v_pandianMirror] WHERE [orderNo] = @orderNo order by locationId";
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 1200:
|
|
_strSql = "insert into [t_wmsOrderDetail] (orderNo,goodsId,goodsName,unit,count,whtype)" +
|
|
" select orderNo,goodsId,goodsName,unit,avcount,0 from [v_pandianResultSum] " +
|
|
" where orderno =@orderNo ";
|
|
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 1300:
|
|
_strSql = " TRUNCATE TABLE t_wmsStockPandianStockMirror;" +
|
|
" TRUNCATE TABLE t_wmsStockPandianResult; ";
|
|
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 1400: //取当前货位所在的货架的同区的盘点任务
|
|
_strSql = "SELECT * FROM [v_pandianTarget] WHERE part =@part and channel =@channel and shelf=@shelf " +
|
|
// " and state =@state" +
|
|
" order by layer,col ";
|
|
sqlCmd.Parameters.AddWithValue("@part", mObj.CmdParameters[0]);
|
|
sqlCmd.Parameters.AddWithValue("@channel", mObj.CmdParameters[1]);
|
|
sqlCmd.Parameters.AddWithValue("@shelf", mObj.CmdParameters[2]);
|
|
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
|
|
case 1500:
|
|
_strSql = " select * from t_wmsStockPandian p where exists (select 1 from t_wmsStockPandianStockMirror where orderno = p.orderNo)";
|
|
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
|
|
case 1600:
|
|
_strSql = " select top 100 * from v_PandianStockDiff_target where part = @part order by locationid ";
|
|
sqlCmd.Parameters.AddWithValue("@part", mObj.CmdParameters[0]);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
case 1700:
|
|
_strSql = " select * from [t_wmsStockPandian] where status > @statusStart and status< @statusEnd ";
|
|
sqlCmd.Parameters.AddWithValue("@statusStart", (int) enumPandianStatus.未开始);
|
|
sqlCmd.Parameters.AddWithValue("@statusEnd", (int)enumPandianStatus.盘点结束);
|
|
sqlCmd.CommandText = _strSql;
|
|
|
|
break;
|
|
|
|
|
|
}
|
|
}
|
|
}
|
|
} |