Example #1
0
        public virtual async Task UpdateReportAsync(ReportEditDto input)
        {
            //TODO:更新前的逻辑判断,是否允许更新

            var entity = await _reportRepository.GetAsync(input.Id.Value);

            input.MapTo(entity);

            await _reportRepository.UpdateAsync(entity);
        }
Example #2
0
        public async Task <ActionResult <ReportDto> > Put([FromBody] ReportEditDto value)
        {
            if (value.Id == Guid.Empty)
            {
                throw new Exception("Unable to edit a Report without ID");
            }
            var res = await _service.Save(value);

            return(res);
        }
Example #3
0
        public virtual async Task <ReportEditDto> CreateReportAsync(ReportEditDto input)
        {
            //TODO:新增前的逻辑判断,是否允许新增

            var entity = input.MapTo <Core.CustomDomain.Report.Report>();

            entity = await _reportRepository.InsertAsync(entity);

            return(entity.MapTo <ReportEditDto>());
        }
Example #4
0
        public IActionResult EditReport(ReportEditDto model)
        {
            if (ModelState.IsValid)
            {
                var entity = _reportService.Get(model.Id);
                entity.Detail      = model.Detail;
                entity.Description = model.Description;

                _reportService.Update(entity);
                return(RedirectToAction("Index"));
            }
            return(View(model));
        }
Example #5
0
        public static Report ToEntity(this ReportEditDto e)
        {
            if (e == null)
            {
                return(null);
            }

            var res = new Report();

            res.Id           = e.Id;
            res.Name         = e.Name;
            res.Description  = e.Description;
            res.ColumnMap    = e.ColumnMap;
            res.Value        = e.Value;
            res.ParameterMap = e.ParameterMap;
            res.Family       = (dal.Entities.ReportFamily)e.Family;
            res.Enabled      = e.Enabled;
            return(res);
        }
Example #6
0
        /// <summary>
        /// 通过Id获取检测报告信息进行编辑或修改
        /// </summary>
        public async Task <GetReportForEditOutput> GetReportForEditAsync(NullableIdDto <int> input)
        {
            var output = new GetReportForEditOutput();

            ReportEditDto reportEditDto;

            if (input.Id.HasValue)
            {
                var entity = await _reportRepository.GetAsync(input.Id.Value);

                reportEditDto = entity.MapTo <ReportEditDto>();
            }
            else
            {
                reportEditDto = new ReportEditDto();
            }

            output.Report = reportEditDto;
            return(output);
        }
Example #7
0
        public async Task <ReportDto> Save(ReportEditDto itemToEdit)
        {
            Report res;

            if (itemToEdit.Id != Guid.Empty)
            {
                _logger.LogDebug($"Calling Update Report for id=[{itemToEdit.Id}]");
                //edit
                res = await this.GetInner(itemToEdit.Id);

                if (res == null)
                {
                    throw new NotFoundException($"Report with id={itemToEdit.Id} not exists!");
                }
                res.Name         = itemToEdit.Name;
                res.Description  = itemToEdit.Description;
                res.Value        = itemToEdit.Value;
                res.ColumnMap    = itemToEdit.ColumnMap;
                res.ParameterMap = itemToEdit.ParameterMap;
                res.Enabled      = itemToEdit.Enabled;
                res.Family       = (dal.Entities.ReportFamily)itemToEdit.Family;
                _dbCtx.Reports.Update(res);
                _dbCtx.SaveChanges();
            }
            else
            {
                //insert
                res    = itemToEdit.ToEntity();
                res.Id = Guid.NewGuid();
                _logger.LogDebug($"Calling Insert Report for id=[{res.Id}] (temp id, not created yet!)");
                await _dbCtx.Reports.AddAsync(res);

                _dbCtx.SaveChanges();
            }
            return(res.ToDto());
        }
Example #8
0
        public async Task <ActionResult <ReportDto> > Post([FromBody] ReportEditDto value)
        {
            var res = await _service.Save(value);

            return(res);
        }
Example #9
0
        public JsonResult Save(ReportEditDto detail)
        {
            bool   status = false;
            string msg    = "";

            if (detail.Id > 0)
            {
                try
                {
                    var oldReport = _reportAppService.GetReportByIdAsync(new EntityDto <int>(detail.Id.Value));
                    if (oldReport != null)
                    {
                        detail.Img = oldReport.Result.Img;

                        ImgUploadHelpers uploadHelpers = new ImgUploadHelpers(Request.Files, Server.MapPath("/"));
                        var uploadResult = uploadHelpers.UploadImg();
                        if (uploadResult.Item1 == ImageUploadStatus.Success)
                        {
                            detail.Img = uploadResult.Item2;

                            _reportAppService.CreateOrUpdateReportAsync(
                                new CreateOrUpdateReportInput {
                                ReportEditDto = detail
                            });

                            status = true;
                        }
                        else if (uploadResult.Item1 == ImageUploadStatus.NoFile)
                        {
                            _reportAppService.CreateOrUpdateReportAsync(
                                new CreateOrUpdateReportInput {
                                ReportEditDto = detail
                            });

                            status = true;
                        }
                        else
                        {
                            status = false;
                            msg    = uploadResult.Item2;
                        }
                    }
                }
                catch (Exception e)
                {
                    status = false;
                    msg    = "运行时出错";
                }
            }
            else
            {
                try
                {
                    ImgUploadHelpers uploadHelpers = new ImgUploadHelpers(Request.Files, Server.MapPath("/"));
                    var uploadResult = uploadHelpers.UploadImg();
                    if (uploadResult.Item1 == ImageUploadStatus.Success)
                    {
                        detail.Img    = uploadResult.Item2;
                        detail.IsShow = true;

                        _reportAppService.CreateOrUpdateReportAsync(
                            new CreateOrUpdateReportInput {
                            ReportEditDto = detail
                        });

                        status = true;
                    }
                    else
                    {
                        status = false;
                        msg    = uploadResult.Item2;
                    }
                }
                catch (Exception e)
                {
                    status = false;
                    msg    = "运行时出错";
                }
            }
            return(Json(new { status = status, message = msg }));
        }