453 lines
21 KiB
C#
453 lines
21 KiB
C#
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/2/13 17:36:11自动生成
|
||
/// </summary>
|
||
public class POSTDETAILHelper
|
||
{
|
||
#region 获取帖子评论点赞表列表
|
||
/// <summary>
|
||
/// 获取帖子评论点赞表列表
|
||
/// </summary>
|
||
/// <param name="transaction">事务管理器</param>
|
||
/// <param name="TotalCount">查询结果总数</param>
|
||
/// <param name="searchModel">查询条件对象</param>
|
||
public static List<Model.POSTDETAILModel> GetPOSTDETAILList(Transaction transaction,
|
||
ref int TotalCount, Model.SearchModel<Model.POSTDETAILModel> searchModel)
|
||
{
|
||
List<Model.POSTDETAILModel> POSTDETAILList = new List<Model.POSTDETAILModel>();
|
||
|
||
string WhereSQL = "", RowFilterSQL = "";
|
||
if (searchModel.SearchParameter != null)
|
||
{
|
||
WhereSQL = OperationDataHelper<Model.POSTDETAILModel>.GetWhereSQL(searchModel.SearchParameter, searchModel.QueryType, "",
|
||
"OPERATE_DATE_Start", "OPERATE_DATE_End", "POSTDETAIL_IDS", "POSTDETAIL_PIDS");
|
||
if (WhereSQL != "")
|
||
{
|
||
WhereSQL = " WHERE " + WhereSQL;
|
||
}
|
||
//查询评论时间
|
||
if (searchModel.SearchParameter.OPERATE_DATE_Start.TryParseToString() != "")
|
||
{
|
||
WhereSQL += (WhereSQL == "" ? " WHERE " : " AND ") + "OPERATE_DATE >= TO_DATE('" +
|
||
searchModel.SearchParameter.OPERATE_DATE_Start.Split(' ')[0] + "','YYYY/MM/DD')";
|
||
}
|
||
if (searchModel.SearchParameter.OPERATE_DATE_End.TryParseToString() != "")
|
||
{
|
||
WhereSQL += (WhereSQL == "" ? " WHERE " : " AND ") + "OPERATE_DATE < TO_DATE('" +
|
||
searchModel.SearchParameter.OPERATE_DATE_End.Split(' ')[0] + "','YYYY/MM/DD') + 1";
|
||
}
|
||
//查询内码
|
||
if (searchModel.SearchParameter.POSTDETAIL_IDS.TryParseToString() != "")
|
||
{
|
||
WhereSQL += (WhereSQL == "" ? " WHERE " : " AND ") + "POSTDETAIL_ID IN (" + searchModel.SearchParameter.POSTDETAIL_IDS + ")";
|
||
}
|
||
//查询评论内码
|
||
if (searchModel.SearchParameter.POSTDETAIL_PIDS.TryParseToString() != "")
|
||
{
|
||
WhereSQL += (WhereSQL == "" ? " WHERE " : " AND ") + "POSTDETAIL_PID IN (" + searchModel.SearchParameter.POSTDETAIL_PIDS + ")";
|
||
}
|
||
}
|
||
|
||
DataTable dtPOSTDETAIL = new Business.OWNERUNIT(transaction).ExecuteDataTable(
|
||
"SELECT * FROM COOP_MERCHANT.T_POSTDETAIL" + 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 != "")
|
||
{
|
||
dtPOSTDETAIL.DefaultView.RowFilter = RowFilterSQL;
|
||
}
|
||
//排序:
|
||
dtPOSTDETAIL.DefaultView.Sort = searchModel.SortStr;
|
||
dtPOSTDETAIL = dtPOSTDETAIL.DefaultView.ToTable();
|
||
//获取查询结果总记录条数
|
||
TotalCount = dtPOSTDETAIL.Rows.Count;
|
||
//根据传入的页码和每页显示条数返回结果
|
||
dtPOSTDETAIL = CommonHelper.GetDataTableWithPageSize(dtPOSTDETAIL, searchModel.PageSize, searchModel.PageIndex);
|
||
|
||
foreach (DataRow drPOSTDETAIL in dtPOSTDETAIL.Rows)
|
||
{
|
||
Model.POSTDETAILModel postdetailModel = new Model.POSTDETAILModel();
|
||
//绑定帖子评论点赞表数据对象
|
||
BindDataRowToModel(drPOSTDETAIL, postdetailModel);
|
||
|
||
POSTDETAILList.Add(postdetailModel);
|
||
}
|
||
|
||
return POSTDETAILList;
|
||
}
|
||
|
||
#region 绑定model
|
||
/// <summary>
|
||
/// 绑定model
|
||
/// </summary>
|
||
/// <param name="drPOSTDETAIL">datarow数据源</param>
|
||
/// <param name="postdetailModel">model对象</param>
|
||
public static void BindDataRowToModel(DataRow drPOSTDETAIL, Model.POSTDETAILModel postdetailModel)
|
||
{
|
||
if (drPOSTDETAIL["POSTDETAIL_ID"].ToString() != "")
|
||
{
|
||
postdetailModel.POSTDETAIL_ID = drPOSTDETAIL["POSTDETAIL_ID"].TryParseToInt(); //内码
|
||
}
|
||
if (drPOSTDETAIL["POST_ID"].ToString() != "")
|
||
{
|
||
postdetailModel.POST_ID = drPOSTDETAIL["POST_ID"].TryParseToInt(); //帖子内码
|
||
}
|
||
if (drPOSTDETAIL["POSTDETAIL_PID"].ToString() != "")
|
||
{
|
||
postdetailModel.POSTDETAIL_PID = drPOSTDETAIL["POSTDETAIL_PID"].TryParseToInt(); //评论内码
|
||
}
|
||
if (drPOSTDETAIL["MEMBERSHIP_ID"].ToString() != "")
|
||
{
|
||
postdetailModel.MEMBERSHIP_ID = drPOSTDETAIL["MEMBERSHIP_ID"].TryParseToInt(); //会员内码
|
||
}
|
||
if (drPOSTDETAIL["POSTDETAIL_TYPE"].ToString() != "")
|
||
{
|
||
postdetailModel.POSTDETAIL_TYPE = drPOSTDETAIL["POSTDETAIL_TYPE"].TryParseToInt(); //用户行为(1000:浏览;2000:点赞;3000:评论)
|
||
}
|
||
postdetailModel.POSTDETAIL_CONTENT = drPOSTDETAIL["POSTDETAIL_CONTENT"].ToString(); //评论内容
|
||
postdetailModel.NICK_NAME = drPOSTDETAIL["NICK_NAME"].ToString(); //用户昵称
|
||
if (drPOSTDETAIL["STAFF_ID"].ToString() != "")
|
||
{
|
||
postdetailModel.STAFF_ID = drPOSTDETAIL["STAFF_ID"].TryParseToInt(); //操作人内码
|
||
}
|
||
postdetailModel.STAFF_NAME = drPOSTDETAIL["STAFF_NAME"].ToString(); //操作人员
|
||
if (!string.IsNullOrWhiteSpace(drPOSTDETAIL["OPERATE_DATE"].ToString()))
|
||
{
|
||
//评论时间
|
||
postdetailModel.OPERATE_DATE = drPOSTDETAIL["OPERATE_DATE"].ToString();
|
||
}
|
||
postdetailModel.POSTDETAIL_DESC = drPOSTDETAIL["POSTDETAIL_DESC"].ToString(); //备注说明
|
||
}
|
||
#endregion
|
||
|
||
#endregion
|
||
|
||
#region 获取帖子评论点赞表明细
|
||
/// <summary>
|
||
/// 获取帖子评论点赞表明细
|
||
/// </summary>
|
||
/// <param name="transaction">事务管理器</param>
|
||
/// <param name="POSTDETAILId">帖子评论点赞表内码</param>
|
||
public static Model.POSTDETAILModel GetPOSTDETAILDetail(Transaction transaction, int POSTDETAILId)
|
||
{
|
||
Model.POSTDETAILModel postdetailModel = new Model.POSTDETAILModel();
|
||
|
||
string WhereSQL = "WHERE POSTDETAIL_ID = " + POSTDETAILId;
|
||
//查询明细数据
|
||
DataTable dtPOSTDETAIL = new Business.OWNERUNIT(transaction).ExecuteDataTable(
|
||
"SELECT * FROM COOP_MERCHANT.T_POSTDETAIL " + WhereSQL);
|
||
if (dtPOSTDETAIL.Rows.Count > 0)
|
||
{
|
||
//绑定帖子评论点赞表数据对象
|
||
BindDataRowToModel(dtPOSTDETAIL.Rows[0], postdetailModel);
|
||
}
|
||
|
||
return postdetailModel;
|
||
}
|
||
#endregion
|
||
|
||
#region 同步帖子评论点赞表
|
||
/// <summary>
|
||
/// 赋值帖子评论点赞表数据对象
|
||
/// </summary>
|
||
/// <param name="transaction">事务管理器</param>
|
||
/// <param name="postdetailModel">帖子评论点赞表数据对象</param>
|
||
public static bool SynchroPOSTDETAIL(Transaction transaction, Model.POSTDETAILModel postdetailModel)
|
||
{
|
||
bool SynchroFlag = true;
|
||
|
||
string SQLString;
|
||
List<string> excludeField = new List<string>();
|
||
Dictionary<string, string> dateFieldList = new Dictionary<string, string>();
|
||
string tableName = "COOP_MERCHANT.T_POSTDETAIL", keyField = "POSTDETAIL_ID", seqName = "SEQ_POSTDETAIL";
|
||
Business.OWNERUNIT _OWNERUNIT = new Business.OWNERUNIT(transaction);
|
||
|
||
#region 添加SQL语句中需要排除在外的字段
|
||
excludeField.Add("POSTDETAIL_IDS");
|
||
excludeField.Add("POSTDETAIL_PIDS");
|
||
excludeField.Add("OPERATE_DATE_Start");
|
||
excludeField.Add("OPERATE_DATE_End");
|
||
#endregion
|
||
|
||
#region 添加SQL语句中日期相关字段的执行语句
|
||
//评论时间
|
||
if (!string.IsNullOrWhiteSpace(postdetailModel.OPERATE_DATE))
|
||
{
|
||
dateFieldList.Add("OPERATE_DATE", "TO_DATE('" +
|
||
postdetailModel.OPERATE_DATE + "','YYYY/MM/DD HH24:MI:SS')");
|
||
}
|
||
else
|
||
{
|
||
dateFieldList.Add("OPERATE_DATE", "NULL");
|
||
}
|
||
#endregion
|
||
|
||
if (postdetailModel.POSTDETAIL_ID != null)
|
||
{
|
||
string WhereSQL = " WHERE POSTDETAIL_ID = " + postdetailModel.POSTDETAIL_ID;
|
||
DataTable dtPOSTDETAIL = _OWNERUNIT.ExecuteDataTable(
|
||
"SELECT * FROM COOP_MERCHANT.T_POSTDETAIL" + WhereSQL);
|
||
if (dtPOSTDETAIL.Rows.Count > 0)
|
||
{
|
||
SQLString = OperationDataHelper<Model.POSTDETAILModel>.GetTableExcuteSQL(
|
||
postdetailModel, 1, tableName, keyField, seqName, dateFieldList, excludeField, WhereSQL);
|
||
}
|
||
else
|
||
{
|
||
return false;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
DataTable dtPOSTDETAIL = _OWNERUNIT.ExecuteDataTable(
|
||
"SELECT " + seqName + ".NEXTVAL FROM DUAL");
|
||
postdetailModel.POSTDETAIL_ID = dtPOSTDETAIL.Rows[0][0].TryParseToInt();
|
||
SQLString = OperationDataHelper<Model.POSTDETAILModel>.GetTableExcuteSQL(
|
||
postdetailModel, 0, tableName, keyField, seqName, dateFieldList, excludeField);
|
||
}
|
||
_OWNERUNIT.ExecuteNonQuery(SQLString, null);
|
||
|
||
return SynchroFlag;
|
||
}
|
||
#endregion
|
||
|
||
#region 删除帖子评论点赞表
|
||
/// <summary>
|
||
/// 删除帖子评论点赞表
|
||
/// </summary>
|
||
/// <param name="transaction">事务管理器</param>
|
||
/// <param name="POSTDETAILId">帖子评论点赞表内码</param>
|
||
public static bool DeletePOSTDETAIL(Transaction transaction, int? POSTDETAILId)
|
||
{
|
||
bool DeleteFlag = false;
|
||
|
||
if (POSTDETAILId != null)
|
||
{
|
||
}
|
||
|
||
return DeleteFlag;
|
||
}
|
||
#endregion
|
||
|
||
#region 获取帖子评论点赞表嵌套列表
|
||
/// <summary>
|
||
/// 获取帖子评论点赞表嵌套列表
|
||
/// </summary>
|
||
/// <param name="transaction">事务管理器</param>
|
||
/// <param name="POSTDETAIL_PIDS">评论内码</param>
|
||
/// <param name="SearchKey">模糊查询</param>
|
||
/// <returns></returns>
|
||
public static List<Model.NestingModel<Model.POSTDETAILModel>> GetNestingPOSTDETAILList(Transaction transaction,
|
||
string POSTDETAIL_PIDS, string SearchKey)
|
||
{
|
||
//申明嵌套列表集合
|
||
List<Model.NestingModel<Model.POSTDETAILModel>> nestingModelList = new List<Model.NestingModel<Model.POSTDETAILModel>>();
|
||
//赋值sql语句
|
||
string WhereSQL = "";
|
||
|
||
//查询帖子评论点赞表数据
|
||
DataTable dtPOSTDETAIL = new Business.OWNERUNIT(transaction).FillDataTable(WhereSQL);
|
||
if (POSTDETAIL_PID == "-1")
|
||
{
|
||
//调用绑定数据的方法
|
||
BindNestingList(nestingModelList, "-1", dtPOSTDETAIL, SearchKey);
|
||
}
|
||
else
|
||
{
|
||
Model.POSTDETAILModel postdetailModel = GetPOSTDETAILDetail(transaction, POSTDETAIL_PID.TryParseToInt());
|
||
if (postdetailModel != null && postdetailModel.POSTDETAIL_ID != null)
|
||
{
|
||
//申明嵌套对象
|
||
Model.NestingModel<Model.POSTDETAILModel> nestingModel = new Model.NestingModel<Model.POSTDETAILModel>();
|
||
|
||
//将帖子评论点赞表model添加到嵌套对象中去
|
||
nestingModel.node = postdetailModel;
|
||
List<Model.NestingModel<Model.POSTDETAILModel>> nestingModelListChild = new List<Model.NestingModel<Model.POSTDETAILModel>>();
|
||
//调用绑定嵌套列表的方法
|
||
BindNestingList(nestingModelListChild, postdetailModel.POSTDETAIL_ID.ToString(), dtPOSTDETAIL, SearchKey);
|
||
//赋值子级
|
||
nestingModel.children = nestingModelListChild;
|
||
//过滤模糊查询条件
|
||
if (nestingModelListChild.Count > 0 || string.IsNullOrWhiteSpace(SearchKey))
|
||
{
|
||
nestingModelList.Add(nestingModel);
|
||
}
|
||
}
|
||
}
|
||
dtPOSTDETAIL.Clear();
|
||
dtPOSTDETAIL.Dispose();
|
||
|
||
return nestingModelList;
|
||
}
|
||
|
||
#region 绑定嵌套列表
|
||
/// <summary>
|
||
/// 绑定嵌套列表
|
||
/// </summary>
|
||
/// <param name="POSTDETAIL_PID">上级分类</param>
|
||
/// <param name="nestingModelList">嵌套列表</param>
|
||
/// <param name="dtPOSTDETAIL">帖子评论点赞表数据</param>
|
||
/// <param name="SearchKey">模糊查询内容</param>
|
||
public static void BindNestingList(List<Model.NestingModel<Model.POSTDETAILModel>> nestingModelList,
|
||
string POSTDETAIL_PID, DataTable dtPOSTDETAIL, string SearchKey)
|
||
{
|
||
//遍历数据
|
||
foreach (DataRow drPOSTDETAIL in dtPOSTDETAIL.Select("POSTDETAIL_PID = " +
|
||
POSTDETAIL_PID, "POSTDETAIL_ID,POSTDETAIL_PID"))
|
||
{
|
||
//申明嵌套对象
|
||
Model.NestingModel<Model.POSTDETAILModel> nestingModelChild = new Model.NestingModel<Model.POSTDETAILModel>();
|
||
//申明帖子评论点赞表对象
|
||
Model.POSTDETAILModel postdetailModel = new Model.POSTDETAILModel();
|
||
//赋值帖子评论点赞表数据对象
|
||
BindDataRowToModel(drPOSTDETAIL, postdetailModel);
|
||
nestingModelChild.node = postdetailModel;
|
||
|
||
List<Model.NestingModel<Model.POSTDETAILModel>> nestingModelListChild = new List<Model.NestingModel<Model.POSTDETAILModel>>();
|
||
//判断下一关系级下面是否还存在数据,没有则跳出遍历
|
||
if (dtPOSTDETAIL.Select("POSTDETAIL_PID = " + postdetailModel.POSTDETAIL_ID).Length > 0)
|
||
{
|
||
//调用绑定嵌套列表的方法
|
||
BindNestingList(nestingModelListChild, postdetailModel.POSTDETAIL_ID.ToString(), dtPOSTDETAIL, SearchKey);
|
||
//赋值子级
|
||
nestingModelChild.children = nestingModelListChild;
|
||
}
|
||
//过滤模糊查询条件
|
||
if (nestingModelListChild.Count > 0 || string.IsNullOrWhiteSpace(SearchKey))
|
||
{
|
||
nestingModelList.Add(nestingModelChild);
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
#endregion
|
||
|
||
#region 获取帖子评论点赞表嵌套树
|
||
/// <summary>
|
||
/// 获取帖子评论点赞表嵌套树
|
||
/// </summary>
|
||
/// <param name="transaction">事务管理器</param>
|
||
/// <param name="POSTDETAIL_PIDS">评论内码</param>
|
||
/// <param name="SearchKey">模糊查询</param>
|
||
/// <returns></returns>
|
||
public static List<Model.NestingModel<Model.CommonTypeModel>> GetNestingPOSTDETAILTree(Transaction transaction,
|
||
string POSTDETAIL_PIDS, string SearchKey)
|
||
{
|
||
//申明嵌套树集合
|
||
List<Model.NestingModel<Model.CommonTypeModel>> nestingModelList = new List<Model.NestingModel<Model.CommonTypeModel>>();
|
||
//赋值sql语句
|
||
string WhereSQL = "";
|
||
|
||
//查询帖子评论点赞表数据
|
||
DataTable dtPOSTDETAIL = new Business.OWNERUNIT(transaction).FillDataTable(WhereSQL);
|
||
if (POSTDETAIL_PID == "-1")
|
||
{
|
||
//调用绑定数据的方法
|
||
BindNestingTree(nestingModelList, "-1", dtPOSTDETAIL, SearchKey);
|
||
}
|
||
else
|
||
{
|
||
Model.POSTDETAILModel postdetailModel = GetPOSTDETAILDetail(transaction, POSTDETAIL_PID.TryParseToInt());
|
||
if (postdetailModel != null && postdetailModel.POSTDETAIL_ID != null)
|
||
{
|
||
//申明嵌套对象
|
||
Model.NestingModel<Model.CommonTypeModel> nestingModel = new Model.NestingModel<Model.CommonTypeModel>();
|
||
//申明帖子评论点赞表对象
|
||
Model.CommonTypeModel commonTypeModel = new Model.CommonTypeModel
|
||
{
|
||
//将帖子评论点赞表赋值给CommonTypeModel
|
||
//绑定评论内容
|
||
label = postdetailModel.POSTDETAIL_CONTENT,
|
||
//绑定内码
|
||
value = postdetailModel.POSTDETAIL_ID.TryParseToInt(),
|
||
type = 1,//标识为子级节点
|
||
};
|
||
commonTypeModel.key = commonTypeModel.type + "-" + commonTypeModel.value;
|
||
//将commonTypeModel添加到嵌套对象中去
|
||
nestingModel.node = commonTypeModel;
|
||
List<Model.NestingModel<Model.CommonTypeModel>> nestingModelListChild = new List<Model.NestingModel<Model.CommonTypeModel>>();
|
||
//调用绑定数据的方法
|
||
BindNestingTree(nestingModelListChild, postdetailModel.POSTDETAIL_ID.ToString(), dtPOSTDETAIL, SearchKey);
|
||
//赋值子级
|
||
nestingModel.children = nestingModelListChild;
|
||
//过滤模糊查询条件
|
||
if (nestingModelListChild.Count > 0 || string.IsNullOrWhiteSpace(SearchKey))
|
||
{
|
||
nestingModelList.Add(nestingModel);
|
||
}
|
||
}
|
||
}
|
||
dtPOSTDETAIL.Clear();
|
||
dtPOSTDETAIL.Dispose();
|
||
|
||
return nestingModelList;
|
||
}
|
||
|
||
#region 绑定嵌套树
|
||
/// <summary>
|
||
/// 绑定嵌套树
|
||
/// </summary>
|
||
/// <param name="POSTDETAIL_PID">上级分类</param>
|
||
/// <param name="nestingModelList">嵌套列表</param>
|
||
/// <param name="dtPOSTDETAIL">帖子评论点赞表数据</param>
|
||
/// <param name="SearchKey">模糊查询内容</param>
|
||
public static void BindNestingTree(List<Model.NestingModel<Model.CommonTypeModel>> nestingModelList,
|
||
string POSTDETAIL_PID, DataTable dtPOSTDETAIL, string SearchKey)
|
||
{
|
||
//遍历数据
|
||
foreach (DataRow drPOSTDETAIL in dtPOSTDETAIL.Select("POSTDETAIL_PID = " +
|
||
POSTDETAIL_PID, "POSTDETAIL_ID,POSTDETAIL_PID"))
|
||
{
|
||
//申明嵌套对象
|
||
Model.NestingModel<Model.CommonTypeModel> nestingModelChild = new Model.NestingModel<Model.CommonTypeModel>();
|
||
//申明帖子评论点赞表对象
|
||
Model.CommonTypeModel commonTypeModel = new Model.CommonTypeModel();
|
||
//将帖子评论点赞表赋值给CommonTypeModel
|
||
//绑定评论内容
|
||
commonTypeModel.label = drPOSTDETAIL["POSTDETAIL_CONTENT"].ToString();
|
||
//绑定内码
|
||
commonTypeModel.value = drPOSTDETAIL["POSTDETAIL_ID"].TryParseToInt();
|
||
commonTypeModel.type = 1;//标识为子级节点
|
||
commonTypeModel.key = commonTypeModel.type + "-" + commonTypeModel.value;
|
||
nestingModelChild.node = commonTypeModel;
|
||
|
||
List<Model.NestingModel<Model.CommonTypeModel>> nestingModelListChild = new List<Model.NestingModel<Model.CommonTypeModel>>();
|
||
//判断下一关系级下面是否还存在数据,没有则跳出遍历
|
||
if (dtPOSTDETAIL.Select("POSTDETAIL_PID = " + drPOSTDETAIL["POSTDETAIL_ID"]).Length > 0)
|
||
{
|
||
//调用绑定嵌套列表的方法
|
||
BindNestingTree(nestingModelListChild, drPOSTDETAIL["POSTDETAIL_ID"].ToString(), dtPOSTDETAIL, SearchKey);
|
||
//赋值子级
|
||
nestingModelChild.children = nestingModelListChild;
|
||
}
|
||
//过滤模糊查询条件
|
||
if (nestingModelListChild.Count > 0 || string.IsNullOrWhiteSpace(SearchKey))
|
||
{
|
||
nestingModelList.Add(nestingModelChild);
|
||
}
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
#endregion
|
||
}
|
||
}
|