276 lines
18 KiB
C#
276 lines
18 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using SuperMap.RealEstate.ServiceModel;
|
|
using Business = SuperMap.RealEstate.ReportDataAnalysis.Business;
|
|
using HZQR.Common;
|
|
|
|
namespace GSYWApi.GeneralMethod
|
|
{
|
|
/// <summary>
|
|
/// 相关方法
|
|
/// </summary>
|
|
public class COMMODITYSALEHelper
|
|
{
|
|
#region 获取列表
|
|
/// <summary>
|
|
/// 获取列表
|
|
/// </summary>
|
|
/// <param name="transaction">事务管理器</param>
|
|
/// <param name="TotalCount">查询结果总数</param>
|
|
/// <param name="searchModel">查询条件对象</param>
|
|
public static List<Model.COMMODITYSALEModel> GetCOMMODITYSALEList(Transaction transaction,
|
|
ref int TotalCount, Model.SearchModel<Model.COMMODITYSALEModel> searchModel)
|
|
{
|
|
List<Model.COMMODITYSALEModel> COMMODITYSALEList = new List<Model.COMMODITYSALEModel>();
|
|
|
|
string WhereSQL = "", RowFilterSQL = "";
|
|
if (searchModel.SearchParameter != null)
|
|
{
|
|
WhereSQL = OperationDataHelper<Model.COMMODITYSALEModel>.GetWhereSQL(searchModel.SearchParameter, searchModel.QueryType);
|
|
if (WhereSQL != "")
|
|
{
|
|
WhereSQL = "WHERE " + WhereSQL;
|
|
}
|
|
}
|
|
|
|
DataTable dtCOMMODITYSALE = new Business.COMMODITYSALE(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 != "")
|
|
{
|
|
dtCOMMODITYSALE.DefaultView.RowFilter = RowFilterSQL;
|
|
}
|
|
//排序:
|
|
dtCOMMODITYSALE.DefaultView.Sort = searchModel.SortStr;
|
|
dtCOMMODITYSALE = dtCOMMODITYSALE.DefaultView.ToTable();
|
|
//获取查询结果总记录条数
|
|
TotalCount = dtCOMMODITYSALE.Rows.Count;
|
|
//根据传入的页码和每页显示条数返回结果
|
|
dtCOMMODITYSALE = CommonHelper.GetDataTableWithPageSize(dtCOMMODITYSALE, searchModel.PageSize, searchModel.PageIndex);
|
|
|
|
foreach (DataRow drCOMMODITYSALE in dtCOMMODITYSALE.Rows)
|
|
{
|
|
Model.COMMODITYSALEModel commoditysaleModel = new Model.COMMODITYSALEModel();
|
|
|
|
commoditysaleModel.COMMODITYSALE_ID = drCOMMODITYSALE["COMMODITYSALE_ID"].TryParseToInt(); //COMMODITYSALE_ID
|
|
commoditysaleModel.STARTDATE = drCOMMODITYSALE["STARTDATE"].TryParseToDateTime(); //STARTDATE
|
|
commoditysaleModel.ENDDATE = drCOMMODITYSALE["ENDDATE"].TryParseToDateTime(); //ENDDATE
|
|
commoditysaleModel.SERVERPARTCODE = drCOMMODITYSALE["SERVERPARTCODE"].ToString(); //SERVERPARTCODE
|
|
commoditysaleModel.SHOPCODE = drCOMMODITYSALE["SHOPCODE"].ToString(); //SHOPCODE
|
|
commoditysaleModel.MACHINECODE = drCOMMODITYSALE["MACHINECODE"].ToString(); //MACHINECODE
|
|
commoditysaleModel.COMMODITY_TYPE = drCOMMODITYSALE["COMMODITY_TYPE"].ToString(); //COMMODITY_TYPE
|
|
commoditysaleModel.COMMODITY_CODE = drCOMMODITYSALE["COMMODITY_CODE"].ToString(); //COMMODITY_CODE
|
|
commoditysaleModel.COMMODITY_NAME = drCOMMODITYSALE["COMMODITY_NAME"].ToString(); //COMMODITY_NAME
|
|
commoditysaleModel.TICKETCOUNT = drCOMMODITYSALE["TICKETCOUNT"].TryParseToLong(); //TICKETCOUNT
|
|
commoditysaleModel.TOTALCOUNT = drCOMMODITYSALE["TOTALCOUNT"].TryParseToDouble(); //TOTALCOUNT
|
|
commoditysaleModel.TOTALSELLAMOUNT = drCOMMODITYSALE["TOTALSELLAMOUNT"].TryParseToDouble(); //TOTALSELLAMOUNT
|
|
commoditysaleModel.TOTALOFFAMOUNT = drCOMMODITYSALE["TOTALOFFAMOUNT"].TryParseToDouble(); //TOTALOFFAMOUNT
|
|
commoditysaleModel.FLAG = (short)drCOMMODITYSALE["FLAG"].TryParseToInt(); //FLAG
|
|
commoditysaleModel.RESERVE_FIRSTNUM = drCOMMODITYSALE["RESERVE_FIRSTNUM"].TryParseToDouble(); //RESERVE_FIRSTNUM
|
|
commoditysaleModel.RESERVE_SECONDNUM = drCOMMODITYSALE["RESERVE_SECONDNUM"].TryParseToDouble(); //RESERVE_SECONDNUM
|
|
commoditysaleModel.RESERVE_THIRDNUM = drCOMMODITYSALE["RESERVE_THIRDNUM"].TryParseToDouble(); //RESERVE_THIRDNUM
|
|
commoditysaleModel.RESERVE_FIRSTCHAR = drCOMMODITYSALE["RESERVE_FIRSTCHAR"].ToString(); //RESERVE_FIRSTCHAR
|
|
commoditysaleModel.RESERVE_SECONDCHAR = drCOMMODITYSALE["RESERVE_SECONDCHAR"].ToString(); //RESERVE_SECONDCHAR
|
|
commoditysaleModel.RESERVE_THIRDCHAR = drCOMMODITYSALE["RESERVE_THIRDCHAR"].ToString(); //RESERVE_THIRDCHAR
|
|
commoditysaleModel.RESERVE_FIRSTDATE = drCOMMODITYSALE["RESERVE_FIRSTDATE"].TryParseToDouble(); //RESERVE_FIRSTDATE
|
|
commoditysaleModel.RESERVE_SECONDDATE = drCOMMODITYSALE["RESERVE_SECONDDATE"].TryParseToDouble(); //RESERVE_SECONDDATE
|
|
commoditysaleModel.RESERVE_THIRDDATE = drCOMMODITYSALE["RESERVE_THIRDDATE"].TryParseToDouble(); //RESERVE_THIRDDATE
|
|
commoditysaleModel.TRANSFER_STATE = (short)drCOMMODITYSALE["TRANSFER_STATE"].TryParseToInt(); //TRANSFER_STATE
|
|
commoditysaleModel.TRANSFER_ID = drCOMMODITYSALE["TRANSFER_ID"].TryParseToInt(); //TRANSFER_ID
|
|
commoditysaleModel.MERGE_STATE = (short)drCOMMODITYSALE["MERGE_STATE"].TryParseToInt(); //MERGE_STATE
|
|
commoditysaleModel.SERVERPART_ID = drCOMMODITYSALE["SERVERPART_ID"].TryParseToInt(); //SERVERPART_ID
|
|
commoditysaleModel.SERVERPARTSHOP_ID = drCOMMODITYSALE["SERVERPARTSHOP_ID"].TryParseToInt(); //SERVERPARTSHOP_ID
|
|
commoditysaleModel.COMMODITYTYPE_ID = drCOMMODITYSALE["COMMODITYTYPE_ID"].TryParseToInt(); //COMMODITYTYPE_ID
|
|
commoditysaleModel.COMMODITYTYPE_NAME = drCOMMODITYSALE["COMMODITYTYPE_NAME"].ToString(); //COMMODITYTYPE_NAME
|
|
commoditysaleModel.COMMODITYTYPE_CODE = drCOMMODITYSALE["COMMODITYTYPE_CODE"].ToString(); //COMMODITYTYPE_CODE
|
|
commoditysaleModel.COMMODITY_ID = drCOMMODITYSALE["COMMODITY_ID"].TryParseToInt(); //COMMODITY_ID
|
|
commoditysaleModel.COMMODITY_RULE = drCOMMODITYSALE["COMMODITY_RULE"].ToString(); //COMMODITY_RULE
|
|
commoditysaleModel.COMMODITY_UNIT = drCOMMODITYSALE["COMMODITY_UNIT"].ToString(); //COMMODITY_UNIT
|
|
commoditysaleModel.COMMODITY_BARCODE = drCOMMODITYSALE["COMMODITY_BARCODE"].ToString(); //COMMODITY_BARCODE
|
|
commoditysaleModel.COMMODITY_PURCHASEPRICE = drCOMMODITYSALE["COMMODITY_PURCHASEPRICE"].TryParseToDouble(); //COMMODITY_PURCHASEPRICE
|
|
commoditysaleModel.COMMODITY_CURRPRICE = drCOMMODITYSALE["COMMODITY_CURRPRICE"].TryParseToDouble(); //COMMODITY_CURRPRICE
|
|
commoditysaleModel.BUSINESSTYPE = drCOMMODITYSALE["BUSINESSTYPE"].TryParseToInt(); //BUSINESSTYPE
|
|
|
|
COMMODITYSALEList.Add(commoditysaleModel);
|
|
}
|
|
|
|
return COMMODITYSALEList;
|
|
}
|
|
#endregion
|
|
|
|
#region 获取明细
|
|
/// <summary>
|
|
/// 获取明细
|
|
/// </summary>
|
|
/// <param name="transaction">事务管理器</param>
|
|
/// <param name="COMMODITYSALEId">内码</param>
|
|
public static Model.COMMODITYSALEModel GetCOMMODITYSALEDetail(Transaction transaction, int COMMODITYSALEId)
|
|
{
|
|
Model.COMMODITYSALEModel commoditysaleModel = new Model.COMMODITYSALEModel();
|
|
|
|
Business.COMMODITYSALE _COMMODITYSALE = new Business.COMMODITYSALE(transaction);
|
|
_COMMODITYSALE.COMMODITYSALE_ID = COMMODITYSALEId;
|
|
if (_COMMODITYSALE.Select())
|
|
{
|
|
commoditysaleModel.COMMODITYSALE_ID = _COMMODITYSALE.COMMODITYSALE_ID; //COMMODITYSALE_ID
|
|
commoditysaleModel.STARTDATE = _COMMODITYSALE.STARTDATE; //STARTDATE
|
|
commoditysaleModel.ENDDATE = _COMMODITYSALE.ENDDATE; //ENDDATE
|
|
commoditysaleModel.SERVERPARTCODE = _COMMODITYSALE.SERVERPARTCODE; //SERVERPARTCODE
|
|
commoditysaleModel.SHOPCODE = _COMMODITYSALE.SHOPCODE; //SHOPCODE
|
|
commoditysaleModel.MACHINECODE = _COMMODITYSALE.MACHINECODE; //MACHINECODE
|
|
commoditysaleModel.COMMODITY_TYPE = _COMMODITYSALE.COMMODITY_TYPE; //COMMODITY_TYPE
|
|
commoditysaleModel.COMMODITY_CODE = _COMMODITYSALE.COMMODITY_CODE; //COMMODITY_CODE
|
|
commoditysaleModel.COMMODITY_NAME = _COMMODITYSALE.COMMODITY_NAME; //COMMODITY_NAME
|
|
commoditysaleModel.TICKETCOUNT = _COMMODITYSALE.TICKETCOUNT; //TICKETCOUNT
|
|
commoditysaleModel.TOTALCOUNT = _COMMODITYSALE.TOTALCOUNT; //TOTALCOUNT
|
|
commoditysaleModel.TOTALSELLAMOUNT = _COMMODITYSALE.TOTALSELLAMOUNT; //TOTALSELLAMOUNT
|
|
commoditysaleModel.TOTALOFFAMOUNT = _COMMODITYSALE.TOTALOFFAMOUNT; //TOTALOFFAMOUNT
|
|
commoditysaleModel.FLAG = _COMMODITYSALE.FLAG; //FLAG
|
|
commoditysaleModel.RESERVE_FIRSTNUM = _COMMODITYSALE.RESERVE_FIRSTNUM; //RESERVE_FIRSTNUM
|
|
commoditysaleModel.RESERVE_SECONDNUM = _COMMODITYSALE.RESERVE_SECONDNUM; //RESERVE_SECONDNUM
|
|
commoditysaleModel.RESERVE_THIRDNUM = _COMMODITYSALE.RESERVE_THIRDNUM; //RESERVE_THIRDNUM
|
|
commoditysaleModel.RESERVE_FIRSTCHAR = _COMMODITYSALE.RESERVE_FIRSTCHAR; //RESERVE_FIRSTCHAR
|
|
commoditysaleModel.RESERVE_SECONDCHAR = _COMMODITYSALE.RESERVE_SECONDCHAR; //RESERVE_SECONDCHAR
|
|
commoditysaleModel.RESERVE_THIRDCHAR = _COMMODITYSALE.RESERVE_THIRDCHAR; //RESERVE_THIRDCHAR
|
|
commoditysaleModel.RESERVE_FIRSTDATE = _COMMODITYSALE.RESERVE_FIRSTDATE; //RESERVE_FIRSTDATE
|
|
commoditysaleModel.RESERVE_SECONDDATE = _COMMODITYSALE.RESERVE_SECONDDATE; //RESERVE_SECONDDATE
|
|
commoditysaleModel.RESERVE_THIRDDATE = _COMMODITYSALE.RESERVE_THIRDDATE; //RESERVE_THIRDDATE
|
|
commoditysaleModel.TRANSFER_STATE = _COMMODITYSALE.TRANSFER_STATE; //TRANSFER_STATE
|
|
commoditysaleModel.TRANSFER_ID = _COMMODITYSALE.TRANSFER_ID; //TRANSFER_ID
|
|
commoditysaleModel.MERGE_STATE = _COMMODITYSALE.MERGE_STATE; //MERGE_STATE
|
|
commoditysaleModel.SERVERPART_ID = _COMMODITYSALE.SERVERPART_ID; //SERVERPART_ID
|
|
commoditysaleModel.SERVERPARTSHOP_ID = _COMMODITYSALE.SERVERPARTSHOP_ID; //SERVERPARTSHOP_ID
|
|
commoditysaleModel.COMMODITYTYPE_ID = _COMMODITYSALE.COMMODITYTYPE_ID; //COMMODITYTYPE_ID
|
|
commoditysaleModel.COMMODITYTYPE_NAME = _COMMODITYSALE.COMMODITYTYPE_NAME; //COMMODITYTYPE_NAME
|
|
commoditysaleModel.COMMODITYTYPE_CODE = _COMMODITYSALE.COMMODITYTYPE_CODE; //COMMODITYTYPE_CODE
|
|
commoditysaleModel.COMMODITY_ID = _COMMODITYSALE.COMMODITY_ID; //COMMODITY_ID
|
|
commoditysaleModel.COMMODITY_RULE = _COMMODITYSALE.COMMODITY_RULE; //COMMODITY_RULE
|
|
commoditysaleModel.COMMODITY_UNIT = _COMMODITYSALE.COMMODITY_UNIT; //COMMODITY_UNIT
|
|
commoditysaleModel.COMMODITY_BARCODE = _COMMODITYSALE.COMMODITY_BARCODE; //COMMODITY_BARCODE
|
|
commoditysaleModel.COMMODITY_PURCHASEPRICE = _COMMODITYSALE.COMMODITY_PURCHASEPRICE; //COMMODITY_PURCHASEPRICE
|
|
commoditysaleModel.COMMODITY_CURRPRICE = _COMMODITYSALE.COMMODITY_CURRPRICE; //COMMODITY_CURRPRICE
|
|
commoditysaleModel.BUSINESSTYPE = _COMMODITYSALE.BUSINESSTYPE; //BUSINESSTYPE
|
|
}
|
|
|
|
return commoditysaleModel;
|
|
}
|
|
#endregion
|
|
|
|
#region 同步
|
|
/// <summary>
|
|
/// 赋值数据对象
|
|
/// </summary>
|
|
/// <param name="transaction">事务管理器</param>
|
|
/// <param name="commoditysaleModel">数据对象</param>
|
|
public static bool SynchroCOMMODITYSALE(Transaction transaction, Model.COMMODITYSALEModel commoditysaleModel)
|
|
{
|
|
bool SynchroFlag = true;
|
|
|
|
Business.COMMODITYSALE _COMMODITYSALE = new Business.COMMODITYSALE(transaction);
|
|
if (commoditysaleModel.COMMODITYSALE_ID != null)
|
|
{
|
|
_COMMODITYSALE.COMMODITYSALE_ID = commoditysaleModel.COMMODITYSALE_ID;
|
|
if (_COMMODITYSALE.Select())
|
|
{
|
|
SynchroModelToObject(_COMMODITYSALE, commoditysaleModel);
|
|
_COMMODITYSALE.Update();
|
|
}
|
|
else
|
|
{
|
|
SynchroFlag = false;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
SynchroModelToObject(_COMMODITYSALE, commoditysaleModel);
|
|
_COMMODITYSALE.Insert();
|
|
}
|
|
|
|
return SynchroFlag;
|
|
}
|
|
|
|
#region 赋值数据对象
|
|
/// <summary>
|
|
/// 赋值数据对象
|
|
/// </summary>
|
|
/// <param name="_COMMODITYSALE"></param>
|
|
/// <param name="commoditysaleModel"></param>
|
|
public static void SynchroModelToObject(Business.COMMODITYSALE _COMMODITYSALE, Model.COMMODITYSALEModel commoditysaleModel)
|
|
{
|
|
_COMMODITYSALE.STARTDATE = commoditysaleModel.STARTDATE; //STARTDATE
|
|
_COMMODITYSALE.ENDDATE = commoditysaleModel.ENDDATE; //ENDDATE
|
|
_COMMODITYSALE.SERVERPARTCODE = commoditysaleModel.SERVERPARTCODE; //SERVERPARTCODE
|
|
_COMMODITYSALE.SHOPCODE = commoditysaleModel.SHOPCODE; //SHOPCODE
|
|
_COMMODITYSALE.MACHINECODE = commoditysaleModel.MACHINECODE; //MACHINECODE
|
|
_COMMODITYSALE.COMMODITY_TYPE = commoditysaleModel.COMMODITY_TYPE; //COMMODITY_TYPE
|
|
_COMMODITYSALE.COMMODITY_CODE = commoditysaleModel.COMMODITY_CODE; //COMMODITY_CODE
|
|
_COMMODITYSALE.COMMODITY_NAME = commoditysaleModel.COMMODITY_NAME; //COMMODITY_NAME
|
|
_COMMODITYSALE.TICKETCOUNT = commoditysaleModel.TICKETCOUNT; //TICKETCOUNT
|
|
_COMMODITYSALE.TOTALCOUNT = commoditysaleModel.TOTALCOUNT; //TOTALCOUNT
|
|
_COMMODITYSALE.TOTALSELLAMOUNT = commoditysaleModel.TOTALSELLAMOUNT; //TOTALSELLAMOUNT
|
|
_COMMODITYSALE.TOTALOFFAMOUNT = commoditysaleModel.TOTALOFFAMOUNT; //TOTALOFFAMOUNT
|
|
_COMMODITYSALE.FLAG = commoditysaleModel.FLAG; //FLAG
|
|
_COMMODITYSALE.RESERVE_FIRSTNUM = commoditysaleModel.RESERVE_FIRSTNUM; //RESERVE_FIRSTNUM
|
|
_COMMODITYSALE.RESERVE_SECONDNUM = commoditysaleModel.RESERVE_SECONDNUM; //RESERVE_SECONDNUM
|
|
_COMMODITYSALE.RESERVE_THIRDNUM = commoditysaleModel.RESERVE_THIRDNUM; //RESERVE_THIRDNUM
|
|
_COMMODITYSALE.RESERVE_FIRSTCHAR = commoditysaleModel.RESERVE_FIRSTCHAR; //RESERVE_FIRSTCHAR
|
|
_COMMODITYSALE.RESERVE_SECONDCHAR = commoditysaleModel.RESERVE_SECONDCHAR; //RESERVE_SECONDCHAR
|
|
_COMMODITYSALE.RESERVE_THIRDCHAR = commoditysaleModel.RESERVE_THIRDCHAR; //RESERVE_THIRDCHAR
|
|
_COMMODITYSALE.RESERVE_FIRSTDATE = commoditysaleModel.RESERVE_FIRSTDATE; //RESERVE_FIRSTDATE
|
|
_COMMODITYSALE.RESERVE_SECONDDATE = commoditysaleModel.RESERVE_SECONDDATE; //RESERVE_SECONDDATE
|
|
_COMMODITYSALE.RESERVE_THIRDDATE = commoditysaleModel.RESERVE_THIRDDATE; //RESERVE_THIRDDATE
|
|
_COMMODITYSALE.TRANSFER_STATE = commoditysaleModel.TRANSFER_STATE; //TRANSFER_STATE
|
|
_COMMODITYSALE.TRANSFER_ID = commoditysaleModel.TRANSFER_ID; //TRANSFER_ID
|
|
_COMMODITYSALE.MERGE_STATE = commoditysaleModel.MERGE_STATE; //MERGE_STATE
|
|
_COMMODITYSALE.SERVERPART_ID = commoditysaleModel.SERVERPART_ID; //SERVERPART_ID
|
|
_COMMODITYSALE.SERVERPARTSHOP_ID = commoditysaleModel.SERVERPARTSHOP_ID; //SERVERPARTSHOP_ID
|
|
_COMMODITYSALE.COMMODITYTYPE_ID = commoditysaleModel.COMMODITYTYPE_ID; //COMMODITYTYPE_ID
|
|
_COMMODITYSALE.COMMODITYTYPE_NAME = commoditysaleModel.COMMODITYTYPE_NAME; //COMMODITYTYPE_NAME
|
|
_COMMODITYSALE.COMMODITYTYPE_CODE = commoditysaleModel.COMMODITYTYPE_CODE; //COMMODITYTYPE_CODE
|
|
_COMMODITYSALE.COMMODITY_ID = commoditysaleModel.COMMODITY_ID; //COMMODITY_ID
|
|
_COMMODITYSALE.COMMODITY_RULE = commoditysaleModel.COMMODITY_RULE; //COMMODITY_RULE
|
|
_COMMODITYSALE.COMMODITY_UNIT = commoditysaleModel.COMMODITY_UNIT; //COMMODITY_UNIT
|
|
_COMMODITYSALE.COMMODITY_BARCODE = commoditysaleModel.COMMODITY_BARCODE; //COMMODITY_BARCODE
|
|
_COMMODITYSALE.COMMODITY_PURCHASEPRICE = commoditysaleModel.COMMODITY_PURCHASEPRICE; //COMMODITY_PURCHASEPRICE
|
|
_COMMODITYSALE.COMMODITY_CURRPRICE = commoditysaleModel.COMMODITY_CURRPRICE; //COMMODITY_CURRPRICE
|
|
_COMMODITYSALE.BUSINESSTYPE = commoditysaleModel.BUSINESSTYPE; //BUSINESSTYPE
|
|
}
|
|
#endregion
|
|
|
|
#endregion
|
|
|
|
#region 删除
|
|
/// <summary>
|
|
/// 删除
|
|
/// </summary>
|
|
/// <param name="transaction">事务管理器</param>
|
|
/// <param name="COMMODITYSALEId">内码</param>
|
|
public static bool DeleteCOMMODITYSALE(Transaction transaction, int? COMMODITYSALEId)
|
|
{
|
|
bool DeleteFlag = false;
|
|
|
|
if (COMMODITYSALEId != null)
|
|
{
|
|
Business.COMMODITYSALE _COMMODITYSALE = new Business.COMMODITYSALE(transaction);
|
|
_COMMODITYSALE.COMMODITYSALE_ID = COMMODITYSALEId;
|
|
if (_COMMODITYSALE.Select())
|
|
{
|
|
_COMMODITYSALE.COMMODITYSALE_STATE = 0;
|
|
DeleteFlag = _COMMODITYSALE.Update();
|
|
}
|
|
}
|
|
|
|
return DeleteFlag;
|
|
}
|
|
#endregion
|
|
}
|
|
}
|