public ActionResult DocumentReviewConfirm(Guid?id) { if (id == null) { return(Json("Ok!", JsonRequestBehavior.AllowGet)); } var expertise = GetExpertiseStage(id); var model = expertise.EXP_DrugDeclaration; if (model == null) { return(Json("Ok!", JsonRequestBehavior.AllowGet)); } model.StatusId = CodeConstManager.STATUS_EXP_SEND_ID; new DrugDeclarationRepository().Update(model); var history = new EXP_DrugDeclarationHistory() { DateCreate = DateTime.Now, DrugDeclarationId = model.Id, StatusId = model.StatusId, UserId = UserHelper.GetCurrentEmployee().Id, }; new DrugDeclarationRepository().SaveHisotry(history, UserHelper.GetCurrentEmployee().Id); var stageRepository = new ExpertiseStageRepository(); string resultDescription; if (!stageRepository.HasStage(model.Id, CodeConstManager.STAGE_PRIMARY)) { stageRepository.ToNextStage(model.Id, null, new[] { CodeConstManager.STAGE_PRIMARY }, out resultDescription); } return(Json("Ok!", JsonRequestBehavior.AllowGet)); }
public ActionResult RejectConfirm(Guid?id, string note) { if (id != null) { var expertise = GetExpertiseStage(id); var model = expertise.EXP_DrugDeclaration; if (model != null) { model.DesignNote = note; model.DesignDate = DateTime.Now; model.StatusId = CodeConstManager.STATUS_REJECT_ID; new DrugDeclarationRepository().Update(model); var history = new EXP_DrugDeclarationHistory() { DateCreate = DateTime.Now, DrugDeclarationId = model.Id, StatusId = model.StatusId, UserId = UserHelper.GetCurrentEmployee().Id, Note = model.DesignNote }; new DrugDeclarationRepository().SaveHisotry(history, UserHelper.GetCurrentEmployee().Id); } } return(Json("Ok!", JsonRequestBehavior.AllowGet)); }
public ActionResult SendToApplicant(Guid stageId) { var repo = new ExpertiseStageRepository(); var stage = repo.GetStage(stageId); var repository = new DrugDeclarationRepository(); var declaraion = repository.GetById(stage.DeclarationId.ToString()); if (declaraion == null) { return(Json(new { isSuccess = false, })); } declaraion.DesignDate = DateTime.Now; declaraion.StatusId = CodeConstManager.STATUS_EXP_SEND_INSTRUCTION_ID; new DrugDeclarationRepository().Update(declaraion); var history = new EXP_DrugDeclarationHistory() { DateCreate = DateTime.Now, DrugDeclarationId = declaraion.Id, StatusId = declaraion.StatusId, UserId = UserHelper.GetCurrentEmployee().Id, Note = "Инструкция для согласования" }; new DrugDeclarationRepository().SaveHisotry(history, UserHelper.GetCurrentEmployee().Id); var status = new ReadOnlyDictionaryRepository().GetDicStatusById(CodeConstManager.STATUS_EXP_SEND_INSTRUCTION_ID); return(Json(new { isSuccess = true, statusName = status.NameRu })); }
public void RejectConfirm(Guid?id, string note, Guid guid) { var expertise = AppContext.EXP_ExpertiseStage.FirstOrDefault(e => e.Id == id); var stageStatusInRework = GetStageStatusByCode(EXP_DIC_StageStatus.InReWork); if (expertise == null) { return; } expertise.StatusId = stageStatusInRework.Id; AppContext.SaveChanges(); var model = expertise.EXP_DrugDeclaration; if (model != null) { model.DesignNote = note; model.DesignDate = DateTime.Now; model.StatusId = CodeConstManager.STATUS_REJECT_ID; new DrugDeclarationRepository().Update(model); var history = new EXP_DrugDeclarationHistory() { DateCreate = DateTime.Now, DrugDeclarationId = model.Id, StatusId = model.StatusId, UserId = UserHelper.GetCurrentEmployee().Id, Note = model.DesignNote }; new DrugDeclarationRepository().SaveHisotry(history, UserHelper.GetCurrentEmployee().Id); } }
public FileLink SendToApplicant(string id, Employee getCurrentEmployee) { var file = AppContext.FileLinks.FirstOrDefault(e => e.Id == new Guid(id)); if (file == null) { return(null); } var status = new ReadOnlyDictionaryRepository().GetDicFileLinkStatusByCode(CodeConstManager.STATUS_FILE_CODE_SENDED); file.StatusId = status.Id; AppContext.SaveChanges(); var declaraion = AppContext.EXP_DrugDeclaration.FirstOrDefault(e => e.Id == file.DocumentId); if (declaraion != null) { declaraion.DesignDate = DateTime.Now; declaraion.StatusId = CodeConstManager.STATUS_EXP_SEND_INSTRUCTION_ID; new DrugDeclarationRepository().Update(declaraion); var history = new EXP_DrugDeclarationHistory() { DateCreate = DateTime.Now, DrugDeclarationId = declaraion.Id, StatusId = declaraion.StatusId, UserId = getCurrentEmployee.Id, Note = "Инструкция для согласования" }; new DrugDeclarationRepository().SaveHisotry(history, UserHelper.GetCurrentEmployee().Id); } file.DIC_FileLinkStatus = status; return(file); }
public ActionResult SignForm(string preambleId, string xmlAuditForm) { var success = true; var repository = new DrugDeclarationRepository(); var model = repository.GetById(preambleId); new SignDocumentRepository().SaveSignDocument(UserHelper.GetCurrentEmployee().Id, xmlAuditForm, model); if (model.StatusId == CodeConstManager.STATUS_DRAFT_ID) { model.FirstSendDate = DateTime.Now; } model.StatusId = CodeConstManager.STATUS_SEND_ID; model.SendDate = DateTime.Now; model.IsSigned = true; var history = new EXP_DrugDeclarationHistory() { DateCreate = DateTime.Now, DrugDeclarationId = model.Id, XmlSign = xmlAuditForm, StatusId = CodeConstManager.STATUS_SEND_ID, UserId = UserHelper.GetCurrentEmployee().Id, Note = "Отчет предоставлен. Дата отправки:" + DateTime.Now }; if (string.IsNullOrEmpty(model.Number)) { // model.Number = repository.GetAppNumber(); } var indexWrapping = 1; foreach (var expDrugDosage in model.EXP_DrugDosage) { if (string.IsNullOrEmpty(expDrugDosage.RegNumber)) { expDrugDosage.RegNumber = model.Number + "." + indexWrapping; indexWrapping++; } } repository.SaveOrUpdate(model, UserHelper.GetCurrentEmployee().Id); repository.SaveHisotry(history, UserHelper.GetCurrentEmployee().Id); // Set Status Sended return(Json(new { success }, JsonRequestBehavior.AllowGet)); }
public virtual ActionResult SendNotSign(string modelId) { var repository = new DrugDeclarationRepository(); var model = repository.GetById(modelId); if (model.StatusId == CodeConstManager.STATUS_DRAFT_ID) { model.FirstSendDate = DateTime.Now; } model.StatusId = CodeConstManager.STATUS_SEND_ID; model.SendDate = DateTime.Now; model.IsSigned = false; var history = new EXP_DrugDeclarationHistory() { DateCreate = DateTime.Now, DrugDeclarationId = model.Id, StatusId = CodeConstManager.STATUS_SEND_ID, UserId = UserHelper.GetCurrentEmployee().Id, Note = "Отчет предоставлен без подписи. Дата отправки:" + DateTime.Now }; if (string.IsNullOrEmpty(model.Number)) { // model.Number = repository.GetAppNumber(); } var indexWrapping = 1; foreach (var expDrugDosage in model.EXP_DrugDosage) { if (string.IsNullOrEmpty(expDrugDosage.RegNumber)) { expDrugDosage.RegNumber = model.Number + "." + indexWrapping; indexWrapping++; } } repository.SaveOrUpdate(model, UserHelper.GetCurrentEmployee().Id); repository.SaveHisotry(history, UserHelper.GetCurrentEmployee().Id); return(Json(new { isSuccess = true })); }
public EXP_DrugCorespondence SendMailRemark(string id, Employee getCurrentEmployee) { try { var model = AppContext.EXP_DrugCorespondence.FirstOrDefault(e => e.Id == new Guid(id)); if (model == null) { return(null); } if (!model.DateSend.HasValue) { model.DateSend = DateTime.Now; } model.IsReadOnly = true; var status = new ReadOnlyDictionaryRepository().GetDictionaries(CodeConstManager.STATUS_SEND).FirstOrDefault(); if (status != null) { model.StatusId = status.Id; } AppContext.SaveChanges(); var expertiseStage = AppContext.EXP_ExpertiseStage.FirstOrDefault(x => !x.IsHistory && x.StageId == model.StageId && x.DeclarationId == model.DrugDeclarationId); if (expertiseStage != null) { expertiseStage.IsSuspended = true; expertiseStage.SuspendedStartDate = DateTime.Now; AppContext.SaveChanges(); } else { LogHelper.Log.ErrorFormat("Не удалось найти expertiseStage по EXP_DrugCorespondence с id {0}", model.Id); } model.Dictionary = status; var declaraion = AppContext.EXP_DrugDeclaration.FirstOrDefault(e => e.Id == model.DrugDeclarationId); if (declaraion != null) { // declaraion.DesignNote = model.Note; declaraion.DesignDate = DateTime.Now; if (model.EXP_DIC_CorespondenceSubject.Code == EXP_DIC_CorespondenceSubject.Remarks) { declaraion.StatusId = CodeConstManager.STATUS_EXP_REJECT_ID; new DrugDeclarationRepository().Update(declaraion); } var history = new EXP_DrugDeclarationHistory() { DateCreate = DateTime.Now, DrugDeclarationId = declaraion.Id, StatusId = declaraion.StatusId, UserId = getCurrentEmployee.Id, Note = model.Note }; new DrugDeclarationRepository().SaveHisotry(history, UserHelper.GetCurrentEmployee().Id); } return(model); } catch (DbEntityValidationException dbEx) { LogHelper.Log.Error("DbEntityValidationException", dbEx); foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { LogHelper.Log.ErrorFormat("Property: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage); } } throw; } catch (Exception ex) { LogHelper.Log.Error("SendMailRemark", ex); throw; } }