Пример #1
0
        public async Task <Response <WorkplaceResponse> > UpdateAsync(Workplace target)
        {
            //Get current workplace
            var workplace = await workplaceRepository.GetAsync(target.WorkspaceGuid);

            if (workplace == null)
            {
                return(new Response <WorkplaceResponse>(
                           HttpStatusCode.NotFound,
                           $"Workplace with guid '{target.WorkspaceGuid}' was not found."));
            }

            var employeeResponse = await userServiceClient.GetUserAsync(
                new GetUserRequest()
            {
                UserGuid = target.UserGuid
            });

            if (employeeResponse.Status == ResponseResult.Error)
            {
                return(new Response <WorkplaceResponse>(
                           employeeResponse.Error.StatusCode, employeeResponse.Error.Message));
            }

            workplace.EmployeeId = employeeResponse.Result.Employee.EmployeeId;
            workplace.Map        = automapper.Map <DbMapFile>(workplace.Map);
            var result = workplaceRepository.UpdateAsync(workplace).Result;

            var response = new Response <WorkplaceResponse>(automapper.Map <WorkplaceResponse>(result));

            return(response);
        }