/// <summary> /// 设置用户的职务 /// </summary> /// <param name="stuffUserId"></param> /// <param name="positionIds"></param> public void SetStuffUserPosition(int stuffUserId, int[] positionIds) { AuthorizationDS DS = new AuthorizationDS(); this.StuffUserTA.Fill(DS.StuffUser); this.StuffUserAndPositionTA.Fill(DS.StuffUserAndPosition); List <int> newPositionIds = new List <int>(positionIds); BusinessObjects.AuthorizationDS.StuffUserRow stuffUser = DS.StuffUser.FindByStuffUserId(stuffUserId); foreach (BusinessObjects.AuthorizationDS.StuffUserAndPositionRow stuffUserAndPostion in stuffUser.GetStuffUserAndPositionRows()) { if (newPositionIds.Contains(stuffUserAndPostion.PositionId)) { newPositionIds.Remove(stuffUserAndPostion.PositionId); } else { stuffUserAndPostion.Delete(); } } foreach (int newPositionId in newPositionIds) { BusinessObjects.AuthorizationDS.StuffUserAndPositionRow newRow = DS.StuffUserAndPosition.NewStuffUserAndPositionRow(); newRow.PositionId = newPositionId; newRow.StuffUserId = stuffUserId; DS.StuffUserAndPosition.AddStuffUserAndPositionRow(newRow); } this.StuffUserAndPositionTA.Update(DS.StuffUserAndPosition); }
/// <summary> /// Get all the roles /// </summary> /// <returns></returns> public AuthorizationDS GetAllRoles() { DbCommand command = tempodb.GetStoredProcCommand("GetAllRoles"); // build the empty data set AuthorizationDS authds = new AuthorizationDS(); // populate the dataset tempodb.LoadDataSet(command, authds, new string[] { "Module" }); return(authds); }
/// <summary> /// Get the User Roles /// </summary> /// <returns></returns> public AuthorizationDS GetUserRoles(int userid) { DbCommand command = tempodb.GetStoredProcCommand("GetUserRoles"); // assign the paramater tempodb.AddInParameter(command, "@empid", DbType.Int32, userid); // build the empty data set AuthorizationDS authds = new AuthorizationDS(); // populate the dataset tempodb.LoadDataSet(command, authds, new string[] { "Module", "ModuleAuth" }); return(authds); }
private static TreeNode NewTreeNode(AuthorizationDS.OrganizationUnitRow ou, bool checkOU, bool selectOU) { TreeNode treeNode = new TreeNode(); treeNode.Text = ou.OrganizationUnitName; treeNode.ShowCheckBox = checkOU; if (selectOU) { treeNode.SelectAction = TreeNodeSelectAction.Select; } else { treeNode.SelectAction = TreeNodeSelectAction.Expand; } treeNode.Value = "OU" + ou.OrganizationUnitId; treeNode.ImageUrl = "~/Images/department.png"; return treeNode; }
private static TreeNode NewTreeNode(AuthorizationDS.PositionRow position, bool checkPosition, bool selectPosition) { TreeNode treeNode = new TreeNode(); treeNode.Text = position.PositionName; treeNode.ShowCheckBox = checkPosition; if (!selectPosition) { treeNode.SelectAction = TreeNodeSelectAction.None; } else { treeNode.SelectAction = TreeNodeSelectAction.Select; } treeNode.Value = "PO" + position.PositionId.ToString(); treeNode.ImageUrl = "~/Images/post.png"; return treeNode; }
/// <summary> /// 删除职务 /// </summary> /// <param name="positionId"></param> public void DeletePosition(int positionId) { SqlTransaction transaction = null; AuthorizationDS.PositionRow position = this.DS.Position.FindByPositionId(positionId); string positionName = position.PositionName; DataSet backDS = this.DS.Copy(); try { //action on backDS and database first AuthorizationDS actionDS = new AuthorizationDS(); actionDS.Merge(backDS); AuthorizationDS.PositionRow actionPosition = actionDS.Position.FindByPositionId(positionId); foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in actionPosition.GetPositionAndPositionTypeRows()) { positionType.Delete(); } actionPosition.Delete(); PositionAndPositionTypeTableAdapter ptAd = new PositionAndPositionTypeTableAdapter(); PositionTableAdapter psAd = new PositionTableAdapter(); transaction = TableAdapterHelper.BeginTransaction(ptAd); TableAdapterHelper.SetTransaction(psAd, transaction); ptAd.Update(actionDS.PositionAndPositionType); psAd.Update(actionDS.Position); transaction.Commit(); //if success, update dataset foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows()) { positionType.Delete(); } position.Delete(); this.DS.AcceptChanges(); } catch (Exception ex) { transaction.Rollback(); //this.DS.Clear(); //this.DS.Merge(backupDS); throw new ApplicationException("职位" + positionName + "已在系统中使用"); } finally { if (transaction != null) { transaction.Dispose(); } } }
private static TreeNode CreateOUTreeNode(AuthorizationDS.OrganizationUnitRow organizationUnit,bool showPosition, bool checkOU, bool checkPosition, bool selectOU, bool selectPosition,bool showActiveOU) { TreeNode newNode = NewTreeNode(organizationUnit, checkOU, selectOU); AuthorizationDS.OrganizationUnitRow[] childOU; if (showActiveOU) { childOU = organizationUnit.GetActiveChildren(); } else { childOU = organizationUnit.GetChildren(); } foreach (AuthorizationDS.OrganizationUnitRow subOU in childOU) { newNode.ChildNodes.Add(CreateOUTreeNode(subOU, showPosition, checkOU, checkPosition, selectOU, selectPosition,showActiveOU)); } if (showPosition) { foreach (AuthorizationDS.PositionRow position in organizationUnit.GetPositionRows()) { newNode.ChildNodes.Add(NewTreeNode(position, checkPosition, selectPosition)); } } return newNode; }
/// <summary> /// /// </summary> /// <param name="newOperateIds"></param> /// <param name="roleId"></param> public void SetSystemRoleOperateRight(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, List<int> newOperateIds, int roleId) { List<int> deleteOperateIds = new List<int>(); SystemRoleAndBusinessOperateTableAdapter da = new SystemRoleAndBusinessOperateTableAdapter(); BusinessObjects.AuthorizationDS.SystemRoleAndBusinessOperateDataTable table = da.GetDataBySystemRoleId(roleId); foreach (BusinessObjects.AuthorizationDS.SystemRoleAndBusinessOperateRow row in table) { if (newOperateIds.Contains(row.BusinessOperateId)) { newOperateIds.Remove(row.BusinessOperateId); } else { deleteOperateIds.Add(row.BusinessOperateId); row.Delete(); } } AuthorizationDS.SystemRoleAndBusinessOperateDataTable newTable = new AuthorizationDS.SystemRoleAndBusinessOperateDataTable(); foreach (int newOperateId in newOperateIds) { BusinessObjects.AuthorizationDS.SystemRoleAndBusinessOperateRow newRow = newTable.NewSystemRoleAndBusinessOperateRow(); newRow.BusinessOperateId = newOperateId; newRow.SystemRoleId = roleId; newTable.AddSystemRoleAndBusinessOperateRow(newRow); } da.Update(table); da.Update(newTable); if (deleteOperateIds.Count > 0 || newOperateIds.Count > 0) { AuthorizationConfigure authorizationConfigure = new AuthorizationConfigure(); authorizationConfigure.StuffId = stuffUser.StuffId; authorizationConfigure.StuffName = stuffUser.StuffName; authorizationConfigure.ConfigureTarget = "ϵͳ��ɫ����"; authorizationConfigure.ConfigureTime = DateTime.Now; authorizationConfigure.ConfigureType = "����"; if (deleteOperateIds.Count > 0) { StringBuilder oldContent = new StringBuilder(); oldContent.Append("����ϵͳ��ɫ[").Append(this.SystemRoleTA.GetSystemRoleName(roleId)).Append("]��Ȩҵ�����:"); foreach (int id in deleteOperateIds) { oldContent.Append("[").Append(this.BusinessOperateTA.GetBusinessUseCaseName(id) + "-" + this.BusinessOperateTA.GetBusinessOperateName(id)).Append("] "); } authorizationConfigure.OldContent = oldContent.ToString(); } if (newOperateIds.Count > 0) { StringBuilder newContent = new StringBuilder(); newContent.Append("����ϵͳ��ɫ[").Append(this.SystemRoleTA.GetSystemRoleName(roleId)); newContent.Append("]��Ȩҵ�������"); foreach (int id in newOperateIds) { newContent.Append("[").Append(this.BusinessOperateTA.GetBusinessUseCaseName(id) + "-" + this.BusinessOperateTA.GetBusinessOperateName(id)).Append("] "); } authorizationConfigure.NewContent = newContent.ToString(); } SysLog.LogAuthorizationConfigure(authorizationConfigure); } }
/// <summary> /// �����û���ְ�� /// </summary> /// <param name="stuffUserId"></param> /// <param name="positionIds"></param> public void SetStuffUserPosition(int stuffUserId, int[] positionIds) { AuthorizationDS DS = new AuthorizationDS(); this.StuffUserTA.Fill(DS.StuffUser); this.StuffUserAndPositionTA.Fill(DS.StuffUserAndPosition); List<int> newPositionIds = new List<int>(positionIds); BusinessObjects.AuthorizationDS.StuffUserRow stuffUser = DS.StuffUser.FindByStuffUserId(stuffUserId); foreach (BusinessObjects.AuthorizationDS.StuffUserAndPositionRow stuffUserAndPostion in stuffUser.GetStuffUserAndPositionRows()) { if (newPositionIds.Contains(stuffUserAndPostion.PositionId)) { newPositionIds.Remove(stuffUserAndPostion.PositionId); } else { stuffUserAndPostion.Delete(); } } foreach (int newPositionId in newPositionIds) { BusinessObjects.AuthorizationDS.StuffUserAndPositionRow newRow = DS.StuffUserAndPosition.NewStuffUserAndPositionRow(); newRow.PositionId = newPositionId; newRow.StuffUserId = stuffUserId; DS.StuffUserAndPosition.AddStuffUserAndPositionRow(newRow); } this.StuffUserAndPositionTA.Update(DS.StuffUserAndPosition); }
/// <summary> /// ����ְ���ϵͳ��ɫ /// </summary> /// <param name="positionId"></param> /// <param name="systemRoleIds"></param> public void SetPositionSystemRole(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, int positionId, int[] systemRoleIds) { StringBuilder oldContent = new StringBuilder(); StringBuilder newContent = new StringBuilder(); BusinessObjects.AuthorizationDS.PositionAndSystemRoleDataTable table = this.PositionAndSystemRoleTA.GetDataByPositionId(positionId); List<int> roleIds = new List<int>(systemRoleIds); foreach (BusinessObjects.AuthorizationDS.PositionAndSystemRoleRow positionAndSystemRole in table) { if (roleIds.Contains(positionAndSystemRole.SystemRoleId)) { roleIds.Remove(positionAndSystemRole.SystemRoleId); } else { oldContent.Append("[").Append(this.SystemRoleTA.GetSystemRoleName(positionAndSystemRole.SystemRoleId)).Append("] "); positionAndSystemRole.Delete(); } } foreach (int roleId in roleIds) { BusinessObjects.AuthorizationDS.PositionAndSystemRoleRow newRow = table.NewPositionAndSystemRoleRow(); newRow.PositionId = positionId; newRow.SystemRoleId = roleId; newContent.Append("[").Append(this.SystemRoleTA.GetSystemRoleName(roleId)).Append("] "); table.AddPositionAndSystemRoleRow(newRow); } this.PositionAndSystemRoleTA.Update(table); if (oldContent.Length > 0 || newContent.Length > 0) { AuthorizationConfigure authorizationConfigure = new AuthorizationConfigure(); authorizationConfigure.StuffId = stuffUser.StuffId; authorizationConfigure.StuffName = stuffUser.StuffName; authorizationConfigure.ConfigureTarget = "ְ��Ȩ������"; authorizationConfigure.ConfigureTime = DateTime.Now; authorizationConfigure.ConfigureType = "����"; string positionName = new OUTreeBLL().GetPositionById(positionId).PositionName; if (oldContent.Length > 0) { oldContent.Insert(0, "����ְ��[" + positionName + "]��ϵͳ��ɫ��"); authorizationConfigure.OldContent = oldContent.ToString(); } if (newContent.Length > 0) { newContent.Insert(0, "����ְ��[" + positionName + "]��ϵͳ��ɫ��"); authorizationConfigure.NewContent = newContent.ToString(); } SysLog.LogAuthorizationConfigure(authorizationConfigure); } }
public void UpdateSubCategory(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, int ExpenseSubCategoryId, string ExpenseSubCategoryName, int CateId, int PageType, Boolean IsActive) { // 检证"费用小类"唯一性 int iCount = (int)this.ExpenseSubCategoryAdapter.SearchSubCateNameByUpd(ExpenseSubCategoryId, ExpenseSubCategoryName, CateId); if (iCount > 0) { throw new ApplicationException("在同一费用大类下,费用小类名称不能重复!"); } CommonDataEditAction action = new CommonDataEditAction(); action.ActionTime = DateTime.Now; action.ActionType = "更新"; action.DataTableName = "费用小类"; action.StuffId = stuffUser.StuffId; action.StuffName = stuffUser.StuffName; // 根据 CurrId 查找要修改的数据 ERS.ExpenseSubCategoryDataTable subCateTab = this.ExpenseSubCategoryAdapter.GetDataById(ExpenseSubCategoryId); ERS.ExpenseSubCategoryRow subCateRow = subCateTab[0]; action.OldValue = "费用小类名称:" + subCateRow.ExpenseSubCategoryName; subCateRow.ExpenseSubCategoryName = ExpenseSubCategoryName; subCateRow.PageType = PageType; subCateRow.IsActive = IsActive; // 更新数据 this.ExpenseSubCategoryAdapter.Update(subCateRow); action.NewValue = "费用小类名称:" + subCateRow.ExpenseSubCategoryName; SysLog.LogCommonDataEditAction(action); }
private TreeNode CreateOUTreeNode(AuthorizationDS.OrganizationUnitRow organizationUnit) { TreeNode newNode = NewTreeNode(organizationUnit); foreach (AuthorizationDS.OrganizationUnitRow subOU in organizationUnit.GetChildren()) { newNode.ChildNodes.Add(CreateOUTreeNode(subOU)); } foreach (AuthorizationDS.PositionRow position in organizationUnit.GetPositionRows()) { newNode.ChildNodes.Add(NewTreeNode(position)); } return newNode; }
public static NodeValue FromObject(AuthorizationDS.PositionRow position) { NodeValue result = new NodeValue(); result.OType = ValueType.Position; result.ObjectId = position.PositionId; result.IsActive = position.IsActive; return result; }
private void SetTreeNode(TreeNode treeNode, AuthorizationDS.PositionRow position) { treeNode.Text = position.PositionName; treeNode.Value = NodeValue.FromObject(position).ToString(); treeNode.ShowCheckBox = false; treeNode.ImageUrl = "~/Images/post.png"; }
/// <summary> /// 删除组织机构,同时上次该组织机构的下属机构和职务 /// </summary> /// <param name="organizationUnitId"></param> /// <exception cref="System.ApplicationException">如果该组织机构或者其下属机构和职务已经被使用,被关联时抛出异常</exception> public void DeleteOrganizationUnit(int organizationUnitId) { SqlTransaction transaction = null; AuthorizationDS.OrganizationUnitRow ou = this.DS.OrganizationUnit.FindByOrganizationUnitId(organizationUnitId); string ouName = ou.OrganizationUnitName; DataSet backDS = this.DS.Copy(); try { PositionTableAdapter positionAdapter = new PositionTableAdapter(); OrganizationUnitTableAdapter ouAdapter = new OrganizationUnitTableAdapter(); PositionAndPositionTypeTableAdapter ptAd = new PositionAndPositionTypeTableAdapter(); transaction = TableAdapterHelper.BeginTransaction(positionAdapter); TableAdapterHelper.SetTransaction(ouAdapter, transaction); TableAdapterHelper.SetTransaction(ptAd, transaction); //action on backDS and database first AuthorizationDS actionDS = new AuthorizationDS(); actionDS.Merge(backDS); AuthorizationDS.OrganizationUnitRow actionOU = actionDS.OrganizationUnit.FindByOrganizationUnitId(organizationUnitId); AuthorizationDS.OrganizationUnitRow[] actionOUs = this.GetDepFirstChildren(actionOU); foreach (AuthorizationDS.OrganizationUnitRow o in actionOUs) { foreach (AuthorizationDS.PositionRow position in o.GetPositionRows()) { foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows()) { positionType.Delete(); } position.Delete(); } o.Delete(); ptAd.Update(actionDS.PositionAndPositionType); positionAdapter.Update(actionDS.Position); ouAdapter.Update(actionDS.OrganizationUnit); } transaction.Commit(); //if success update dataset AuthorizationDS.OrganizationUnitRow[] ous = this.GetDepFirstChildren(ou); foreach (AuthorizationDS.OrganizationUnitRow o in ous) { foreach (AuthorizationDS.PositionRow position in o.GetPositionRows()) { foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows()) { positionType.Delete(); } position.Delete(); } o.Delete(); //ptAd.Update(this.DS.PositionAndPositionType); //positionAdapter.Update(this.DS.Position); //ouAdapter.Update(this.DS.OrganizationUnit); this.DS.AcceptChanges(); } } catch (Exception ex) { transaction.Rollback(); //this.DS.Clear(); //this.DS.Merge(backDS); throw new ApplicationException("组织机构" + ouName + "或者分支机构,职位已被使用"); } finally { transaction.Dispose(); } }
public void UpdateFormPersonalReimburseDetail(AuthorizationDS.StuffUserRow User, int RowIndex, int? FormPersonalReimburseID, DateTime? OccurDate, int ExpenseManageTypeID, decimal Amount, string Remark, int FormPersonalReimburseDetailID) { switch (ExpenseManageTypeID) { case 1: if (Amount > User.TrafficFeeLimit) { throw new ApplicationException("交通费用超过个人交通费用报销限制!"); } break; case 2: if (Amount > User.TelephoneFeeLimit) { throw new ApplicationException("电话费用超过个人电话费用报销限制!"); } break; } FormDS.FormPersonalReimburseDetailRow rowDetail = (FormDS.FormPersonalReimburseDetailRow)this.FormDataSet.FormPersonalReimburseDetail.Rows[RowIndex]; rowDetail.FormPersonalReimburseID = FormPersonalReimburseID.GetValueOrDefault(); rowDetail.OccurDate = OccurDate.GetValueOrDefault(); rowDetail.ExpenseManageTypeID = ExpenseManageTypeID; rowDetail.Amount = Amount; rowDetail.RealAmount = Amount; rowDetail.Remark = Remark; // 填加行并进行更新处理 }
public void UpdateProvince(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, int ProvinceID, string ProvinceName, bool IsActive) { int iCount = (int)this.ProvinceAdapter.SearchProvinceNameByUpd(ProvinceName, ProvinceID); if (iCount > 0) { throw new ApplicationException("省份名称重复"); } CommonDataEditAction action = new CommonDataEditAction(); action.StuffId = stuffUser.StuffId; action.StuffName = stuffUser.StuffName; action.DataTableName = "省份"; action.ActionType = "更新"; action.ActionTime = DateTime.Now; this.CityAdapter.DisabledCityByProvId(ProvinceID); // 根据 CurrId 查找要修改的数据 ERS.ProvinceDataTable provTab = this.ProvinceAdapter.GetDataById(ProvinceID); ERS.ProvinceRow provRow = provTab[0]; action.OldValue = "省份名称:" + provRow.ProvinceName; provRow.ProvinceName = ProvinceName; provRow.IsActive = IsActive; this.ProvinceAdapter.Update(provRow); action.NewValue = "省份名称:" + provRow.ProvinceName; SysLog.LogCommonDataEditAction(action); }
public void UpdateShop(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, string ShopName, int CustomerID, int ShopLevelID, string Address, string Contacter, string Tel, string Email, int ShopID, bool IsActive, string ShopNo) { // 检证"客户名称"唯一性 int iCount = (int)this.ShopAdapter.SearchNameByUpd(ShopName, ShopID, CustomerID, ShopLevelID); if (iCount > 0) { throw new ApplicationException("同一客户,同一门店等级下门店名称不能重复!"); } CommonDataEditAction action = new CommonDataEditAction(); action.ActionTime = DateTime.Now; action.ActionType = "更新"; action.DataTableName = "门店"; action.StuffId = stuffUser.StuffId; action.StuffName = stuffUser.StuffName; // 根据 ShopId 查找要修改的数据 ERS.ShopDataTable ShopTab = this.ShopAdapter.GetDataById(ShopID); ERS.ShopRow ShopRow = ShopTab[0]; action.OldValue = "门店名称:" + ShopRow.ShopName; ShopRow.ShopName = ShopName; ShopRow.CustomerID = CustomerID; ShopRow.ShopLevelID = ShopLevelID; ShopRow.Address = Address; ShopRow.Contacter = Contacter; ShopRow.Tel = Tel; ShopRow.Email = Email; ShopRow.IsActive = IsActive; ShopRow.ShopNo = ShopNo; // 更新数据 this.ShopAdapter.Update(ShopRow); action.NewValue = "门店名称:" + ShopRow.ShopName; SysLog.LogCommonDataEditAction(action); }
public void DeleteCustTimesLimit(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, int CustomerTimesLimitID) { this.CustomerTimesLimitAdapter.DeleteById(CustomerTimesLimitID); }
private TreeNode CreateOUTreeNode(AuthorizationDS.OrganizationUnitRow organizationUnit) { AuthorizationDS.OrganizationUnitRow[] childOU; if ((bool)this.ViewState["ShowActiveOU"]) { childOU = organizationUnit.GetActiveChildren(); } else { childOU = organizationUnit.GetChildren(); } TreeNode newNode = NewTreeNode(organizationUnit); foreach (AuthorizationDS.OrganizationUnitRow subOU in childOU) { newNode.ChildNodes.Add(CreateOUTreeNode(subOU)); } AuthorizationDS.PositionRow[] childPosition; if ((bool)this.ViewState["ShowActiveOU"]) { childPosition = (AuthorizationDS.PositionRow[])new PositionTableAdapter().GetActiveDataByOrganizationUnitId(organizationUnit.OrganizationUnitId).Select(); } else { childPosition = organizationUnit.GetPositionRows(); } foreach (AuthorizationDS.PositionRow position in childPosition) { newNode.ChildNodes.Add(NewTreeNode(position)); } return newNode; }
private TreeNode NewTreeNode(AuthorizationDS.OrganizationUnitRow ou) { TreeNode treeNode = new TreeNode(); this.SetTreeNode(treeNode, ou); return treeNode; }
private void SetTreeNode(TreeNode treeNode, AuthorizationDS.OrganizationUnitRow ou) { treeNode.Text = ou.OrganizationUnitName; treeNode.Value = NodeValue.FromObject(ou).ToString(); treeNode.ShowCheckBox = true; treeNode.ImageUrl = "~/Images/department.png"; }
private void SetTreeNode(TreeNode treeNode, AuthorizationDS.PositionRow position) { treeNode.Text = position.PositionName; treeNode.Value = "PO" + position.PositionId.ToString(); treeNode.ShowCheckBox = true; treeNode.ImageUrl = "../Images/post.png"; }
public static NodeValue FromObject(AuthorizationDS.OrganizationUnitRow organizationUnit) { NodeValue result = new NodeValue(); result.ObjectId = organizationUnit.OrganizationUnitId; result.IsActive = organizationUnit.IsActive; result.OType = ValueType.OU; return result; }
/// <summary> /// ɾ��ְ�� /// </summary> /// <param name="positionId"></param> public void DeletePosition(int positionId) { SqlTransaction transaction = null; AuthorizationDS.PositionRow position = this.DS.Position.FindByPositionId(positionId); string positionName = position.PositionName; DataSet backDS = this.DS.Copy(); try { //action on backDS and database first AuthorizationDS actionDS = new AuthorizationDS(); actionDS.Merge(backDS); AuthorizationDS.PositionRow actionPosition = actionDS.Position.FindByPositionId(positionId); foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in actionPosition.GetPositionAndPositionTypeRows()) { positionType.Delete(); } actionPosition.Delete(); PositionAndPositionTypeTableAdapter ptAd = new PositionAndPositionTypeTableAdapter(); PositionTableAdapter psAd = new PositionTableAdapter(); transaction = TableAdapterHelper.BeginTransaction(ptAd); TableAdapterHelper.SetTransaction(psAd, transaction); ptAd.Update(actionDS.PositionAndPositionType); psAd.Update(actionDS.Position); transaction.Commit(); //if success, update dataset foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows()) { positionType.Delete(); } position.Delete(); this.DS.AcceptChanges(); } catch (Exception ex) { transaction.Rollback(); //this.DS.Clear(); //this.DS.Merge(backupDS); throw new ApplicationException("ְλ" + positionName + "����ϵͳ��ʹ��"); } finally { if (transaction != null) { transaction.Dispose(); } } }
public static string GetStaffFullName(AuthorizationDS.StuffUserRow Staff) { if (Staff.IsEnglishNameNull()) { return Staff.StuffName; } else { return Staff.StuffName + "(" + Staff.EnglishName + ")"; } }
public void UpdateExpenseItem(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, string ExpenseItemName, int ExpenseSubCategoryID, string AccountingName, string AccountingCode, Boolean IsInContract, Boolean IsActive, int ExpenseItemID) { // 检证"费用项"唯一性 int iCount = (int)this.ExpenseItemAdapter.SearchItemNameByUpd(ExpenseItemID, ExpenseItemName); if (iCount > 0) { throw new ApplicationException("在同一费用小类下,费用项名称不能重复!"); } CommonDataEditAction action = new CommonDataEditAction(); action.ActionTime = DateTime.Now; action.ActionType = "更新"; action.DataTableName = "费用项"; action.StuffId = stuffUser.StuffId; action.StuffName = stuffUser.StuffName; // 根据 ItemId 查找要修改的数据 ERS.ExpenseItemDataTable expenseItemTab = this.ExpenseItemAdapter.GetDataById(ExpenseItemID); ERS.ExpenseItemRow expenseItemRow = expenseItemTab[0]; action.OldValue = "费用项名称:" + expenseItemRow.ExpenseItemName; expenseItemRow.ExpenseItemName = ExpenseItemName; expenseItemRow.AccountingCode = AccountingCode; expenseItemRow.ExpenseSubCategoryID = ExpenseSubCategoryID; expenseItemRow.AccountingName = AccountingName; expenseItemRow.IsInContract = IsInContract; expenseItemRow.IsActive = IsActive; // 更新数据 this.ExpenseItemAdapter.Update(expenseItemRow); action.NewValue = "费用项名称:" + expenseItemRow.ExpenseItemName; SysLog.LogCommonDataEditAction(action); }
private TreeNode NewTreeNode(AuthorizationDS.PositionRow position) { TreeNode treeNode = new TreeNode(); this.SetTreeNode(treeNode, position); return treeNode; }
public void UpdateSKU(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, int SKUCategoryID, string SKUNo, string SKUName, string Spec, int PackageQuantity, decimal PackagePercent, string SKUCostCenter, Boolean IsActive, int SKUID, decimal CostPrice, string Taste) { CommonDataEditAction action = new CommonDataEditAction(); action.ActionTime = DateTime.Now; action.ActionType = "更新"; action.DataTableName = "产品"; action.StuffId = stuffUser.StuffId; action.StuffName = stuffUser.StuffName; // 根据 SKUID 查找要修改的数据 ERS.SKUDataTable SKUTab = this.SKUAdapter.GetDataById(SKUID); ERS.SKURow SKURow = SKUTab[0]; action.OldValue = "产品名称:" + SKURow.SKUName; SKURow.SKUName = SKUName; SKURow.SKUNo = SKUNo; SKURow.Spec = Spec; SKURow.PackageQuantity = PackageQuantity; SKURow.PackagePercent = PackagePercent; SKURow.IsActive = IsActive; SKURow.SKUCategoryID = SKUCategoryID; SKURow.SKUCostCenter = SKUCostCenter == null ? "" : SKUCostCenter; SKURow.CostPrice = CostPrice; SKURow.Taste = Taste; // 更新数据 this.SKUAdapter.Update(SKURow); action.NewValue = "产品名称:" + SKURow.SKUName; SysLog.LogCommonDataEditAction(action); }
private void SetTreeNode(TreeNode treeNode, AuthorizationDS.OrganizationUnitRow ou) { treeNode.Text = ou.OrganizationUnitName; treeNode.Value = "OU" + ou.OrganizationUnitId; treeNode.ShowCheckBox = false; treeNode.ImageUrl = "../Images/department.png"; }
public bool DeleteSystemRole(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, int systemRoleId) { BusinessObjects.AuthorizationDS.SystemRoleAndBusinessOperateDataTable table = this.RoleAndOperateTA.GetDataBySystemRoleId(systemRoleId); foreach (AuthorizationDS.SystemRoleAndBusinessOperateRow row in table) { row.Delete(); } this.RoleAndOperateTA.Update(table); AuthorizationDS.PositionAndSystemRoleDataTable positionAndRoleTable = this.PositionAndSystemRoleTA.GetDataBySystemRoleId(systemRoleId); foreach (AuthorizationDS.PositionAndSystemRoleRow row in positionAndRoleTable) { row.Delete(); } this.PositionAndSystemRoleTA.Update(positionAndRoleTable); BusinessObjects.AuthorizationDS.SystemRoleDataTable roleTable = this.SystemRoleTA.GetDataById(systemRoleId); string roleName = roleTable[0].SystemRoleName; roleTable[0].Delete(); int rowsAffected = this.SystemRoleTA.Update(roleTable); AuthorizationConfigure authorizationConfigure = new AuthorizationConfigure(); authorizationConfigure.StuffId = stuffUser.StuffId; authorizationConfigure.StuffName = stuffUser.StuffName; authorizationConfigure.ConfigureTarget = "ϵͳ��ɫ����"; authorizationConfigure.ConfigureTime = DateTime.Now; authorizationConfigure.ConfigureType = "ɾ��"; authorizationConfigure.OldContent = "ϵͳ��ɫ��" + roleName; SysLog.LogAuthorizationConfigure(authorizationConfigure); return rowsAffected == 1; }
/// <summary> /// ɾ����֯������ͬʱ�ϴθ���֯���������������ְ�� /// </summary> /// <param name="organizationUnitId"></param> /// <exception cref="System.ApplicationException">�������֯�������������������ְ���Ѿ���ʹ�ã�������ʱ�׳��쳣</exception> public void DeleteOrganizationUnit(int organizationUnitId) { SqlTransaction transaction = null; AuthorizationDS.OrganizationUnitRow ou = this.DS.OrganizationUnit.FindByOrganizationUnitId(organizationUnitId); string ouName = ou.OrganizationUnitName; DataSet backDS = this.DS.Copy(); try { PositionTableAdapter positionAdapter = new PositionTableAdapter(); OrganizationUnitTableAdapter ouAdapter = new OrganizationUnitTableAdapter(); PositionAndPositionTypeTableAdapter ptAd = new PositionAndPositionTypeTableAdapter(); transaction = TableAdapterHelper.BeginTransaction(positionAdapter); TableAdapterHelper.SetTransaction(ouAdapter, transaction); TableAdapterHelper.SetTransaction(ptAd, transaction); //action on backDS and database first AuthorizationDS actionDS = new AuthorizationDS(); actionDS.Merge(backDS); AuthorizationDS.OrganizationUnitRow actionOU = actionDS.OrganizationUnit.FindByOrganizationUnitId(organizationUnitId); AuthorizationDS.OrganizationUnitRow[] actionOUs = this.GetDepFirstChildren(actionOU); foreach (AuthorizationDS.OrganizationUnitRow o in actionOUs) { foreach (AuthorizationDS.PositionRow position in o.GetPositionRows()) { foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows()) { positionType.Delete(); } position.Delete(); } o.Delete(); ptAd.Update(actionDS.PositionAndPositionType); positionAdapter.Update(actionDS.Position); ouAdapter.Update(actionDS.OrganizationUnit); } transaction.Commit(); //if success update dataset AuthorizationDS.OrganizationUnitRow[] ous = this.GetDepFirstChildren(ou); foreach (AuthorizationDS.OrganizationUnitRow o in ous) { foreach (AuthorizationDS.PositionRow position in o.GetPositionRows()) { foreach (AuthorizationDS.PositionAndPositionTypeRow positionType in position.GetPositionAndPositionTypeRows()) { positionType.Delete(); } position.Delete(); } o.Delete(); //ptAd.Update(this.DS.PositionAndPositionType); //positionAdapter.Update(this.DS.Position); //ouAdapter.Update(this.DS.OrganizationUnit); this.DS.AcceptChanges(); } } catch (Exception ex) { transaction.Rollback(); //this.DS.Clear(); //this.DS.Merge(backDS); throw new ApplicationException("��֯����" + ouName + "���߷�֧����,ְλ�ѱ�ʹ��"); } finally { transaction.Dispose(); } }
public bool InsertSystemRole(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, string systemRoleName, string description) { if (systemRoleName == null || systemRoleName.Length == 0) { throw new ApplicationException("ϵͳ��ɫ���Ʋ���Ϊ��"); } BusinessObjects.AuthorizationDS.SystemRoleDataTable table = this.SystemRoleTA.GetDataBySystemRoleName(systemRoleName); if (table != null && table.Count > 0) { throw new ApplicationException("ϵͳ��ɫ���Ʋ����ظ�"); } int rowsAffected = this.SystemRoleTA.Insert(systemRoleName, description); AuthorizationConfigure authorizationConfigure = new AuthorizationConfigure(); authorizationConfigure.StuffId = stuffUser.StuffId; authorizationConfigure.StuffName = stuffUser.StuffName; authorizationConfigure.ConfigureTarget = "ϵͳ��ɫ����"; authorizationConfigure.ConfigureTime = DateTime.Now; authorizationConfigure.ConfigureType = "����"; authorizationConfigure.NewContent = "ϵͳ��ɫ��" + systemRoleName; SysLog.LogAuthorizationConfigure(authorizationConfigure); return rowsAffected == 1; }
/// <summary> /// ������Ȼ�ȡ����֯�ṹ /// </summary> /// <param name="ou"></param> /// <returns></returns> private AuthorizationDS.OrganizationUnitRow[] GetDepFirstChildren(AuthorizationDS.OrganizationUnitRow ou) { List<AuthorizationDS.OrganizationUnitRow> result = new List<AuthorizationDS.OrganizationUnitRow>(); foreach (AuthorizationDS.OrganizationUnitRow childOu in ou.GetChildren()) { result.AddRange(GetDepFirstChildren(childOu)); } result.Add(ou); return result.ToArray(); }
/// <summary> /// ��������ְ���ҵ�������Χ /// </summary> /// <param name="positionId">ְ��ID</param> /// <param name="operateIds">����ҵ�����ID����</param> /// <param name="scopeOUIds">������Χ���ǵ���֯����ID����</param> /// <param name="scopePOIds">������Χ���ǵ�ְ��ID����</param> public void SetOperateScope(AuthorizationDS.StuffUserRow stuffUser, AuthorizationDS.PositionRow position, int positionId, int[] operateIds, int[] scopeOUIds, int[] scopePOIds) { StringBuilder deleteContent = new StringBuilder(); StringBuilder addContent = new StringBuilder(); foreach (int operateId in operateIds) { string operateName = (string)this.BusinessOperateTA.GetBusinessOperateName(operateId); StringBuilder addStr = new StringBuilder(); StringBuilder deleteStr = new StringBuilder(); List<int> sOUIds = new List<int>(scopeOUIds); List<int> sPOIds = new List<int>(scopePOIds); BusinessObjects.AuthorizationDS.OperateScopeDataTable table = this.OperateScopeTA.GetDataByOperateAndPosition(operateId, positionId); foreach (BusinessObjects.AuthorizationDS.OperateScopeRow operateScope in table) { if (operateScope.IsScopeOrganziationUnitIdNull()) { if (sPOIds.Contains(operateScope.ScopePositionId)) { sPOIds.Remove(operateScope.ScopePositionId); } else { deleteStr.Append("ְ��[" + new OUTreeBLL().GetPositionById(operateScope.ScopePositionId).PositionName + "] "); operateScope.Delete(); } } else { if (sOUIds.Contains(operateScope.ScopeOrganziationUnitId)) { sOUIds.Remove(operateScope.ScopeOrganziationUnitId); } else { deleteStr.Append("����[" + new OUTreeBLL().GetOrganizationUnitById(operateScope.ScopeOrganziationUnitId).OrganizationUnitName + "] "); operateScope.Delete(); } } } if (deleteStr.Length > 0) { deleteStr.Insert(0, "����ҵ�����[" + operateName + "]�������ݷ�Χ��"); deleteContent.Append(deleteStr.ToString()); } foreach (int ouId in sOUIds) { BusinessObjects.AuthorizationDS.OperateScopeRow newRow = table.NewOperateScopeRow(); newRow.PositionId = positionId; newRow.BusinessOperateId = operateId; newRow.ScopeOrganziationUnitId = ouId; table.AddOperateScopeRow(newRow); addStr.Append("����[" + new OUTreeBLL().GetOrganizationUnitById(ouId).OrganizationUnitName + "] "); } foreach (int poId in sPOIds) { BusinessObjects.AuthorizationDS.OperateScopeRow newRow = table.NewOperateScopeRow(); newRow.PositionId = positionId; newRow.BusinessOperateId = operateId; newRow.ScopePositionId = poId; table.AddOperateScopeRow(newRow); addStr.Append("ְ��[" + new OUTreeBLL().GetPositionById(poId).PositionName + "] "); } if (addStr.Length > 0) { addStr.Insert(0, "����ҵ�����[" + operateName + "]�������ݷ�Χ��"); addContent.Append(addStr.ToString()); } this.OperateScopeTA.Update(table); } if (deleteContent.Length > 0 || addContent.Length > 0) { AuthorizationConfigure authorizationConfigure = new AuthorizationConfigure(); authorizationConfigure.StuffId = stuffUser.StuffId; authorizationConfigure.StuffName = stuffUser.StuffName; authorizationConfigure.ConfigureType = "����"; authorizationConfigure.ConfigureTarget = "ҵ�������Χ"; authorizationConfigure.ConfigureTime = DateTime.Now; string positionName = new OUTreeBLL().GetPositionById(positionId).PositionName; if (deleteContent.Length > 0) { deleteContent.Insert(0, "ְ��[" + positionName + "]��"); authorizationConfigure.OldContent = deleteContent.ToString(); } if (addContent.Length > 0) { addContent.Insert(0, "ְ��[" + positionName + "]��"); authorizationConfigure.NewContent = addContent.ToString(); } SysLog.LogAuthorizationConfigure(authorizationConfigure); } }