Exemplo n.º 1
0
        public async Task <HeadDto> SaveAsync(HeadSaveDto input)
        {
            HeadDto dto;

            if (input.Id.HasValue)
            {
                var updateDto = ObjectMapper.Map <HeadSaveDto, HeadUpdateDto>(input);
                dto = await base.UpdateAsync(input.Id.Value, updateDto);
            }
            else
            {
                var headDto = ObjectMapper.Map <HeadSaveDto, HeadDto>(input);
                var userId  = _currentUser.Id.Value;
                if (Repository.FirstOrDefault(x => x.User.Id == userId) != null)
                {
                    throw new BusinessException("您已提交过信息,不必重复提交");
                }

                //设置为团长Id和用户Id一样
                headDto.Id         = userId;
                headDto.HeadStatus = Status.Enable;

                await CheckCreatePolicyAsync();

                var entity = MapToEntity(headDto);
                TryToSetTenantId(entity);
                entity.User = await _userRepository.GetAsync(x => x.Id == userId);

                await Repository.InsertAsync(entity, autoSave : true);

                return(MapToGetOutputDto(entity));
            }
            return(dto);
        }
Exemplo n.º 2
0
        public async Task <JsonResult> Save([FromBody] HeadSaveDto dto)
        {
            var result = new Result <HeadDto>
            {
                data = await _headAppService.SaveAsync(dto)
            };

            return(Json(result));
        }