public Firm UpdateWith(FirmDto request) { Name = request.Name; Address = request.Address; return(this); }
private static IInfoRussiaDto ParseFirm(XElement xml) { var branchCode = (int?)xml.Attribute("BranchCode"); if (branchCode == null) { // не импортируем фирмы без проектов return(null); } var firmDto = new FirmDto { Id = (long)xml.Attribute("Code"), Name = (string)xml.Attribute("Name"), ProjectId = branchCode.Value, ClosedForAscertainment = (bool?)xml.Attribute("IsHidden") ?? false, IsActive = !((bool?)xml.Attribute("IsArchived") ?? false), IsDeleted = (bool?)xml.Attribute("IsDeleted") ?? false, }; return(firmDto); }
public async Task <IActionResult> Update(FirmDto request) { return(HandleServiceResponse(await _service.UpdateAsync(GetClaims(), request))); }
public async Task <ServiceResponse <FirmDto> > UpdateAsync(ClaimsPrincipal claims, FirmDto request) { var response = new ServiceResponse <FirmDto>(); var found = await claims.GetFirmIfHasMinPermissionOf(_repository, request.Id, Permission.Manage); if (found == null) { response.FailForbiden(); return(response); } var result = await _repository.UpdateAsync(found.UpdateWith(request)); if (result == 0) { response.FailOperation(); return(response); } response.Data = _mapper.Map <FirmDto>(found); return(response); }
public async Task <ServiceResponse <FirmDto> > AddAsync(ClaimsPrincipal claims, FirmDto request) { var response = new ServiceResponse <FirmDto>(); var user = await _userManager.FindByIdAsync(claims.GetUserId()); var firm = _mapper.Map <Firm>(request); var firmUser = new FirmUser() { Firm = firm, User = user, Permission = Permission.Manage }; _repository.Add(firm); _repository.Add(firmUser); var result = await _repository.CommitAsnyc(); if (result == 0) { response.FailOperation(); return(response); } response.Data = _mapper.Map <FirmDto>(firm); return(response); }