ab56a9bcf7
SVN-Revision: r240
402 lines
11 KiB
C#
402 lines
11 KiB
C#
//**********************************************************
|
|
//
|
|
// 功能说明:系统配置数据缓存区
|
|
// 创 建 人:袁世金
|
|
// 创建日期:2021-6-17 14:30:47
|
|
// 修 改 人:
|
|
// 修改日期:
|
|
// 修改备注:
|
|
// 版 本:1.0.0.0
|
|
//
|
|
//**********************************************************
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Text;
|
|
using System.Data.SqlTypes;
|
|
using System.Data.SqlClient;
|
|
|
|
|
|
namespace Lskj.Data.Caches
|
|
{
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public sealed class CacheSYSConfig
|
|
{
|
|
private static CacheSYSConfig _Instance = null;
|
|
private static object lockObj = 1;
|
|
private bool ProcessExists = false;
|
|
public static CacheSYSConfig Instance()
|
|
{
|
|
if (_Instance == null)
|
|
{
|
|
lock (lockObj)
|
|
_Instance = new CacheSYSConfig();
|
|
}
|
|
return _Instance;
|
|
}
|
|
//****************************************************************************************************
|
|
Queue<DataTable> dataList = new Queue<DataTable>();
|
|
//****************************************************************************************************
|
|
|
|
#region SetData
|
|
public void SetData(DataSet dsValue)
|
|
{
|
|
dataList.Clear();
|
|
if (dsValue != null)
|
|
{
|
|
ProcessExists = true;
|
|
for (int i = 0; i < dsValue.Tables.Count; i++)
|
|
{
|
|
DataTable dtResult = dsValue.Tables[i];
|
|
dataList.Enqueue(dtResult);
|
|
}
|
|
//
|
|
}
|
|
else
|
|
{
|
|
dataList.Clear();
|
|
ResetValues();
|
|
}
|
|
}
|
|
|
|
//清空数据
|
|
public void empty()
|
|
{
|
|
dataList.Clear();
|
|
}
|
|
|
|
public bool JudgeProcessExists()
|
|
{
|
|
if (dataList.Count == 0) ProcessExists = false;
|
|
return ProcessExists;
|
|
}
|
|
#endregion
|
|
public void ResetValues()
|
|
{
|
|
}
|
|
/// <summary>
|
|
/// 获取基础档案、报表模版类型
|
|
/// </summary>
|
|
private int _BaseType = 0;
|
|
public int BaseType
|
|
{
|
|
get { return _BaseType; }
|
|
set { _BaseType = value; }
|
|
}
|
|
/// <summary>
|
|
/// 错误码,大于0有错
|
|
/// </summary>
|
|
private int _ErrCode = 0;
|
|
public int ErrCode
|
|
{
|
|
get { return _ErrCode; }
|
|
set { _ErrCode = value; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取基础档案、报表模版类型
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
int GetBaseType()
|
|
{
|
|
return _BaseType;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取主键
|
|
/// </summary>
|
|
/// <param name="menuCode"></param>
|
|
/// <returns></returns>
|
|
public string GetBasePrimaryKey()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return (dtResult.Rows.Count > 0) ? dtResult.Rows[0]["fieldname"] + "" : string.Empty;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取列前缀
|
|
/// </summary>
|
|
public string GetColumnPrefix()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
return (dtResult.Rows.Count > 0) ? dtResult.Rows[0]["column_prefix"] + "" : string.Empty;
|
|
}
|
|
/*
|
|
/// <summary>
|
|
/// 执行SQL语句返回结果集
|
|
/// </summary>
|
|
public DataTable GetDataTableResult(string sqlValue)
|
|
{
|
|
if (_DataSetConfig == null || _DataSetConfig.Tables.Count == 0)
|
|
return null;
|
|
|
|
DataTable dtResult = _DataSetConfig.Tables[2];
|
|
return dtResult;
|
|
}
|
|
*/
|
|
/// <summary>
|
|
/// 获取菜单其他配置
|
|
/// </summary>
|
|
public DataRow GetMenuConfigTab()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
return dtResult != null && dtResult.Rows.Count > 0 ? dtResult.Rows[0] : null;
|
|
}
|
|
/// <summary>
|
|
/// 加载自定义配置字段
|
|
/// </summary>
|
|
public DataTable GetCustomQueryFields()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult;
|
|
}
|
|
/// <summary>
|
|
/// 获取高级查询条件模版
|
|
/// </summary>
|
|
public DataTable GetSchemesList()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult;
|
|
}
|
|
/// <summary>
|
|
/// 获取基础档案表格列
|
|
/// </summary>
|
|
public DataTable GetBaseGridColumns()
|
|
{
|
|
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
if (!dtResult.Columns.Contains("username"))//表格中的列不包含指定列名
|
|
{
|
|
dtResult.Columns["username1"].ColumnName = "username";
|
|
}
|
|
if (!dtResult.Columns.Contains("nullable"))
|
|
{
|
|
dtResult.Columns["tagid"].ColumnName = "nullable";
|
|
}
|
|
return dtResult;
|
|
|
|
}
|
|
/// <summary>
|
|
/// 加载固定查询条件
|
|
/// </summary>
|
|
public DataTable GetFixedQueryFields()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult;
|
|
}
|
|
/// <summary>
|
|
/// 获取单个模块信息
|
|
/// </summary>
|
|
public DataRow GetSystemdllTab()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
return dtResult.Rows.Count > 0 ? dtResult.Rows[0] : null;
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 获取基础档案表格所有列
|
|
/// </summary>
|
|
public DataTable GetBaseGridAllColumns()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
|
|
return dtResult;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取打印配置
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable GetPrintTemp70()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 通过数据库获取个性配置列
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable GetCustomColumnByDatabase()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
|
|
return dtResult;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 是否存在xxx表
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public bool HasExistsTable()
|
|
{
|
|
return _ErrCode != 99;
|
|
}
|
|
|
|
public DataTable GetBaseGridRowColors()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
return dtResult;
|
|
}
|
|
//---------------------------------------
|
|
/// <summary>
|
|
/// 获取基础档案底部标签数据
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable GetBaseDetailPages()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
return dtResult;
|
|
}
|
|
/// <summary>
|
|
/// 获取报表明细列
|
|
/// </summary>
|
|
/// <param name="detailId"></param>
|
|
/// <returns></returns>
|
|
public DataTable GetReportDetailColumns(string detailId)
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
//DataTable dtResult = new DataTable();
|
|
//DataRow[] rows = _ReportDetailColumns.Select("detailId = " + detailId);
|
|
//dtResult.Rows.Add(rows);
|
|
return dtResult;
|
|
}
|
|
/// <summary>
|
|
/// 获取表格左侧树字段
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataRow GetBaseLeftTreeField()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult != null && dtResult.Rows.Count > 0 ? dtResult.Rows[0] : null;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取右键菜单数据
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable GetBaseGridRightMenus()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取存储过程中的内容 表
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable AccessToContent()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取存储过程中的内容 行
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataRow AccessToContentRow()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult != null && dtResult.Rows.Count > 0 ? dtResult.Rows[0] : null;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取存储过程中的内容 返回的条数
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public int AccessToContentRowCount()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return 0;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult == null ? 0 : Convert.ToInt32(dtResult.Rows.Count);
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 获取存储过程中的内容 获取返回的第一行第一列内容
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public string AccessToContentTheCell()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return null;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult == null ? null : dtResult.Rows[0][0].ToString();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 是否包含流转步骤
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public bool IncludeFlowSteps()
|
|
{
|
|
if (dataList.Count == 0)
|
|
return false;
|
|
DataTable dtResult = dataList.Dequeue();
|
|
|
|
return dtResult.Rows.Count > 0;
|
|
}
|
|
|
|
|
|
|
|
}
|
|
//****************************************************************************
|
|
|
|
}
|