payne
2024-04-25 873f69e7f1e681cbd1dacd7a39f9140885756fcc
iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsMaterial/WmsMaterialService.cs
@@ -176,7 +176,7 @@
            var wmsMaterialInfo =(await _wmsMaterialRep.DetachedEntities.FirstOrDefaultAsync(u => u.Id == input.Id)).Adapt<WmsMaterialOutput>();
            //获取替换物料信息
            var wmsSubstituteGoods = await _wmsSubstituteGoodRep.DetachedEntities
                                         .Where(u => u.MaterialCode == wmsMaterialInfo.MaterialName)
                                         .Where(u => u.MaterialCode == wmsMaterialInfo.MaterialCode)
                                         .Where(u => u.IsDeleted == false)
                                         .Where(u => u.IsDisabled == false)
                                         .OrderBy(o => o.CreatedTime)
@@ -191,16 +191,26 @@
                                              .ProjectToType<WmsControlRuleDetailOutput>()
                                              .ToListAsync();
            //物料客户关联
            var wmsMaterialCustomerList = await _wmsMaterialCustomerRep.DetachedEntities
                                              .Where(u => u.MaterialId == wmsMaterialInfo.Id)
                                              .Where(u => u.IsDeleted == false)
                                              .OrderBy(o => o.CreatedTime)
                                              .ProjectToType<WmsMaterialCustomerOutput>()
                                              .ToListAsync();
            List<long> custIds = wmsMaterialCustomerList.Select(s => s.CustId).ToList();
            //根据物料客户关联表获取往来信息
            var baseCustomers = await _baseCustomerRep.DetachedEntities.Join(_wmsMaterialCustomerRep.DetachedEntities, bc => bc.Id, mc => mc.CustId, (bc, mc) => new { bc, mc })
                                      .Where(p =>p.mc.MaterialId== wmsMaterialInfo.Id)
                                      .OrderBy(o => o.mc.CreatedTime)
            var baseCustomers = await _baseCustomerRep.DetachedEntities
                                      .Where(p => custIds.Contains(p.Id))
                                      .OrderBy(o => o.CreatedTime)
                                      .ProjectToType<BaseCustomerOutput>()
                                      .ToListAsync();
            resultInfo.MaterialInfo = wmsMaterialInfo;
            resultInfo.SubstituteGoodList = wmsSubstituteGoods;
            resultInfo.ControlRuleDetailList = wmsControlRuleDetails;
            resultInfo.BaseCustomerList = baseCustomers;
            return resultInfo;
        }
@@ -246,15 +256,13 @@
            var materialCustomerList=new List<WmsMaterialCustomer>();
            foreach (var baseCustomer in baseCustomerList)
            {
                var _custCode= await SerialUtil.GetSerial(EnumSerialType.客户编号);
                materialCustomerList.Add(new WmsMaterialCustomer()
                {
                    CreatedTime = DateTime.Now,
                    CreatedUserId = CurrentUserInfo.UserId,
                    CreatedUserName = CurrentUserInfo.Name,
                    CustChinaName = baseCustomer.CustChinaName,
                    CustCode = _custCode,
                    CustCode = baseCustomer.CustCode,
                    CustEnglishName = baseCustomer.CustEnglishName,
                    CustId = baseCustomer.Id,
                    MaterialCode = wmsMaterial.MaterialCode,
@@ -348,14 +356,13 @@
            var materialCustomerList = new List<WmsMaterialCustomer>();
            foreach (var baseCustomer in baseCustomerList)
            {
                var _custCode = await SerialUtil.GetSerial(EnumSerialType.客户编号);
                materialCustomerList.Add(new WmsMaterialCustomer()
                {
                    CreatedTime = DateTime.Now,
                    CreatedUserId = CurrentUserInfo.UserId,
                    CreatedUserName = CurrentUserInfo.Name,
                    CustChinaName = baseCustomer.CustChinaName,
                    CustCode = _custCode,
                    CustCode = baseCustomer.CustCode,
                    CustEnglishName = baseCustomer.CustEnglishName,
                    CustId = baseCustomer.Id,
                    MaterialCode = wmsMaterial.MaterialCode,