예제 #1
0
        public List <PermissionAc> GetAllActivityList()
        {
            try
            {
                var childPermissionCollection = _childPermissionDataRepository.Fetch(x => x.ParentPermissionId == null).ToList();

                //var rolePermissionCollection = new List<RolePermissionAc>();
                //var rolePermissionAc = new RolePermissionAc();
                var permissionlist = new List <PermissionAc>();
                foreach (var permission in childPermissionCollection)
                {
                    var permissionAc = new PermissionAc();

                    permissionAc.PermissionId         = permission.Id;
                    permissionAc.Name                 = permission.Name;
                    permissionAc.IsCondition          = permission.IsCondition;
                    permissionAc.AcceptPermission     = permission.AcceptPermission;
                    permissionAc.IsAllowOtherWorkFLow = permission.IsAllowOtherWorkFLow;
                    permissionAc.RejectPermission     = permission.RejectPermission;
                    permissionAc.IsChecked            = permission.IsClosed;
                    permissionlist.Add(permissionAc);
                    // }
                }

                return(permissionlist);
            }
            catch (Exception ex)
            {
                _errorLog.LogException(ex);
                throw;
            }
        }
예제 #2
0
        public List <PermissionAc> AddWorkFlowDetails(int permissionId)
        {
            try
            {
                var childPermissionCollection = _childPermissionDataRepository.Fetch(x => x.ParentPermissionId == permissionId && x.IsValidActivity).ToList();

                var permissionlist = new List <PermissionAc>();
                foreach (var permission in childPermissionCollection)
                {
                    var permissionAc = new PermissionAc();

                    permissionAc.PermissionId           = permission.Id;
                    permissionAc.Name                   = permission.Name;
                    permissionAc.AcceptPermission       = permission.AcceptPermission;
                    permissionAc.RejectPermission       = permission.RejectPermission;
                    permissionAc.IsAllowOtherBranchUser = permission.IsAllowOtherBranchUser;
                    // permissionAc. = permission.PermissionName;
                    permissionlist.Add(permissionAc);
                    // }
                }

                return(permissionlist);
            }
            catch (Exception ex)
            {
                _errorLog.LogException(ex);
                throw;
            }
        }
예제 #3
0
        public List <PermissionAc> EditWorkFlowPermission(int permissionId)
        {
            try
            {
                var childPermissionCollection = _childPermissionDataRepository.Fetch(x => x.ParentPermissionId == permissionId).ToList();
                var commanPermission          = _childPermissionDataRepository.Fetch(x => x.ParentPermissionId == null).ToList();
                childPermissionCollection.AddRange(commanPermission);
                //var rolePermissionCollection = new List<RolePermissionAc>();
                //var rolePermissionAc = new RolePermissionAc();
                var permissionlist = new List <PermissionAc>();
                foreach (var permission in childPermissionCollection)
                {
                    var permissionAc = new PermissionAc();

                    permissionAc.PermissionId     = permission.Id;
                    permissionAc.Name             = permission.Name;
                    permissionAc.AcceptPermission = permission.AcceptPermission;
                    permissionAc.RejectPermission = permission.RejectPermission;
                    permissionlist.Add(permissionAc);
                }

                return(permissionlist);
            }
            catch (Exception ex)
            {
                _errorLog.LogException(ex);
                throw;
            }
        }
예제 #4
0
 /// <summary>
 /// this method is used to get all permission list.
 /// </summary>
 /// <returns></returns>
 public List <RolePermissionAc> GetAllPermissionsList()
 {
     try
     {
         var rolePermissionCollection = new List <RolePermissionAc>();
         var rolePermissionAc         = new RolePermissionAc();
         var permissionlist           = new List <PermissionAc>();
         foreach (var permission in _parentPermissionDataRepository.GetAll().ToList())
         {
             var tree = new PermissionAc
             {
                 PermissionId = permission.Id,
                 Name         = permission.Name,
                 Children     = ChildPermission(permission.Id)
             };
             permissionlist.Add(tree);
             rolePermissionAc.Permission = permissionlist;
         }
         rolePermissionCollection.Add(rolePermissionAc);
         return(rolePermissionCollection);
     }
     catch (Exception ex)
     {
         _errorLog.LogException(ex);
         throw;
     }
 }
예제 #5
0
        /// <summary>
        /// this method is used to get all child permission
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public List <PermissionAc> ChildPermission(int id)
        {
            var permissionlist  = new List <PermissionAc>();
            var childPermission = _childPermissionDataRepository.Fetch(x => x.ParentPermissionId == id).ToList();
            var list            = _childPermissionDataRepository.Fetch(x => x.ParentPermissionId == null && !x.IsClosed).ToList();

            childPermission.AddRange(list);
            foreach (var permission in childPermission)
            {
                var permissionAc = new PermissionAc();
                permissionAc.PermissionId = permission.Id;
                permissionAc.Name         = permission.Name;
                permissionAc.IsChecked    = permission.IsChecked;
                permissionlist.Add(permissionAc);
            }
            return(permissionlist);
        }
