예제 #1
0
        private void SyncADMINSSAuthority()
        {
            using (var SSEntities = new SmartShoppingEntities())
            {
                try
                {
                    //確定系統管理者擁有全部程式的權限
                    string ADMIN = "ADMIN";

                    //系統管理者ADMIN是否存在
                    var ADMINqry = (from E in SSEntities.SSUsers
                                    where E.Employee_ID == ADMIN
                                    select E).FirstOrDefault();

                    if (ADMINqry == null)
                    {
                        //新增系統管理者ADMIN
                        SSUsers NewSSUsers = new SSUsers();
                        NewSSUsers.Employee_ID  = ADMIN;
                        NewSSUsers.EmployeeName = "系統管理員";
                        NewSSUsers.Password     = ADMIN;
                        SSEntities.SSUsers.Add(NewSSUsers);
                        //更新資料
                        SSEntities.SaveChanges();
                    }

                    //找出全部的程式
                    var qryPrograms = from P in SSEntities.SSPrograms
                                      select P.Program_ID;

                    foreach (var P in qryPrograms)
                    {
                        //系統管理者的使用權限是否存在
                        var qry = (from A in SSEntities.SSAuthority
                                   where A.Employee_ID == ADMIN && A.Program_ID == P
                                   select A).FirstOrDefault();
                        if (qry == null)
                        {
                            //新增系統管理者的使用權限
                            SSAuthority NewAuthority = new SSAuthority();
                            NewAuthority.Employee_ID = ADMIN;
                            NewAuthority.Program_ID  = P;
                            NewAuthority.Run         = true;
                            NewAuthority.Edit        = true;
                            SSEntities.SSAuthority.Add(NewAuthority);
                        }
                    }
                    //更新資料
                    SSEntities.SaveChanges();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "啟動錯誤", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
예제 #2
0
        //同步全部使用者權限(系統管理者擁有全部程式的權限,其他使用者至少要有更改自己密碼的權限)
        private void SyncBaceSSAuthority()
        {
            using (var SSEntities = new SmartShoppingEntities())
            {
                try
                {
                    //其他使用者至少要有更改自己密碼的權限
                    string EmployeeID;

                    //找出全部的使用者
                    var qrysUsers = from E in SSEntities.SSUsers select E.Employee_ID;

                    foreach (var U in qrysUsers)
                    {
                        EmployeeID = (string)U;
                        var qry = (from A in SSEntities.SSAuthority
                                   where A.Employee_ID == EmployeeID
                                   select A).FirstOrDefault();
                        if (qry == null)
                        {
                            var ProgramUserPassword = (SSEntities.SSPrograms.Where(i => i.ProgramName == "frmUserPassword")).FirstOrDefault();

                            //新增使用權限記錄
                            SSAuthority NewAuthority = new SSAuthority();
                            NewAuthority.Employee_ID = EmployeeID;
                            NewAuthority.Program_ID  = ProgramUserPassword.Program_ID;
                            NewAuthority.Run         = true;
                            NewAuthority.Edit        = true;
                            SSEntities.SSAuthority.Add(NewAuthority);
                        }
                    }
                    //更新資料
                    SSEntities.SaveChanges();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "啟動錯誤", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }