public IActionResult EditDismisal(CaseLawUnitDismisal model) { SetViewbag(model.CaseLawUnitId); string _isvalid = IsValid(model); if (_isvalid != string.Empty) { ModelState.AddModelError("", _isvalid); } if (!ModelState.IsValid) { return(View(nameof(EditDismisal), model)); } var currentId = model.Id; if (service.CaseLawUnitDismisal_SaveData(model)) { SetAuditContext(service, SourceTypeSelectVM.CaseLawUnitDismisal, model.Id, currentId == 0); this.SaveLogOperation(currentId == 0, model.Id); SetSuccessMessage(MessageConstant.Values.SaveOK); return(RedirectToAction(nameof(EditDismisal), new { id = model.Id })); } else { SetErrorMessage(MessageConstant.Values.SaveFailed); } return(View(nameof(EditDismisal), model)); }
/// <summary> /// Добавяне на член на съдебен състав /// </summary> /// <param name="lawUnitId"></param> /// <returns></returns> public IActionResult Add(int lawUnitId) { var lawUnit = service.GetById <CaseLawUnit>(lawUnitId); var model = new CaseLawUnitDismisal() { CourtId = lawUnit.CourtId, CaseId = lawUnit.CaseId, CaseLawUnitId = lawUnitId, DismisalDate = DateTime.Now }; SetViewbag(lawUnitId); model.DismisalKindId = ViewBag.DismisalKind; return(View(nameof(EditDismisal), model)); }
public IActionResult EditDismisal(CaseLawUnitDismisal model, string btnRedirectSelection = null) { SetViewbag(model.CaseLawUnitId); string _isvalid = IsValid(model); if (_isvalid != string.Empty) { ModelState.AddModelError("", _isvalid); } if (!ModelState.IsValid) { return(View(nameof(EditDismisal), model)); } var currentId = model.Id; if (service.CaseLawUnitDismisal_SaveData(model)) { SetAuditContext(service, SourceTypeSelectVM.CaseLawUnitDismisal, model.Id, currentId == 0); this.SaveLogOperation(currentId == 0, model.Id); //return RedirectToAction(nameof(EditDismisal), new { id = model.Id }); if (btnRedirectSelection is null) { SetSuccessMessage(MessageConstant.Values.SaveOK); return(RedirectToAction("CasePreview", "Case", new { id = model.CaseId })); } else { SetSuccessMessage("Извеждането от състав по дело е успено. Извършете преразпреление."); return(RedirectToAction("Add", "CaseSelectionProtokol", new { caseId = model.CaseId })); } } else { SetErrorMessage(MessageConstant.Values.SaveFailed); } return(View(nameof(EditDismisal), model)); }
/// <summary> /// Валидация преди запис на отвод /// </summary> /// <param name="model"></param> /// <returns></returns> private string IsValid(CaseLawUnitDismisal model) { if (model.DismisalTypeId < 0) { return("Не е избран тип на отвеждане"); } if (model.DismisalTypeId == NomenclatureConstants.DismisalType.Otvod || model.DismisalTypeId == NomenclatureConstants.DismisalType.SamoOtvod) { if (model.CaseSessionActId < 0) { return("Няма избран акт"); } } if ((model.Description ?? string.Empty) == string.Empty) { return("Няма въведен мотив"); } if (model.Id < 1) { if (model.DismisalTypeId == NomenclatureConstants.DismisalType.Otvod || model.DismisalTypeId == NomenclatureConstants.DismisalType.SamoOtvod) { if ((model.CaseSessionActId ?? -1) < 0) { return("Няма избран акт"); } else { var sessionAct = actService.GetById <CaseSessionAct>(model.CaseSessionActId); if (!((sessionAct.ActStateId == NomenclatureConstants.SessionActState.Enforced) || (sessionAct.ActStateId == NomenclatureConstants.SessionActState.ComingIntoForce))) { return("Актът трябва да е постановен или влязъл в сила "); } if (sessionAct.RegNumber == string.Empty) { return("Актът няма генериран номер"); } } if (!IsExistResultOtvod(model.CaseSessionActId ?? -1)) { return("Избраният акт е от заседание в което няма резултат свързан с отвод"); } } } if (model.DismisalKindId == NomenclatureConstants.LawUnitTypes.Judge) { if (model.DismisalTypeId == NomenclatureConstants.DismisalType.Otvod || model.DismisalTypeId == NomenclatureConstants.DismisalType.SamoOtvod) { var lastDate = actService.GetLastSignCaseDate(model.CaseLawUnitId, model.CaseSessionActId ?? -1); if (lastDate.AddSeconds(-lastDate.Second) > model.DismisalDate.AddSeconds(-model.DismisalDate.Second)) { return($"Избраният акт е с дата({lastDate.ToString("dd.MM.yyyy")}) по-късна от дaтата на отвеждането"); } } if (model.DismisalTypeId == NomenclatureConstants.DismisalType.Prerazpredelqne) { var lastDate = actService.GetLastSignCaseDate(model.CaseLawUnitId, null); if (lastDate.AddSeconds(-lastDate.Second) > model.DismisalDate.AddSeconds(-model.DismisalDate.Second)) { return($"Датата на отвеждане е по-ранна от последната дата на подпис ({lastDate.ToString("dd.MM.yyyy")})"); } } } return(string.Empty); }