using System;
using System.Collections.Generic;
using System.Data;
using SuperMap.RealEstate.ServiceModel;
using Business = SuperMap.RealEstate.HighWay.SellData.Business;
using HZQR.Common;
namespace EShang.Common.GeneralMethod
{
///
/// 断面流量表相关方法
///
public class SECTIONFLOWHelper
{
#region 获取断面流量表列表
///
/// 获取断面流量表列表
///
/// 事务管理器
/// 查询结果总数
/// 查询条件对象
public static List GetSECTIONFLOWList(Transaction transaction,
ref int TotalCount, Model.SearchModel searchModel)
{
List SECTIONFLOWList = new List();
string WhereSQL = "", RowFilterSQL = "";
if (searchModel.SearchParameter != null)
{
WhereSQL = OperationDataHelper.GetWhereSQL(searchModel.SearchParameter, searchModel.QueryType);
if (WhereSQL != "")
{
WhereSQL = "WHERE " + WhereSQL;
}
}
DataTable dtSECTIONFLOW = new Business.SECTIONFLOW(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 != "")
{
dtSECTIONFLOW.DefaultView.RowFilter = RowFilterSQL;
}
//排序:
dtSECTIONFLOW.DefaultView.Sort = searchModel.SortStr;
dtSECTIONFLOW = dtSECTIONFLOW.DefaultView.ToTable();
//获取查询结果总记录条数
TotalCount = dtSECTIONFLOW.Rows.Count;
//根据传入的页码和每页显示条数返回结果
dtSECTIONFLOW = CommonHelper.GetDataTableWithPageSize(dtSECTIONFLOW, searchModel.PageSize, searchModel.PageIndex);
foreach (DataRow drSECTIONFLOW in dtSECTIONFLOW.Rows)
{
Model.SECTIONFLOWModel sectionflowModel = new Model.SECTIONFLOWModel();
sectionflowModel.SECTIONFLOW_ID = drSECTIONFLOW["SECTIONFLOW_ID"].TryParseToInt(); //断面流量内码
sectionflowModel.SERVERPART_ID = drSECTIONFLOW["SERVERPART_ID"].TryParseToInt(); //服务区内码
sectionflowModel.SERVERPART_NAME = drSECTIONFLOW["SERVERPART_NAME"].ToString(); //服务区名称
sectionflowModel.SERVERPART_REGION = drSECTIONFLOW["SERVERPART_REGION"].ToString(); //服务区方位
sectionflowModel.SECTIONFLOW_NUM = drSECTIONFLOW["SECTIONFLOW_NUM"].TryParseToInt(); //断面流量
sectionflowModel.SERVERPART_FLOW = drSECTIONFLOW["SERVERPART_FLOW"].TryParseToInt(); //服务区流量
sectionflowModel.STATISTICS_DATE = drSECTIONFLOW["STATISTICS_DATE"].TryParseToInt(); //统计日期
sectionflowModel.OPERATE_DATE = drSECTIONFLOW["OPERATE_DATE"].TryParseToLong(); //更新时间
sectionflowModel.SECTIONFLOW_STATUS = (short)drSECTIONFLOW["SECTIONFLOW_STATUS"].TryParseToInt(); //有效状态(0:无效;1:有效)
sectionflowModel.SECTIONFLOW_DESC = drSECTIONFLOW["SECTIONFLOW_DESC"].ToString(); //备注说明
SECTIONFLOWList.Add(sectionflowModel);
}
return SECTIONFLOWList;
}
#endregion
#region 获取断面流量表明细
///
/// 获取断面流量表明细
///
/// 事务管理器
/// 断面流量表内码
public static Model.SECTIONFLOWModel GetSECTIONFLOWDetail(Transaction transaction, int SECTIONFLOWId)
{
Model.SECTIONFLOWModel sectionflowModel = new Model.SECTIONFLOWModel();
Business.SECTIONFLOW _SECTIONFLOW = new Business.SECTIONFLOW(transaction);
_SECTIONFLOW.SECTIONFLOW_ID = SECTIONFLOWId;
if (_SECTIONFLOW.Select())
{
sectionflowModel.SECTIONFLOW_ID = _SECTIONFLOW.SECTIONFLOW_ID; //断面流量内码
sectionflowModel.SERVERPART_ID = _SECTIONFLOW.SERVERPART_ID; //服务区内码
sectionflowModel.SERVERPART_NAME = _SECTIONFLOW.SERVERPART_NAME; //服务区名称
sectionflowModel.SERVERPART_REGION = _SECTIONFLOW.SERVERPART_REGION; //服务区方位
sectionflowModel.SECTIONFLOW_NUM = _SECTIONFLOW.SECTIONFLOW_NUM; //断面流量
sectionflowModel.SERVERPART_FLOW = _SECTIONFLOW.SERVERPART_FLOW; //服务区流量
sectionflowModel.STATISTICS_DATE = _SECTIONFLOW.STATISTICS_DATE; //统计日期
sectionflowModel.OPERATE_DATE = _SECTIONFLOW.OPERATE_DATE; //更新时间
sectionflowModel.SECTIONFLOW_STATUS = _SECTIONFLOW.SECTIONFLOW_STATUS; //有效状态(0:无效;1:有效)
sectionflowModel.SECTIONFLOW_DESC = _SECTIONFLOW.SECTIONFLOW_DESC; //备注说明
}
return sectionflowModel;
}
#endregion
#region 同步断面流量表
///
/// 赋值断面流量表数据对象
///
/// 事务管理器
/// 断面流量表数据对象
public static bool SynchroSECTIONFLOW(Transaction transaction, Model.SECTIONFLOWModel sectionflowModel)
{
bool SynchroFlag = true;
Business.SECTIONFLOW _SECTIONFLOW = new Business.SECTIONFLOW(transaction);
if (sectionflowModel.SECTIONFLOW_ID != null)
{
_SECTIONFLOW.SECTIONFLOW_ID = sectionflowModel.SECTIONFLOW_ID;
if (_SECTIONFLOW.Select())
{
SynchroModelToObject(_SECTIONFLOW, sectionflowModel);
_SECTIONFLOW.Update();
}
else
{
SynchroFlag = false;
}
}
else
{
SynchroModelToObject(_SECTIONFLOW, sectionflowModel);
_SECTIONFLOW.Insert();
}
return SynchroFlag;
}
#region 赋值断面流量表数据对象
///
/// 赋值断面流量表数据对象
///
///
///
public static void SynchroModelToObject(Business.SECTIONFLOW _SECTIONFLOW, Model.SECTIONFLOWModel sectionflowModel)
{
_SECTIONFLOW.SERVERPART_ID = sectionflowModel.SERVERPART_ID; //服务区内码
_SECTIONFLOW.SERVERPART_NAME = sectionflowModel.SERVERPART_NAME; //服务区名称
_SECTIONFLOW.SERVERPART_REGION = sectionflowModel.SERVERPART_REGION; //服务区方位
_SECTIONFLOW.SECTIONFLOW_NUM = sectionflowModel.SECTIONFLOW_NUM; //断面流量
_SECTIONFLOW.SERVERPART_FLOW = sectionflowModel.SERVERPART_FLOW; //服务区流量
_SECTIONFLOW.STATISTICS_DATE = sectionflowModel.STATISTICS_DATE; //统计日期
_SECTIONFLOW.OPERATE_DATE = sectionflowModel.OPERATE_DATE; //更新时间
_SECTIONFLOW.SECTIONFLOW_STATUS = sectionflowModel.SECTIONFLOW_STATUS; //有效状态(0:无效;1:有效)
_SECTIONFLOW.SECTIONFLOW_DESC = sectionflowModel.SECTIONFLOW_DESC; //备注说明
}
#endregion
#endregion
#region 删除断面流量表
///
/// 删除断面流量表
///
/// 事务管理器
/// 断面流量表内码
public static bool DeleteSECTIONFLOW(Transaction transaction, int? SECTIONFLOWId)
{
bool DeleteFlag = false;
if (SECTIONFLOWId != null)
{
Business.SECTIONFLOW _SECTIONFLOW = new Business.SECTIONFLOW(transaction);
_SECTIONFLOW.SECTIONFLOW_ID = SECTIONFLOWId;
if (_SECTIONFLOW.Select())
{
_SECTIONFLOW.SECTIONFLOW_STATE = 0;
DeleteFlag = _SECTIONFLOW.Update();
}
}
return DeleteFlag;
}
#endregion
}
}