Пример #1
0
        public ActionResult SaveChangeRequest(DocumentChangeRequest model)
        {
            model.Comment1By = Request.Cookies["UserName"].Value;
            int OrgID         = int.Parse(Request.Cookies["OrgID"].Value);
            int requestNumber = new DocumentFacade().SaveChangeRequest(model, Request.Cookies["UserEmail"].Value, OrgID);

            TempData.Clear();
            this.ShowMessage(Helpers.MessageType.Success, "Change request submitted successfully.");
            return(RedirectToAction("Index", "DocumentLibrary"));
        }
Пример #2
0
        public ActionResult ChangeRequest(int id, int dcr)
        {
            bool isAuthorized = CheckDocumentLevelPermissions(id, "Raise Change Request");

            ViewBag.HideGenerateButton = false;
            if (isAuthorized)
            {
                DocumentFacade        facade   = new DocumentFacade();
                DocumentChangeRequest dcrmodel = new DocumentChangeRequest();

                dcrmodel = facade.GetDocumentChangeRequest(id, dcr);

                dcrmodel.SelectedDocument = facade.GetDocumentDetails(id > 0 ? id : dcrmodel.DocumentID);
                if (!string.IsNullOrWhiteSpace(dcrmodel.RequestNumber))
                {
                    ViewBag.HideGenerateButton = true;
                }

                int             OrgID   = int.Parse(Request.Cookies["OrgID"].Value);
                List <Document> doclist = new DocumentFacade().GetDocumentDetailsList(OrgID, 0, dcrmodel.SelectedDocument.DepartmentID, 0);

                // Build document list from department docs
                List <EffectedDocuments> effDocList = new List <EffectedDocuments>();
                foreach (Document doc in doclist)
                {
                    effDocList.Add(new EffectedDocuments()
                    {
                        DocumentID = doc.DocumentID, DocumentName = doc.DocumentName, DocumentNumber = doc.DocumentNumber, VersionString = doc.VersionString, NextVersion = doc.NextVersion.ToString("N")
                    });
                }
                dcrmodel.DepartmentDocumentsList = effDocList;

                List <EffectedDocuments> result = new List <EffectedDocuments>();
                if (!string.IsNullOrWhiteSpace(dcrmodel.EffectedDocumentIDs))
                {
                    List <string> items = dcrmodel.EffectedDocumentIDs.Split(',').ToList();
                    result = effDocList.Where(item => items.Any(category => category.Equals(item.DocumentID.ToString()))).ToList();
                }
                // Build effected documents list for change request
                dcrmodel.EffectedDocuments = result;

                ViewData["DocList"] = JsonHelper.JsonSerializer(effDocList, typeof(List <EffectedDocuments>));

                // return Json(doclist, JsonRequestBehavior.AllowGet);

                return(View("ChangeRequest", dcrmodel));
            }
            else
            {
                throw new Exception("Access denied! You donot have permissions on change request.");
            }
        }
Пример #3
0
        public int SaveChangeRequest(DocumentChangeRequest doc, string userEmail, int OrgID)
        {
            // Generates version and next version from configuration and saves the document
            try
            {
                int workflowId = 3; // waiting for approval
                if (!string.IsNullOrWhiteSpace(doc.Comment1))
                {
                    workflowId = 4;                                           //approved
                }
                if (!string.IsNullOrWhiteSpace(doc.Comment3))
                {
                    workflowId      = 6; //published
                    doc.IsPublished = "1";
                }

                int reqNumber = Db.ExecuteNonQuery("prcSaveDocumentChangeRequest", CommandType.StoredProcedure,
                                                   Db.CreateParameter("@DocumentChangeRequestID", doc.DocumentChangeRequestID),
                                                   Db.CreateParameter("@RequestNumber", doc.RequestNumber),
                                                   Db.CreateParameter("@DocumentID", doc.DocumentID),
                                                   Db.CreateParameter("@DepartmentID", doc.DepartmentID),
                                                   Db.CreateParameter("@Detail", doc.Detail),
                                                   Db.CreateParameter("@Reason", doc.Reason),
                                                   Db.CreateParameter("@Comment1", doc.Comment1),
                                                   Db.CreateParameter("@Comment2", doc.Comment2),
                                                   Db.CreateParameter("@Comment3", doc.Comment3),
                                                   Db.CreateParameter("@Comment1By", doc.Comment1By),
                                                   Db.CreateParameter("@Comment2By", doc.Comment2By),
                                                   Db.CreateParameter("@Comment3By", doc.Comment3By),
                                                   Db.CreateParameter("@EffectiveDate", DateTime.ParseExact(doc.EffectiveDate, "dd-MM-yyyy", null)),
                                                   Db.CreateParameter("@IsActive", 1),
                                                   Db.CreateParameter("@CreatedBy", userEmail),
                                                   Db.CreateParameter("@EffectedDocumentIDs", doc.EffectedDocumentIDs.TrimEnd(',')),
                                                   Db.CreateParameter("@WorkflowStatusID", workflowId),
                                                   Db.CreateParameter("@IsPublished", doc.IsPublished),
                                                   Db.CreateParameter("@OrganizationID", OrgID)
                                                   );

                return(reqNumber);
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Пример #4
0
        public DocumentChangeRequest GetDocumentChangeRequest(int docid, int dcr)
        {
            DocumentChangeRequest doc = new DocumentChangeRequest();
            DataSet ds = Db.ExecuteDataSet("prcGetDocumentChangeRequest", CommandType.StoredProcedure,
                                           Db.CreateParameter("@DocumentID", docid),
                                           Db.CreateParameter("@DocumentChangeRequestID", dcr)
                                           );
            List <DocumentChangeRequest> docInfo = new List <DocumentChangeRequest>();

            if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                docInfo = Db.MapReader <DocumentChangeRequest>(ds.Tables[0]).ToList();
            }
            if (docInfo.Count > 0)
            {
                doc = docInfo[0];
            }

            return(doc);
        }