/* *所有关于dt_inventory类的业务代码应在此处编写 *可使用repository.调用常用方法,获取EF/Dapper等信息 *如果需要事务请使用repository.DbContextBeginTransaction *也可使用DBServerProvider.手动获取数据库相关信息 *用户信息、权限、角色等使用UserContext.Current操作 *dt_inventoryService对增、删、改查、导入、导出、审核业务代码扩展参照ServiceFunFilter */ using WIDESEA_Core.BaseProvider; using WIDESEA_Core.Extensions.AutofacManager; using WIDESEA_Entity.DomainModels; using System.Linq; using WIDESEA_Core.Utilities; using System.Linq.Expressions; using WIDESEA_Core.Extensions; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.DependencyInjection; using Microsoft.AspNetCore.Http; using WIDESEA_WMS.IRepositories; using System.Configuration; using WIDESEA_Comm.LogInfo; using WIDESEA_Core.ManageUser; using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; namespace WIDESEA_WMS.Services { public partial class dt_inventoryService { private readonly IHttpContextAccessor _httpContextAccessor; private readonly Idt_inventoryRepository _repository;//访问数据库 [ActivatorUtilitiesConstructor] public dt_inventoryService( Idt_inventoryRepository dbRepository, IHttpContextAccessor httpContextAccessor ) : base(dbRepository) { _httpContextAccessor = httpContextAccessor; _repository = dbRepository; //多租户会用到这init代码,其他情况可以不用 //base.Init(dbRepository); } public override WebResponseContent Del(object[] keys, bool delList = true) { WebResponseContent content = new WebResponseContent(); string str = ""; try { List KeyList = new List(); foreach ( string key in keys ) { KeyList.Add(key); } var inventoryList= _repository.Find(x=>KeyList.Contains(x.ID.ToString())).ToList(); str = $"{string.Join('、', inventoryList.Select(t => t.SN).ToArray())}"; content = base.Del(keys, delList); WriteDBLog.Write($"手动删除库存 ", str, LogState.Sucess, "WMS", UserContext.Current.UserName); } catch (Exception ex) { WriteDBLog.Write($"手动删除库存 ", new { 错误信息 = ex.Message, 数据 = str }, LogState.Error, "WMS", UserContext.Current.UserName); } return content; } } }