payne
2024-04-25 52569c7d6304ef4cd93542a08a6edbe02a3e1bcb
客户档案 调整
已修改2个文件
114 ■■■■ 文件已修改
iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/BaseCustomer/BaseCustomerService.cs 114 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iWare_RawMaterialWarehouse_Wms/Admin.NET.Web.Entry/wwwroot/ExcelTemplateFile/BaseCustomerImport.xlsx 补丁 | 查看 | 原始文档 | blame | 历史
iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/BaseCustomer/BaseCustomerService.cs
@@ -404,78 +404,78 @@
        /// <param name="input"></param>
        /// <param name="isEdit"></param>
        /// <returns></returns>
        private async Task CheckExisit( BaseCustomer input,bool isEdit=false)
        private async Task CheckExisit(BaseCustomer input, bool isEdit = false)
        {
           bool isExist = false;
           if (!isEdit)//新增
           {
                   //数据是否存在重复
                   isExist = await _baseCustomerRep.AnyAsync(u =>
                                   u.CustChinaName.Equals(input.CustChinaName)
                   ,false);
          }
           else//编辑
          {
                 //当前编辑数据以外是否存在重复
                  isExist = await _baseCustomerRep.AnyAsync(u =>
                                    u.Id != input.Id
                                    &&u.CustChinaName.Equals(input.CustChinaName)
                    ,false);
               }
            bool isExist = false;
            if (!isEdit)//新增
            {
                //数据是否存在重复
                isExist = await _baseCustomerRep.AnyAsync(u =>
                                u.CustChinaName.Equals(input.CustChinaName)
                , false);
            }
            else//编辑
            {
                //当前编辑数据以外是否存在重复
                isExist = await _baseCustomerRep.AnyAsync(u =>
                                  u.Id != input.Id
                                  && u.CustChinaName.Equals(input.CustChinaName)
                  , false);
            }
            if (isExist) throw Oops.Oh(ErrorCode.E0001);
       }
        }
        /// <summary>
        /// 根据联合主键验证数据是否已存在-导入时验证
        /// </summary>
        /// <param name="inputs"></param>
        /// <returns></returns>
        private async Task CheckExisitForImport(List<BaseCustomer> inputs)
        {
        {
            //根据联合主键验证表格中中是否已存在相同数据  
                 if (inputs?.Count <= 0)
                 {
                     throw Oops.Oh($"导入数据不能为空");
                 }
                 //数据是否重复
                 var existExcelItem = inputs.GroupBy(g => new {
                                               g.CustChinaName
                                               })
                                               .Where(g => g.Count() > 1)
                                               .Select(s => new {
                                               s.Key.CustChinaName
                                               }).FirstOrDefault();
                 if (existExcelItem != null)
                 {
                   var item= existExcelItem.Adapt<BaseCustomer>();
                   throw Oops.Oh($"导入的表格中,客户中文名称[{item.CustChinaName}]已存在");
                 }
            if (inputs?.Count <= 0)
            {
                throw Oops.Oh($"导入数据不能为空");
            }
            //数据是否重复
            var existExcelItem = inputs.GroupBy(g => new {
                g.CustChinaName
            })
                                          .Where(g => g.Count() > 1)
                                          .Select(s => new {
                                              s.Key.CustChinaName
                                          }).FirstOrDefault();
            if (existExcelItem != null)
            {
                var item = existExcelItem.Adapt<BaseCustomer>();
                throw Oops.Oh($"导入的表格中,客户中文名称[{item.CustChinaName}]已存在");
            }
    //根据联合主键验证数据库中是否已存在相同数据
                 var existDBItem = await _baseCustomerRep.DetachedEntities.FirstOrDefaultAsync(w=>
                                                                         inputs.Select(s=>""
                                                                           +s.CustChinaName
                                                                        )
                                                                        .Contains(""
                                                                         +w.CustChinaName
                  ));
                  if (existDBItem != null)
                 {
                   var item= existDBItem.Adapt<BaseCustomer>();
                   throw Oops.Oh($"系统中,客户中文名称[{item.CustChinaName}]已存在");
                 }
            //根据联合主键验证数据库中是否已存在相同数据
            var existDBItem = await _baseCustomerRep.DetachedEntities.FirstOrDefaultAsync(w =>
                                                                    inputs.Select(s => ""
                                                                      + s.CustChinaName
                                                                   )
                                                                   .Contains(""
                                                                    + w.CustChinaName
             ));
            if (existDBItem != null)
            {
                var item = existDBItem.Adapt<BaseCustomer>();
                throw Oops.Oh($"系统中,客户中文名称[{item.CustChinaName}]已存在");
            }
        }
        #endregion
iWare_RawMaterialWarehouse_Wms/Admin.NET.Web.Entry/wwwroot/ExcelTemplateFile/BaseCustomerImport.xlsx
Binary files differ