public async Task <IResultModel> Add(DictItemAddModel model) { if (model.ParentId < 1 && (model.GroupCode.IsNull() || model.DictCode.IsNull())) { return(ResultModel.Failed("请选择所属分组和字典")); } var entity = _mapper.Map <DictItemEntity>(model); if (model.ParentId > 0) { var parent = await _repository.GetAsync(model.ParentId); if (parent == null) { return(ResultModel.Failed("父节点不存在")); } entity.GroupCode = parent.GroupCode; entity.DictCode = parent.DictCode; entity.Level = ++parent.Level; } if (await _repository.Exists(entity)) { return(ResultModel.Failed("数据项名称或值已存在")); } var result = await _repository.AddAsync(entity); if (result) { await ClearCache(entity.GroupCode, entity.DictCode); return(ResultModel.Success(entity.Id)); } return(ResultModel.Failed()); }
public Task <IResultModel> Add(DictItemAddModel model) { return(_service.Add(model)); }