分支自 SuZhouGuanHong/TaiYuanTaiZhong

dengjunjie
2024-04-24 96f8b9f0629b3e4697269f0c271b43ad165f71b0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/*
 *所有关于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<string> KeyList = new List<string>();
                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;
        }
    }
}