/// <summary>
        /// 自定义检查数据字典输入逻辑错误
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <CustomerModelStateValidationDto> CheckErrorAsync(DataDictionaryForEdit input)
        {
            //TODO: 自定义逻辑判断是否有逻辑错误

            if (
                _dataDictionaryRepository.FirstOrDefault(
                    p => p.Key == input.DataDictionaryEditDto.Key && p.Id != input.DataDictionaryEditDto.Id) != null)
            {
                return new CustomerModelStateValidationDto()
                       {
                           HasModelError = true,
                           Key           = "DataDictionaryEditDto.Key",
                           ErrorMessage  = "键名不能重复"
                       }
            }
            ;

            return(new CustomerModelStateValidationDto()
            {
                HasModelError = false
            });
        }

        #endregion
    }
        public async Task UpdateAsync(DataDictionaryForEdit input)
        {
            //TODO: 更新前的逻辑判断,是否允许更新

            var entity = await _dataDictionaryRepository.GetAsync(input.DataDictionaryEditDto.Id.Value);

            input.DataDictionaryEditDto.MapTo(entity);

            await _dataDictionaryRepository.UpdateAsync(entity);
        }
Beispiel #3
0
        public async Task <ActionResult> Create(DataDictionaryForEdit dto)
        {
            if (!CheckModelState(await _dataDictionaryAppService.CheckErrorAsync(dto)))
            {
                return(View(dto));
            }

            await _dataDictionaryAppService.CreateOrUpdateAsync(dto);

            return(RedirectToAction("Index"));
        }
 /// <summary>
 /// 新增或更改数据字典
 /// </summary>
 public async Task CreateOrUpdateAsync(DataDictionaryForEdit input)
 {
     if (input.DataDictionaryEditDto.Id.HasValue)
     {
         await UpdateAsync(input);
     }
     else
     {
         await CreateAsync(input);
     }
 }
        public async Task <DataDictionaryForEdit> CreateAsync(DataDictionaryForEdit input)
        {
            //TODO: 新增前的逻辑判断,是否允许新增

            var entity = input.DataDictionaryEditDto.MapTo <DataDictionary>();

            entity = await _dataDictionaryRepository.InsertAsync(entity);

            return(new DataDictionaryForEdit {
                DataDictionaryEditDto = entity.MapTo <DataDictionaryEditDto>()
            });
        }