Example #1
0
        public JsonResult Status_Update(IEnumerable <DocumentStatusView> documentStatuss)
        {
            GeneralResponse response = new GeneralResponse();

            #region Access Check
            bool hasPermission = GetEmployee().IsGuaranteed("DocumentStatus_Update");
            if (!hasPermission)
            {
                response.ErrorMessages.Add("AccessDenied");
                return(Json(response, JsonRequestBehavior.AllowGet));
            }
            #endregion

            IList <EditDocumentStatusRequest> requests = new List <EditDocumentStatusRequest>();

            foreach (DocumentStatusView documentStatus in documentStatuss)
            {
                EditDocumentStatusRequest request = new EditDocumentStatusRequest();

                request.ID = documentStatus.ID;
                request.ModifiedEmployeeID = GetEmployee().ID;
                request.CompleteStatus     = documentStatus.CompleteStatus;
                request.DefaultStatus      = documentStatus.DefaultStatus;
                request.DocumentStatusName = documentStatus.DocumentStatusName;
                request.RowVersion         = documentStatus.RowVersion;

                requests.Add(request);
            }

            response = _documentStatusService.EditDocumentStatuss(requests);

            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Example #2
0
        public GeneralResponse EditDocumentStatus(EditDocumentStatusRequest request)
        {
            GeneralResponse response       = new GeneralResponse();
            DocumentStatus  documentStatus = new DocumentStatus();

            documentStatus = _documentStatusRepository.FindBy(request.ID);

            if (documentStatus != null)
            {
                try
                {
                    documentStatus.ModifiedDate     = PersianDateTime.Now;
                    documentStatus.ModifiedEmployee = _employeeRepository.FindBy(request.ModifiedEmployeeID);
                    documentStatus.DefaultStatus    = request.DefaultStatus;
                    documentStatus.CompleteStatus   = request.CompleteStatus;
                    if (request.DocumentStatusName != null)
                    {
                        documentStatus.DocumentStatusName = request.DocumentStatusName;
                    }

                    if (documentStatus.RowVersion != request.RowVersion)
                    {
                        response.ErrorMessages.Add("EditConcurrencyKey");
                        return(response);
                    }
                    else
                    {
                        documentStatus.RowVersion += 1;
                    }

                    if (documentStatus.GetBrokenRules().Count() > 0)
                    {
                        foreach (BusinessRule businessRule in documentStatus.GetBrokenRules())
                        {
                            response.ErrorMessages.Add(businessRule.Rule);
                        }

                        return(response);
                    }

                    _documentStatusRepository.Save(documentStatus);
                    _uow.Commit();

                    ////response.success = true;
                }
                catch (Exception ex)
                {
                    response.ErrorMessages.Add(ex.Message);
                }
            }
            else
            {
                response.ErrorMessages.Add("NoItemToEditKey");
            }
            return(response);
        }
        public ActionResult Edit(string id, DocumentStatusDetailView documentStatusDetailView)
        {
            GeneralResponse response = new GeneralResponse();

            #region Access Check
            bool hasPermission = GetEmployee().IsGuaranteed("DocumentStatus_Update");
            if (!hasPermission)
            {
                response.ErrorMessages.Add("AccessDenied");
                return(View(documentStatusDetailView));
            }
            #endregion

            if (ModelState.IsValid)
            {
                try
                {
                    EditDocumentStatusRequest request = new EditDocumentStatusRequest();

                    request.ID = Guid.Parse(id);
                    request.ModifiedEmployeeID = GetEmployee().ID;
                    request.CompleteStatus     = documentStatusDetailView.DocumentStatusView.CompleteStatus;
                    request.DocumentStatusName = documentStatusDetailView.DocumentStatusView.DocumentStatusName;
                    request.DefaultStatus      = documentStatusDetailView.DocumentStatusView.DefaultStatus;
                    request.SortOrder          = documentStatusDetailView.DocumentStatusView.SortOrder;
                    request.RowVersion         = documentStatusDetailView.DocumentStatusView.RowVersion;

                    response = this._documentStatusService.EditDocumentStatus(request);

                    if (response.success)
                    {
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        foreach (string error in response.ErrorMessages)
                        {
                            ModelState.AddModelError("", error);
                        }
                        return(View(documentStatusDetailView));
                    }
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("", ex.Message);
                    return(View(documentStatusDetailView));
                }
            }

            return(View(documentStatusDetailView));
        }