/// <summary> /// MPA版本才会用到的方法 /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task <GetOperatorTreeForEditOutput> GetOperatorTreeForEdit(NullableIdDto <int> input) { var output = new GetOperatorTreeForEditOutput(); OperatorTreeEditDto operatortreeEditDto; if (input.Id.HasValue) { var entity = await _operatortreeRepository.GetAsync(input.Id.Value); operatortreeEditDto = entity.MapTo <OperatorTreeEditDto>(); //operatortreeEditDto = ObjectMapper.Map<List <operatortreeEditDto>>(entity); } else { operatortreeEditDto = new OperatorTreeEditDto(); } output.OperatorTree = operatortreeEditDto; return(output); }
protected virtual async Task UpdateOperatorTreeAsync(OperatorTreeEditDto input) { var entity = await _operatortreeRepository.GetAsync(input.Id.Value); if (!entity.ParentId.HasValue || !input.ParentId.HasValue) { input.MapTo(entity); } else if (entity.ParentId.Value != input.ParentId.Value) { input.MapTo(entity); var parent = await _operatortreeRepository.FirstOrDefaultAsync(input.ParentId.Value); if (parent != null) { entity.TreeCode = GenderCode(parent.TreeCode); entity.TreeLength = parent.TreeLength + 1; } } // ObjectMapper.Map(input, entity); await _operatortreeRepository.UpdateAsync(entity); }
protected virtual async Task <OperatorTreeEditDto> CreateOperatorTreeAsync(OperatorTreeEditDto input) { var entity = ObjectMapper.Map <OperatorTree>(input); if (input.ParentId.HasValue) { var parent = await _operatortreeRepository.FirstOrDefaultAsync(input.ParentId.Value); if (parent != null) { entity.ShopId = parent.ShopId; entity.TreeCode = GenderCode(parent.TreeCode); entity.TreeLength = parent.TreeLength + 1; } } else { entity.TreeCode = GenderCode(""); entity.TreeLength = 1; } entity = await _operatortreeRepository.InsertAsync(entity); return(entity.MapTo <OperatorTreeEditDto>()); }