Example #1
0
        public static List <Guid> GetHomepages(Guid iUserID)
        {
            List <Guid> lstViewIDs = new List <Guid>();
            ADUsersInfo user       = new ADUsersController().GetObjectByID(iUserID) as ADUsersInfo;

            if (user != null && user.FK_ADUserGroupID.HasValue)
            {
                ADUserGroupsInfo group = new ADUserGroupsController().GetObjectByID(user.FK_ADUserGroupID.Value) as ADUserGroupsInfo;
                if (group != null)
                {
                    String  strQuery = String.Format(@"SELECT A.FK_STViewID FROM  GEPermissionViews A JOIN ADUserPermissions B ON A.IsHomePage ='TRUE' AND B.FK_GEPermissionID = A.FK_GEPermissionID AND  (B.FK_ADUserGroupID ='{0}' OR B.FK_ADUserID ='{1}') ORDER BY B.FK_ADUserID  DESC", user.FK_ADUserGroupID.Value, user.ADUserID);
                    DataSet ds       = new GEPermissionViewsController().GetDataSet(strQuery);
                    if (ds != null && ds.Tables.Count > 0)
                    {
                        foreach (DataRow dr in ds.Tables[0].Rows)
                        {
                            if (dr[0] != DBNull.Value && !lstViewIDs.Contains(ABCHelper.DataConverter.ConvertToGuid(dr[0].ToString())))
                            {
                                lstViewIDs.Add(ABCHelper.DataConverter.ConvertToGuid(dr[0].ToString()));
                            }
                        }
                    }
                }
            }

            return(lstViewIDs);
        }
