using HH.WMS.BLL.Basic;
using HH.WMS.DAL.SysMgr;
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.BLL.SysMgr
{
public class TN_WM_B_STRATEGYBLL : DapperBaseBLL
{
#region 获取库区下所有策略
///
/// 获取库区下所有策略
///
/// 库区编码
/// tokenId
///
/// [HanHe(xdl)] CREATED 2018/12/05
public DataTable GetStrategyList(string areaCode)
{
return CreateDAL().GetStrategyList(areaCode);
}
///
/// 获取库区所有没设置的策略
///
/// 库区编码
/// tokenId
///
public DataTable GetNoStrategyList(string areaCode)
{
return CreateDAL().GetNoStrategyList(areaCode);
}
#endregion
#region 更新优先级
///
/// 更新优先级
///
/// 库区编码
/// 仓库编码
/// 策略Guid
/// 优先级
///
public OperateResult UpdatePriority(string areaCode, string stockCode, string strategyGuid, string priority)
{
return CreateDAL().UpdatePriority(areaCode, stockCode, strategyGuid, priority);
}
#endregion
#region 删除库区策略
///
/// 删除库区策略
///
/// 库区编码
/// 仓库编码
/// 策略Guid
///
public OperateResult DeleteAreaStrategy(string areaCode, string stockCode, string strategyGuid)
{
return CreateDAL().DeleteAreaStrategy(areaCode, stockCode, strategyGuid);
}
#endregion
///
/// 保存库区策略关联
///
/// 策略Guid值
/// 库区编码
/// 仓库编码
///
public OperateResult SaveStrategyUse(string strategyGuid, string areaCode, string stockCode)
{
string[] strategyguid = strategyGuid.Split(',');
List guidList = new List();
foreach (string item in strategyguid)
{
guidList.Add(item);
}
if (!string.IsNullOrEmpty(areaCode))
{
AutoBomStockAreaEntity result = BLLCreator.Create().GetStockAreaEntity(areaCode);
if (result == null)
{
return OperateResult.Error("未获取到库区实体!");
}
}
return CreateDAL().SaveStrategyUse(stockCode, areaCode, guidList);
}
#region 根据库区编码和策略类型获取策略
///
/// 根据库区编码和策略类型获取策略,策略类型选填(三生物料上架PDA接口)
///
/// 库区编码
/// 策略类型
public DataTable GetStrategyType(string areaCode, string strategyType)
{
return CreateDAL().GetStrategyType(areaCode, strategyType);
}
#endregion
#region 根据库区编码获取该库区对应的策略应用
///
/// 根据库区编码获取该库区对应的策略应用
///
///
///
///
///
public List GetStrateListByAreaOrStock(string stockCode, string stockAreaCode, string strateType)
{
return CreateDAL().GetStrateListByAreaOrStock(stockCode, stockAreaCode, strateType);
}
#endregion
}
}