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

223 lines
9.8 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.FrameWork.Platform.Business;
using HCC = HZQR.Common.Common;
using HZQR.Common;
namespace EShang.Common.GeneralMethod
{
/// <summary>
/// 平台接口表相关方法
/// 2023/6/7 15:05:14自动生成
/// </summary>
public class INTERFACEHelper
{
#region
/// <summary>
/// 获取平台接口表列表
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="TotalCount">查询结果总数</param>
/// <param name="searchModel">查询条件对象</param>
public static List<Model.INTERFACEModel> GetINTERFACEList(Transaction transaction,
ref int TotalCount, Model.SearchModel<Model.INTERFACEModel> searchModel)
{
List<Model.INTERFACEModel> INTERFACEList = new List<Model.INTERFACEModel>();
string WhereSQL = "", RowFilterSQL = "";
if (searchModel.SearchParameter != null)
{
WhereSQL = OperationDataHelper<Model.INTERFACEModel>.GetWhereSQL(searchModel.SearchParameter, searchModel.QueryType);
if (WhereSQL != "")
{
WhereSQL = " WHERE " + WhereSQL;
}
}
DataTable dtINTERFACE = new Business.PERMISSIONAPPLY(transaction).ExecuteDataTable(
"SELECT * FROM PLATFORM_FRAMEWORK.T_INTERFACE" + 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 != "")
{
dtINTERFACE.DefaultView.RowFilter = RowFilterSQL;
}
//排序:
dtINTERFACE.DefaultView.Sort = searchModel.SortStr;
dtINTERFACE = dtINTERFACE.DefaultView.ToTable();
//获取查询结果总记录条数
TotalCount = dtINTERFACE.Rows.Count;
//根据传入的页码和每页显示条数返回结果
dtINTERFACE = CommonHelper.GetDataTableWithPageSize(dtINTERFACE, searchModel.PageSize, searchModel.PageIndex);
foreach (DataRow drINTERFACE in dtINTERFACE.Rows)
{
Model.INTERFACEModel interfaceModel = new Model.INTERFACEModel();
//绑定平台接口表数据对象
BindDataRowToModel(drINTERFACE, interfaceModel);
INTERFACEList.Add(interfaceModel);
}
return INTERFACEList;
}
#region model
/// <summary>
/// 绑定model
/// </summary>
/// <param name="drINTERFACE">datarow数据源</param>
/// <param name="interfaceModel">model对象</param>
public static void BindDataRowToModel(DataRow drINTERFACE, Model.INTERFACEModel interfaceModel)
{
if (drINTERFACE["INTERFACE_ID"].ToString() != "")
{
interfaceModel.INTERFACE_ID = drINTERFACE["INTERFACE_ID"].TryParseToInt(); //接口内码
}
interfaceModel.INTERFACE_NAME = drINTERFACE["INTERFACE_NAME"].ToString(); //接口名称
interfaceModel.INTERFACE_ROUTE = drINTERFACE["INTERFACE_ROUTE"].ToString(); //接口路径
interfaceModel.INTERFACE_DOMAINNAME = drINTERFACE["INTERFACE_DOMAINNAME"].ToString(); //接口域名
interfaceModel.INTERFACE_CONTROLLER = drINTERFACE["INTERFACE_CONTROLLER"].ToString(); //接口分类
if (drINTERFACE["INTERFACE_ACCEPTVERBS"].ToString() != "")
{
interfaceModel.INTERFACE_ACCEPTVERBS = drINTERFACE["INTERFACE_ACCEPTVERBS"].TryParseToShort(); //响应方式0GET/POST1GET,2POST
}
if (drINTERFACE["PARAMS_FORMAT"].ToString() != "")
{
interfaceModel.PARAMS_FORMAT = drINTERFACE["PARAMS_FORMAT"].TryParseToShort(); //入参格式0field1object2list3nestingmodel4nestingmodellist5searchmodel
}
if (drINTERFACE["RESPONSE_FORMAT"].ToString() != "")
{
interfaceModel.RESPONSE_FORMAT = drINTERFACE["RESPONSE_FORMAT"].TryParseToShort(); //返参格式0string1object2list3nestingmodel4nestingmodellist
}
if (drINTERFACE["STANDARD_TYPE"].ToString() != "")
{
interfaceModel.STANDARD_TYPE = drINTERFACE["STANDARD_TYPE"].TryParseToShort(); //是否标准接口01
}
if (drINTERFACE["OPERATE_DATE"].ToString() != "")
{
interfaceModel.OPERATE_DATE = drINTERFACE["OPERATE_DATE"].TryParseToDateTime(); //操作时间
}
interfaceModel.INTERFACE_DESC = drINTERFACE["INTERFACE_DESC"].ToString(); //接口说明
if (drINTERFACE["INTERFACE_PID"].ToString() != "")
{
interfaceModel.INTERFACE_PID = drINTERFACE["INTERFACE_PID"].TryParseToInt(); //父级接口内码
}
if (drINTERFACE["INTERFACE_TYPE"].ToString() != "")
{
interfaceModel.INTERFACE_TYPE = drINTERFACE["INTERFACE_TYPE"].TryParseToShort(); //接口类型0目录1接口
}
if (drINTERFACE["INTERFACE_AUTHORITY"].ToString() != "")
{
interfaceModel.INTERFACE_AUTHORITY = drINTERFACE["INTERFACE_AUTHORITY"].TryParseToShort(); //权限验证01
}
interfaceModel.INTERFACE_UNIQUE = drINTERFACE["INTERFACE_UNIQUE"].ToString(); //接口唯一键值
}
#endregion
#endregion
#region
/// <summary>
/// 获取平台接口表明细
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="INTERFACEId">平台接口表内码</param>
public static Model.INTERFACEModel GetINTERFACEDetail(Transaction transaction, int INTERFACEId)
{
Model.INTERFACEModel interfaceModel = new Model.INTERFACEModel();
string WhereSQL = "WHERE INTERFACE_ID = " + INTERFACEId;
//查询明细数据
DataTable dtINTERFACE = new Business.PERMISSIONAPPLY(transaction).ExecuteDataTable(
"SELECT * FROM PLATFORM_FRAMEWORK.T_INTERFACE " + WhereSQL);
if (dtINTERFACE.Rows.Count > 0)
{
//绑定平台接口表数据对象
BindDataRowToModel(dtINTERFACE.Rows[0], interfaceModel);
}
return interfaceModel;
}
#endregion
#region
/// <summary>
/// 赋值平台接口表数据对象
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="interfaceModel">平台接口表数据对象</param>
public static bool SynchroINTERFACE(Transaction transaction, Model.INTERFACEModel interfaceModel)
{
bool SynchroFlag = true;
string SQLString;
List<string> excludeField = new List<string>();
Dictionary<string, string> dateFieldList = new Dictionary<string, string>();
string tableName = "PLATFORM_FRAMEWORK.T_INTERFACE", keyField = "INTERFACE_ID", seqName = "SEQ_INTERFACE";
Business.PERMISSIONAPPLY _PERMISSIONAPPLY = new Business.PERMISSIONAPPLY(transaction);
#region SQL语句中需要排除在外的字段
#endregion
#region SQL语句中日期相关字段的执行语句
#endregion
if (interfaceModel.INTERFACE_ID != null)
{
string WhereSQL = " WHERE INTERFACE_ID = " + interfaceModel.INTERFACE_ID;
DataTable dtINTERFACE = _PERMISSIONAPPLY.ExecuteDataTable(
"SELECT * FROM PLATFORM_FRAMEWORK.T_INTERFACE" + WhereSQL);
if (dtINTERFACE.Rows.Count > 0)
{
SQLString = OperationDataHelper<Model.INTERFACEModel>.GetTableExcuteSQL(
interfaceModel, 1, tableName, keyField, seqName, dateFieldList, excludeField, WhereSQL);
}
else
{
return false;
}
}
else
{
DataTable dtINTERFACE = _PERMISSIONAPPLY.ExecuteDataTable(
"SELECT " + seqName + ".NEXTVAL FROM DUAL");
interfaceModel.INTERFACE_ID = dtINTERFACE.Rows[0][0].TryParseToInt();
SQLString = OperationDataHelper<Model.INTERFACEModel>.GetTableExcuteSQL(
interfaceModel, 0, tableName, keyField, seqName, dateFieldList, excludeField);
}
_PERMISSIONAPPLY.ExecuteNonQuery(SQLString, null);
return SynchroFlag;
}
#endregion
#region
/// <summary>
/// 删除平台接口表
/// </summary>
/// <param name="transaction">事务管理器</param>
/// <param name="INTERFACEId">平台接口表内码</param>
public static bool DeleteINTERFACE(Transaction transaction, int? INTERFACEId)
{
bool DeleteFlag = false;
if (INTERFACEId != null)
{
}
return DeleteFlag;
}
#endregion
}
}