Example #2
0
        private void fld_btnAddUserGroup_Click(object sender, EventArgs e)
        {
            if (String.IsNullOrEmpty(fld_txtUserGroup.Text))
            {
                MessageBox.Show("Tên nhóm không được bỏ trống", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            ADUserGroupsController objUserGroupsController = new ADUserGroupsController();

            if (Mode == AddUserGroupMode.Add)
            {
                ADUserGroupsInfo objADUserGroupsInfo = new ADUserGroupsInfo();
                objADUserGroupsInfo.ADUserGroupName = fld_txtUserGroup.Text;
                objADUserGroupsInfo.ADUserGroupDesc = fld_txtUserGroup.Text;
                objUserGroupsController.CreateObject(objADUserGroupsInfo);
            }
            else if (Mode == AddUserGroupMode.Edit)
            {
                ADUserGroupsInfo objADUserGroupsInfo = (ADUserGroupsInfo)objUserGroupsController.GetObjectByID(Convert.ToInt32(TreeList.FocusedNode.Tag));
                objADUserGroupsInfo.ADUserGroupName = fld_txtUserGroup.Text;
                objADUserGroupsInfo.ADUserGroupDesc = fld_txtUserGroup.Text;
                objUserGroupsController.UpdateObject(objADUserGroupsInfo);
            }
            ((UserManagementModule)this.Module).InitializeTreeList(TreeList);
            this.Close();
        }
Example #3
0
        //static void timer_Tick ( object sender , EventArgs e )
        //{
        //    ShowAlerts();
        //}

        public static Dictionary <Guid, GEAlertsInfo> GetAlertConfigs(Guid iUserID)
        {
            if (AlertList != null)
            {
                return(AlertList);
            }

            AlertList      = new Dictionary <Guid, GEAlertsInfo>();
            AlertQueryList = new Dictionary <Guid, string>();

            ADUsersInfo user = new ADUsersController().GetObjectByID(iUserID) as ADUsersInfo;

            if (user != null && user.FK_ADUserGroupID.HasValue)
            {
                ADUserGroupsInfo group = new ADUserGroupsController().GetObjectByID(user.FK_ADUserGroupID.Value) as ADUserGroupsInfo;
                if (group != null)
                {
                    String strQuery = String.Format(@"SELECT  A.* FROM  GEAlerts A JOIN GEAlertUsers B ON A.GEAlertID = B.FK_GEAlertID AND  (B.FK_ADUserGroupID ='{0}' OR B.FK_ADUserID ='{1}') ORDER BY B.FK_ADUserID  DESC", user.FK_ADUserGroupID.Value, user.ADUserID);
                    foreach (GEAlertsInfo alertInfo in new GEAlertsController().GetListByQuery(strQuery).Cast <GEAlertsInfo>().ToList())
                    {
                        if (AlertList.ContainsKey(alertInfo.GEAlertID) == false)
                        {
                            AlertList.Add(alertInfo.GEAlertID, alertInfo);
                        }
                    }
                }
            }
            return(AlertList);
        }
Example #4
0
 private void DeleteUserGroup_Clicked(object sender, EventArgs e)
 {
     if (MessageBox.Show("Bạn có muốn xóa nhóm người dùng này không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
     {
         TreeListNode           node = fld_treeUserGroup.FocusedNode;
         ADUserGroupsController objUserGroupsController = new ADUserGroupsController();
         ADUserGroupsInfo       objUserGroupsInfo       = (ADUserGroupsInfo)objUserGroupsController.GetObjectByID((int)node.Tag);
         objUserGroupsController.DeleteObject(objUserGroupsInfo.ADUserGroupID);
         ((UserManagementModule)Module).InitializeTreeList(fld_treeUserGroup);
     }
 }
Example #5
0
        public void InitControlDataSource()
        {
            ADUserGroupsController objUsersController = new ADUserGroupsController();
            DataSet userList = objUsersController.GetAllObjects();

            fld_lkeUserGroup.Properties.DataSource = userList.Tables[0];

            HREmployeesController objEmployeesController = new HREmployeesController();
            DataSet employeeList = objEmployeesController.GetAllObjects();

            fld_lkeHREmployeeID.Properties.DataSource = employeeList.Tables[0];
        }
Example #6
0
        public static bool CheckTablePermission(Guid iUserID, String strTableName, TablePermission permission)
        {
            bool result = false;

            String strKey = iUserID.ToString() + strTableName + permission.ToString();

            if (TablePermissionList.TryGetValue(strKey, out result))
            {
                return(result);
            }

            ADUsersInfo user = new ADUsersController().GetObjectByID(iUserID) as ADUsersInfo;

            if (user != null && user.FK_ADUserGroupID.HasValue)
            {
                ADUserGroupsInfo group = new ADUserGroupsController().GetObjectByID(user.FK_ADUserGroupID.Value) as ADUserGroupsInfo;
                if (group != null)
                {
                    result = (user.No == "sysadmin");
                    String strQuery = String.Format(@"SELECT A.* FROM  GEPermissionTables A JOIN ADUserPermissions B ON A.TableName ='{0}' AND B.FK_GEPermissionID = A.FK_GEPermissionID AND  (B.FK_ADUserGroupID ='{1}' OR B.FK_ADUserID ='{2}') ORDER BY B.FK_ADUserID  DESC", strTableName, user.FK_ADUserGroupID.Value, user.ADUserID);
                    foreach (GEPermissionTablesInfo tablePermission in new GEPermissionTablesController().GetList(strQuery).Cast <GEPermissionTablesInfo>().ToList())
                    {
                        switch (permission)
                        {
                        case TablePermission.AllowView:
                            result = (result || tablePermission.AllowView);
                            break;

                        case TablePermission.AllowNew:
                            result = (result || tablePermission.AllowNew);
                            break;

                        case TablePermission.AllowEdit:
                            result = (result || tablePermission.AllowEdit);
                            break;

                        case TablePermission.AllowDelete:
                            result = (result || tablePermission.AllowDelete);
                            break;
                        }
                    }
                }
            }
            if (SystemProvider.SystemConfig.IsRelease)
            {
                TablePermissionList.Add(strKey, result);
            }
            return(result);
        }
Example #7
0
        public void SaveFieldPermission(TreeListNode treeListNode)
        {
            UserManagementEntities entity = (UserManagementEntities)CurrentModuleEntity;

            if (treeListNode.Level != 3)
            {
                return;
            }

            TreeListNode           userGroupNode           = treeListNode.ParentNode.ParentNode;
            ADUserGroupsController objUserGroupsController = new ADUserGroupsController();
            int userGroupID = Convert.ToInt32(userGroupNode.Tag);
            STModulesController objSTModulesController = new STModulesController();
            int    moduleID   = Convert.ToInt32(treeListNode.Tag);
            string moduleName = objSTModulesController.GetObjectNameByID(moduleID);

            //STFieldPermissionsController objFieldPermissionsController = new STFieldPermissionsController();
            //guiConfigureToolbar guiConfigToolbar = new guiConfigureToolbar();
            //entity.STToolbarsTreeList.InvalidateTreeList(moduleID, true);
            //List<STFieldPermissionsInfo> fieldPermissions = objFieldPermissionsController.GetFieldPermissionList(userGroupID, moduleName, null, null, null);
            //foreach (STFieldPermissionsInfo objFieldPermissionsInfo in fieldPermissions)
            //{
            //    STToolbarsInfo objToolbarsInfo = (STToolbarsInfo)entity.STToolbarsTreeList.GetObjectByPropertyNameAndValue("STToolbarName", objFieldPermissionsInfo.STToolbarName);
            //    if (objToolbarsInfo != null)
            //    {
            //        if (objFieldPermissionsInfo.STFieldPermissionType.Equals((int)FieldPermissionType.None))
            //        {
            //            objToolbarsInfo.Selected = true;
            //        }
            //        else
            //        {
            //            objToolbarsInfo.Selected = false;
            //        }
            //    }
            //}
            //guiConfigToolbar.Module = this;
            //guiConfigToolbar.InitializeControls();
            //if (guiConfigToolbar.ShowDialog() == DialogResult.OK)
            //{
            //    entity.SaveFieldPermission(userGroupID, moduleName);
            //    MessageBox.Show(UserManagementLocalizedResources.SaveSuccessfulMessage, CommonLocalizedResources.MessageBoxDefaultCaption, MessageBoxButtons.OK, MessageBoxIcon.Information);
            //}
        }
Example #8
0
        public void InitializeTreeList(TreeList fld_trlstUserGroup)
        {
            List <ADUserGroupsInfo> lstNode         = new List <ADUserGroupsInfo>();
            TreeListNode            prevFocusedNode = fld_trlstUserGroup.FocusedNode;

            fld_trlstUserGroup.Nodes.Clear();
            ADUserGroupsController objADUserGroupsController = new ADUserGroupsController();
            DataSet dsADUserGroups = objADUserGroupsController.GetAllObjects();

            if (dsADUserGroups != null)
            {
                foreach (DataRow row in dsADUserGroups.Tables[0].Rows)
                {
                    ADUserGroupsInfo objADUserGroupsInfo = (ADUserGroupsInfo)objADUserGroupsController.GetObjectFromDataRow(row);
                    if (objADUserGroupsInfo != null)
                    {
                        lstNode.Add(objADUserGroupsInfo);
                    }
                }
            }
            CreateTreeView(fld_trlstUserGroup, lstNode, null);
            if (prevFocusedNode != null)
            {
                TreeListNode currentFocusedNode = fld_trlstUserGroup.FindNodeByID(prevFocusedNode.Id);
                while (currentFocusedNode != null)
                {
                    if (currentFocusedNode.Level > 0)
                    {
                        currentFocusedNode.ExpandAll();
                    }
                    else
                    {
                        currentFocusedNode.Expanded = true;
                    }
                    currentFocusedNode = currentFocusedNode.ParentNode;
                }
            }
        }
Example #9
0
        public static void Login(LoginType loginType, String strDatabase, String strUserNo, String strPassword)
        {
            if (!ConnectDatabase(strDatabase))
            {
                return;
            }

            String      strEncryptedPass = new Security.Cryptography().Encrypt(strPassword);
            ADUsersInfo user             = new ADUsersController().GetObject(String.Format(@"SELECT * FROM ADUsers WHERE No='{0}' AND ABCStatus ='Alive' AND Active =1 ", strUserNo)) as ADUsersInfo;

            if (user == null || strEncryptedPass != user.Password)
            {
                ABCHelper.ABCMessageBox.Show(LoginForm, "Thông tin người dùng, mật khẩu không đúng", "Đăng nhập", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (LoginForm != null)
            {
                LoginForm.Close();
                LoginForm.Dispose();
            }
            Application.DoEvents();

            ABCScreen.SplashUtils.ShowSplash(loginType);

            ABCControls.UICaching.InitCachingPresentControls();

            #region Section

            CurrentUser = user;
            if (CurrentUser.FK_ADUserGroupID.HasValue)
            {
                CurrentUserGroup = new ADUserGroupsController().GetObjectByID(CurrentUser.FK_ADUserGroupID.Value) as ADUserGroupsInfo;
            }
            ABCUserProvider.CurrentUserName = CurrentUser.No;

            if (CurrentUser.FK_HREmployeeID.HasValue)
            {
                try
                {
                    ABCUserProvider.CurrentEmployee = new HREmployeesController().GetObjectByID(CurrentUser.FK_HREmployeeID.Value) as HREmployeesInfo;
                    if (ABCUserProvider.CurrentEmployee != null)
                    {
                        ABCUserProvider.CurrentEmployeeName = ABCUserProvider.CurrentEmployee.Name;
                        if (ABCUserProvider.CurrentEmployee.FK_GECompanyUnitID.HasValue)
                        {
                            ABCUserProvider.CurrentCompanyUnit = new GECompanyUnitsController().GetObjectByID(ABCUserProvider.CurrentEmployee.FK_GECompanyUnitID.Value) as GECompanyUnitsInfo;
                        }
                    }
                }catch (Exception ex)
                {
                }
            }

            StartOnlineTimer();

            if (loginType == LoginType.ERP)
            {
                ABCApp.ABCAppHelper.Instance.StartSection();
            }
            else if (loginType == LoginType.Studio)
            {
                ABCStudio.ABCStudioHelper.Instance.StartSection();
            }

            ABCScreen.SplashUtils.CloseSplash();

            #endregion
        }
Example #10
0
        public static bool CheckVoucherPermission(Guid iUserID, Guid voucherTypeID, VoucherPermission permission)
        {
            bool result = true;

            String strKey = iUserID.ToString() + voucherTypeID.ToString() + permission.ToString();

            if (VoucherPermissionList.TryGetValue(strKey, out result))
            {
                return(result);
            }

            ADUsersInfo user = new ADUsersController().GetObjectByID(iUserID) as ADUsersInfo;

            if (user != null && user.FK_ADUserGroupID.HasValue)
            {
                ADUserGroupsInfo group = new ADUserGroupsController().GetObjectByID(user.FK_ADUserGroupID.Value) as ADUserGroupsInfo;
                if (group != null)
                {
                    result = (user.No == "sysadmin");
                    String strQuery = String.Format(@"SELECT A.* FROM  GEPermissionVouchers A JOIN ADUserPermissions B ON A.FK_GEVoucherID ='{0}' AND B.FK_GEPermissionID = A.FK_GEPermissionID AND  (B.FK_ADUserGroupID ='{1}' OR B.FK_ADUserID ='{2}') ORDER BY B.FK_ADUserID  DESC", voucherTypeID, user.FK_ADUserGroupID.Value, user.ADUserID);
                    foreach (GEPermissionVouchersInfo voucherPermission in new GEPermissionVouchersController().GetList(strQuery).Cast <GEPermissionVouchersInfo>().ToList())
                    {
                        switch (permission)
                        {
                        case VoucherPermission.AllowView:
                            result = (result || voucherPermission.AllowView);
                            break;

                        case VoucherPermission.AllowNew:
                            result = (result || voucherPermission.AllowNew);
                            break;

                        case VoucherPermission.AllowEdit:
                            result = (result || voucherPermission.AllowEdit);
                            break;

                        case VoucherPermission.AllowDelete:
                            result = (result || voucherPermission.AllowDelete);
                            break;

                        case VoucherPermission.AllowApproval:
                            result = (result || voucherPermission.AllowApproval);
                            break;

                        case VoucherPermission.AllowLock:
                            result = (result || voucherPermission.AllowLock);
                            break;

                        case VoucherPermission.AllowPost:
                            result = (result || voucherPermission.AllowPost);
                            break;

                        case VoucherPermission.AllowPrint:
                            result = (result || (voucherPermission.AllowPrint && !String.IsNullOrWhiteSpace(voucherPermission.ReportName)));
                            break;
                        }
                    }
                }
            }
            if (SystemProvider.SystemConfig.IsRelease)
            {
                VoucherPermissionList.Add(strKey, result);
            }
            return(result);
        }
Example #11
0
        public Dictionary <List <STGridColumnsInfo>, DataSet> ShowModuleByJournal(String strSourceLeger, String strDocumentNo, ADInboxItemsInfo objInbox, STFieldsInfo objOldField)
        {
            STModulesController      ModuleCtrl      = new STModulesController();
            STModuleTablesController ModuleTableCtrl = new STModuleTablesController();

            int    iMainObjectID  = -1;
            String strTable       = String.Empty;
            String strTablePrefix = String.Empty;
            String strPrimaryKey  = String.Empty;
            Object MainObj        = null;

            int            iModuleID = 0;
            List <DataRow> dr        = GetLocalDataSet("STModuleID,STModuleName", "STModules", string.Format("STModuleName = '{0}'", strSourceLeger));

            if (dr.Count > 0)
            {
                iModuleID = Convert.ToInt32(dr.First()["STModuleID"]);
            }

            dr = GetLocalDataSet("STModuleTableID,STModuleTableName,STModuleID,STModuleTableLevelIndex", "STModuleTables", string.Format("STModuleID = {0} AND STModuleTableLevelIndex = 0", iModuleID));
            if (dr.Count > 0)
            {
                strTable = dr.First()["STModuleTableName"].ToString();
            }

            if (String.IsNullOrEmpty(strTable) == false)
            {
                strTablePrefix = strTable.Substring(0, strTable.Length - 1);
                strPrimaryKey  = strTablePrefix + "ID";
            }

            BaseBusinessController Ctrl = BusinessControllerFactory.GetBusinessController(strTable + "Controller");

            if (Ctrl != null)
            {
                MainObj = Ctrl.GetObjectByNo(strDocumentNo);
            }

            if (MainObj != null)
            {
                iMainObjectID = Convert.ToInt32(GMCDbUtil.GetPropertyValue(MainObj, strPrimaryKey));
                if (GMCDbUtil.GetPropertyValue(MainObj, "FK_HREmployeeID") != null)
                {
                    int iEmployeeID = Convert.ToInt32(GMCDbUtil.GetPropertyValue(MainObj, "FK_HREmployeeID"));
                    objInbox.FK_HRFromEmployeeID = iEmployeeID;
                }
                if (GMCDbUtil.GetPropertyValue(MainObj, strTable.TrimEnd('s') + "Desc") != null)
                {
                    //TextEdit txtRemark = (TextEdit)GetControlByName("fld_medADInboxItemRemark1");
                    //if (txtRemark != null)
                    //{
                    //    txtRemark.EditValue = GMCDbUtil.GetPropertyValue(MainObj, strTable.TrimEnd('s') + "Desc");
                    //}
                    objInbox.ADInboxItemMessage = Convert.ToString(GMCDbUtil.GetPropertyValue(MainObj, strTable.TrimEnd('s') + "Desc"));
                }
            }
            //ShowModuleByJournal(strSourceLeger, iMainObjectID, false);
            //Thang - edit 26/4/2016 hiển thị chi tiêt chứng từ

            ADUserGroupsInfo objUserGroup = AuthConfig.CurrenUserGroupInfo;

            dr = GetLocalDataSet("STScreenID,STScreenNumber,STModuleID,STUserGroupID,STScreenSortOrder", "STScreens", string.Format(@"STModuleID = {0} AND STUserGroupID = {1} 
                AND STScreenNumber like 'DM%' AND STScreenSortOrder > 0 AND STScreenSortOrder <= 1", iModuleID, objUserGroup.ADUserGroupID));
            int iScreenID = 0;

            if (dr.Count > 0)
            {
                iScreenID = Convert.ToInt32(dr.First()["STScreenID"]);
            }
            //Thang edit - 8/2/2017 Chỉnh sửa nếu 1 user group không có giao diện riêng thì sẽ lấy mặc định giao diện admin
            if (iScreenID == 0)
            {
                int iUserGroupDefaultID = new ADUserGroupsController().GetObjectIDByName("ADMIN");
                dr = GetLocalDataSet("STScreenID,STScreenNumber,STModuleID,STUserGroupID,STScreenSortOrder", "STScreens", string.Format(@"STModuleID = {0} AND STUserGroupID = {1} 
                AND STScreenNumber like 'DM%' AND STScreenSortOrder > 0 AND STScreenSortOrder <= 1", iModuleID, iUserGroupDefaultID));
                if (dr.Count > 0)
                {
                    iScreenID = Convert.ToInt32(dr.First()["STScreenID"]);
                }
            }

            dr = GetLocalDataSet("*", "STFields", string.Format(@"STScreenID = {0} AND STFieldType = 'GMCGridControl' 
                                        AND(STFieldDataSource like '%Items' OR STFieldDataSource like '%Details')
                                        AND STFieldGroup <> ''", iScreenID));
            if (dr.Count == 0)
            {
                return(null);
            }
            STFieldsInfo objField = (STFieldsInfo) new STFieldsController().GetObjectFromDataRow(dr[0]);

            if (objField == null)
            {
                return(null);
            }

            BaseBusinessController itemCtrl = BusinessControllerFactory.GetBusinessController(objField.STFieldDataSource + "Controller");
            DataSet ds = new DataSet();

            if (itemCtrl != null)
            {
                ds = itemCtrl.GetAllDataByForeignColumn("FK_" + strPrimaryKey, iMainObjectID);
            }

            List <STGridColumnsInfo> lstGridColumns = new List <STGridColumnsInfo>();

            if (objOldField == null || !objOldField.STFieldID.Equals(objField.STFieldID))
            {
                objOldField = objField;
                dr          = GetLocalDataSet("*", "STGridColumns", string.Format("FK_STFieldID = {0}", objField.STFieldID));
                STGridColumnsController GridColCtrl = new STGridColumnsController();
                dr.Distinct().ToList().ForEach(x =>
                {
                    STGridColumnsInfo colInfo = (STGridColumnsInfo)GridColCtrl.GetObjectFromDataRow(x);
                    lstGridColumns.Add(colInfo);
                });
            }
            return(new Dictionary <List <STGridColumnsInfo>, DataSet>()
            {
                { lstGridColumns, ds }
            });
        }