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 action) { return CreateDAL().UseTransaction(action); } internal BasisResponse UseBasisTransaction(Action action) { var result = CreateDAL().UseTransaction(action); if (result.Success) return BasisResponse.Normal(); else return BasisResponse.Error(result.Msg); } /// /// 获取策略值 /// /// 仓库编号 /// 策略编码 /// /// [Hanhe(DBS)] created 2018-11-27 public string GetStrategy(string stockCode,string code) { if (SysCache.SysStrategy == null || SysCache.SysStrategy.Count==0) { SysCache.SysStrategy = BLLCreator.Create>().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 GetStock() { if (SysCache.Stock == null || SysCache.Stock.Count==0) SysCache.Stock = CreateDAL().GetStockList(); return SysCache.Stock; } public string GetStockName(string code) { if (SysCache.Stock == null || SysCache.Stock.Count == 0) SysCache.Stock = CreateDAL().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().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中的编码 /// /// 获取autobom中的编码 /// /// tokenId /// 编码名称 /// /// [Hanhe(lt)] created 2018/11/2 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 } }