Exemple #1
0
        public ActionResult DocClassification(HttpPostedFileBase file)
        {
            DocClassification docCls = new DocClassification();

            try {
                String physicalPath = "";
                if (file.ContentLength > 0)
                {
                    String fileHashName = (DateTime.Now).ToString("yyyyMMddHHmmssffff") + file.FileName;
                    physicalPath = DecodePath(
                        Path.Combine(
                            UtilityOperations.GetServerMapPath(
                                UtilityOperations.GetDCEDockerRootPath()) + "\\_temp",
                            Path.GetFileName(fileHashName)));
                    file.SaveAs(physicalPath);
                    String   varet        = (new DocumentsOperations()).IdentifyDocumentType(physicalPath);
                    FileInfo uploadedFile = new FileInfo(physicalPath);
                    docCls.DocClassifiedOutcome += "<input hidden id=\"UploadedFileName\" value=\"" + uploadedFile.Name + "\"/>";
                    docCls.DocClassifiedOutcome += "<span>File Name : " + (uploadedFile.Name).Substring(18) + "</span><br/>";
                    docCls.DocClassifiedOutcome += "<span>Document Type : " + varet + "</span><br/>";
                    docCls.DocClassifiedOutcome += "<span>File Uploaded @ : " + uploadedFile.CreationTime + "</span><br/>";
                }
                else
                {
                    docCls.DocClassifiedMsg = "Error - Please attach the file ...";
                }
            } catch (Exception ex) {
                docCls.DocClassifiedMsg = "Error - File upload failed! " + ex.Message;
            }

            return(View(docCls));
        }
Exemple #2
0
        public DocClassificationDO(DocClassification d)
            : this()
        {
            if (d != null)
            {
                this.DocClassificationId = d.DocClassificationId;
                this.DocId = d.DocId;
                this.ClassificationId = d.ClassificationId;
                this.ClassificationByUserId = d.ClassificationByUserId;
                this.ClassificationDate = d.ClassificationDate;
                this.IsActive = d.IsActive;
                this.IsInherited = d.IsInherited;
                this.Version = d.Version;

                this.IsAdded = false;
                this.IsRemoved = false;

                if (d.Classification != null)
                {
                    this.ClassificationName = d.Classification.Name;
                }
            }
        }
Exemple #3
0
        public IHttpActionResult ChangeDocClassification(int id, List<DocClassificationDO> docClassifications)
        {
            using (var transaction = this.unitOfWork.BeginTransaction())
            {
                DateTime currentDate = DateTime.Now;

                UnitUser unitUser = this.unitOfWork.DbContext.Set<UnitUser>().FirstOrDefault(e => e.UserId == this.userContext.UserId);

                ClassificationPermission techEditPermission = this.classificationRepository.GetByAlias("EditTech");
                ClassificationPermission readPermission = this.classificationRepository.GetByAlias("Read");

                bool hasTechEditPermission =
                    this.classificationRepository.HasPermission(unitUser.UnitId, id, techEditPermission.ClassificationPermissionId) &&
                    this.classificationRepository.HasPermission(unitUser.UnitId, id, readPermission.ClassificationPermissionId);

                if (!hasTechEditPermission)
                {
                    return BadRequest("Not enough permissions!");
                }

                var doc = this.docRepository.Find(id,
                    e => e.DocClassifications);

                if (doc == null)
                {
                    return NotFound();
                }

                //delete
                foreach (var docClassification in docClassifications.Where(e => e.IsRemoved))
                {
                    if (docClassification.DocClassificationId.HasValue)
                    {
                        DocClassification dc = doc.DocClassifications.FirstOrDefault(e => e.DocClassificationId == docClassification.DocClassificationId.Value);

                        if (dc != null)
                        {
                            this.unitOfWork.DbContext.Set<DocClassification>().Remove(dc);
                        }
                    }
                }

                //update
                foreach (var docClassification in docClassifications.Where(e => !e.IsAdded && !e.IsRemoved))
                {
                    if (docClassification.DocClassificationId.HasValue)
                    {
                        DocClassification dc = doc.DocClassifications.FirstOrDefault(e => e.DocClassificationId == docClassification.DocClassificationId.Value);

                        if (dc != null)
                        {
                            dc.IsActive = docClassification.IsActive;
                            dc.IsInherited = docClassification.IsInherited;
                        }
                    }
                }

                //add
                foreach (var docClassification in docClassifications.Where(e => e.IsAdded && !e.IsRemoved && e.IsActive))
                {
                    DocClassification dc = new DocClassification();
                    dc.Doc = doc;
                    dc.ClassificationId = docClassification.ClassificationId.Value;
                    dc.ClassificationByUserId = unitUser.UserId;
                    dc.ClassificationDate = currentDate;
                    dc.IsActive = docClassification.IsActive;
                    dc.IsInherited = docClassification.IsInherited;

                    this.unitOfWork.DbContext.Set<DocClassification>().Add(dc);
                }

                this.unitOfWork.Save();

                this.docRepository.ExecSpSetDocTokens(docId: doc.DocId);

                transaction.Commit();

                return Ok(new
                {
                    id = doc.DocId
                });
            }
        }
Exemple #4
0
        private List<DocClassification> AddDocClassification(Doc doc, User systemUser)
        {
            var docTypeClassifications = this.unitOfWork.DbContext.Set<DocTypeClassification>()
                .Where(e => e.DocTypeId == doc.DocTypeId.Value && e.DocDirectionId == doc.DocDirectionId)
                .ToList();

            List<DocClassification> docClassifications = new List<DocClassification>();

            foreach (var docTypeClassification in docTypeClassifications)
            {
                var docClassification = new DocClassification();
                docClassification.DocId = doc.DocId;
                docClassification.ClassificationId = docTypeClassification.ClassificationId;
                docClassification.ClassificationByUserId = systemUser.UserId;
                docClassification.ClassificationDate = DateTime.Now;
                docClassification.IsInherited = docTypeClassification.IsInherited;
                docClassification.IsActive = true;

                docClassifications.Add(docClassification);

                this.unitOfWork.DbContext.Set<DocClassification>().Add(docClassification);
            }

            return docClassifications;
        }