Merge branch 'Test_IRC_Net8' of http://192.168.3.68:2000/XCKJ/irc-netcore-api into Test_IRC_Net8
	
		
			
	
		
	
	
		
			
				
	
				continuous-integration/drone/push Build is passing
				
					Details
				
			
		
	
				
					
				
			
				
	
				continuous-integration/drone/push Build is passing
				
					Details
				
			
		
	
						commit
						3e6854053d
					
				| 
						 | 
				
			
			@ -42,6 +42,8 @@ namespace IRaCIS.Core.Application.ViewModel
 | 
			
		|||
        public string Value { get; set; } = string.Empty;
 | 
			
		||||
        public string ValueCN { get; set; } = string.Empty;
 | 
			
		||||
 | 
			
		||||
        public string FrontType { get; set; } = string.Empty;
 | 
			
		||||
 | 
			
		||||
        public int InternationalizationType { get; set; }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -55,19 +57,23 @@ namespace IRaCIS.Core.Application.ViewModel
 | 
			
		|||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    public class BatchAddInternationalizationDto 
 | 
			
		||||
    public class BatchInternationalizationDto
 | 
			
		||||
    {
 | 
			
		||||
        public string Description { get; set; } = string.Empty;
 | 
			
		||||
        public string Code { get; set; } = string.Empty;
 | 
			
		||||
        public string Value { get; set; } = string.Empty;
 | 
			
		||||
        public string FrontType { get; set; } = string.Empty;
 | 
			
		||||
        public string ValueCN { get; set; } = string.Empty;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public class InternationalizationSimpleDto
 | 
			
		||||
    public class BatchAddInternationalizationDto : BatchInternationalizationDto
 | 
			
		||||
    {
 | 
			
		||||
        public string Code { get; set; } = string.Empty;
 | 
			
		||||
        public string Value { get; set; } = string.Empty;
 | 
			
		||||
        public string ValueCN { get; set; } = string.Empty;
 | 
			
		||||
      
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public class InternationalizationSimpleDto: BatchInternationalizationDto
 | 
			
		||||
    {
 | 
			
		||||
       
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -27,22 +27,56 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
            _internationalizationRepository = internationalizationRepository;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// 前端国际化内容接口
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        /// <returns></returns>
 | 
			
		||||
        [AllowAnonymous]
 | 
			
		||||
 | 
			
		||||
        public async Task<List<InternationalizationSimpleDto>> GetFrontInternationalizationList()
 | 
			
		||||
        [HttpGet]
 | 
			
		||||
        public async Task<IEnumerable<InternationalizationSimpleDto>> GetFrontInternationalizationList()
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
            var list = await _internationalizationRepository.Where(t => t.InternationalizationType == 0).Select(t => new InternationalizationSimpleDto()
 | 
			
		||||
            {
 | 
			
		||||
                Code = t.Code,
 | 
			
		||||
                Value = t.Value,
 | 
			
		||||
                ValueCN = t.ValueCN
 | 
			
		||||
                ValueCN = t.ValueCN,
 | 
			
		||||
                FrontType = t.FrontType,
 | 
			
		||||
                Description = t.Description,
 | 
			
		||||
            }).ToListAsync();
 | 
			
		||||
 | 
			
		||||
            return list;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// 前端批量提交,后端判断不存在就添加,存在就更新
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        /// <returns></returns>
 | 
			
		||||
        public async Task<IResponseOutput> BatchAddOrUpdateFrontInternationalization(List<BatchInternationalizationDto> batchList)
 | 
			
		||||
        {
 | 
			
		||||
            foreach (var item in batchList)
 | 
			
		||||
            {
 | 
			
		||||
                var find = await _internationalizationRepository.FirstOrDefaultAsync(t => t.Code == item.Code && t.Description == item.Description && t.InternationalizationType == 0);
 | 
			
		||||
 | 
			
		||||
                if (find != null)
 | 
			
		||||
                {                  
 | 
			
		||||
                    _mapper.Map(item, find);
 | 
			
		||||
                }
 | 
			
		||||
                else
 | 
			
		||||
                {
 | 
			
		||||
                    var mapItem = _mapper.Map<Internationalization>(item);
 | 
			
		||||
                    mapItem.InternationalizationType = 0;
 | 
			
		||||
                    mapItem.State = 1;
 | 
			
		||||
 | 
			
		||||
                    await _internationalizationRepository.AddAsync(mapItem);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            await _internationalizationRepository.SaveChangesAsync();
 | 
			
		||||
 | 
			
		||||
            return ResponseOutput.Ok();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        [HttpPost]
 | 
			
		||||
        public async Task<PageOutput<InternationalizationView>> GetInternationalizationList(InternationalizationQuery inQuery)
 | 
			
		||||
        {
 | 
			
		||||
| 
						 | 
				
			
			@ -63,6 +97,11 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
            return pageList;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// 后端之前批量添加接口
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        /// <param name="batchAdd"></param>
 | 
			
		||||
        /// <returns></returns>
 | 
			
		||||
        [HttpPost]
 | 
			
		||||
        public async Task<IResponseOutput> BatchAddInternationalization(BatchAddInternationalization batchAdd)
 | 
			
		||||
        {
 | 
			
		||||
| 
						 | 
				
			
			@ -92,17 +131,34 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
            return ResponseOutput.Ok();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// 前后端添加的时候,区分了,前端判断重复多了多了一个路由  路由+标识唯一
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        /// <param name="addOrEditInternationalization"></param>
 | 
			
		||||
        /// <returns></returns>
 | 
			
		||||
        public async Task<IResponseOutput> AddOrUpdateInternationalization(InternationalizationAddOrEdit addOrEditInternationalization)
 | 
			
		||||
        {
 | 
			
		||||
            var internationalizationType = addOrEditInternationalization.InternationalizationType;
 | 
			
		||||
 | 
			
		||||
            //后端验证标识重复与否
 | 
			
		||||
            var verifyExp1 = new EntityVerifyExp<Internationalization>()
 | 
			
		||||
            {
 | 
			
		||||
                VerifyExp = t => t.Code == addOrEditInternationalization.Code && t.InternationalizationType == addOrEditInternationalization.InternationalizationType,
 | 
			
		||||
 | 
			
		||||
                VerifyMsg = $"该类型已有{addOrEditInternationalization.Code}名称的国际化标识",
 | 
			
		||||
                IsVerify = true
 | 
			
		||||
                IsVerify = internationalizationType == 1
 | 
			
		||||
            };
 | 
			
		||||
 | 
			
		||||
            var entity = await _internationalizationRepository.InsertOrUpdateAsync(addOrEditInternationalization, true, verifyExp1);
 | 
			
		||||
            //前端验证标识重复与否
 | 
			
		||||
            var verifyExp2 = new EntityVerifyExp<Internationalization>()
 | 
			
		||||
            {
 | 
			
		||||
                VerifyExp = t => t.Code == addOrEditInternationalization.Code && t.InternationalizationType == addOrEditInternationalization.InternationalizationType && t.Description == addOrEditInternationalization.Description,
 | 
			
		||||
 | 
			
		||||
                VerifyMsg = $"该类型已有{addOrEditInternationalization.Description}下的{addOrEditInternationalization.Code}名称的国际化标识",
 | 
			
		||||
                IsVerify = internationalizationType == 0
 | 
			
		||||
            };
 | 
			
		||||
 | 
			
		||||
            var entity = await _internationalizationRepository.InsertOrUpdateAsync(addOrEditInternationalization, true, verifyExp1, verifyExp2);
 | 
			
		||||
 | 
			
		||||
            if (addOrEditInternationalization.InternationalizationType == 1)
 | 
			
		||||
            {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -69,6 +69,9 @@ namespace IRaCIS.Core.Application.Service
 | 
			
		|||
            CreateMap<Internationalization, InternationalizationView>();
 | 
			
		||||
            CreateMap<Internationalization, InternationalizationAddOrEdit>().ReverseMap();
 | 
			
		||||
 | 
			
		||||
            CreateMap<Internationalization, BatchInternationalizationDto>().ReverseMap();
 | 
			
		||||
            
 | 
			
		||||
 | 
			
		||||
            CreateMap<BatchAddInternationalizationDto, InternationalizationAddOrEdit>();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -33,16 +33,18 @@ namespace IRaCIS.Core.Domain.Models
 | 
			
		|||
		public int State { get; set; }
 | 
			
		||||
	
 | 
			
		||||
 | 
			
		||||
		public string Description { get; set; }
 | 
			
		||||
		public string Description { get; set; } = string.Empty;
 | 
			
		||||
 | 
			
		||||
		public string Code { get; set; }
 | 
			
		||||
        public string Code { get; set; } = string.Empty;
 | 
			
		||||
 | 
			
		||||
		public string Value { get; set; }
 | 
			
		||||
        public string Value { get; set; } = string.Empty;
 | 
			
		||||
 | 
			
		||||
		public string ValueCN { get; set; }
 | 
			
		||||
        public string ValueCN { get; set; } = string.Empty;
 | 
			
		||||
 | 
			
		||||
        public int InternationalizationType { get; set; }
 | 
			
		||||
 | 
			
		||||
		public string FrontType { get; set; }=string.Empty;
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}	 
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue