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); }
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(); }
//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); }
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); } }
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]; }
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); }
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); //} }
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; } } }
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 }
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); }
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 } }); }