/// <summary> /// 分配角色按钮权限 /// </summary> /// <param name="KeyValue">主键值</param> /// <param name="RoleId">角色主键</param> /// <param name="CreateUserId">操作用户主键</param> /// <param name="CreateUserName">操作用户</param> /// <returns></returns> public int AddButtonPermission(string[] KeyValue, string RoleId, string CreateUserId, string CreateUserName) { StringBuilder[] sqls = new StringBuilder[KeyValue.Length + 1]; object[] objs = new object[KeyValue.Length + 1]; sqls[0] = DbCommon.DeleteSql("BPMS_RoleMenuButton", "RoleId"); objs[0] = new SqlParam[] { new SqlParam("@RoleId", RoleId) }; int index = 1; foreach (string item in KeyValue) { if (item.Length > 0) { string[] stritem = item.Split('|'); BPMS_RoleMenuButton entity = new BPMS_RoleMenuButton(); entity.RoleMenuButtonId = CommonHelper.GetGuid; entity.RoleId = RoleId; entity.ButtonId = stritem[0]; entity.MenuId = stritem[1]; entity.CreateDate = DateTime.Now; entity.CreateUserId = CreateUserId; entity.CreateUserName = CreateUserName; sqls[index] = DbCommon.InsertSql(entity); objs[index] = DbCommon.GetParameter(entity); index++; } } return(DataFactory.SqlHelper().BatchExecuteBySql(sqls, objs)); }
/// <summary> /// 用户批量添加角色 /// </summary> /// <param name="KeyValue">主键值</param> /// <param name="UserId">模用户主键</param> /// <param name="CreateUserId">操作用户主键</param> /// <param name="CreateUserName">操作用户</param> /// <returns></returns> public int BatchAddUserRole(string[] KeyValue, string UserId, string CreateUserId, string CreateUserName) { StringBuilder[] sqls = new StringBuilder[KeyValue.Length + 1]; object[] objs = new object[KeyValue.Length + 1]; sqls[0] = DbCommon.DeleteSql("BPMS_UserRole", "UserId"); objs[0] = new SqlParam[] { new SqlParam("@UserId", UserId) }; int index = 1; foreach (string item in KeyValue) { if (item.Length > 0) { BPMS_UserRole entity = new BPMS_UserRole(); entity.UserRoleId = CommonHelper.GetGuid; entity.UserId = UserId; entity.RoleId = item; entity.CreateUserId = CreateUserId; entity.CreateUserName = CreateUserName; sqls[index] = DbCommon.InsertSql(entity); objs[index] = DbCommon.GetParameter(entity); index++; } } return(DataFactory.SqlHelper().BatchExecuteBySql(sqls, objs)); }
/// <summary> /// 写入操作作业日志 /// </summary> /// <param name="CreateUserId">创建用户主键</param> /// <param name="CreateUserName">创建用户</param> /// <param name="busingessName">业务名称</param> /// <param name="Remark">描述</param> /// <param name="Result">操作业务把结果记录起来</param> /// <returns></returns> public void AddTaskLog(string CreateUserId, string CreateUserName, string busingessName, string Remark, OperationType operationtype, string Result = "") { try { List <StringBuilder> ListSql = new List <StringBuilder>(); List <object> ListParam = new List <object>(); BPMS_SysLogs SysLog = new BPMS_SysLogs(); SysLog.SyslogsId = CommonHelper.GetGuid; SysLog.BusinessName = busingessName; SysLog.OperationIp = RequestHelper.GetIPAddress(); SysLog.CreateUserId = CreateUserId; SysLog.CreateUserName = CreateUserName; SysLog.Result = Result; SysLog.OperationType = (int)operationtype; ListSql.Add(DbCommon.InsertSql(SysLog)); ListParam.Add(DbCommon.GetParameter(SysLog)); //添加日志详细信息 BPMS_SysLogDetails SysLogDetails = new BPMS_SysLogDetails(); SysLogDetails.SysLogDetailsId = CommonHelper.GetGuid; SysLogDetails.SyslogsId = SysLog.SyslogsId; SysLogDetails.Remark = Remark; ListSql.Add(DbCommon.InsertSql(SysLogDetails)); ListParam.Add(DbCommon.GetParameter(SysLogDetails)); DataFactory.SqlHelper().BatchExecuteBySql(ListSql.ToArray(), ListParam.ToArray()); } finally { } }
/// <summary> /// 设批量添加,菜单导航操作按钮关系 /// </summary> /// <param name="KeyValue">主键值</param> /// <param name="MenuId">模块菜单主键</param> /// <param name="CreateUserId">操作用户主键</param> /// <param name="CreateUserName">操作用户</param> /// <returns></returns> public int BatchAddMenuButton(string[] KeyValue, string MenuId, string CreateUserId, string CreateUserName) { StringBuilder[] sqls = new StringBuilder[KeyValue.Length + 1]; object[] objs = new object[KeyValue.Length + 1]; sqls[0] = DbCommon.DeleteSql("BPMS_SysMenuButton", "MenuId"); objs[0] = new SqlParam[] { new SqlParam("@MenuId", MenuId) }; int index = 1; foreach (string item in KeyValue) { if (item.Length > 0) { BPMS_SysMenuButton entity = new BPMS_SysMenuButton(); entity.SysMenuButtonId = CommonHelper.GetGuid; entity.MenuId = MenuId; entity.ButtonId = item; entity.SortCode = index; entity.CreateUserId = CreateUserId; entity.CreateUserName = CreateUserName; sqls[index] = DbCommon.InsertSql(entity); objs[index] = DbCommon.GetParameter(entity); index++; } } return(DataFactory.SqlHelper().BatchExecuteBySql(sqls, objs)); }
/// <summary> /// 写入更新操作日志 /// </summary> /// <param name="oldObj">旧实体对象</param> /// <param name="newObj">新实体对象</param> /// <param name="CreateUserId">创建用户主键</param> /// <param name="CreateUserName">创建用户</param> /// <param name="busingessName">业务名称</param> /// <param name="Result">操作业务把结果记录起来</param> /// <returns></returns> public void UpdateTaskLog <T>(T oldObj, T newObj, string CreateUserId, string CreateUserName, string busingessName = "", string Result = "") { try { List <StringBuilder> ListSql = new List <StringBuilder>(); List <object> ListParam = new List <object>(); Type objTye = typeof(T); BPMS_SysLogs SysLog = new BPMS_SysLogs(); SysLog.SyslogsId = CommonHelper.GetGuid; SysLog.TableName = newObj.ToString(); if (busingessName == "") { busingessName = GetBusingessName <T>(); } SysLog.BusinessName = busingessName; SysLog.OperationIp = RequestHelper.GetIPAddress(); SysLog.CreateUserId = CreateUserId; SysLog.CreateUserName = CreateUserName; SysLog.Result = Result; SysLog.OperationType = (int)OperationType.Update; PropertyInfo property = objTye.GetProperty(GetKeyField(objTye).ToString()); SysLog.Object_ID = property.GetValue(newObj, null).ToString(); ListSql.Add(DbCommon.InsertSql(SysLog)); ListParam.Add(DbCommon.GetParameter(SysLog)); //添加日志详细信息 foreach (PropertyInfo pi in objTye.GetProperties()) { object oldVal = pi.GetValue(oldObj, null); object newVal = pi.GetValue(newObj, null); if (!Equals(oldVal, newVal)) { if (oldVal != null && newVal != null) { BPMS_SysLogDetails SysLogDetails = new BPMS_SysLogDetails(); SysLogDetails.SysLogDetailsId = CommonHelper.GetGuid; SysLogDetails.SyslogsId = SysLog.SyslogsId; SysLogDetails.FieldName = GetFieldText(pi); SysLogDetails.FieldText = pi.Name; SysLogDetails.NewValue = "" + newVal + ""; SysLogDetails.OldValue = "" + oldVal + ""; ListSql.Add(DbCommon.InsertSql(SysLogDetails)); ListParam.Add(DbCommon.GetParameter(SysLogDetails)); } } } DataFactory.SqlHelper().BatchExecuteBySql(ListSql.ToArray(), ListParam.ToArray()); } finally { } }
/// <summary> /// 批量添加角色成员 /// </summary> /// <param name="KeyValue">主键值</param> /// <param name="RoleId">角色主键</param> /// <param name="CreateUserId">操作用户主键</param> /// <param name="CreateUserName">操作用户</param> /// <returns></returns> public int BatchAddMember(string[] KeyValue, string RoleId, string CreateUserId, string CreateUserName) { StringBuilder[] sqls = new StringBuilder[KeyValue.Length]; object[] objs = new object[KeyValue.Length]; int index = 0; foreach (string item in KeyValue) { if (item.Length > 0) { BPMS_UserRole entity = new BPMS_UserRole(); entity.UserRoleId = CommonHelper.GetGuid; entity.RoleId = RoleId; entity.UserId = item; entity.CreateUserId = CreateUserId; entity.CreateUserName = CreateUserName; sqls[index] = DbCommon.InsertSql(entity); objs[index] = DbCommon.GetParameter(entity); index++; } } return(DataFactory.SqlHelper().BatchExecuteBySql(sqls, objs)); }
/// <summary> /// 批量新增 接口,接口参数 /// </summary> /// <param name="InterfaceFrom">接口配置</param> /// <param name="InterfaceDetailsFrom">接口参数明细</param> /// <param name="key">主键</param> /// <returns></returns> public int AddInterfaceManage(object[] InterfaceFrom, object[] InterfaceDetailsFrom, string key) { try { StringBuilder[] sqls = new StringBuilder[InterfaceDetailsFrom.Length + 2]; object[] objs = new object[InterfaceDetailsFrom.Length + 2]; Hashtable ht_Interface = new Hashtable(); foreach (string item in InterfaceFrom) { if (item.Length > 0) { string[] str_item = item.Split('☻'); ht_Interface[str_item[0]] = str_item[1]; } } if (!string.IsNullOrEmpty(key)) { ht_Interface["InterfaceId"] = key; ht_Interface["ModifyDate"] = DateTime.Now; ht_Interface["ModifyUserId"] = RequestSession.GetSessionUser().UserId; ht_Interface["ModifyUserName"] = RequestSession.GetSessionUser().UserName; } else { ht_Interface["InterfaceId"] = CommonHelper.GetGuid; ht_Interface["CreateUserId"] = RequestSession.GetSessionUser().UserId; ht_Interface["CreateUserName"] = RequestSession.GetSessionUser().UserName; } sqls[0] = !string.IsNullOrEmpty(key) ? DbCommon.UpdateSql("BASE_InterfaceManage", "InterfaceId", ht_Interface) : DbCommon.InsertSql("BASE_InterfaceManage", ht_Interface); objs[0] = DbCommon.GetParameter(ht_Interface); sqls[1] = DbCommon.DeleteSql("BASE_InterfaceManageDetails", "InterfaceId"); objs[1] = new SqlParam[] { new SqlParam("@InterfaceId", key) }; int index = 2; foreach (string item in InterfaceDetailsFrom) { if (item.Length > 0) { Hashtable ht_InterfaceDetails = new Hashtable(); foreach (string itemwithin in item.Split('☺')) { if (itemwithin.Length > 0) { string[] str_item = itemwithin.Split('☻'); ht_InterfaceDetails[str_item[0]] = str_item[1]; if (str_item[0].ToString() == "FieldMinLength") { ht_InterfaceDetails[str_item[0]] = str_item[1] == "true" ? 0 : 1; } if (str_item[0].ToString() == "Enabled") { ht_InterfaceDetails[str_item[0]] = str_item[1] == "true" ? 0 : 1; } } } ht_InterfaceDetails["InterfaceDetailsId"] = CommonHelper.GetGuid; ht_InterfaceDetails["InterfaceId"] = ht_Interface["InterfaceId"]; sqls[index] = DbCommon.InsertSql("BASE_InterfaceManageDetails", ht_InterfaceDetails);; objs[index] = DbCommon.GetParameter(ht_InterfaceDetails); index++; } } return(DataFactory.SqlHelper().BatchExecuteBySql(sqls, objs)); } catch { return(-1); } }
/// <summary> /// 通过实体类插入数据 /// </summary> /// <param name="entity">实体类</param> /// <returns>int</returns> public int Insert <T>(T entity) { this.GetInstance(); return(db.ExecuteBySql(DbCommon.InsertSql(entity), DbCommon.GetParameter(entity))); }
/// <summary> /// 通过Hashtable插入数据 /// </summary> /// <param name="tableName">表名</param> /// <param name="ht">Hashtable</param> /// <returns>int</returns> public int Insert(string tableName, Hashtable ht) { this.GetInstance(); return(db.ExecuteBySql(DbCommon.InsertSql(tableName, ht), DbCommon.GetParameter(ht))); }
/// <summary> /// 解析XML字符串格式 /// </summary> /// <param name="Xml">xml字符串格式</param> /// <returns></returns> private void AnalysisXml(string Xml, out ArrayList arrSql, out ArrayList arrParam, out int Type) { ArrayList _arrSql = new ArrayList(); ArrayList _arrParam = new ArrayList(); int _Type = -1; try { XmlDocument xd = new XmlDocument(); xd.LoadXml(Xml); foreach (XmlNode node in xd.ChildNodes) { if (node.Name.Trim() == "Request") { foreach (XmlNode subnode in node.ChildNodes) { if (subnode.Name.Trim() == "data") { base_interfacemanage = base_interfacemanageibll.GetEntityByCode(subnode.Attributes["code"].Value);//根据接口代码获取对象 if (base_interfacemanage.InterfaceId != null) { _Type = CommonHelper.GetInt(base_interfacemanage.Type); //动作类型:0-新增,1-修改,2-删除,3-查询,4-存储过程-DataTableProc,5-存储过程-GetDataSetProc,6-存储过程-ExecuteByProc,7-存储过程-BatchExecuteByProc string PermissionConstraint = base_interfacemanage.PermissionConstraint; //约束达式 foreach (XmlNode node_data in subnode.ChildNodes) { if (node_data.Name.Trim() == "no") { string pkName; string pkVal; switch (_Type) { case 0: //新增 Hashtable ht_add = this.XmlNodeToHashtable(node_data); _arrSql.Add(DbCommon.InsertSql(PermissionConstraint.Trim(), ht_add)); _arrParam.Add(DbCommon.GetParameter(ht_add)); break; case 1: //修改 Hashtable ht_edit = this.XmlNodeToHashtable(node_data, out pkName, out pkVal); _arrSql.Add(new StringBuilder(PermissionConstraint.Trim())); _arrParam.Add(DbCommon.GetParameter(ht_edit)); break; case 2: //删除 Hashtable ht_Delete = this.XmlNodeToHashtable(node_data, out pkName, out pkVal); _arrSql.Add(DbCommon.DeleteSql(PermissionConstraint.Trim(), pkName)); _arrParam.Add(new SqlParam[] { new SqlParam("@" + pkName, pkVal) }); break; case 3: //查询 Hashtable ht_Param = this.XmlNodeToHashtable(node_data); _arrSql.Add(PermissionConstraint.Trim()); _arrParam.Add(DbCommon.GetParameter(ht_Param)); break; case 4: //存储过程-DataTableProc Hashtable DataTableProc = this.XmlNodeToHashtable(node_data); _arrSql.Add(PermissionConstraint.Trim()); _arrParam.Add(DataTableProc); break; case 5: //存储过程-DataSetProc Hashtable DataSetProc = this.XmlNodeToHashtable(node_data); _arrSql.Add(PermissionConstraint.Trim()); _arrParam.Add(DataSetProc); break; case 6: //存储过程-ExecuteByProc Hashtable ExecuteByProc = this.XmlNodeToHashtable(node_data); _arrSql.Add(PermissionConstraint.Trim()); _arrParam.Add(ExecuteByProc); break; case 7: //存储过程-BatchExecuteByProc Hashtable BatchExecuteByProc = this.XmlNodeToHashtable(node_data); _arrSql.Add(PermissionConstraint.Trim()); _arrParam.Add(DbCommon.GetParameter(BatchExecuteByProc)); break; default: break; } } } } else { Logger.WriteLog(Xml.ToString() + "\r\n接口不存在\r\n"); } } } break; } } } catch (Exception e) { Logger.WriteLog(Xml.ToString() + "\r\n" + e.Message + "\r\n"); } finally { arrSql = _arrSql; arrParam = _arrParam; Type = _Type; } }