using HH.Redis.ReisModel;
|
using HH.WMS.Common;
|
using HH.WMS.Common.Response;
|
using HH.WMS.DAL;
|
using HH.WMS.DAL.Basic;
|
using HH.WMS.Entitys;
|
using HH.WMS.Entitys.Algorithm;
|
using HH.WMS.Entitys.Sys;
|
using Newtonsoft.Json;
|
using System;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace HH.WMS.BLL
|
{
|
public class DapperBaseBLL : BaseBLL
|
{
|
internal OperateResult UseTransaction(Action<IDbTransaction> action)
|
{
|
return CreateDAL<DapperBaseDAL>().UseTransaction(action);
|
}
|
|
internal BasisResponse UseBasisTransaction(Action<IDbTransaction> action)
|
{
|
var result = CreateDAL<DapperBaseDAL>().UseTransaction(action);
|
if (result.Success)
|
return BasisResponse.Normal();
|
else
|
return BasisResponse.Error(result.Msg);
|
}
|
|
/// <summary>
|
/// 获取策略值
|
/// </summary>
|
/// <param name="stockCode">仓库编号</param>
|
/// <param name="code">策略编码</param>
|
/// <returns></returns>
|
/// <History>[Hanhe(DBS)] created 2018-11-27</History>
|
public string GetStrategy(string stockCode,string code)
|
{
|
if (SysCache.SysStrategy == null || SysCache.SysStrategy.Count==0)
|
{
|
SysCache.SysStrategy = BLLCreator.Create<DapperBLL<TN_WM_B_STRATEGY_VALUEEntity>>().GetList();
|
}
|
TN_WM_B_STRATEGY_VALUEEntity model = SysCache.SysStrategy.Find(x => x.CN_S_STOCK_CODE.Equals(stockCode) && x.CN_S_CODE.Equals(code));
|
if (model == null)
|
return "";
|
else
|
return model.CN_S_VALUE;
|
}
|
|
public List<TN_AB_STOCKEntity> GetStock()
|
{
|
if (SysCache.Stock == null || SysCache.Stock.Count==0)
|
SysCache.Stock = CreateDAL<TN_WMS_STAOCKDAL>().GetStockList();
|
return SysCache.Stock;
|
}
|
public string GetStockName(string code)
|
{
|
if (SysCache.Stock == null || SysCache.Stock.Count == 0)
|
SysCache.Stock = CreateDAL<TN_WMS_STAOCKDAL>().GetStockList();
|
if (SysCache.Stock.Count > 0)
|
{
|
TN_AB_STOCKEntity entity = SysCache.Stock.Find(x => x.CN_S_STOCK_CODE.Equals(code));
|
if (entity != null)
|
return entity.CN_S_STOCK_NAME;
|
}
|
return "";
|
}
|
|
public string GetAreaName(string code)
|
{
|
if (SysCache.Area == null || SysCache.Area.Count == 0)
|
SysCache.Area = CreateDAL<TN_AB_B_STOCK_AREADAL>().GetArea("", 4);
|
if (SysCache.Stock.Count > 0)
|
{
|
HH.WMS.Entitys.Basic.AutoBomStockAreaEntity entity = SysCache.Area.Find(x => x.CN_S_AREA_CODE.Equals(code));
|
if (entity != null)
|
return entity.CN_S_AREA_NAME;
|
}
|
return "";
|
}
|
|
|
#region 获取autobom中的编码
|
/// <summary>
|
/// 获取autobom中的编码
|
/// </summary>
|
/// <param name="tokenId">tokenId</param>
|
/// <param name="ruleName">编码名称</param>
|
/// <returns></returns>
|
/// <History>[Hanhe(lt)] created 2018/11/2</History>
|
public OperateResult GetCode(RedisUserEntity redisMsgEntity, string ruleName)
|
{
|
var postData = new
|
{
|
appCode = "WMS",
|
ruleName = ruleName,
|
orgId = redisMsgEntity.CN_S_ORGCODE,
|
orgFlag = redisMsgEntity.CN_S_ORGFLAG
|
};
|
|
string no =WebApiManager.HttpAutoBom_Post("Api/BillRule/GenBillNo", JsonConvert.SerializeObject(postData));
|
if (string.IsNullOrEmpty(no) || no.Equals("null"))
|
return OperateResult.Error("未获取到" + ruleName + "号!");
|
return OperateResult.Succeed("", no);
|
}
|
#endregion
|
}
|
}
|