|
|
@@ -0,0 +1,571 @@ |
|
|
|
using System; |
|
|
|
using System.Collections.Generic; |
|
|
|
using System.Linq; |
|
|
|
using System.Text; |
|
|
|
using System.Data; |
|
|
|
using CnasSynchronousCommon; |
|
|
|
using CnasSynchrousModel; |
|
|
|
using System.Reflection; |
|
|
|
using Dm; |
|
|
|
|
|
|
|
namespace CnasSynchronusDAL |
|
|
|
{ |
|
|
|
public class DmDAL |
|
|
|
{ |
|
|
|
public void CreateConnectString(string strIP, string strPort, string strName, string strUser, string strPwd) |
|
|
|
{ |
|
|
|
DamengHelper.InitConnectionString(strIP, strPort, strName, strUser, strPwd); |
|
|
|
} |
|
|
|
|
|
|
|
public void CreateConnectString(string strConnectString) |
|
|
|
{ |
|
|
|
DamengHelper.InitConnectionString(strConnectString); |
|
|
|
} |
|
|
|
|
|
|
|
//获取所有表单名称 |
|
|
|
public DataTable GetTableNames(string strName) |
|
|
|
{ |
|
|
|
DataTable dt = new DataTable(); |
|
|
|
string strSql = string.Format("SELECT table_name as TABNAME FROM user_tables WHERE owner='{0}'", strName); |
|
|
|
try |
|
|
|
{ |
|
|
|
dt = DamengHelper.ExecuteDataSet(strSql).Tables[0]; |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return dt; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 获取某表的表结构 |
|
|
|
/// </summary> |
|
|
|
public DataTable GetTableStruct(string strTableName, string strViewName, string strViewSql) |
|
|
|
{ |
|
|
|
DataTable dt = new DataTable(); |
|
|
|
if (strTableName.Length <= 0) return dt; |
|
|
|
string strSql = ""; |
|
|
|
if (strViewName == strTableName && !string.IsNullOrWhiteSpace(strViewName)) |
|
|
|
strSql = strViewSql + " where 0=1"; |
|
|
|
else |
|
|
|
strSql = string.Format("SELECT * FROM {0} Where 0=1", strTableName); |
|
|
|
try |
|
|
|
{ |
|
|
|
dt = DamengHelper.ExecuteDataSet(strSql).Tables[0]; |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return dt; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 获取某表的表结构和类型长度 |
|
|
|
/// </summary> |
|
|
|
public DataTable GetTableTypeAndLenth(string strTableName) |
|
|
|
{ |
|
|
|
DataTable dt = new DataTable(); |
|
|
|
string strSql = string.Format(@"SELECT |
|
|
|
COLUMN_NAME AS 'ColumnName', |
|
|
|
NULLABLE AS 'IsNullable', |
|
|
|
DATA_TYPE AS 'DataType', |
|
|
|
DATA_LENGTH AS 'CharMaxLenth', |
|
|
|
DATA_LENGTH AS 'CharOcterLenth', |
|
|
|
DATA_PRECISION AS 'NumericPrecision', |
|
|
|
DATA_SCALE AS 'NumericScale' |
|
|
|
FROM USER_TAB_COLUMNS |
|
|
|
WHERE TABLE_NAME = '{0}'", strTableName); |
|
|
|
try |
|
|
|
{ |
|
|
|
dt = DamengHelper.ExecuteDataSet(strSql).Tables[0]; |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return dt; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 逐行批量插入数据 |
|
|
|
/// </summary> |
|
|
|
public int InsertCnasData(DataTable dt, List<SyncParamasInfo> syncParamasInfos, List<CnasConditionMapValue> lstFixedValue, string strInsumentColumn) |
|
|
|
{ |
|
|
|
int iReturn = 0; |
|
|
|
if (dt.Rows.Count <= 0) return 0; |
|
|
|
try |
|
|
|
{ |
|
|
|
//获取唯一健组(关键字段) |
|
|
|
var query = from p in syncParamasInfos |
|
|
|
where p.IfPrimaryKey == true |
|
|
|
select new |
|
|
|
{ |
|
|
|
p.TargetField |
|
|
|
}; |
|
|
|
List<string> lstKeyColumns = new List<string>(); |
|
|
|
foreach (var item in query) |
|
|
|
{ |
|
|
|
lstKeyColumns.Add(item.TargetField); |
|
|
|
} |
|
|
|
|
|
|
|
//构建SQL语句 |
|
|
|
string strSql_part1 = ""; |
|
|
|
string strSql_part2 = ""; |
|
|
|
List<string> lstColumnName = new List<string>(); |
|
|
|
foreach (var item in syncParamasInfos) |
|
|
|
{ |
|
|
|
if (!lstColumnName.Contains(item.TargetField.ToLower())) |
|
|
|
{ |
|
|
|
strSql_part1 += item.TargetField + ","; |
|
|
|
strSql_part2 += string.Format(":{0},", item.TargetField.ToLower()); |
|
|
|
lstColumnName.Add(item.TargetField.ToLower()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//固定列处理 |
|
|
|
if (lstFixedValue != null) |
|
|
|
{ |
|
|
|
foreach (var cnasfield in lstFixedValue) |
|
|
|
{ |
|
|
|
if (cnasfield.TableName != syncParamasInfos[0].TargetTable) continue; |
|
|
|
if (!lstColumnName.Contains(cnasfield.ColumnName.ToLower())) |
|
|
|
{ |
|
|
|
strSql_part1 += cnasfield.ColumnName + ","; |
|
|
|
strSql_part2 += string.Format(":{0},", cnasfield.ColumnName.ToLower()); |
|
|
|
lstColumnName.Add(cnasfield.ColumnName.ToLower()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//增加仪器编号数据 |
|
|
|
if (!string.IsNullOrWhiteSpace(strInsumentColumn) && !lstColumnName.Contains(strInsumentColumn.ToLower())) |
|
|
|
{ |
|
|
|
strSql_part1 += strInsumentColumn + ","; |
|
|
|
strSql_part2 += string.Format(":{0},", strInsumentColumn); |
|
|
|
lstColumnName.Add(strInsumentColumn.ToLower()); |
|
|
|
} |
|
|
|
|
|
|
|
string strInsertSql = string.Format("insert into {0}({1}) values({2})", |
|
|
|
syncParamasInfos[0].TargetTable, |
|
|
|
strSql_part1.Substring(0, strSql_part1.Length - 1), |
|
|
|
strSql_part2.Substring(0, strSql_part2.Length - 1)); |
|
|
|
|
|
|
|
string strUpdateSql = ""; |
|
|
|
DataTable dtSelect = new DataTable(); |
|
|
|
|
|
|
|
foreach (DataRow dr in dt.Rows) |
|
|
|
{ |
|
|
|
//插入参数值 |
|
|
|
DmParameter[] parameters = new DmParameter[lstColumnName.Count]; |
|
|
|
int i = 0; |
|
|
|
foreach (var item in lstColumnName) |
|
|
|
{ |
|
|
|
parameters[i++] = new DmParameter(item, dr[item]); |
|
|
|
} |
|
|
|
|
|
|
|
//检查是否存在数据 |
|
|
|
int ifHavaValue = ExistSingleCnasData(lstKeyColumns, syncParamasInfos[0].TargetTable, dr, ref dtSelect); |
|
|
|
if (ifHavaValue == 1) |
|
|
|
{ |
|
|
|
if (dtSelect.Rows.Count == 1) |
|
|
|
{ |
|
|
|
//比对数据是否一致 |
|
|
|
if (!CompareObjectOperation.DataRowCompare(dtSelect.Rows[0], dr, lstColumnName)) |
|
|
|
{ |
|
|
|
//构造更新语句 |
|
|
|
strUpdateSql = GetUpdateSql(lstColumnName, lstKeyColumns, syncParamasInfos[0].TargetTable, dr); |
|
|
|
//执行UpdateSql语句 |
|
|
|
iReturn += DamengHelper.ExecuteNonQuery(strUpdateSql, parameters); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
iReturn = -2; |
|
|
|
AppLog.Info("更新时发现在数据库中相同关键字段数据一致。"); |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
AppLog.Error("更新时发现在数据库中多条相同关键字段数据,请重新配置关键字段。"); |
|
|
|
} |
|
|
|
} |
|
|
|
else if (ifHavaValue == 0) |
|
|
|
{ |
|
|
|
//执行InsertSQL语句 |
|
|
|
iReturn += DamengHelper.ExecuteNonQuery(strInsertSql, parameters); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
if (!LinkCnasTest()) |
|
|
|
{ |
|
|
|
iReturn = -1; //用于表示插入时无法正常数据库连接问题 |
|
|
|
} |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return iReturn; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 拼接Update语句 |
|
|
|
/// </summary> |
|
|
|
private string GetUpdateSql(List<string> lstColumnName, List<string> lstPrimaryColumn, string strTableName, DataRow dr) |
|
|
|
{ |
|
|
|
//构造关键字段条件 |
|
|
|
string strsql_partial = ""; |
|
|
|
foreach (var item in lstPrimaryColumn) |
|
|
|
{ |
|
|
|
if (dr.Table.Columns.Contains(item.ToString())) |
|
|
|
if (dr[item.ToString()].ToString() != "") |
|
|
|
strsql_partial += $"{item.ToString()}='{dr[item.ToString()].ToString()}' and "; |
|
|
|
else |
|
|
|
strsql_partial += $"({item.ToString()}='{dr[item.ToString()].ToString()}' or {item.ToString()} is null) and "; |
|
|
|
} |
|
|
|
|
|
|
|
//构造Update语句 |
|
|
|
string strUpdateSql = ""; |
|
|
|
string strsql_partial2 = ""; |
|
|
|
foreach (var item in lstColumnName) |
|
|
|
{ |
|
|
|
strsql_partial2 += $"{item}=:{item},"; |
|
|
|
} |
|
|
|
|
|
|
|
if (strsql_partial.Length > 3 && strsql_partial2.Length > 0) |
|
|
|
strUpdateSql = $"update {strTableName} set {strsql_partial2.Substring(0, strsql_partial2.Length - 1)} where {strsql_partial.Substring(0, strsql_partial.Length - 4)}"; |
|
|
|
|
|
|
|
return strUpdateSql; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 是否数据库中已经存在数据 |
|
|
|
/// </summary> |
|
|
|
private int ExistSingleCnasData(List<string> lstPrimaryColumn, string strTableName, DataRow dr, ref DataTable dtSelect) |
|
|
|
{ |
|
|
|
int bIfHaveValue = 0; |
|
|
|
string strsql_partial = ""; |
|
|
|
string strSql = ""; |
|
|
|
foreach (var item in lstPrimaryColumn) |
|
|
|
{ |
|
|
|
if (dr.Table.Columns.Contains(item.ToString())) |
|
|
|
if (dr[item.ToString()].ToString() != "") |
|
|
|
strsql_partial += $"{item.ToString()}='{dr[item.ToString()].ToString()}' and "; |
|
|
|
else |
|
|
|
strsql_partial += $"({item.ToString()}='{dr[item.ToString()].ToString()}' or {item.ToString()} is null) and "; |
|
|
|
} |
|
|
|
if (strsql_partial.Length > 3) |
|
|
|
strSql = $"select * from {strTableName} where {strsql_partial.Substring(0, strsql_partial.Length - 4)}"; |
|
|
|
|
|
|
|
if (strSql != "") |
|
|
|
{ |
|
|
|
DataTable dt = DamengHelper.ExecuteDataTable(strSql, new DmParameter[] { }); |
|
|
|
if (dt != null && dt.Rows.Count > 0) |
|
|
|
{ |
|
|
|
bIfHaveValue = 1; |
|
|
|
dtSelect = dt; |
|
|
|
AppLog.Info($"插入前查询时存在重复数据:{strSql}"); |
|
|
|
} |
|
|
|
else if (dt == null) |
|
|
|
{ |
|
|
|
bIfHaveValue = -1; |
|
|
|
AppLog.Info($"插入前查询时发生了异常:{strSql}"); |
|
|
|
} |
|
|
|
} |
|
|
|
return bIfHaveValue; |
|
|
|
} |
|
|
|
|
|
|
|
public bool LinkCnasTest() |
|
|
|
{ |
|
|
|
return DamengHelper.TestConnectDameng(); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 获得表中该列中最大时间 |
|
|
|
/// </summary> |
|
|
|
public string GetMaxTimeByTableName(string strTableName, string strDateColumn, string strInstrumentColumn, string strInstrumentValue) |
|
|
|
{ |
|
|
|
string strReturnTime = ""; |
|
|
|
try |
|
|
|
{ |
|
|
|
string strSql = $"SELECT TO_CHAR(MAX({strDateColumn}), 'YYYY-MM-DD HH24:MI:SS') FROM {strTableName}"; |
|
|
|
if (!string.IsNullOrWhiteSpace(strInstrumentColumn) && !string.IsNullOrWhiteSpace(strInstrumentValue)) |
|
|
|
strSql += $" WHERE {strInstrumentColumn}='{strInstrumentValue}'"; |
|
|
|
|
|
|
|
string strDateTime = GetMaxTimeByTableName(strSql); |
|
|
|
DateTime dateTime = DateTime.Now; |
|
|
|
if (DateTime.TryParse(strDateTime, out dateTime)) |
|
|
|
{ |
|
|
|
strReturnTime = strDateTime; |
|
|
|
} |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
strReturnTime = "1899-1-1"; |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return strReturnTime; |
|
|
|
} |
|
|
|
|
|
|
|
internal DataTable GetDataByDateColumn(string strDBName, string strViewName, string strViewSql, string strTableName, string strDateColumn, string strDate) |
|
|
|
{ |
|
|
|
DataTable dtReturn = new DataTable(); |
|
|
|
try |
|
|
|
{ |
|
|
|
string strSql = ""; |
|
|
|
if (strViewName == strTableName && !string.IsNullOrWhiteSpace(strViewName)) |
|
|
|
strSql = strViewSql + $" where {strDateColumn} > TO_DATE('{strDate}', 'YYYY-MM-DD HH24:MI:SS')"; |
|
|
|
else |
|
|
|
strSql = $"select * from {strTableName} where {strDateColumn} > TO_DATE('{strDate}', 'YYYY-MM-DD HH24:MI:SS')"; |
|
|
|
|
|
|
|
DataTable dt = DamengHelper.ExecuteDataSet(strSql).Tables[0]; |
|
|
|
|
|
|
|
Dictionary<string, string> dictFiled = GetSpecialOperaField(strDBName, strTableName); |
|
|
|
if (dictFiled.Count > 0) |
|
|
|
dtReturn = DateAndTimeTypeOpera(dt, dictFiled); |
|
|
|
else |
|
|
|
dtReturn = dt; |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
throw ex; |
|
|
|
} |
|
|
|
return dtReturn; |
|
|
|
} |
|
|
|
|
|
|
|
internal Dictionary<string, DataTable> GetAllTableNameAndStructure(string strDBName) |
|
|
|
{ |
|
|
|
Dictionary<string, DataTable> dictTables = new Dictionary<string, DataTable>(); |
|
|
|
try |
|
|
|
{ |
|
|
|
DataTable TablesName = GetTableNames(strDBName); |
|
|
|
foreach (DataRow dr in TablesName.Rows) |
|
|
|
{ |
|
|
|
string strTableName = dr[0].ToString(); |
|
|
|
dictTables.Add(strTableName.ToUpper(), GetTableStruct(strTableName, "", "")); |
|
|
|
} |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return dictTables; |
|
|
|
} |
|
|
|
|
|
|
|
private string GetMaxTimeByTableName(string strSql) |
|
|
|
{ |
|
|
|
string strDateTime = ""; |
|
|
|
try |
|
|
|
{ |
|
|
|
DataTable dt = DamengHelper.ExecuteDataSet(strSql).Tables[0]; |
|
|
|
if (dt != null && dt.Rows.Count == 1) |
|
|
|
{ |
|
|
|
strDateTime = dt.Rows[0][0].ToString(); |
|
|
|
} |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
if (!LinkCnasTest()) |
|
|
|
{ |
|
|
|
strDateTime = "1899-1-1"; |
|
|
|
} |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return strDateTime; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 获取特殊处理字段 |
|
|
|
/// </summary> |
|
|
|
private Dictionary<string, string> GetSpecialOperaField(string strDBName, string strTableName) |
|
|
|
{ |
|
|
|
Dictionary<string, string> DictFiled = new Dictionary<string, string>(); |
|
|
|
try |
|
|
|
{ |
|
|
|
string sql = $"SELECT COLUMN_NAME, DATA_TYPE FROM USER_TAB_COLUMNS WHERE TABLE_NAME='{strTableName}'"; |
|
|
|
DataTable dt = DamengHelper.ExecuteDataSet(sql).Tables[0]; |
|
|
|
|
|
|
|
foreach (DataRow dr in dt.Rows) |
|
|
|
{ |
|
|
|
string dataType = dr["DATA_TYPE"].ToString().ToLower(); |
|
|
|
if (dataType == "date" || dataType == "time" || dataType == "timestamp") |
|
|
|
{ |
|
|
|
DictFiled.Add(dr["COLUMN_NAME"].ToString(), dataType); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return DictFiled; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 处理日期时间类型数据 |
|
|
|
/// </summary> |
|
|
|
private DataTable DateAndTimeTypeOpera(DataTable dt, Dictionary<string, string> DictSpecialField) |
|
|
|
{ |
|
|
|
DataTable dtNewFormat = new DataTable(); |
|
|
|
|
|
|
|
//添加列 |
|
|
|
foreach (DataColumn dc in dt.Columns) |
|
|
|
{ |
|
|
|
if (DictSpecialField.ContainsKey(dc.ColumnName)) |
|
|
|
{ |
|
|
|
string strDateType = DictSpecialField[dc.ColumnName]; |
|
|
|
switch (strDateType.ToLower()) |
|
|
|
{ |
|
|
|
case "date": |
|
|
|
case "time": |
|
|
|
case "timestamp": |
|
|
|
dtNewFormat.Columns.Add(dc.ColumnName, typeof(string)); |
|
|
|
break; |
|
|
|
default: |
|
|
|
dtNewFormat.Columns.Add(dc.ColumnName, dc.DataType); |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
dtNewFormat.Columns.Add(dc.ColumnName, dc.DataType); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//添加数据 |
|
|
|
foreach (DataRow dr in dt.Rows) |
|
|
|
{ |
|
|
|
DataRow drNewRow = dtNewFormat.NewRow(); |
|
|
|
foreach (DataColumn dc in dtNewFormat.Columns) |
|
|
|
{ |
|
|
|
if (!DictSpecialField.ContainsKey(dc.ColumnName)) |
|
|
|
drNewRow[dc.ColumnName] = dr[dc.ColumnName]; |
|
|
|
else |
|
|
|
{ |
|
|
|
if (dr[dc.ColumnName] != null && dr[dc.ColumnName].ToString() != "") |
|
|
|
{ |
|
|
|
switch (DictSpecialField[dc.ColumnName].ToLower()) |
|
|
|
{ |
|
|
|
case "date": |
|
|
|
drNewRow[dc.ColumnName] = Convert.ToDateTime(dr[dc.ColumnName]).ToString("yyyy-MM-dd"); |
|
|
|
break; |
|
|
|
case "time": |
|
|
|
drNewRow[dc.ColumnName] = Convert.ToDateTime(dr[dc.ColumnName]).ToString("HH:mm:ss"); |
|
|
|
break; |
|
|
|
case "timestamp": |
|
|
|
drNewRow[dc.ColumnName] = Convert.ToDateTime(dr[dc.ColumnName]).ToString("yyyy-MM-dd HH:mm:ss"); |
|
|
|
break; |
|
|
|
default: |
|
|
|
drNewRow[dc.ColumnName] = dr[dc.ColumnName]; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
dtNewFormat.Rows.Add(drNewRow); |
|
|
|
} |
|
|
|
|
|
|
|
return dtNewFormat; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 获取表数据 |
|
|
|
/// </summary> |
|
|
|
public DataTable GetTableData(string strSql) |
|
|
|
{ |
|
|
|
DataTable dt = new DataTable(); |
|
|
|
try |
|
|
|
{ |
|
|
|
dt = DamengHelper.ExecuteDataSet(strSql).Tables[0]; |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return dt; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 插入表数据 |
|
|
|
/// </summary> |
|
|
|
public bool InsertTableData(string strSql) |
|
|
|
{ |
|
|
|
try |
|
|
|
{ |
|
|
|
return DamengHelper.ExecuteNonQuery(strSql) > 0; |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 根据用户名和密码获取登录名 |
|
|
|
/// </summary> |
|
|
|
public string GetLoginNameByPwd(string strUser, string strPwd) |
|
|
|
{ |
|
|
|
string strLoginName = ""; |
|
|
|
try |
|
|
|
{ |
|
|
|
string strSql = string.Format("SELECT loginname FROM sys_user WHERE username='{0}' and password='{1}'", strUser, strPwd); |
|
|
|
DataTable dt = DamengHelper.ExecuteDataSet(strSql).Tables[0]; |
|
|
|
if (dt != null && dt.Rows.Count > 0) |
|
|
|
{ |
|
|
|
strLoginName = dt.Rows[0][0].ToString(); |
|
|
|
} |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return strLoginName; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 检查MAC地址信息 |
|
|
|
/// </summary> |
|
|
|
public bool CheckMacMessage(string strMac) |
|
|
|
{ |
|
|
|
bool bIfSuccess = false; |
|
|
|
try |
|
|
|
{ |
|
|
|
string strSql = string.Format("SELECT * FROM sys_mac WHERE mac='{0}'", strMac); |
|
|
|
DataTable dt = DamengHelper.ExecuteDataSet(strSql).Tables[0]; |
|
|
|
if (dt != null && dt.Rows.Count > 0) |
|
|
|
{ |
|
|
|
bIfSuccess = true; |
|
|
|
} |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return bIfSuccess; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// 检查MAC地址信息 |
|
|
|
/// </summary> |
|
|
|
public bool CheckMacMessage(string strMac, string strUser) |
|
|
|
{ |
|
|
|
bool bIfSuccess = false; |
|
|
|
try |
|
|
|
{ |
|
|
|
string strSql = string.Format("SELECT * FROM sys_mac WHERE mac='{0}' and username='{1}'", strMac, strUser); |
|
|
|
DataTable dt = DamengHelper.ExecuteDataSet(strSql).Tables[0]; |
|
|
|
if (dt != null && dt.Rows.Count > 0) |
|
|
|
{ |
|
|
|
bIfSuccess = true; |
|
|
|
} |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
AppLog.Error(ex.Message); |
|
|
|
} |
|
|
|
return bIfSuccess; |
|
|
|
} |
|
|
|
} |
|
|
|
} |