using AutoMapper; using Org.BouncyCastle.Crypto; using SqlSugar; using StackExchange.Profiling.Internal; using WIDESEA_Common.Log; using WIDESEA_Common.StockEnum; using WIDESEA_Core; using WIDESEA_Core.BaseRepository; using WIDESEA_Core.BaseServices; using WIDESEA_Core.Utilities; using WIDESEA_IStockService; using WIDESEA_Model.Models; namespace WIDESEA_StockService { public partial class StockInfoService : ServiceBase>, IStockInfoService { private readonly IMapper _mapper; public IRepository Repository => BaseDal; public StockInfoService(IRepository BaseDal, IMapper mapper) : base(BaseDal) { _mapper = mapper; } /*public WebResponseContent AddStockInfo(string PalletCode, int PalletType, int WarehouseId) { WebResponseContent webResponse=new WebResponseContent(); try { Dt_StockInfo dt_StockInfo = new Dt_StockInfo(); dt_StockInfo.PalletCode = PalletCode; dt_StockInfo.PalletType = PalletType; dt_StockInfo.WarehouseId = WarehouseId; dt_StockInfo.StockStatus = (int)StockStatusEmun.入库中; dt_StockInfo.Creater = "MWS"; dt_StockInfo.CreateDate = DateTime.Now; BaseDal.AddData(dt_StockInfo); return webResponse.OK(); } catch (Exception ex) { return webResponse.Error($"库存添加错误:原因:{ex.Message}"); } }*/ public virtual WebResponseContent DeleteData(object[] keys) { List stodata = new List(); try { if (typeof(Dt_StockInfo).GetNavigatePro() == null) return BaseDal.DeleteDataByIds(keys) ? WebResponseContent.Instance.OK() : WebResponseContent.Instance.Error(); else { if (keys != null) { Type detailType = typeof(Dt_StockInfo).GetDetailType(); string name = typeof(Dt_StockInfo).GetMainIdByDetail(); List dynamicDelKeys = new List(); for (int i = 0; i < keys.Length; i++) { dynamicDelKeys.Add(keys[i]); } ((SqlSugarClient)BaseDal.Db).BeginTran(); foreach (var key in keys) { int idt = int.Parse(key.ToString()); stodata.Add(BaseDal.QueryData(x => x.Id == idt).FirstOrDefault()); } if (dynamicDelKeys.Count > 0) WriteLog.Write_Log("WMS_删除库存", $"删除信息", "成功", $"参数:{stodata.ToJson()}"); BaseDal.Db.Deleteable().AS(detailType.Name).Where($"{name} in (@id)", new { id = dynamicDelKeys.ToArray() }).ExecuteCommandHasChange(); BaseDal.DeleteDataByIds(keys); ((SqlSugarClient)BaseDal.Db).CommitTran(); return WebResponseContent.Instance.OK(); } else { return WebResponseContent.Instance.Error("参数错误"); } } } catch (Exception ex) { ((SqlSugarClient)BaseDal.Db).RollbackTran(); return WebResponseContent.Instance.Error(ex.Message); } } public bool IsContainerNoExist(string containerNo) { // 直接判断是否存在满足条件的记录 return BaseDal.QueryData(x => x.PalletCode == containerNo).Any(); } } }