コード例 #1
0
 /// <summary>
 /// Метод за пълнене на основен обек за резултат от обжалване
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 private CaseSessionActComplainResult FillCaseSessionActComplainResult(CaseSessionActComplainResultEditVM model)
 {
     return(new CaseSessionActComplainResult()
     {
         Id = model.Id,
         ComplainCourtId = model.ComplainCourtId,
         ComplainCaseId = model.ComplainCaseId,
         CaseSessionActComplainId = model.CaseSessionActComplainId,
         CourtId = model.CourtId,
         CaseId = model.CaseId,
         CaseSessionActId = model.CaseSessionActId,
         ActResultId = model.ActResultId,
         Description = model.Description,
         DateResult = model.DateResult
     });
 }
コード例 #2
0
        public void CaseSessionActComplainResult_SaveDataTest()
        {
            using (serviceProvider.CreateScope())
            {
                var service     = serviceProvider.GetService <ICaseSessionActComplainService>();
                var userContext = serviceProvider.GetService <IUserContext>();
                var repo        = serviceProvider.GetService <IRepository>();

                var caseCase = new Case()
                {
                    Id      = 1,
                    CourtId = 1,
                };
                repo.Add <Case>(caseCase);

                var saved = new CaseSessionActComplainResultEditVM()
                {
                    CaseId                   = 1,
                    CourtId                  = 1,
                    CaseSessionActId         = 1,
                    ComplainCourtId          = 1,
                    ComplainCaseId           = 1,
                    CaseSessionActComplainId = 1,
                    ActResultId              = 1,
                    Description              = "Test",
                    DateResult               = DateTime.Now,
                    IsStartNewLifecycle      = false
                };

                service.CaseSessionActComplainResult_SaveData(saved);
                var caseSessionActComplain = repo.AllReadonly <CaseSessionActComplainResult>().FirstOrDefault();

                Assert.That(saved.CaseId, Is.EqualTo(caseSessionActComplain.CaseId));
                Assert.That(saved.CourtId, Is.EqualTo(caseSessionActComplain.CourtId));
                Assert.That(saved.CaseSessionActId, Is.EqualTo(caseSessionActComplain.CaseSessionActId));
                Assert.That(saved.ComplainCourtId, Is.EqualTo(caseSessionActComplain.ComplainCourtId));
                Assert.That(saved.ComplainCaseId, Is.EqualTo(caseSessionActComplain.ComplainCaseId));
                Assert.That(saved.CaseSessionActComplainId, Is.EqualTo(caseSessionActComplain.CaseSessionActComplainId));
                Assert.That(saved.ActResultId, Is.EqualTo(caseSessionActComplain.ActResultId));
                Assert.That(saved.Description, Is.EqualTo(caseSessionActComplain.Description));
            }
        }
コード例 #3
0
        public IActionResult AddResult(int CaseSessionActComplainId)
        {
            if (!CheckAccess(service, SourceTypeSelectVM.CaseSessionActComplainResult, null, AuditConstants.Operations.Append, CaseSessionActComplainId))
            {
                return(Redirect_Denied());
            }
            var caseSessionActComplain = service.GetById <CaseSessionActComplain>(CaseSessionActComplainId);

            SetViewbagResult(CaseSessionActComplainId);
            var model = new CaseSessionActComplainResultEditVM()
            {
                CaseId  = caseSessionActComplain.CaseId ?? 0,
                CourtId = caseSessionActComplain.CourtId ?? 0,
                CaseSessionActComplainId = CaseSessionActComplainId,
                DateResult = DateTime.Now,
                CaseSessionActComplains = service.GetCheckListCaseSessionActComplains(caseSessionActComplain.Id, caseSessionActComplain.CaseSessionActId),
                IsStartNewLifecycle     = false
            };

            return(View(nameof(EditResult), model));
        }
