public async Task <IActionResult> UpdateTemplateConversionUnit(AppTemplateConversionUnitUpdateDto dto) { var response = await _appTemplateConversionUnitService.UpdateAppTemplateConversionUnit(dto); return(Ok(response)); }
public async Task <ApiResponse <AppTemplateConversionUnitGenericGetDto> > UpdateAppTemplateConversionUnit(AppTemplateConversionUnitUpdateDto dto) { AppTemplateConversionUnitGenericGetDto resultDto = new AppTemplateConversionUnitGenericGetDto(); Metadata metadata = new Metadata { IsValid = true, Message = "" }; ApiResponse <AppTemplateConversionUnitGenericGetDto> response = new ApiResponse <AppTemplateConversionUnitGenericGetDto>(resultDto); try { var template = await GetById(dto.Id); if (template == null) { metadata.IsValid = false; metadata.Message = "Id Template No existe"; response.Data = resultDto; response.Meta = metadata; return(response); } if (dto.Code == null || dto.Code == "") { metadata.IsValid = false; metadata.Message = "Codigo Invalido"; response.Data = resultDto; response.Meta = metadata; return(response); } if (dto.Description == null || dto.Description == "") { metadata.IsValid = false; metadata.Message = "Descripcion Invalida"; response.Data = resultDto; response.Meta = metadata; return(response); } AppVariables AppVariablesFind = await _appVariablesService.GetById(dto.AppVariableId); if (AppVariablesFind == null) { metadata.IsValid = false; metadata.Message = "Variable no existe"; response.Data = resultDto; response.Meta = metadata; return(response); } AppUnits appUnitIdSinceFind = await _appUnitsService.GetById(dto.AppUnitIdSince); if (appUnitIdSinceFind == null) { metadata.IsValid = false; metadata.Message = "Unidad de Medida desde no existe!!"; response.Data = resultDto; response.Meta = metadata; return(response); } AppUnits appUnitIdUntilFind = await _appUnitsService.GetById(dto.AppUnitIdUntil); if (appUnitIdUntilFind == null) { metadata.IsValid = false; metadata.Message = "Unidad de Medida hasta no existe!!"; response.Data = resultDto; response.Meta = metadata; return(response); } template.AppVariableId = dto.AppVariableId; template.Code = AppVariablesFind.Code; template.Description = AppVariablesFind.Description; template.Formula = dto.Formula; template.SumValue = dto.SumValue; template.Value = dto.Value; template.OrderCalculate = dto.OrderCalculate; template.AppUnitIdSince = dto.AppUnitIdSince; template.AppUnitIdUntil = dto.AppUnitIdUntil; var updated = await Update(template); resultDto = _mapper.Map <AppTemplateConversionUnitGenericGetDto>(updated); if (appUnitIdSinceFind != null) { AppUnitsGetDto appUnitsGetDto = _mapper.Map <AppUnitsGetDto>(appUnitIdSinceFind); resultDto.AppUnitIdSinceGetDto = appUnitsGetDto; } if (appUnitIdUntilFind != null) { AppUnitsGetDto appUnitsGetDto = _mapper.Map <AppUnitsGetDto>(appUnitIdUntilFind); resultDto.AppUnitIdUntilGetDto = appUnitsGetDto; } if (AppVariablesFind != null) { AppVariablesGetDto appVariablesGetDto = _mapper.Map <AppVariablesGetDto>(AppVariablesFind); resultDto.AppVariablesGetDto = appVariablesGetDto; } response.Data = resultDto; response.Meta = metadata; return(response); } catch (Exception ex) { metadata.IsValid = false; metadata.Message = ex.InnerException.Message; response.Data = null; response.Meta = metadata; return(response); } }