/// <summary> /// 获取内部组织机构 /// </summary> /// <param name="userInfo">用户</param> /// <returns>数据表</returns> public DataTable GetInnerOrganizeDT(BaseUserInfo userInfo) { var parameter = ServiceParameter.CreateWithLog(userInfo , MethodBase.GetCurrentMethod()); ServiceUtil.ProcessUserCenterWriteDbWithLock(parameter, locker, (dbHelper, getOnLine) => { var manager = new BaseOrganizeManager(dbHelper, userInfo); if (MessageService.LaseInnerOrganizeCheck == DateTime.MinValue) { getOnLine = true; } else { // 2008.01.23 JiRiGaLa 修正错误 TimeSpan timeSpan = DateTime.Now - MessageService.LaseInnerOrganizeCheck; if ((timeSpan.Minutes * 60 + timeSpan.Seconds) >= BaseSystemInfo.OnLineCheck * 10) { getOnLine = true; } } if (OnLineStateDT == null || getOnLine) { string commandText = string.Empty; if (BaseSystemInfo.OrganizeDynamicLoading) { commandText = " SELECT * " + " FROM " + BaseOrganizeEntity.TableName + " WHERE " + BaseOrganizeEntity.FieldDeletionStateCode + " = 0 " + " AND " + BaseOrganizeEntity.FieldIsInnerOrganize + " = 1 " + " AND " + BaseOrganizeEntity.FieldEnabled + " = 1 " + " AND (" + BaseOrganizeEntity.FieldParentId + " IS NULL " + " OR " + BaseOrganizeEntity.FieldParentId + " IN (SELECT " + BaseOrganizeEntity.FieldId + " FROM " + BaseOrganizeEntity.TableName + " WHERE " + BaseOrganizeEntity.FieldDeletionStateCode + " = 0 AND " + BaseOrganizeEntity.FieldIsInnerOrganize + " = 1 AND " + BaseOrganizeEntity.FieldEnabled + " = 1 AND " + BaseOrganizeEntity.FieldParentId + " IS NULL)) " + " ORDER BY " + BaseOrganizeEntity.FieldSortCode; } else { commandText = " SELECT * " + " FROM " + BaseOrganizeEntity.TableName + " WHERE " + BaseOrganizeEntity.FieldDeletionStateCode + " = 0 " + " AND " + BaseOrganizeEntity.FieldIsInnerOrganize + " = 1 " + " AND " + BaseOrganizeEntity.FieldEnabled + " = 1 " + " ORDER BY " + BaseOrganizeEntity.FieldSortCode; } InnerOrganizeDT = manager.Fill(commandText); InnerOrganizeDT.TableName = BaseOrganizeEntity.TableName; MessageService.LaseInnerOrganizeCheck = DateTime.Now; } // BaseLogManager.Instance.Add(userInfo, this.serviceName, MethodBase.GetCurrentMethod()); return(getOnLine); }); return(InnerOrganizeDT); }
/// <summary> /// 获取倒序序列号 /// </summary> /// <param name="userInfo">用户</param> /// <param name="fullName">序列名称</param> /// <returns>序列号</returns> public string GetReduction(BaseUserInfo userInfo, string fullName) { string result = string.Empty; var parameter = ServiceInfo.Create(userInfo, MethodBase.GetCurrentMethod()); ServiceUtil.ProcessUserCenterWriteDbWithLock(userInfo, parameter, LOCK, (dbHelper) => { result = this.GetReduction(dbHelper, userInfo, fullName); }); return(result); }
/// <summary> /// 获取序列号 /// </summary> /// <param name="userInfo">用户</param> /// <param name="name">序列名称</param> /// <returns>序列号</returns> public string Increment(BaseUserInfo userInfo, string name) { var result = string.Empty; var parameter = ServiceInfo.Create(userInfo, MethodBase.GetCurrentMethod()); ServiceUtil.ProcessUserCenterWriteDbWithLock(userInfo, parameter, _lock, (dbHelper) => { result = Increment(dbHelper, userInfo, name); }); return(result); }
/// <summary> /// 获取新序列号 /// </summary> /// <param name="userInfo">用户</param> /// <param name="fullName">序列名称</param> /// <param name="defaultSequence">默认序列</param> /// <param name="sequenceLength">序列长度</param> /// <param name="fillZeroPrefix">是否填充补零</param> /// <returns>序列号</returns> public string GetNewSequence(BaseUserInfo userInfo, string fullName, int defaultSequence, int sequenceLength, bool fillZeroPrefix) { string result = string.Empty; var parameter = ServiceInfo.Create(userInfo, MethodBase.GetCurrentMethod()); ServiceUtil.ProcessUserCenterWriteDbWithLock(userInfo, parameter, LOCK, (dbHelper) => { var sequenceManager = new BaseSequenceManager(dbHelper); result = sequenceManager.Increment(fullName, defaultSequence, sequenceLength, fillZeroPrefix); }); return(result); }
/// <summary> /// 获取原序列号 /// </summary> /// <param name="userInfo">用户</param> /// <param name="name">序列名称</param> /// <param name="defaultSequence">默认序列</param> /// <param name="sequenceLength">序列长度</param> /// <param name="fillZeroPrefix">是否填充补零</param> /// <returns>序列号</returns> public string GetOldSequence(BaseUserInfo userInfo, string name, int defaultSequence, int sequenceLength, bool fillZeroPrefix) { var result = string.Empty; var parameter = ServiceInfo.Create(userInfo, MethodBase.GetCurrentMethod()); ServiceUtil.ProcessUserCenterWriteDbWithLock(userInfo, parameter, _lock, (dbHelper) => { var managerSequence = new BaseSequenceManager(dbHelper); result = managerSequence.StoreCounter(name, defaultSequence, sequenceLength, fillZeroPrefix); }); return(result); }