ldj/Model/wms/data/WmsStockPandian_Imp.cs

270 lines
12 KiB
C#
Raw Normal View History

2023-05-23 16:13:17 +08:00

/// <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
2023-11-21 19:18:23 +08:00
_strSql = "SELECT *,ROW_NUMBER() OVER (ORDER BY ID DESC) as sortNo FROM v_pandian WHERE DR = 1 " + 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 ID DESC";
2023-11-21 19:18:23 +08:00
_strSql += ";SELECT COUNT(*) FROM v_pandian WHERE DR = 1 " + 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 100: //by name
_strSql = "SELECT * FROM t_wmsStockPandian WHERE [orderNo] = @orderNo";
sqlCmd.CommandText = _strSql;
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
break;
case 200:
2023-11-21 19:18:23 +08:00
string cols = "[locationId] ,[skuId] ,[skuCode] ,[goodsId],[batch],[productDate],[validDate],[shelfCount],[state] ";
2023-05-23 16:13:17 +08:00
_strSql = string.Format(
2024-02-06 19:36:47 +08:00
" insert into t_wmsStockPandianStockMirror([orderNo],{0},[operater]) " +
"select '{1}',{2}, {3} from v_stockGoods where 1=1 {4} "
2023-05-23 16:13:17 +08:00
, cols, mObj.CmdParameters[1].ToString(),cols,mObj.CmdParameters[2].ToString(), mObj.CmdParameters[0].ToString());
2024-02-06 19:36:47 +08:00
2023-05-23 16:13:17 +08:00
//to update stock set loctation to be disabled
2024-02-06 19:36:47 +08:00
// _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 + "");
2023-05-23 16:13:17 +08:00
sqlCmd.CommandText = _strSql;
break;
case 300:
2023-11-21 19:18:23 +08:00
_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";
2023-05-23 16:13:17 +08:00
sqlCmd.Parameters.AddWithValue("@orderNo", mObj.CmdParameters[0]);
2023-11-21 19:18:23 +08:00
sqlCmd.Parameters.AddWithValue("@START", mObj.CmdParameters[1]);
sqlCmd.Parameters.AddWithValue("@END", mObj.CmdParameters[2]);
2023-05-23 16:13:17 +08:00
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;
2023-11-21 19:18:23 +08:00
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;
2023-05-23 16:13:17 +08:00
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;
2024-02-06 19:36:47 +08:00
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;
2023-05-23 16:13:17 +08:00
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();
2023-11-21 19:18:23 +08:00
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]);
2023-05-23 16:13:17 +08:00
sqlCmd.CommandText = _strSql;
break;
2024-02-06 19:36:47 +08:00
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;
2024-03-06 20:48:05 +08:00
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;
2023-05-23 16:13:17 +08:00
}
}
}
}