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

249 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.Coop.Merchant.Business;
using HCC = HZQR.Common.Common;
using HZQR.Common;
namespace EShang.Common.GeneralMethod
{
/// <summary>
/// 商户信息表相关方法
/// 2025/3/11 10:51:06自动生成
/// </summary>
public class MERCHANTSHelper
{
#region
/// <summary>
/// 获取商户信息表列表
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="TotalCount">查询结果总数</param>
/// <param name="searchModel">查询条件对象</param>
public static List<Model.MERCHANTSModel> GetMERCHANTSList(Transaction transaction,
ref int TotalCount, Model.SearchModel<Model.MERCHANTSModel> searchModel)
{
List<Model.MERCHANTSModel> MERCHANTSList = new List<Model.MERCHANTSModel>();
string WhereSQL = "", RowFilterSQL = "";
if (searchModel.SearchParameter != null)
{
WhereSQL = OperationDataHelper<Model.MERCHANTSModel>.GetWhereSQL(searchModel.SearchParameter, searchModel.QueryType);
if (WhereSQL != "")
{
WhereSQL = " WHERE " + WhereSQL;
}
}
DataTable dtMERCHANTS = new Business.OWNERUNIT(transaction).ExecuteDataTable(
"SELECT * FROM COOP_MERCHANT.T_MERCHANTS" + 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 != "")
{
dtMERCHANTS.DefaultView.RowFilter = RowFilterSQL;
}
//排序:
dtMERCHANTS.DefaultView.Sort = searchModel.SortStr;
dtMERCHANTS = dtMERCHANTS.DefaultView.ToTable();
//获取查询结果总记录条数
TotalCount = dtMERCHANTS.Rows.Count;
//根据传入的页码和每页显示条数返回结果
dtMERCHANTS = CommonHelper.GetDataTableWithPageSize(dtMERCHANTS, searchModel.PageSize, searchModel.PageIndex);
foreach (DataRow drMERCHANTS in dtMERCHANTS.Rows)
{
Model.MERCHANTSModel merchantsModel = new Model.MERCHANTSModel();
//绑定商户信息表数据对象
BindDataRowToModel(drMERCHANTS, merchantsModel);
MERCHANTSList.Add(merchantsModel);
}
return MERCHANTSList;
}
#region model
/// <summary>
/// 绑定model
/// </summary>
/// <param name="drMERCHANTS">datarow数据源</param>
/// <param name="merchantsModel">model对象</param>
public static void BindDataRowToModel(DataRow drMERCHANTS, Model.MERCHANTSModel merchantsModel)
{
if (drMERCHANTS["MERCHANTS_ID"].ToString() != "")
{
merchantsModel.MERCHANTS_ID = drMERCHANTS["MERCHANTS_ID"].TryParseToInt(); //商户内码
}
if (drMERCHANTS["MERCHANTS_PID"].ToString() != "")
{
merchantsModel.MERCHANTS_PID = drMERCHANTS["MERCHANTS_PID"].TryParseToInt(); //单位内码
}
merchantsModel.MERCHANTS_TYPE = drMERCHANTS["MERCHANTS_TYPE"].ToString(); //商户类型
merchantsModel.MERCHANTS_CODE = drMERCHANTS["MERCHANTS_CODE"].ToString(); //商户编码
merchantsModel.MERCHANTS_NAME = drMERCHANTS["MERCHANTS_NAME"].ToString(); //商户名称
merchantsModel.MERCHANTS_EN = drMERCHANTS["MERCHANTS_EN"].ToString(); //商户简称
merchantsModel.TAXPAYER_IDENTIFYCODE = drMERCHANTS["TAXPAYER_IDENTIFYCODE"].ToString(); //纳税人识别号
merchantsModel.MERCHANTS_DRAWER = drMERCHANTS["MERCHANTS_DRAWER"].ToString(); //商户开票人
merchantsModel.BANK_NAME = drMERCHANTS["BANK_NAME"].ToString(); //开户行
merchantsModel.BANK_ACCOUNT = drMERCHANTS["BANK_ACCOUNT"].ToString(); //银行账号
merchantsModel.MERCHANTS_LINKMAN = drMERCHANTS["MERCHANTS_LINKMAN"].ToString(); //商户联系人
merchantsModel.MERCHANTS_TELEPHONE = drMERCHANTS["MERCHANTS_TELEPHONE"].ToString(); //联系电话
merchantsModel.MERCHANTS_MOBILEPHONE = drMERCHANTS["MERCHANTS_MOBILEPHONE"].ToString(); //手机号码
merchantsModel.MERCHANTS_FAX = drMERCHANTS["MERCHANTS_FAX"].ToString(); //商户传真
merchantsModel.MERCHANTS_EMAIL = drMERCHANTS["MERCHANTS_EMAIL"].ToString(); //商户邮箱
merchantsModel.MERCHANTS_ADDRESS = drMERCHANTS["MERCHANTS_ADDRESS"].ToString(); //单位地址
if (drMERCHANTS["MERCHANTS_STATE"].ToString() != "")
{
merchantsModel.MERCHANTS_STATE = drMERCHANTS["MERCHANTS_STATE"].TryParseToShort(); //商户状态
}
if (drMERCHANTS["STAFF_ID"].ToString() != "")
{
merchantsModel.STAFF_ID = drMERCHANTS["STAFF_ID"].TryParseToInt(); //人员内码
}
merchantsModel.STAFF_NAME = drMERCHANTS["STAFF_NAME"].ToString(); //配置人员
if (drMERCHANTS["OPERATE_DATE"].ToString() != "")
{
merchantsModel.OPERATE_DATE = drMERCHANTS["OPERATE_DATE"].TryParseToDateTime(); //操作时间
}
merchantsModel.MERCHANTS_DESC = drMERCHANTS["MERCHANTS_DESC"].ToString(); //备注
if (drMERCHANTS["SHOW_HOME"].ToString() != "")
{
merchantsModel.SHOW_HOME = drMERCHANTS["SHOW_HOME"].TryParseToInt(); //是否显示在首页(1:显示在首页0不显示在首页)
}
if (drMERCHANTS["SHOW_HOME_INDEX"].ToString() != "")
{
merchantsModel.SHOW_HOME_INDEX = drMERCHANTS["SHOW_HOME_INDEX"].TryParseToInt(); //精选商户排序
}
merchantsModel.BUS_STARTDATE = drMERCHANTS["BUS_STARTDATE"].ToString(); //经营时段
if (drMERCHANTS["MERCHANTS_SCORE"].ToString() != "")
{
merchantsModel.MERCHANTS_SCORE = drMERCHANTS["MERCHANTS_SCORE"].TryParseToDouble(); //平均评分
}
if (drMERCHANTS["COMMENT_COUNT"].ToString() != "")
{
merchantsModel.COMMENT_COUNT = drMERCHANTS["COMMENT_COUNT"].TryParseToInt(); //评价数量
}
if (drMERCHANTS["MERCHANTS_STATISTICTYPE"].ToString() != "")
{
merchantsModel.MERCHANTS_STATISTICTYPE = drMERCHANTS["MERCHANTS_STATISTICTYPE"].TryParseToInt(); //商户统计方式 1000 按服务区 2000 按门店
}
if (drMERCHANTS["OWNERUNIT_ID"].ToString() != "")
{
merchantsModel.OWNERUNIT_ID = drMERCHANTS["OWNERUNIT_ID"].TryParseToInt(); //业主单位内码
}
merchantsModel.OWNERUNIT_NAME = drMERCHANTS["OWNERUNIT_NAME"].ToString(); //业主单位名称
}
#endregion
#endregion
#region
/// <summary>
/// 获取商户信息表明细
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="MERCHANTSId">商户信息表内码</param>
public static Model.MERCHANTSModel GetMERCHANTSDetail(Transaction transaction, int MERCHANTSId)
{
Model.MERCHANTSModel merchantsModel = new Model.MERCHANTSModel();
string WhereSQL = "WHERE MERCHANTS_ID = " + MERCHANTSId;
//查询明细数据
DataTable dtMERCHANTS = new Business.OWNERUNIT(transaction).ExecuteDataTable(
"SELECT * FROM COOP_MERCHANT.T_MERCHANTS " + WhereSQL);
if (dtMERCHANTS.Rows.Count > 0)
{
//绑定商户信息表数据对象
BindDataRowToModel(dtMERCHANTS.Rows[0], merchantsModel);
}
return merchantsModel;
}
#endregion
#region
/// <summary>
/// 赋值商户信息表数据对象
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="merchantsModel">商户信息表数据对象</param>
public static bool SynchroMERCHANTS(Transaction transaction, Model.MERCHANTSModel merchantsModel)
{
bool SynchroFlag = true;
string SQLString;
List<string> excludeField = new List<string>();
Dictionary<string, string> dateFieldList = new Dictionary<string, string>();
string tableName = "COOP_MERCHANT.T_MERCHANTS", keyField = "MERCHANTS_ID", seqName = "SEQ_MERCHANTS";
Business.OWNERUNIT _OWNERUNIT = new Business.OWNERUNIT(transaction);
#region SQL语句中需要排除在外的字段
#endregion
#region SQL语句中日期相关字段的执行语句
#endregion
if (merchantsModel.MERCHANTS_ID != null)
{
string WhereSQL = " WHERE MERCHANTS_ID = " + merchantsModel.MERCHANTS_ID;
DataTable dtMERCHANTS = _OWNERUNIT.ExecuteDataTable(
"SELECT * FROM COOP_MERCHANT.T_MERCHANTS" + WhereSQL);
if (dtMERCHANTS.Rows.Count > 0)
{
SQLString = OperationDataHelper<Model.MERCHANTSModel>.GetTableExcuteSQL(
merchantsModel, 1, tableName, keyField, seqName, dateFieldList, excludeField, WhereSQL);
}
else
{
return false;
}
}
else
{
DataTable dtMERCHANTS = _OWNERUNIT.ExecuteDataTable(
"SELECT " + seqName + ".NEXTVAL FROM DUAL");
merchantsModel.MERCHANTS_ID = dtMERCHANTS.Rows[0][0].TryParseToInt();
SQLString = OperationDataHelper<Model.MERCHANTSModel>.GetTableExcuteSQL(
merchantsModel, 0, tableName, keyField, seqName, dateFieldList, excludeField);
}
_OWNERUNIT.ExecuteNonQuery(SQLString, null);
return SynchroFlag;
}
#endregion
#region
/// <summary>
/// 删除商户信息表
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="MERCHANTSId">商户信息表内码</param>
public static bool DeleteMERCHANTS(Transaction transaction, int? MERCHANTSId)
{
bool DeleteFlag = false;
if (MERCHANTSId != null)
{
string SQLString = "UPDATE COOP_MERCHANT.T_MERCHANTS SET MERCHANTS_STATE = 0 WHERE MERCHANTS_ID = " + MERCHANTSId;
int ExcuteCount = new Business.OWNERUNIT(transaction).ExecuteNonQuery(SQLString, null);
if (ExcuteCount > 0)
{
DeleteFlag = true;
}
}
return DeleteFlag;
}
#endregion
}
}