using HH.WMS.DAL;
|
using HH.WMS.Entitys;
|
using HH.WMS.Entitys.Basic;
|
using System;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace HH.WMS.DAL.CoreServer
|
{
|
public class WaveServiceDAL : DapperBaseDAL
|
{
|
#region 批量修改出库单主子表状态
|
/// <summary>
|
/// 批量修改出库单主子表状态
|
/// </summary>
|
/// <param name="outMstList"></param>
|
/// <param name="state"></param>
|
/// <param name="trans"></param>
|
/// <returns></returns>
|
public OperateResult UpdateOutState(List<TN_WM_OUT_MSTEntity> outMstList, IDbTransaction trans)
|
{
|
string sql = "UPDATE TN_WM_OUT_MST SET CN_S_STATE=@CN_S_STATE,CN_S_WAVE_CODE=@CN_S_WAVE_CODE WHERE CN_S_OP_NO =@CN_S_OP_NO";
|
var result = ExecuteTranSql(sql, outMstList, trans);
|
if (result.Success)
|
{
|
sql = "UPDATE TN_WM_OUT_DTL SET CN_S_STATE=@CN_S_STATE WHERE CN_S_OP_NO =@CN_S_OP_NO";
|
List<TN_WM_OUT_DTLEntity> outDtlList = new List<TN_WM_OUT_DTLEntity>();
|
outMstList.ForEach(p =>
|
{
|
if (p.OutDtlList != null && p.OutDtlList.Any())
|
outDtlList.AddRange(p.OutDtlList);
|
});
|
if (outDtlList.Any())
|
result = ExecuteTranSql(sql, outDtlList, trans);
|
}
|
return result;
|
}
|
#endregion
|
|
|
#region 修改库区分配量
|
/// <summary>
|
/// 修改库区分配量
|
/// </summary>
|
/// <param name="areaQtyList"></param>
|
/// <returns></returns>
|
public OperateResult UpdateAreaAlloc(List<TN_WM_B_AREA_QTYEntity> areaQtyList, IDbTransaction trans)
|
{
|
string sql = @"UPDATE TN_WM_B_AREA_QTY SET CN_F_ALLOC_QTY=@CN_F_ALLOC_QTY,CN_S_TIMESTAMP='{0}' WHERE CN_GUID=@CN_GUID AND (CN_S_TIMESTAMP = @CN_S_TIMESTAMP OR CN_S_TIMESTAMP IS NULL)";
|
sql = string.Format(sql, DateTime.Now.ToString("yyyyMMddHHmmssffff"));
|
return ExecuteTranSql(sql, areaQtyList, trans);
|
}
|
#endregion
|
|
#region 缺货和取消出库单
|
/// <summary>
|
/// 缺货和取消出库单
|
/// </summary>
|
/// <param name="outMst"></param>
|
/// <param name="trans"></param>
|
/// <returns></returns>
|
public OperateResult CancelAndAllShortageOut(List<TN_WM_OUT_MSTEntity> outMst, IDbTransaction trans)
|
{
|
string sql = "UPDATE TN_WM_OUT_MST SET CN_S_STATE=@CN_S_STATE,CN_B_CANCEL=@CN_B_CANCEL WHERE CN_S_OP_NO =@CN_S_OP_NO";
|
return ExecuteTranSql(sql, outMst, trans);
|
}
|
#endregion
|
}
|
}
|