using System;
using System.Collections.Generic;
using System.Data;
using SuperMap.RealEstate.ServiceModel;
using Business = SuperMap.RealEstate.ExchangeData.Business;
using HZQR.Common;
namespace EShang.Common.GeneralMethod
{
///
/// 机器基础信息表相关方法
///
public class MACHINEBASEINFOHelper
{
#region 获取机器基础信息表列表
///
/// 获取机器基础信息表列表
///
/// 事务管理器
/// 查询结果总数
/// 查询条件对象
public static List GetMACHINEBASEINFOList(Transaction transaction,
ref int TotalCount, Model.SearchModel searchModel)
{
List MACHINEBASEINFOList = new List();
string WhereSQL = "", RowFilterSQL = "";
if (searchModel.SearchParameter != null)
{
WhereSQL = OperationDataHelper.GetWhereSQL(searchModel.SearchParameter, searchModel.QueryType);
if (WhereSQL != "")
{
WhereSQL = "WHERE " + WhereSQL;
}
}
DataTable dtMACHINEBASEINFO = new Business.MACHINEBASEINFO(transaction).FillDataTable(WhereSQL);
//增加组合查询条件
if (searchModel.keyWord != null && !string.IsNullOrWhiteSpace(searchModel.keyWord.Key))
{
foreach (string KeyName in searchModel.keyWord.Key.Split(','))
{
RowFilterSQL += (RowFilterSQL == "" ? "" : " or ") +
KeyName + " like '%" + searchModel.keyWord.Value + "%'";
}
}
if (RowFilterSQL != "")
{
dtMACHINEBASEINFO.DefaultView.RowFilter = RowFilterSQL;
}
//排序:
dtMACHINEBASEINFO.DefaultView.Sort = searchModel.SortStr;
dtMACHINEBASEINFO = dtMACHINEBASEINFO.DefaultView.ToTable();
//获取查询结果总记录条数
TotalCount = dtMACHINEBASEINFO.Rows.Count;
//根据传入的页码和每页显示条数返回结果
dtMACHINEBASEINFO = CommonHelper.GetDataTableWithPageSize(dtMACHINEBASEINFO, searchModel.PageSize, searchModel.PageIndex);
foreach (DataRow drMACHINEBASEINFO in dtMACHINEBASEINFO.Rows)
{
Model.MACHINEBASEINFOModel machinebaseinfoModel = new Model.MACHINEBASEINFOModel();
//绑定用户表数据对象
BindDataRowToModel(drMACHINEBASEINFO, machinebaseinfoModel);
MACHINEBASEINFOList.Add(machinebaseinfoModel);
}
return MACHINEBASEINFOList;
}
#region 绑定model
///
/// 绑定model
///
/// datarow数据源
/// model对象
public static void BindDataRowToModel(DataRow drMACHINEBASEINFO, Model.MACHINEBASEINFOModel machinebaseinfoModel)
{
if (drMACHINEBASEINFO["MACHINEBASEINFO_ID"].ToString() != "")
{
machinebaseinfoModel.MACHINEBASEINFO_ID = drMACHINEBASEINFO["MACHINEBASEINFO_ID"].TryParseToInt(); //机器基础信息表内码
}
machinebaseinfoModel.MACHINE_MACADDRESS = drMACHINEBASEINFO["MACHINE_MACADDRESS"].ToString(); //机器MAC地址
machinebaseinfoModel.MACHINE_SERNO = drMACHINEBASEINFO["MACHINE_SERNO"].ToString(); //机器序列号
if (drMACHINEBASEINFO["STAFF_ID"].ToString() != "")
{
machinebaseinfoModel.STAFF_ID = drMACHINEBASEINFO["STAFF_ID"].TryParseToInt(); //操作人内码
}
machinebaseinfoModel.STAFF_NAME = drMACHINEBASEINFO["STAFF_NAME"].ToString(); //操作人员
if (drMACHINEBASEINFO["OPERATE_DATE"].ToString() != "")
{
machinebaseinfoModel.OPERATE_DATE = drMACHINEBASEINFO["OPERATE_DATE"].TryParseToDateTime(); //操作时间
}
if (drMACHINEBASEINFO["MACHINEBASEINFO_STATUS"].ToString() != "")
{
machinebaseinfoModel.MACHINEBASEINFO_STATUS = drMACHINEBASEINFO["MACHINEBASEINFO_STATUS"].TryParseToShort(); //有效状态
}
machinebaseinfoModel.MACHINEBASEINFO_DESC = drMACHINEBASEINFO["MACHINEBASEINFO_DESC"].ToString(); //备注说明
}
#endregion
#endregion
#region 获取机器基础信息表明细
///
/// 获取机器基础信息表明细
///
/// 事务管理器
/// 机器基础信息表内码
public static Model.MACHINEBASEINFOModel GetMACHINEBASEINFODetail(Transaction transaction, int MACHINEBASEINFOId)
{
Model.MACHINEBASEINFOModel machinebaseinfoModel = new Model.MACHINEBASEINFOModel();
Business.MACHINEBASEINFO _MACHINEBASEINFO = new Business.MACHINEBASEINFO(transaction);
_MACHINEBASEINFO.MACHINEBASEINFO_ID = MACHINEBASEINFOId;
if (_MACHINEBASEINFO.Select())
{
machinebaseinfoModel.MACHINEBASEINFO_ID = _MACHINEBASEINFO.MACHINEBASEINFO_ID; //机器基础信息表内码
machinebaseinfoModel.MACHINE_MACADDRESS = _MACHINEBASEINFO.MACHINE_MACADDRESS; //机器MAC地址
machinebaseinfoModel.MACHINE_SERNO = _MACHINEBASEINFO.MACHINE_SERNO; //机器序列号
machinebaseinfoModel.STAFF_ID = _MACHINEBASEINFO.STAFF_ID; //操作人内码
machinebaseinfoModel.STAFF_NAME = _MACHINEBASEINFO.STAFF_NAME; //操作人员
machinebaseinfoModel.OPERATE_DATE = _MACHINEBASEINFO.OPERATE_DATE; //操作时间
machinebaseinfoModel.MACHINEBASEINFO_STATUS = _MACHINEBASEINFO.MACHINEBASEINFO_STATUS; //有效状态
machinebaseinfoModel.MACHINEBASEINFO_DESC = _MACHINEBASEINFO.MACHINEBASEINFO_DESC; //备注说明
}
return machinebaseinfoModel;
}
#endregion
#region 同步机器基础信息表
///
/// 赋值机器基础信息表数据对象
///
/// 事务管理器
/// 机器基础信息表数据对象
public static bool SynchroMACHINEBASEINFO(Transaction transaction, Model.MACHINEBASEINFOModel machinebaseinfoModel)
{
bool SynchroFlag = true;
Business.MACHINEBASEINFO _MACHINEBASEINFO = new Business.MACHINEBASEINFO(transaction);
if (machinebaseinfoModel.MACHINEBASEINFO_ID != null)
{
_MACHINEBASEINFO.MACHINEBASEINFO_ID = machinebaseinfoModel.MACHINEBASEINFO_ID;
if (_MACHINEBASEINFO.Select())
{
SynchroModelToObject(_MACHINEBASEINFO, machinebaseinfoModel);
_MACHINEBASEINFO.Update();
}
else
{
SynchroFlag = false;
}
}
else
{
SynchroModelToObject(_MACHINEBASEINFO, machinebaseinfoModel);
_MACHINEBASEINFO.Insert();
}
return SynchroFlag;
}
#region 赋值机器基础信息表数据对象
///
/// 赋值机器基础信息表数据对象
///
///
///
public static void SynchroModelToObject(Business.MACHINEBASEINFO _MACHINEBASEINFO, Model.MACHINEBASEINFOModel machinebaseinfoModel)
{
_MACHINEBASEINFO.MACHINE_MACADDRESS = machinebaseinfoModel.MACHINE_MACADDRESS; //机器MAC地址
_MACHINEBASEINFO.MACHINE_SERNO = machinebaseinfoModel.MACHINE_SERNO; //机器序列号
_MACHINEBASEINFO.STAFF_ID = machinebaseinfoModel.STAFF_ID; //操作人内码
_MACHINEBASEINFO.STAFF_NAME = machinebaseinfoModel.STAFF_NAME; //操作人员
_MACHINEBASEINFO.OPERATE_DATE = machinebaseinfoModel.OPERATE_DATE; //操作时间
_MACHINEBASEINFO.MACHINEBASEINFO_STATUS = machinebaseinfoModel.MACHINEBASEINFO_STATUS; //有效状态
_MACHINEBASEINFO.MACHINEBASEINFO_DESC = machinebaseinfoModel.MACHINEBASEINFO_DESC; //备注说明
}
#endregion
#endregion
#region 删除机器基础信息表
///
/// 删除机器基础信息表
///
/// 事务管理器
/// 机器基础信息表内码
public static bool DeleteMACHINEBASEINFO(Transaction transaction, int? MACHINEBASEINFOId)
{
bool DeleteFlag = false;
if (MACHINEBASEINFOId != null)
{
Business.MACHINEBASEINFO _MACHINEBASEINFO = new Business.MACHINEBASEINFO(transaction);
_MACHINEBASEINFO.MACHINEBASEINFO_ID = MACHINEBASEINFOId;
if (_MACHINEBASEINFO.Select())
{
_MACHINEBASEINFO.MACHINEBASEINFO_STATE = 0;
DeleteFlag = _MACHINEBASEINFO.Update();
}
}
return DeleteFlag;
}
#endregion
}
}