2025-03-27 15:05:14 +08:00

192 lines
8.9 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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
{
/// <summary>
/// 断面流量表相关方法
/// </summary>
public class SECTIONFLOWHelper
{
#region
/// <summary>
/// 获取断面流量表列表
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="TotalCount">查询结果总数</param>
/// <param name="searchModel">查询条件对象</param>
public static List<Model.SECTIONFLOWModel> GetSECTIONFLOWList(Transaction transaction,
ref int TotalCount, Model.SearchModel<Model.SECTIONFLOWModel> searchModel)
{
List<Model.SECTIONFLOWModel> SECTIONFLOWList = new List<Model.SECTIONFLOWModel>();
string WhereSQL = "", RowFilterSQL = "";
if (searchModel.SearchParameter != null)
{
WhereSQL = OperationDataHelper<Model.SECTIONFLOWModel>.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
/// <summary>
/// 获取断面流量表明细
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="SECTIONFLOWId">断面流量表内码</param>
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
/// <summary>
/// 赋值断面流量表数据对象
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="sectionflowModel">断面流量表数据对象</param>
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
/// <summary>
/// 赋值断面流量表数据对象
/// </summary>
/// <param name="_SECTIONFLOW"></param>
/// <param name="sectionflowModel"></param>
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
/// <summary>
/// 删除断面流量表
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="SECTIONFLOWId">断面流量表内码</param>
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
}
}