コード例 #4
0
        public IActionResult EditResult(CaseSessionActComplainResultEditVM model)
        {
            if (model.CaseSessionActComplains == null)
            {
                model.CaseSessionActComplains = new List <CheckListVM>();
            }

            SetViewbagResult(model.CaseSessionActComplainId);

            if (!ModelState.IsValid)
            {
                return(View(nameof(EditResult), model));
            }

            string _isvalid = IsValidResult(model);

            if (_isvalid != string.Empty)
            {
                SetErrorMessage(_isvalid);
                return(View(nameof(EditResult), model));
            }

            var currentId = model.Id;

            if (service.CaseSessionActComplainResult_SaveData(model))
            {
                SetAuditContext(service, SourceTypeSelectVM.CaseSessionActComplainResult, model.Id, currentId == 0);
                var caseSessionActComplain = service.GetById <CaseSessionActComplain>(model.CaseSessionActComplainId);
                model.CaseSessionActComplains = service.GetCheckListCaseSessionActComplains(caseSessionActComplain.Id, caseSessionActComplain.CaseSessionActId);
                this.SaveLogOperation(currentId == 0, model.Id);
                SetSuccessMessage(MessageConstant.Values.SaveOK);
                return(RedirectToAction(nameof(EditResult), new { id = model.Id }));
            }
            else
            {
                SetErrorMessage(MessageConstant.Values.SaveFailed);
            }
            return(View(nameof(EditResult), model));
        }
コード例 #5
0
        private string IsValidResult(CaseSessionActComplainResultEditVM model)
        {
            if (model.ComplainCaseId < 1)
            {
                return("Изберете дело");
            }

            if (model.CaseSessionActId < 1)
            {
                return("Изберете акт");
            }

            if (model.ActResultId < 1)
            {
                return("Изберете резултат");
            }

            if (model.DateResult == null)
            {
                return("Въведете дата");
            }

            return(string.Empty);
        }
コード例 #6
0
        /// <summary>
        /// Запис на резултат от обжалване
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool CaseSessionActComplainResult_SaveData(CaseSessionActComplainResultEditVM model)
        {
            try
            {
                model.ComplainCourtId = repo.GetById <Case>(model.ComplainCaseId).CourtId;
                var modelSave = FillCaseSessionActComplainResult(model);

                if (modelSave.Id > 0)
                {
                    //Update
                    var saved = repo.GetById <CaseSessionActComplainResult>(modelSave.Id);
                    saved.CaseSessionActComplainId = modelSave.CaseSessionActComplainId;
                    saved.CourtId          = modelSave.CourtId;
                    saved.CaseId           = modelSave.CaseId;
                    saved.ComplainCourtId  = modelSave.ComplainCourtId;
                    saved.ComplainCaseId   = modelSave.ComplainCaseId;
                    saved.CaseSessionActId = modelSave.CaseSessionActId;
                    saved.ActResultId      = modelSave.ActResultId;
                    saved.Description      = modelSave.Description;
                    saved.DateWrt          = DateTime.Now;
                    saved.UserId           = userContext.UserId;
                    repo.Update(saved);
                }
                else
                {
                    modelSave.DateWrt = DateTime.Now;
                    modelSave.UserId  = userContext.UserId;
                    repo.Add <CaseSessionActComplainResult>(modelSave);
                }

                if (model.CaseSessionActComplains != null)
                {
                    foreach (var caseSessionActComplain in model.CaseSessionActComplains.Where(x => x.Checked))
                    {
                        var caseSessionActComplainSave = FillCaseSessionActComplainResult(model);
                        caseSessionActComplainSave.Id = 0;
                        caseSessionActComplainSave.CaseSessionActComplainId = int.Parse(caseSessionActComplain.Value);
                        caseSessionActComplainSave.DateWrt = DateTime.Now;
                        caseSessionActComplainSave.UserId  = userContext.UserId;
                        repo.Add <CaseSessionActComplainResult>(caseSessionActComplainSave);
                    }
                }

                repo.SaveChanges();
                if (model.Id < 1)
                {
                    model.Id = modelSave.Id;
                }

                if (model.IsStartNewLifecycle)
                {
                    var caseSessionAct = repo.GetById <CaseSessionAct>(model.ActResultId);
                    var dateAccept     = caseMigrationService.GetDateTimeAcceptCaseAfterComplain(model.CaseId, caseSessionAct.CaseId ?? 0);
                    caseLifecycleService.CaseLifecycle_NewIntervalSave(model.CaseId, dateAccept ?? DateTime.Now);
                }

                return(true);
            }
            catch (Exception ex)
            {
                logger.LogError(ex, $"Грешка при запис на Резултат по Обжалвания към съдебен акт Id={ model.Id }");
                return(false);
            }
        }