public ResultOperation Delete(Guid applicationPageId)
        {
            ResultOperation resultOperation = null;

            try
            {
                resultOperation = new ResultOperation();
                if (resultOperation.IsSuccess)
                {
                    base.BeginTransaction();
                    List <sysBpmsApplicationPageAccess> list = new ApplicationPageAccessService(this.UnitOfWork).GetList(applicationPageId, null);
                    foreach (var item in list)
                    {
                        resultOperation = new ApplicationPageAccessService(this.UnitOfWork).Delete(item.ID);
                        if (!resultOperation.IsSuccess)
                        {
                            break;
                        }
                    }
                    if (resultOperation.IsSuccess)
                    {
                        this.UnitOfWork.Repository <IApplicationPageRepository>().Delete(applicationPageId);
                        this.UnitOfWork.Save();
                    }
                }
            }
            catch (Exception ex)
            {
                return(base.ExceptionHandler(ex));
            }
            base.FinalizeService(resultOperation);

            return(resultOperation);
        }
        public ResultOperation Delete(Guid departmentId)
        {
            ResultOperation resultOperation = new ResultOperation();

            try
            {
                sysBpmsDepartment department = this.GetInfo(departmentId);
                if (department.DepartmentID.HasValue)
                {
                    resultOperation.AddError("This Organization has children, so delete the children first.");
                }
                if (resultOperation.IsSuccess)
                {
                    DepartmentMemberService      departmentMemberService      = new DepartmentMemberService(base.UnitOfWork);
                    ApplicationPageAccessService applicationPageAccessService = new ApplicationPageAccessService(base.UnitOfWork);
                    var members  = departmentMemberService.GetList(departmentId, null, null);
                    var accesses = applicationPageAccessService.GetList(departmentId);
                    this.BeginTransaction();

                    foreach (var item in members)
                    {
                        departmentMemberService.Delete(item.ID);
                    }
                    foreach (var item in accesses)
                    {
                        applicationPageAccessService.Delete(item.ID);
                    }
                    this.UnitOfWork.Repository <IDepartmentRepository>().Delete(departmentId);
                    this.UnitOfWork.Save();
                }
            }
            catch (Exception ex)
            {
                return(base.ExceptionHandler(ex));
            }
            base.FinalizeService(resultOperation);

            return(resultOperation);
        }
示例#3
0
        public ResultOperation Copy(Guid dynamicFormId, string userName)
        {
            sysBpmsDynamicForm dynamicForm = this.GetInfo(dynamicFormId);

            dynamicForm.ID    = Guid.Empty;
            dynamicForm.Name += " - Copy";

            this.UpdateBackendCodeID(dynamicForm);
            this.GetSourceCode(dynamicForm);
            if (dynamicForm.ApplicationPageID.HasValue)
            {
                ApplicationPageService       applicationPageService       = new ApplicationPageService(base.UnitOfWork);
                ApplicationPageAccessService applicationPageAccessService = new ApplicationPageAccessService(base.UnitOfWork);

                sysBpmsApplicationPage sysBpmsApplicationPage = applicationPageService.GetInfo(dynamicForm.ApplicationPageID.Value);
                List <sysBpmsApplicationPageAccess> sysBpmsApplicationPageAccessList = applicationPageAccessService.GetList(dynamicForm.ApplicationPageID.Value, null);

                //Adding sysBpmsApplicationPage
                sysBpmsApplicationPage.ID = Guid.NewGuid();
                applicationPageService.Add(sysBpmsApplicationPage);

                foreach (var item in sysBpmsApplicationPageAccessList)
                {
                    item.ID = Guid.NewGuid();
                    item.ApplicationPageID = sysBpmsApplicationPage.ID;
                    applicationPageAccessService.Add(item);
                }
                dynamicForm.ApplicationPageID = sysBpmsApplicationPage.ID;
            }
            dynamicForm.CreatedBy   = userName;
            dynamicForm.CreatedDate = DateTime.Now;
            dynamicForm.UpdatedBy   = userName;
            dynamicForm.UpdatedDate = DateTime.Now;
            this.UnitOfWork.Repository <IDynamicFormRepository>().Add(dynamicForm);
            this.UnitOfWork.Save();


            return(new ResultOperation());
        }