예제 #6
0
 /// <summary>
 /// this method is used to check role and permission
 /// </summary>
 /// <param name="roleId"></param>
 /// <returns></returns>
 public List <RolePermissionAc> CheckRoleAndPermission(int roleId)
 {
     try
     {
         var rolePermissionCollection = new List <RolePermissionAc>();
         var rolePermissionAc         = new RolePermissionAc();
         rolePermissionAc.RoleId = roleId;
         var permissionlist = new List <PermissionAc>();
         foreach (var permission in _parentPermissionDataRepository.GetAll().ToList())
         {
             var tree = new PermissionAc
             {
                 PermissionId = permission.Id,
                 Name         = permission.Name,
                 Children     = ChildPermission(permission.Id)
             };
             foreach (var childPermission in tree.Children)
             {
                 foreach (var rolePermission in _rolePermissionDataRepository.Fetch(x => x.RoleId == roleId).ToList())
                 {
                     if (childPermission.PermissionId == rolePermission.ChildPermissionId)
                     {
                         childPermission.IsChecked = true;
                     }
                 }
             }
             permissionlist.Add(tree);
             rolePermissionAc.Permission = permissionlist;
         }
         rolePermissionCollection.Add(rolePermissionAc);
         return(rolePermissionCollection);
     }
     catch (Exception ex)
     {
         _errorLog.LogException(ex);
         throw;
     }
 }
예제 #7
0
        /// <summary>
        /// this method is used to get all child permission
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public List <PermissionAc> ChildPermission(int id)
        {
            List <int> listIds = new List <int> {
                21, 22, 23
            };
            var permissionlist  = new List <PermissionAc>();
            var childPermission = _childPermissionDataRepository.Fetch(x => x.ParentPermissionId == id).ToList();

            if (!listIds.Contains(id))
            {
                var list = _childPermissionDataRepository.Fetch(y => y.ParentPermissionId == null && !y.IsClosed && y.IsAllowRolePermission).ToList();
                childPermission.AddRange(list);
            }
            foreach (var permission in childPermission)
            {
                var permissionAc = new PermissionAc();
                permissionAc.PermissionId = permission.Id;
                permissionAc.Name         = permission.Name;
                permissionAc.IsChecked    = permission.IsChecked;
                permissionlist.Add(permissionAc);
            }
            return(permissionlist);
        }
