public override ActionResult AppDosage(Guid?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var model = new AppDosageRepository().GetStageByAppDosageId(id.Value); if (model == null) { return(HttpNotFound()); } FillDosageControl(model); model.EXP_DrugDosage.EXP_DrugDeclaration.ExpDicPrimaryOtds = new ReadOnlyDictionaryRepository().GetExpDicPrimaryOTDs().Where(e => e.ParentId == null).ToList(); model.ExpertisePharmacologicalFinalDoc = model.EXP_ExpertisePharmacologicalFinalDoc.FirstOrDefault(); if (model.ExpertisePharmacologicalFinalDoc == null) { model.ExpertisePharmacologicalFinalDoc = new EXP_ExpertisePharmacologicalFinalDoc(); model.ExpertisePharmacologicalFinalDoc.EXP_ExpertiseStageDosage = model; } var repository = new ReadOnlyDictionaryRepository(); ViewData["FinalyDocResultList" + model.EXP_DrugDosage.DrugDeclarationId] = new SelectList(repository.GetStageResultsByStage(model.EXP_ExpertiseStage.StageId), "Id", "NameRu", model.ResultId); var stageName = ExpStageNameHelper.GetName(GetStage()); ActionLogger.WriteInt(stageName + ": Получение заявки №" + model.EXP_DrugDosage.RegNumber); //todo во всех контроллерах так, позже можно замутить через наследование return(PartialView("~/Views/DrugDeclaration/AppDosage.cshtml", model)); }
public override ActionResult AppDosage(Guid?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var dosageRepository = new AppDosageRepository(); var model = dosageRepository.GetStageByAppDosageId(id.Value); if (model == null) { return(HttpNotFound()); } FillDosageControl(model); var safetyReportDosageStage = dosageRepository.GetStageDosage(model.DosageId, CodeConstManager.STAGE_SAFETYREPORT); model.ExpertiseSafetyreportFinalDoc = safetyReportDosageStage != null?safetyReportDosageStage.EXP_ExpertiseSafetyreportFinalDoc.FirstOrDefault() : null; model.EXP_DrugDosage.EXP_DrugDeclaration.ExpDicPrimaryOtds = new ReadOnlyDictionaryRepository().GetExpDicPrimaryOTDs().Where(e => e.ParentId == null).ToList(); var repository = new ReadOnlyDictionaryRepository(); ViewData["FinalyDocResultList" + model.EXP_DrugDosage.DrugDeclarationId] = new SelectList(repository.GetStageResultsByStage(model.EXP_ExpertiseStage.StageId), "Id", "NameRu", model.ResultId); var stageName = ExpStageNameHelper.GetName(GetStage()); ActionLogger.WriteInt(stageName + ": Получение заявки №" + model.EXP_DrugDosage.RegNumber); return(PartialView("~/Views/DrugDeclaration/AppDosage.cshtml", model)); }
public ActionResult ListRegister([DataSourceRequest] DataSourceRequest request, string type, int stage, DeclarationRegistryFilter customFilter = null) { var stageName = ExpStageNameHelper.GetName(stage); ActionLogger.WriteInt(stageName + ": Получение списка заявлений"); var list = new DrugDeclarationRepository().DrugDeclarationRegisterByStatus(type, stage, UserHelper.GetCurrentEmployee().Id, customFilter); var result = list.ToDataSourceResult(request); return(Json(result)); }
public ActionResult SendToNextStage(Guid expStageId, int[] nextStageIds, int?stageResultId = null) { var repository = new ExpertiseStageRepository(); if (repository.HasNotFixedRemarks(expStageId)) { return(Json( new { failed = true, msg = "Невозможно передать на следующий этап так как есть не исправленные замечания" }, JsonRequestBehavior.AllowGet)); } string resultDescription; var expertiseStage = repository.GetById(expStageId); var dec = repository.GetDeclarationByStage(expStageId); if (expertiseStage.EXP_DIC_Stage.Code == CodeConstManager.STAGE_SAFETYREPORT.ToString()) { var rDictionary = new ReadOnlyDictionaryRepository(); EXP_DIC_StageResult stageResult = null; if (stageResultId.HasValue) { stageResult = rDictionary.GetStageResultById(stageResultId.Value); } if (stageResult != null && stageResult.Code == EXP_DIC_StageResult.DoesNotMatchCode) { repository.ToBackStage(dec.Id, expStageId, nextStageIds, out resultDescription); } else { repository.ToNextStage(dec.Id, expStageId, nextStageIds, out resultDescription); } } else { repository.ToNextStage(dec.Id, expStageId, nextStageIds, out resultDescription); } var from = ExpStageNameHelper.GetName(expertiseStage.StageId); var to = ""; foreach (var nextStageId in nextStageIds) { if (!String.IsNullOrEmpty(to)) { to += ", "; } var stageName = ExpStageNameHelper.GetName(nextStageId); to += stageName; } ActionLogger.WriteInt(" Отправка заявления №" + dec.Number + " на другой этап", "from: " + from + "; to:" + to); return(Json("OK", JsonRequestBehavior.AllowGet)); }
public override ActionResult AppDosage(Guid?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var model = new AppDosageRepository().GetStageByAppDosageId(id.Value); if (model == null) { return(HttpNotFound()); } FillDosageControl(model); var repositoryDic = new ReadOnlyDictionaryRepository(); var repository = new SafetyreportRepository(); model.EXP_DrugDosage.EXP_DrugDeclaration.ExpDicPrimaryOtds = repositoryDic.GetExpDicPrimaryOTDs().Where(e => e.ParentId == null).ToList(); model.ExpertiseSafetyreportFinalDoc = model.EXP_ExpertiseSafetyreportFinalDoc.FirstOrDefault(); if (model.ExpertiseSafetyreportFinalDoc == null) { model.ExpertiseSafetyreportFinalDoc = CreateExpertiseSafetyreportFinalDoc(model); repository.CreateExpertiseSafetyreportFinalDoc(model.ExpertiseSafetyreportFinalDoc); model.ExpertiseSafetyreportFinalDoc.EXP_ExpertiseStageDosage = model; } else { var newExpertiseSafetyreport = CreateExpertiseSafetyreportFinalDoc(model); if (string.IsNullOrEmpty(model.ExpertiseSafetyreportFinalDoc.Conclusion)) { model.ExpertiseSafetyreportFinalDoc.Conclusion = newExpertiseSafetyreport.Conclusion; } if (string.IsNullOrEmpty(model.ExpertiseSafetyreportFinalDoc.ConclusionKz)) { model.ExpertiseSafetyreportFinalDoc.ConclusionKz = newExpertiseSafetyreport.ConclusionKz; } repository.UpdateExpertiseSafetyreportFinalDoc(model.ExpertiseSafetyreportFinalDoc); } ViewData["FinalyDocResultList" + model.EXP_DrugDosage.DrugDeclarationId] = new SelectList(repositoryDic.GetStageResultsByStage(model.EXP_ExpertiseStage.StageId), "Id", "NameRu", model.ResultId); var stageName = ExpStageNameHelper.GetName(GetStage()); ActionLogger.WriteInt(stageName + ": Получение заявки №" + model.EXP_DrugDosage.RegNumber); return(PartialView("~/Views/DrugDeclaration/AppDosage.cshtml", model)); }
public bool UpdateOtd(Guid stageId, int noteId, bool isChecked, Guid id) { var repository = new ReadOnlyDictionaryRepository().GetExpDicPrimaryOTDs(); var model = GetExpertiseStageById(stageId); if (model == null) { return(false); } var dic = repository.FirstOrDefault(e => e.Id == noteId); if (model.OtdIds == null) { model.OtdIds = ""; } var otdIds = model.OtdIds.Split(',').ToList(); var prevOtdIds = new List <string>(otdIds); GetOtdChildren(otdIds, dic, isChecked); GetOtdParent(otdIds, dic, isChecked); var uncheckedOtIds = prevOtdIds.Except(otdIds).ToList(); var checkedOtIds = otdIds.Except(prevOtdIds).ToList(); var addLogInfo = ""; if (uncheckedOtIds.Count > 0) { var uncheckedOtIdsStr = String.Join(",", uncheckedOtIds); addLogInfo += "снята галочка с пунктов: " + uncheckedOtIdsStr; } if (checkedOtIds.Count > 0) { var checkedOtIdsStr = String.Join(",", checkedOtIds); addLogInfo += "поставлена галочка в пунктах: " + checkedOtIdsStr; } var stageName = ExpStageNameHelper.GetName(model.StageId); ActionLogger.WriteInt(AppContext, stageName + ": Заявление №" + model.EXP_DrugDeclaration.Number + ": изменения значений экспертизы(галочки)", addLogInfo); model.OtdIds = string.Join(",", otdIds); AppContext.SaveChanges(); return(true); }
public ActionResult Design(Guid[] id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var model = GetExpertiseStage(id[0]); model.EXP_DrugDeclaration.Applicant = new EmployeesRepository().GetById(model.EXP_DrugDeclaration.OwnerId); ViewBag.CanRefuseExpertise = model.StageId == CodeConstManager.STAGE_PRIMARY /*&& model.EXP_DIC_StageStatus.Code != EXP_DIC_StageStatus.Completed*/ && model.EXP_DrugDeclaration.StatusId != CodeConstManager.STATUS_EXP_ON_REFUSING_ID && model.EXP_DrugDeclaration.StatusId != CodeConstManager.STATUS_EXP_REFUSED_ID; FillDeclarationControl(model.EXP_DrugDeclaration); if (model == null) { return(HttpNotFound()); } var stageName = ExpStageNameHelper.GetName(model.StageId); ActionLogger.WriteInt(stageName + ": Получение заявления №" + model.EXP_DrugDeclaration.Number); return(PartialView(model)); }
public override ActionResult AppDosage(Guid?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var model = new AppDosageRepository().GetStageByAppDosageId(id.Value); if (model == null) { return(HttpNotFound()); } FillDosageControl(model); model.ExpDrugAnaliseIndicators = new List <EXP_DrugAnaliseIndicator>(); var list = model.EXP_DrugAnaliseIndicator.OrderBy(e => e.PositionNumber); var repository = new ReadOnlyDictionaryRepository(); var remarkTypes = repository.GetDicAnalyseIndicators().ToArray(); ViewData["AnalyseIndicatorList" + model.Id] = new SelectList(remarkTypes, "Id", "NameRu", null); var booleans = repository.GetBooleanList(); ViewData["Booleans" + model.Id] = new SelectList(booleans, "IsSign", "NameRu", null); foreach (var expDrugAnaliseIndicator in list) { // ViewData["AnalyseIndicatorList"+ expDrugAnaliseIndicator.Id] = new SelectList(remarkTypes, "Id", "NameRu", expDrugAnaliseIndicator.AnalyseIndicator); model.ExpDrugAnaliseIndicators.Add(expDrugAnaliseIndicator); } ViewData["FinalyDocResultList" + model.EXP_DrugDosage.DrugDeclarationId] = new SelectList(repository.GetStageResultsByStage(model.EXP_ExpertiseStage.StageId), "Id", "NameRu", model.ResultId); var stageName = ExpStageNameHelper.GetName(GetStage()); ActionLogger.WriteInt(stageName + ": Получение заявки №" + model.EXP_DrugDosage.RegNumber); return(PartialView("~/Views/DrugAnalitic/AppDosage.cshtml", model)); }