Пример #1
0
        /// <summary>
        /// 新增权限组
        /// </summary>
        /// <param name="strName"></param>
        /// <param name="strRemark"></param>
        /// <param name="listFunction"></param>
        /// <param name="nOpStaffId"></param>
        /// <param name="strOpStaffName"></param>
        /// <param name="strErrText"></param>
        /// <returns></returns>
        public long InsertPermissionGroup(string strName, string strRemark, List <SysFunction> listFunction, long nOpStaffId, string strOpStaffName, out string strErrText)
        {
            long nGroupId = 0;

            try
            {
                using (TransactionScope transScope = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(2, 0, 0)))
                {
                    using (PermissionDAO dao = new PermissionDAO())
                    {
                        //新增权限组
                        nGroupId = dao.InsertPermissionGroup(strName, strRemark, nOpStaffId, strOpStaffName, out strErrText);
                        if (nGroupId <= 0)
                        {
                            return(0);
                        }

                        //新增组权限
                        foreach (SysFunction f in listFunction)
                        {
                            SysGroupPermission p = new SysGroupPermission();
                            p.GroupId       = nGroupId;
                            p.FuncId        = f.Id;
                            p.FuncName      = f.Name;
                            p.AllowOpen     = f.AllowOpen;
                            p.AllowNew      = f.AllowNew;
                            p.AllowModify   = f.AllowModify;
                            p.AllowDelete   = f.AllowDelete;
                            p.AllowCancel   = f.AllowCancel;
                            p.AllowDetail   = f.AllowDetail;
                            p.AllowSearch   = f.AllowSearch;
                            p.AllowSubmit   = f.AllowSubmit;
                            p.AllowApprove  = f.AllowApprove;
                            p.AllowDispatch = f.AllowDispatch;
                            p.AllowExport   = f.AllowExport;
                            p.AllowImport   = f.AllowImport;
                            p.AllowPrint    = f.AllowPrint;

                            if (!dao.InsertGroupPermission(p, nOpStaffId, strOpStaffName, out strErrText))
                            {
                                return(0);
                            }
                        }
                    }
                    transScope.Complete();
                }
                return(nGroupId);
            }
            catch (Exception e)
            {
                strErrText = e.Message;
                return(0);
            }
        }