예제 #8
0
        /// <summary>
        /// this method is used to get permission by the role id.
        /// </summary>
        /// <param name="roleId"></param>
        /// <returns></returns>
        public Permission GetPermissionByRoleId(int roleId, int companyId)
        {
            try
            {
                var        permissionlist = new List <PermissionAc>();
                Permission permission     = new Permission();
                foreach (var permissionObject in _parentPermissionDataRepository.GetAll().ToList())
                {
                    var tree = new PermissionAc
                    {
                        PermissionId = permissionObject.Id,
                        Name         = permissionObject.Name,
                        Children     = ChildPermission(permissionObject.Id)
                    };
                    foreach (var childPermission in tree.Children)
                    {
                        foreach (var rolePermission in _rolePermissionDataRepository.Fetch(x => x.RoleId == roleId && x.CompanyId == companyId).ToList())
                        {
                            if (childPermission.PermissionId == rolePermission.ChildPermissionId)
                            {
                                childPermission.IsChecked = true;
                                switch (rolePermission.ChildPermission.Name)
                                {
                                case StringConstants.AllowManageSystemParameter:
                                    permission.IsAllowManageSystemParameter = rolePermission.IsChecked;
                                    break;

                                case StringConstants.AllowManageCategory:
                                    permission.IsAllowManageCategory = rolePermission.IsChecked;
                                    break;

                                case StringConstants.StopItemOffer:
                                    permission.IsAllowedToStopItemOffer = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ResumeItemOffer:
                                    permission.IsAllowedToResumeItemOffer = rolePermission.IsChecked;
                                    break;

                                case StringConstants.CreateNewCustomer:
                                    permission.IsAllowToCreateCustomerProfile = rolePermission.IsChecked;
                                    break;

                                case StringConstants.Review:
                                    permission.IsAllowToReview = rolePermission.IsChecked;
                                    break;

                                //case StringConstants.Closed:
                                //    permission.IsAllowToDeleteCustomer = rolePermission.IsChecked;
                                //    break;
                                case StringConstants.CreateNewItemProfile:
                                    permission.IsAllowToCreateItemProfile = rolePermission.IsChecked;
                                    break;

                                case StringConstants.EditItemProfile:
                                    permission.IsAllowToEditItemProfile = rolePermission.IsChecked;
                                    break;

                                case StringConstants.DeleteItemProfile:
                                    permission.IsAllowToDeleteItemProfile = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ChangeMainItem:
                                    permission.IsAllowChangeMainItem = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ConvertMainItem:
                                    permission.IsAllowConvertToMainItem = rolePermission.IsChecked;
                                    break;

                                case StringConstants.CreateSupplier:
                                    permission.IsAllowToCreateSupplierProfile = rolePermission.IsChecked;
                                    break;

                                case StringConstants.EditSupplier:
                                    permission.IsAllowToEditSupplierProfile = rolePermission.IsChecked;
                                    break;

                                case StringConstants.DeleteSupplier:
                                    permission.IsAllowToDeleteSupplier = rolePermission.IsChecked;
                                    break;

                                case StringConstants.CreateItemOffer:
                                    permission.IsAllowCreateItemOffer = rolePermission.IsChecked;
                                    break;

                                case StringConstants.CreateItemOfferApproval:
                                    permission.IsAllowItemOfferApproval = rolePermission.IsChecked;
                                    break;

                                case StringConstants.CustomerApproval:
                                    permission.IsAllowCustomerApproval = rolePermission.IsChecked;
                                    break;

                                case StringConstants.CreateSupplierPurchaseOrder:
                                    permission.IsAllowToCreateSupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.DeleteSupplierPurchaseOrder:
                                    permission.IsAllowToDeleteSupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ApprovalSPO:
                                    permission.IsAllowToApprovalSupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.RejectSPO:
                                    permission.IsAllowToRejectSupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ReviewSPO:
                                    permission.IsAllowToReviewSupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.SendSPO:
                                    permission.IsAllowToSendSupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.VerifySPO:
                                    permission.IsAllowToVerifySupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.EditSupplierPurchaseOrder:
                                    permission.IsAllowToEditSupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ResubmitSPO:
                                    permission.IsAllowToResubmitSupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.CreateSPOForOtherBranch:
                                    permission.IsAllowToCreateSupplierPurchaseOrderForOtherBranch = rolePermission.IsChecked;
                                    break;

                                case StringConstants.CancelSPO:
                                    permission.IsAllowToCancelSupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ApproveCancelSPO:
                                    permission.IsAllowToApproveCancelSupplierPurchaseOrder = rolePermission.IsChecked;
                                    break;

                                case StringConstants.Reconciled:
                                    permission.IsReconciled = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ReturnBill:
                                    permission.IsReturnBillApproval = rolePermission.IsChecked;
                                    break;

                                case StringConstants.CreateCPO:
                                    permission.IsAllowedToCreateCPO = rolePermission.IsChecked;
                                    break;

                                case StringConstants.CancelCPO:
                                    permission.IsAllowedToCancelCPO = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ReceiveSPO:
                                    permission.IsAllowedToReceiveSPO = rolePermission.IsChecked;
                                    break;


                                case StringConstants.InitiateICR:
                                    permission.IsAllowedToInitiateICR = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ApproveICR:
                                    permission.IsAllowedToApproveICR = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ReviewICR:
                                    permission.IsAllowedToReviewICR = rolePermission.IsChecked;
                                    break;

                                case StringConstants.RejectICR:
                                    permission.IsAllowedToRejectICR = rolePermission.IsChecked;
                                    break;

                                case StringConstants.EditICR:
                                    permission.IsAllowedToEditICR = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ReturnICR:
                                    permission.IsAllowedToReturnICR = rolePermission.IsChecked;
                                    break;

                                case StringConstants.InitiateICRForOtherBranches:
                                    permission.IsAllowedToInitiateICRForOtherBranches = rolePermission.IsChecked;
                                    break;


                                case StringConstants.InitiateIcr:
                                    permission.IsAllowedToInitiateIncidentReport = rolePermission.IsChecked;
                                    break;

                                case StringConstants.AllowRecovery:
                                    permission.IsAllowRecovery = rolePermission.IsChecked;
                                    break;

                                case StringConstants.InitiateStockInventory:
                                    permission.IsAllowToInitiateIssueStockInventory = rolePermission.IsChecked;
                                    break;

                                case StringConstants.InventroyStart:
                                    permission.IsAllowInventoryStart = rolePermission.IsChecked;
                                    break;

                                case StringConstants.InventoryRecord:
                                    permission.IsAllowInventoryRecord = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ReviewStockInventory:
                                    permission.IsAllowReviewStockInventory = rolePermission.IsChecked;
                                    break;

                                case StringConstants.PaySPO:
                                    permission.IsAllowedToPaySPO = rolePermission.IsChecked;
                                    break;

                                case StringConstants.AddIcrApprovalWorkFlow:
                                    permission.IsAllowedToAddApprovalWorkFlowForICR = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ResetIncidentReportRequest:
                                    permission.IsResetIncidentReportRequest = rolePermission.IsChecked;
                                    break;

                                case StringConstants.InitiateSupplierReturnRequest:
                                    permission.IsAllowToInitiateSupplierReturnRequest = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ResubmitSupplierReturnRequest:
                                    permission.IsAllowToResubmitSupplierReturnRequest = rolePermission.IsChecked;
                                    break;

                                case StringConstants.EditSupplierReturnRequest:
                                    permission.IsAllowToEditSupplierReturnRequest = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ApproveSupplierReturnRequest:
                                    permission.IsAllowToApproveSupplierReturnRequest = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ReturnSupplierReturnRequest:
                                    permission.IsAllowToReturnSupplierReturnRequest = rolePermission.IsChecked;
                                    break;

                                case StringConstants.RejectSupplierReturnRequest:
                                    permission.IsAllowToRejectSupplierReturnRequest = rolePermission.IsChecked;
                                    break;

                                case StringConstants.DeleteSupplierReturnRequest:
                                    permission.IsAllowToDeleteSupplierReturnRequest = rolePermission.IsChecked;
                                    break;

                                case StringConstants.DestructionItemRequest:
                                    permission.IsDestructionItemRequest = rolePermission.IsChecked;
                                    break;

                                case StringConstants.UnmatchedItem:
                                    permission.IsAllowUnmatchedItemRecover = rolePermission.IsChecked;
                                    break;

                                case StringConstants.AllowDestructionToAnotherBranch:
                                    permission.IsAllowToDestructionItemAnotherBranch = rolePermission.IsChecked;
                                    break;

                                case StringConstants.AllowRejectItemDestructionRequest:
                                    permission.IsAllowRejectItemDestructionRequest = rolePermission.IsChecked;
                                    break;

                                case StringConstants.AllowToDeleteItemOffer:
                                    permission.IsAllowToDeleteItemOffer = rolePermission.IsChecked;
                                    break;

                                case StringConstants.AllowUpdateItemOffer:
                                    permission.IsAllowToUpdateItemOffer = rolePermission.IsChecked;
                                    break;

                                case StringConstants.InitiateTransferGoodRequest:
                                    permission.IsAllowToInitiateIntrenalTransferGood = rolePermission.IsChecked;
                                    break;

                                case StringConstants.AccessAllBranch:
                                    permission.IsAllowToAccessAllBranch = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ReslovedUnmatchedItem:
                                    permission.IsAllowToReslovedUnmatchedItem = rolePermission.IsChecked;
                                    break;

                                case StringConstants.InventoryReRecord:
                                    permission.IsAllowToReRecordIssueInventory = rolePermission.IsChecked;
                                    break;

                                case StringConstants.ReceiveInternalTransferGood:
                                    permission.IsAllowToReceiveIntranalTransferGood = rolePermission.IsChecked;
                                    break;
                                }
                            }
                        }
                    }
                    permissionlist.Add(tree);
                    permission.RoleId = roleId;
                }
                //if (permissionlist.Count > 0)
                //{
                //    foreach (var item in permissionlist)
                //    {
                //        foreach (var childItem in item.Children)
                //        {
                //            if (!string.IsNullOrEmpty(childItem.Name))
                //            {
                //                switch (childItem.Name)
                //                {
                //                    case StringConstants.CreateNewCustomer:
                //                        permission.IsAllowToCreateCustomerProfile = childItem.IsChecked;
                //                        break;
                //                    case StringConstants.EditCustomerInformation:
                //                        permission.IsAllowToEditCustomerProfile = childItem.IsChecked;
                //                        break;
                //                    case StringConstants.DeleteCustomerInformation:
                //                        permission.IsAllowToDeleteCustomer = childItem.IsChecked;
                //                        break;
                //                    case StringConstants.CreateNewItemProfile:
                //                        permission.IsAllowToCreateItemProfile = childItem.IsChecked;
                //                        break;
                //                    case StringConstants.EditItemProfile:
                //                        permission.IsAllowToEditItemProfile = childItem.IsChecked;
                //                        break;
                //                    case StringConstants.DeleteItemProfile:
                //                        permission.IsAllowToDeleteItemProfile = childItem.IsChecked;
                //                        break;
                //                    case StringConstants.ChangeMainItem:
                //                        permission.IsAllowChangeMainItem = childItem.IsChecked;
                //                        break;
                //                    case StringConstants.ConvertMainItem:
                //                        permission.IsAllowConvertToMainItem = childItem.IsChecked;
                //                        break;
                //                }
                //            }
                //        }
                //    }
                //    permission.RoleId = roleId;
                //}
                return(permission);
            }
            catch (Exception ex)
            {
                _errorLog.LogException(ex);
                throw;
            }
        }