コード例 #1
0
        public async Task <ActionResult <WeeklyReport> > Put(int id, [FromForm] AddOrEditOperationReportDto dto)
        {
            var user = await _accountRepository.GetByIdAsync(dto.User);

            string path     = Path.Combine("img/customers", dto.CustomerId.ToString(), "report");
            string pathFull = _baseUrl.GetBaseUrl(path);

            var data = await _genericRepository.GetAsyncById(id);

            data.Activity          = dto.Activity;
            data.DateFinished      = dto.DateFinished;
            data.DateRequest       = dto.DateRequest;
            data.Observations      = dto.Observations;
            data.Priority          = dto.Priority;
            data.RequestId         = dto.RequestId;
            data.ResponsibleAreaId = dto.ResponsibleAreaId;
            data.Status            = dto.Status;
            data.CustomerId        = dto.CustomerId;
            data.User = user;

            if (dto.ImgUploadAfter != null)
            {
                string nameFile = _imgService.SaveFile(dto.ImgUploadAfter, pathFull, 1280, 720);
                if (dto.PhotoPathAfter != null)
                {
                    await _imgService.DeleteFile(pathFull, dto.PhotoPathAfter);
                }
                data.PhotoPathAfter = nameFile;
            }
            if (dto.ImgUploadBefore != null)
            {
                string nameFile = _imgService.SaveFile(dto.ImgUploadBefore, pathFull, 1280, 720);
                if (dto.PhotoPathBefore != null)
                {
                    await _imgService.DeleteFile(pathFull, dto.PhotoPathBefore);
                }
                data.PhotoPathBefore = nameFile;
            }

            await _genericRepository.UpdateAsync(data);

            return(NoContent());
        }
コード例 #2
0
        public async Task <ActionResult <WeeklyReport> > Post([FromForm] AddOrEditOperationReportDto dto)
        {
            var user = await _accountRepository.GetByIdAsync(dto.User);

            string path     = Path.Combine("img/customers", dto.CustomerId.ToString(), "report");
            string pathFull = _baseUrl.GetBaseUrl(path);
            var    data     = new WeeklyReport
            {
                Activity          = dto.Activity,
                DateFinished      = dto.DateFinished,
                DateRequest       = dto.DateRequest,
                Observations      = dto.Observations,
                Priority          = dto.Priority,
                RequestId         = dto.RequestId,
                ResponsibleAreaId = dto.ResponsibleAreaId,
                Status            = dto.Status,
                CustomerId        = dto.CustomerId,
                User = user,
            };

            if (dto.ImgUploadAfter != null)
            {
                string nameFile = _imgService.SaveFile(dto.ImgUploadAfter, pathFull, 1280, 720);
                if (dto.PhotoPathAfter != null)
                {
                    await _imgService.DeleteFile(pathFull, dto.PhotoPathAfter);
                }
                data.PhotoPathAfter = nameFile;
            }
            if (dto.ImgUploadBefore != null)
            {
                string nameFile = _imgService.SaveFile(dto.ImgUploadBefore, pathFull, 1280, 720);
                if (dto.PhotoPathBefore != null)
                {
                    await _imgService.DeleteFile(pathFull, dto.PhotoPathBefore);
                }
                data.PhotoPathBefore = nameFile;
            }
            await _genericRepository.CreateAsync(data);

            return(new CreatedAtRouteResult("GetOperationReport", new { id = data.Id }, data));
        }