2025-03-28 09:49:56 +08:00

224 lines
11 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.PlatForm.Dashboard.Business;
using HCC = HZQR.Common.Common;
using HZQR.Common;
namespace EShang.Common.GeneralMethod
{
/// <summary>
/// 尿素交易流水表相关方法
/// 2025/3/24 14:07:48自动生成
/// </summary>
public class UREAMASTERHelper
{
#region 尿
/// <summary>
/// 获取尿素交易流水表列表
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="TotalCount">查询结果总数</param>
/// <param name="searchModel">查询条件对象</param>
public static List<Model.UREAMASTERModel> GetUREAMASTERList(Transaction transaction,
ref int TotalCount, Model.SearchModel<Model.UREAMASTERModel> searchModel)
{
List<Model.UREAMASTERModel> UREAMASTERList = new List<Model.UREAMASTERModel>();
string WhereSQL = "", RowFilterSQL = "";
if (searchModel.SearchParameter != null)
{
WhereSQL = OperationDataHelper<Model.UREAMASTERModel>.GetWhereSQL(searchModel.SearchParameter, searchModel.QueryType);
if (WhereSQL != "")
{
WhereSQL = " WHERE " + WhereSQL;
}
}
DataTable dtUREAMASTER = new Business.CATERINGGROSSMARGIN(transaction).ExecuteDataTable(
"SELECT * FROM PLATFORM_DASHBOARD.T_UREAMASTER" + 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 != "")
{
dtUREAMASTER.DefaultView.RowFilter = RowFilterSQL;
}
//排序:
dtUREAMASTER.DefaultView.Sort = searchModel.SortStr;
dtUREAMASTER = dtUREAMASTER.DefaultView.ToTable();
//获取查询结果总记录条数
TotalCount = dtUREAMASTER.Rows.Count;
//根据传入的页码和每页显示条数返回结果
dtUREAMASTER = CommonHelper.GetDataTableWithPageSize(dtUREAMASTER, searchModel.PageSize, searchModel.PageIndex);
foreach (DataRow drUREAMASTER in dtUREAMASTER.Rows)
{
Model.UREAMASTERModel ureamasterModel = new Model.UREAMASTERModel();
//绑定尿素交易流水表数据对象
BindDataRowToModel(drUREAMASTER, ureamasterModel);
UREAMASTERList.Add(ureamasterModel);
}
return UREAMASTERList;
}
#region model
/// <summary>
/// 绑定model
/// </summary>
/// <param name="drUREAMASTER">datarow数据源</param>
/// <param name="ureamasterModel">model对象</param>
public static void BindDataRowToModel(DataRow drUREAMASTER, Model.UREAMASTERModel ureamasterModel)
{
if (drUREAMASTER["UREAMASTER_ID"].ToString() != "")
{
ureamasterModel.UREAMASTER_ID = drUREAMASTER["UREAMASTER_ID"].TryParseToInt(); //内码
}
ureamasterModel.USER_ID = drUREAMASTER["USER_ID"].ToString(); //当前数据所属账号ID
ureamasterModel.USER_NAME = drUREAMASTER["USER_NAME"].ToString(); //当前数据所属账号名称
ureamasterModel.UREAMASTER_DATE = drUREAMASTER["UREAMASTER_DATE"].ToString(); //加注开始日期
ureamasterModel.UREAMASTER_TIME = drUREAMASTER["UREAMASTER_TIME"].ToString(); //加注开始时间
ureamasterModel.SALE = drUREAMASTER["SALE"].ToString(); //加注金额
ureamasterModel.LITER = drUREAMASTER["LITER"].ToString(); //加注升数/公斤
ureamasterModel.PRICE = drUREAMASTER["PRICE"].ToString(); //加注单价
ureamasterModel.UREA_MODE = drUREAMASTER["UREA_MODE"].ToString(); //加注方式1普通加注、2IC卡加注 、3电子卡加注、5微信支付、6支付宝支付、8远程加注
ureamasterModel.SER_NUM = drUREAMASTER["SER_NUM"].ToString(); //加注明细号
ureamasterModel.DEVICE = drUREAMASTER["DEVICE"].ToString(); //加注设备ID(IMEI)
ureamasterModel.DEVICE_NAME = drUREAMASTER["DEVICE_NAME"].ToString(); //加注设备名称
ureamasterModel.DEV_NUM = drUREAMASTER["DEV_NUM"].ToString(); //加注设备机子号
ureamasterModel.LATITUDE = drUREAMASTER["LATITUDE"].ToString(); //加注位置GPS纬度坐标
ureamasterModel.LONGITUDE = drUREAMASTER["LONGITUDE"].ToString(); //加注位置GPS经度坐标
ureamasterModel.VERSION = drUREAMASTER["VERSION"].ToString(); //API版本号
ureamasterModel.APP_ID = drUREAMASTER["APP_ID"].ToString(); //IOTTEC系统配给开发者的应用ID
ureamasterModel.PUSH_ID = drUREAMASTER["PUSH_ID"].ToString(); //异步通知唯一ID
ureamasterModel.REM_NUM = drUREAMASTER["REM_NUM"].ToString(); //剩余异步通知条数
ureamasterModel.CARD_NUM = drUREAMASTER["CARD_NUM"].ToString(); //卡号 (加注模式为2或3才有卡信息)
ureamasterModel.CARD_ID = drUREAMASTER["CARD_ID"].ToString(); //卡ID
ureamasterModel.CARD_TYPE = drUREAMASTER["CARD_TYPE"].ToString(); //卡类型
ureamasterModel.CARD_NAME = drUREAMASTER["CARD_NAME"].ToString(); //卡姓名
ureamasterModel.CARD_AMOUNT = drUREAMASTER["CARD_AMOUNT"].ToString(); //消费前卡金额
ureamasterModel.CARD_BALANCE = drUREAMASTER["CARD_BALANCE"].ToString(); //消费后卡余额
ureamasterModel.CARD_TEL = drUREAMASTER["CARD_TEL"].ToString(); //卡绑定电话
ureamasterModel.CARD_COMPANY = drUREAMASTER["CARD_COMPANY"].ToString(); //卡所属单位/车队
ureamasterModel.CARD_LICENSE_PLATE = drUREAMASTER["CARD_LICENSE_PLATE"].ToString(); //卡绑定车牌号
ureamasterModel.WR_ID = drUREAMASTER["WR_ID"].ToString(); //库位ID
ureamasterModel.WR_TYPE = drUREAMASTER["WR_TYPE"].ToString(); //库位类型
ureamasterModel.WR_NAME = drUREAMASTER["WR_NAME"].ToString(); //库位名称
ureamasterModel.WR_CAPACITY = drUREAMASTER["WR_CAPACITY"].ToString(); //库位容量
ureamasterModel.WR_MARGIN = drUREAMASTER["WR_MARGIN"].ToString(); //库位余量
ureamasterModel.WR_WARNING = drUREAMASTER["WR_WARNING"].ToString(); //库位预警值
ureamasterModel.WR_STATUS = drUREAMASTER["WR_STATUS"].ToString(); //库位状态
ureamasterModel.WR_DATA = drUREAMASTER["WR_DATA"].ToString(); //库位其他数据(液位仪数据)
if (drUREAMASTER["OPERATE_DATE"].ToString() != "")
{
ureamasterModel.OPERATE_DATE = drUREAMASTER["OPERATE_DATE"].TryParseToDateTime(); //记录时间
}
}
#endregion
#endregion
#region 尿
/// <summary>
/// 获取尿素交易流水表明细
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="UREAMASTERId">尿素交易流水表内码</param>
public static Model.UREAMASTERModel GetUREAMASTERDetail(Transaction transaction, int UREAMASTERId)
{
Model.UREAMASTERModel ureamasterModel = new Model.UREAMASTERModel();
string WhereSQL = "WHERE UREAMASTER_ID = " + UREAMASTERId;
//查询明细数据
DataTable dtUREAMASTER = new Business.CATERINGGROSSMARGIN(transaction).ExecuteDataTable(
"SELECT * FROM PLATFORM_DASHBOARD.T_UREAMASTER " + WhereSQL);
if (dtUREAMASTER.Rows.Count > 0)
{
//绑定尿素交易流水表数据对象
BindDataRowToModel(dtUREAMASTER.Rows[0], ureamasterModel);
}
return ureamasterModel;
}
#endregion
#region 尿
/// <summary>
/// 赋值尿素交易流水表数据对象
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="ureamasterModel">尿素交易流水表数据对象</param>
public static bool SynchroUREAMASTER(Transaction transaction, Model.UREAMASTERModel ureamasterModel)
{
bool SynchroFlag = true;
string SQLString;
List<string> excludeField = new List<string>();
Dictionary<string, string> dateFieldList = new Dictionary<string, string>();
string tableName = "PLATFORM_DASHBOARD.T_UREAMASTER", keyField = "UREAMASTER_ID", seqName = "SEQ_UREAMASTER";
Business.CATERINGGROSSMARGIN _CATERINGGROSSMARGIN = new Business.CATERINGGROSSMARGIN(transaction);
#region SQL语句中需要排除在外的字段
#endregion
#region SQL语句中日期相关字段的执行语句
#endregion
if (ureamasterModel.UREAMASTER_ID != null)
{
string WhereSQL = " WHERE UREAMASTER_ID = " + ureamasterModel.UREAMASTER_ID;
DataTable dtUREAMASTER = _CATERINGGROSSMARGIN.ExecuteDataTable(
"SELECT * FROM PLATFORM_DASHBOARD.T_UREAMASTER" + WhereSQL);
if (dtUREAMASTER.Rows.Count > 0)
{
SQLString = OperationDataHelper<Model.UREAMASTERModel>.GetTableExcuteSQL(
ureamasterModel, 1, tableName, keyField, seqName, dateFieldList, excludeField, WhereSQL);
}
else
{
return false;
}
}
else
{
DataTable dtUREAMASTER = _CATERINGGROSSMARGIN.ExecuteDataTable(
"SELECT " + seqName + ".NEXTVAL FROM DUAL");
ureamasterModel.UREAMASTER_ID = dtUREAMASTER.Rows[0][0].TryParseToInt();
SQLString = OperationDataHelper<Model.UREAMASTERModel>.GetTableExcuteSQL(
ureamasterModel, 0, tableName, keyField, seqName, dateFieldList, excludeField);
}
_CATERINGGROSSMARGIN.ExecuteNonQuery(SQLString, null);
return SynchroFlag;
}
#endregion
#region 尿
/// <summary>
/// 删除尿素交易流水表
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="UREAMASTERId">尿素交易流水表内码</param>
public static bool DeleteUREAMASTER(Transaction transaction, int? UREAMASTERId)
{
bool DeleteFlag = false;
if (UREAMASTERId != null)
{
}
return DeleteFlag;
}
#endregion
}
}