| | |
| | | private readonly IRepository<SysDictData, MasterDbContextLocator> _sysDictDataRep; |
| | | private readonly ISysExcelTemplateService _sysExcelTemplateService; |
| | | private readonly static object _lock = new(); |
| | | |
| | | private readonly IRepository<WmsMaterialCustomer, MasterDbContextLocator> _wmsMaterialCustomerRep; |
| | | private readonly IRepository<WmsSubstituteGood, MasterDbContextLocator> _wmsSubstituteGoodRep; |
| | | public WmsMaterialService( |
| | | IRepository<WmsMaterial,MasterDbContextLocator> wmsMaterialRep |
| | | ,IRepository<SysDictType, MasterDbContextLocator> sysDictTypeRep |
| | | ,IRepository<SysDictData, MasterDbContextLocator> sysDictDataRep |
| | | ,ISysExcelTemplateService sysExcelTemplateService |
| | | , IRepository<WmsMaterialCustomer, MasterDbContextLocator> wmsMaterialCustomerRep |
| | | , IRepository<WmsSubstituteGood, MasterDbContextLocator> wmsSubstituteGoodRep |
| | | ) |
| | | { |
| | | _wmsMaterialRep = wmsMaterialRep; |
| | | _sysDictTypeRep = sysDictTypeRep; |
| | | _sysDictDataRep = sysDictDataRep; |
| | | _sysExcelTemplateService = sysExcelTemplateService; |
| | | _wmsMaterialCustomerRep = wmsMaterialCustomerRep; |
| | | _wmsSubstituteGoodRep = wmsSubstituteGoodRep; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | public async Task<List<WmsMaterialOutput>> List([FromQuery] WmsMaterialInput input) |
| | | { |
| | | return await _wmsMaterialRep.DetachedEntities.ProjectToType<WmsMaterialOutput>().ToListAsync(); |
| | | } |
| | | } |
| | | |
| | | #region 增、删、改 |
| | | |
| | | |
| | | /// <summary> |
| | | /// 增加物料信息表 |
| | |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | [HttpPost("WmsMaterial/add")] |
| | | public async Task Add(AddWmsMaterialInput input) |
| | | [UnitOfWork] |
| | | public async Task Add(AddWmsMaterialInfoInput input) |
| | | { |
| | | var wmsMaterial = input.Adapt<WmsMaterial>(); |
| | | //验证 |
| | | |
| | | //物料信息 |
| | | var wmsMaterial = input.MaterialInput.Adapt<WmsMaterial>(); |
| | | //控制规则信息 |
| | | var controlRuleld = input.ControlRuleld; |
| | | wmsMaterial.ControlRuleId = controlRuleld; |
| | | |
| | | //客户档案信息 |
| | | var baseCustomerList = input.BaseCustomerList.Adapt<List<BaseCustomer>>(); |
| | | //物料客户关联关系 |
| | | var materialCustomerList=new List<WmsMaterialCustomer>(); |
| | | foreach (var baseCustomer in baseCustomerList) |
| | | { |
| | | materialCustomerList.Add(new WmsMaterialCustomer() |
| | | { |
| | | CreatedTime = DateTime.Now, |
| | | CreatedUserId = CurrentUserInfo.UserId, |
| | | CreatedUserName = CurrentUserInfo.Name, |
| | | CustChinaName = baseCustomer.CustChinaName, |
| | | CustCode = baseCustomer.CustCode, |
| | | CustEnglishName = baseCustomer.CustEnglishName, |
| | | CustId = baseCustomer.Id, |
| | | MaterialCode = wmsMaterial.MaterialCode, |
| | | MaterialId = wmsMaterial.Id, |
| | | MaterialName = wmsMaterial.MaterialName, |
| | | UpdatedTime = DateTime.Now, |
| | | UpdatedUserId = CurrentUserInfo.UserId, |
| | | UpdatedUserName = CurrentUserInfo.Name |
| | | |
| | | }); |
| | | } |
| | | //验证 |
| | | await CheckExisit(wmsMaterial); |
| | | |
| | | //替代品信息 |
| | | var substituteGoodList = input.SubstituteGoodList.Adapt<List<WmsSubstituteGood>>(); |
| | | |
| | | wmsMaterial.CreatedUserId = wmsMaterial.UpdatedUserId = SysHelper.GetUserId(); |
| | | wmsMaterial.CreatedUserName = wmsMaterial.UpdatedUserName = SysHelper.GetUserName(); |
| | | wmsMaterial.CreatedTime = wmsMaterial.UpdatedTime = SysHelper.GetNowTime(); |
| | | |
| | | |
| | | await _wmsMaterialRep.InsertAsync(wmsMaterial); |
| | | await _wmsMaterialCustomerRep.InsertAsync(materialCustomerList); |
| | | await _wmsSubstituteGoodRep.InsertAsync(substituteGoodList); |
| | | |
| | | } |
| | | |
| | | /// <summary> |