|
|
@ -170,8 +170,9 @@ namespace EasyBL.WEBAPP.ShowEasy |
|
|
|
} |
|
|
|
if (string.IsNullOrEmpty(sSortField)) |
|
|
|
{ |
|
|
|
sSortField = "t1.CreateDate"; |
|
|
|
sSortField = "CreateDate"; |
|
|
|
} |
|
|
|
sSortField = "t1." + sSortField; |
|
|
|
if (string.IsNullOrEmpty(sSortOrder)) |
|
|
|
{ |
|
|
|
sSortField = "desc"; |
|
|
@ -194,29 +195,28 @@ namespace EasyBL.WEBAPP.ShowEasy |
|
|
|
} |
|
|
|
) |
|
|
|
.Where((t1) => t1.LangID == sLangID && t1.Effective == "Y" && t1.OrgID == sORIGID) |
|
|
|
.Select((t1, t2) => new View_PDT_ServiceBaseInfo |
|
|
|
.Select((t1, t2) => new ONSiteBaseListDTO |
|
|
|
{ |
|
|
|
|
|
|
|
ServiceID = t1.ServiceID, |
|
|
|
ServiceName = t1.ServiceName, |
|
|
|
PreviewFile=t1.PreviewFile, |
|
|
|
LangID = t1.LangID, |
|
|
|
LaunchDateS = t1.LaunchDateS, |
|
|
|
LaunchDateE = t1.LaunchDateE, |
|
|
|
LangID=t1.LangID, |
|
|
|
PreviewFile =t1.PreviewFile, |
|
|
|
MinPrice=0, |
|
|
|
PlaceName="", |
|
|
|
ServiceCategoryName="" |
|
|
|
ServiceCategoryName=t1.SubCategoryID, |
|
|
|
ServiceNo=t1.ServiceNo |
|
|
|
|
|
|
|
}) |
|
|
|
.OrderBy(sSortField, sSortOrder) |
|
|
|
.ToPageList(pml.PageIndex, pml.PageSize, ref iPageCount); |
|
|
|
pml.Total = iPageCount; |
|
|
|
|
|
|
|
|
|
|
|
var saDataList = pml.DataList as List<View_PDT_ServiceBaseInfo>; |
|
|
|
var saDataList = pml.DataList as List<ONSiteBaseListDTO>; |
|
|
|
foreach (var ServiceBaseInfoModel in saDataList) |
|
|
|
{ |
|
|
|
ServiceBaseInfoModel.PlaceName = ""; |
|
|
|
ServiceBaseInfoModel.ServiceCategoryName = ""; |
|
|
|
ServiceBaseInfoModel.PreviewFile = GetPreviewFile(ServiceBaseInfoModel.PreviewFile); |
|
|
|
ServiceBaseInfoModel.PlaceName = GetPlaceName(ServiceBaseInfoModel.LangID, ServiceBaseInfoModel.ServiceID); |
|
|
|
ServiceBaseInfoModel.ServiceCategoryName = GetServiceCategoryName(ServiceBaseInfoModel.LangID, ServiceBaseInfoModel.ServiceCategoryName); |
|
|
|
} |
|
|
|
srm = new SuccessResponseMessage(null, null); |
|
|
|
srm.DATA.Add(BLWording.REL, pml); |
|
|
@ -235,6 +235,140 @@ namespace EasyBL.WEBAPP.ShowEasy |
|
|
|
return HttpResponseExtension.ToJson(JsonConvert.SerializeObject(srm)); |
|
|
|
} |
|
|
|
|
|
|
|
//取得適用地
|
|
|
|
public string GetPlaceName(string sLanguageID, string sServiceID) |
|
|
|
{ |
|
|
|
var sSuitPlace = ""; |
|
|
|
var db = SugarBase.GetIntance(); |
|
|
|
try |
|
|
|
{ |
|
|
|
do |
|
|
|
{ |
|
|
|
//適用地區
|
|
|
|
var saSuitPlace = db.Queryable<SETB_PDT_ServiceBySuitPlace, SETB_SYS_Region, SETB_SYS_Country, SETB_UTL_City> |
|
|
|
((t1, t2, t3, t4) => |
|
|
|
new object[] { |
|
|
|
JoinType.Left, t1.RegionID == t2.RegionID && t1.LangID== t2.LangType , |
|
|
|
JoinType.Left, t1.CountryID == t3.CountryID && t1.LangID== t3.LangType , |
|
|
|
JoinType.Left, t1.CityID == t4.CityID && t1.LangID== t4.LangType |
|
|
|
} |
|
|
|
) |
|
|
|
.Where((t1) => t1.LangID == sLanguageID && t1.ServiceID == sServiceID) |
|
|
|
.Select((t1, t2, t3, t4) => new View_PDT_ServiceBySuitPlace |
|
|
|
{ |
|
|
|
ServiceID = t1.ServiceID, |
|
|
|
LangID = t1.LangID, |
|
|
|
Guid = t1.Guid, |
|
|
|
RegionID = t1.RegionID, |
|
|
|
CountryID = t1.CountryID, |
|
|
|
CityID = t1.CityID, |
|
|
|
Name = SqlFunc.IsNull(SqlFunc.IsNull(t2.RegionName, t3.CountryName), t4.CityName) |
|
|
|
}) |
|
|
|
.OrderBy(t1 => t1.RegionID) |
|
|
|
.ToList(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (saSuitPlace.Count > 0) |
|
|
|
{ |
|
|
|
|
|
|
|
foreach (var SuitPlace in saSuitPlace) |
|
|
|
{ |
|
|
|
sSuitPlace += SuitPlace.Name + ";"; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
return sSuitPlace; |
|
|
|
|
|
|
|
|
|
|
|
} while (false); |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
|
|
|
|
} |
|
|
|
return sSuitPlace; |
|
|
|
} |
|
|
|
|
|
|
|
//取得服務類別名稱
|
|
|
|
public string GetServiceCategoryName(string sLanguageID, string sSubCategoryID) |
|
|
|
{ |
|
|
|
var sSuitPlace = ""; |
|
|
|
var db = SugarBase.GetIntance(); |
|
|
|
try |
|
|
|
{ |
|
|
|
do |
|
|
|
{ |
|
|
|
//適用地區
|
|
|
|
var saSuitPlace = db.Queryable<SETB_SYS_Category> |
|
|
|
( |
|
|
|
) |
|
|
|
.Where((t1) => t1.LanguageID == sLanguageID && t1.Effective=="Y" && t1.DelStatus=="N" && sSubCategoryID.Contains(t1.CategoryID)) |
|
|
|
.OrderBy(t1 => t1.OrderByValue) |
|
|
|
.ToList(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (saSuitPlace.Count > 0) |
|
|
|
{ |
|
|
|
|
|
|
|
foreach (var SuitPlace in saSuitPlace) |
|
|
|
{ |
|
|
|
sSuitPlace += SuitPlace.CategoryName + ";"; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
return sSuitPlace; |
|
|
|
|
|
|
|
|
|
|
|
} while (false); |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
|
|
|
|
} |
|
|
|
return sSuitPlace; |
|
|
|
} |
|
|
|
|
|
|
|
//取得封面圖片
|
|
|
|
public string GetPreviewFile( string PreviewFile) |
|
|
|
{ |
|
|
|
var sFilePath = ""; |
|
|
|
var db = SugarBase.GetIntance(); |
|
|
|
try |
|
|
|
{ |
|
|
|
do |
|
|
|
{ |
|
|
|
var sORIGID = WebAppGlobalConstWord.TG_ORGID; |
|
|
|
string requestUrl = Common.ConfigGetValue("", "ida:RedirectUri"); |
|
|
|
var oFilePath = db.Queryable<OTB_SYS_Files>() |
|
|
|
.Where(x => x.ParentID == PreviewFile && x.OrgID == sORIGID) |
|
|
|
.Select(x => new FileDTO |
|
|
|
{ |
|
|
|
FileID = x.FileID, |
|
|
|
FileName = x.FileName, |
|
|
|
FilePath = x.FilePath |
|
|
|
}) |
|
|
|
.Single(); |
|
|
|
|
|
|
|
|
|
|
|
if (oFilePath != null) |
|
|
|
{ |
|
|
|
sFilePath = requestUrl + "/" + oFilePath.FilePath.Replace("\\", "/"); |
|
|
|
|
|
|
|
} |
|
|
|
return sFilePath; |
|
|
|
|
|
|
|
|
|
|
|
} while (false); |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
|
|
|
|
} |
|
|
|
return sFilePath; |
|
|
|
} |
|
|
|
|
|
|
|
#endregion 服務管理(分頁查詢)
|
|
|
|
|
|
|
|
#region 服務輪播圖片
|
|
|
@ -406,6 +540,90 @@ namespace EasyBL.WEBAPP.ShowEasy |
|
|
|
|
|
|
|
#endregion 展覽管理(List API 展覽類別篩選器)
|
|
|
|
|
|
|
|
#region 展覽年份
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 展覽年份
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="i_crm"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
public HttpResponseMessage GetExtensionYears(string sLanguageID,string sServiceID) |
|
|
|
{ |
|
|
|
SuccessResponseMessage srm = null; |
|
|
|
string sError = null; |
|
|
|
try |
|
|
|
{ |
|
|
|
do |
|
|
|
{ |
|
|
|
if (string.IsNullOrEmpty(sLanguageID)) |
|
|
|
{ |
|
|
|
sLanguageID = WebAppGlobalConstWord.DEFAULT_LANGUAGE; |
|
|
|
} |
|
|
|
ONSiteMaintain_QryService em_qry = new ONSiteMaintain_QryService(); |
|
|
|
var rsResult = em_qry.GetExtensionYears(sLanguageID, sServiceID); |
|
|
|
srm = new SuccessResponseMessage(null, null); |
|
|
|
srm.DATA.Add(BLWording.REL, rsResult); |
|
|
|
|
|
|
|
} while (false); |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
sError = Util.GetLastExceptionMsg(ex); |
|
|
|
srm = new SuccessResponseMessage(null, null) |
|
|
|
{ |
|
|
|
STATUSCODE = (int)StatusCodeEnum.Error, |
|
|
|
MSG = StatusCodeEnum.Error.GetEnumText() |
|
|
|
}; |
|
|
|
srm.DATA.Add(BLWording.REL, ""); |
|
|
|
} |
|
|
|
return HttpResponseExtension.ToJson(JsonConvert.SerializeObject(srm)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
#endregion 展覽管理(List API 展覽類別篩選器)
|
|
|
|
|
|
|
|
#region 展覽月份
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 展覽月份
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="i_crm"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
public HttpResponseMessage GetExtensionMonths(string sLanguageID) |
|
|
|
{ |
|
|
|
SuccessResponseMessage srm = null; |
|
|
|
string sError = null; |
|
|
|
try |
|
|
|
{ |
|
|
|
do |
|
|
|
{ |
|
|
|
if (string.IsNullOrEmpty(sLanguageID)) |
|
|
|
{ |
|
|
|
sLanguageID = WebAppGlobalConstWord.DEFAULT_LANGUAGE; |
|
|
|
} |
|
|
|
ONSiteMaintain_QryService em_qry = new ONSiteMaintain_QryService(); |
|
|
|
var rsResult = em_qry.GetExtensionMonths(sLanguageID); |
|
|
|
srm = new SuccessResponseMessage(null, null); |
|
|
|
srm.DATA.Add(BLWording.REL, rsResult); |
|
|
|
|
|
|
|
} while (false); |
|
|
|
} |
|
|
|
catch (Exception ex) |
|
|
|
{ |
|
|
|
sError = Util.GetLastExceptionMsg(ex); |
|
|
|
srm = new SuccessResponseMessage(null, null) |
|
|
|
{ |
|
|
|
STATUSCODE = (int)StatusCodeEnum.Error, |
|
|
|
MSG = StatusCodeEnum.Error.GetEnumText() |
|
|
|
}; |
|
|
|
srm.DATA.Add(BLWording.REL, ""); |
|
|
|
} |
|
|
|
return HttpResponseExtension.ToJson(JsonConvert.SerializeObject(srm)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
#endregion 展覽管理(List API 展覽類別篩選器)
|
|
|
|
|
|
|
|
#region 展覽列表
|
|
|
|
/// <summary>
|
|
|
|
/// 展覽列表
|
|
|
|
xxxxxxxxxx