Janie 2 years ago
parent
commit
f890078e22
  1. 150
      EuroTran/EasyBL.WEBAPP/ShowEasy/ExhibMaintain_QryService.cs
  2. 4
      EuroTran/EasyBL.WEBAPP/ShowEasy/ExhibitionService.cs
  3. 78
      EuroTran/EasyBL.WEBAPP/ShowEasy/ONSiteMaintain_QryService.cs
  4. 242
      EuroTran/EasyBL.WEBAPP/ShowEasy/OnsiteService.cs
  5. 1
      EuroTran/Entity/ShowEasyDtos/ExhibitionDTO.cs
  6. 18
      EuroTran/Entity/ShowEasyDtos/ONSiteBaseInfoDTO.cs
  7. 16
      EuroTran/WebApp/Controllers/ExhibitionController.cs
  8. 19
      EuroTran/WebApp/Controllers/OnsiteController.cs
  9. BIN
      EuroTran/WebApp/Document/EurotranFile/Exhibition/3c6a6078-f082-4044-9e19-4c099b6e07c8.png

150
EuroTran/EasyBL.WEBAPP/ShowEasy/ExhibMaintain_QryService.cs

@ -1212,10 +1212,15 @@ namespace EasyBL.WEBAPP.SYS
var CountryID = entry.Keys.FirstOrDefault();
CountryDTO Country = new CountryDTO();
Country.CountryID = CountryDic[CountryID].CountryID;
Country.CountryName = CountryDic[CountryID].CountryName;
rsCountryList.Add(Country);
if (CountryDic.ContainsKey(CountryID)) {
Country.CountryID = CountryDic[CountryID].CountryID;
Country.CountryName = CountryDic[CountryID].CountryName;
rsCountryList.Add(Country);
}
}
@ -1351,14 +1356,18 @@ namespace EasyBL.WEBAPP.SYS
Logo = Server + "/" + LogoFile.FilePath.Replace("\\", "/");
}
var sENName = FindOneByIDs(Exhibition.ExhibitionID, WebAppGlobalConstWord.EN_US).ExhibitionName;
// set Exhibition
rsExhibition.ExhibitionID = Exhibition.ExhibitionID;
rsExhibition.ExhibitionNo = Exhibition.ExhibitionNo;
rsExhibition.ExhibitionName = Exhibition.ExhibitionName;
rsExhibition.ExhibitionENName = sENName;
rsExhibition.AbbreviatedName = Exhibition.AbbreviatedName;
rsExhibition.Frequency = Exhibition.Frequency;
rsExhibition.IsRecommend = Exhibition.IsRecommend;
rsExhibition.Website = Exhibition.Website;
rsExhibition.Logo = Logo;
if (!string.IsNullOrEmpty(Exhibition.MainCategoryIDs))
{
@ -1457,133 +1466,16 @@ namespace EasyBL.WEBAPP.SYS
public ExhibitionDTO QueryOneDetailExhibition(string sLanguageID, string sExhibitionID) {
var Exhibition = FindOneByIDs(sExhibitionID, sLanguageID);
ExhibInfoMaintain_QryService eim_qry = new ExhibInfoMaintain_QryService();
var ExhibInfo = eim_qry.FindAllByIDsAsDictionary(sLanguageID, sExhibitionID).Values.OrderBy(o => o.Year).FirstOrDefault();
var Location = new LocationDTO();
if (ExhibInfo != null) {
Location = eim_qry.FindAllLocationByIDsAsDictionary(sLanguageID, ExhibInfo.Year, sExhibitionID).Values.FirstOrDefault();
}
FileMaintain_QryService fm_qry = new FileMaintain_QryService();
var LogoFile = fm_qry.FindOneByIDs(Exhibition.Logo);
var Logo = "";
if (LogoFile != null)
{
var Server = Common.ConfigGetValue("", "ida:RedirectUri");
Logo = Server + "/" + LogoFile.FilePath.Replace("\\", "/");
}
ExhibitionDTO rsExhibition = new ExhibitionDTO();
// set Exhibition
rsExhibition.ExhibitionID = Exhibition.ExhibitionID;
rsExhibition.ExhibitionNo = Exhibition.ExhibitionNo;
rsExhibition.ExhibitionName = Exhibition.ExhibitionName;
rsExhibition.AbbreviatedName = Exhibition.AbbreviatedName;
rsExhibition.Frequency = Exhibition.Frequency;
rsExhibition.IsRecommend = Exhibition.IsRecommend;
rsExhibition.Website = Exhibition.Website;
ExhibMainCategoryMaintain_QryService emcm_qry = new ExhibMainCategoryMaintain_QryService();
var MainCategoryDic = emcm_qry.QueryExhibMainCategoryAsDictionary(sLanguageID);
if (!string.IsNullOrEmpty(Exhibition.MainCategoryIDs)) {
List<string> MainCategoryIDList = JsonConvert.DeserializeObject<List<string>>(Exhibition.MainCategoryIDs);
foreach (var MainCategoryID in MainCategoryIDList) {
var Category = MainCategoryDic[MainCategoryID];
CategoryDTO rsCategory = new CategoryDTO();
rsCategory.CategoryID = Category.CategoryID;
rsCategory.CategoryName = Category.CategoryName;
rsExhibition.MainCategories.Add(rsCategory);
}
}
ExhibSubCategoryMaintain_QryService escm_qry = new ExhibSubCategoryMaintain_QryService();
var SubCategoryDic = escm_qry.QueryExhibSubCategoryAsDictionary(sLanguageID);
if (!string.IsNullOrEmpty(Exhibition.SubCategoryIDs))
{
List<string> SubCategoryIDList = JsonConvert.DeserializeObject<List<string>>(Exhibition.SubCategoryIDs);
foreach (var SubCategoryID in SubCategoryIDList)
{
var Category = SubCategoryDic[SubCategoryID];
CategoryDTO rsCategory = new CategoryDTO();
rsCategory.CategoryID = Category.CategoryID;
rsCategory.CategoryName = Category.CategoryName;
rsExhibition.SubCategories.Add(rsCategory);
}
}
VenueMaintain_QryService vm_qry = new VenueMaintain_QryService();
var VenueDic = vm_qry.FindAllByIDsAsDictionary(sLanguageID);
// set Venues
if (!string.IsNullOrEmpty(ExhibInfo.VenueIDs)) {
List<string> VenueIDList = JsonConvert.DeserializeObject<List<string>>(ExhibInfo.VenueIDs);
foreach (var VenueID in VenueIDList)
{
var Venue = VenueDic[VenueID];
VenueDTO rsVenue = new VenueDTO();
rsVenue.VenueID = Venue.VenueID;
rsVenue.VenueName = Venue.VenueName;
rsExhibition.Venues.Add(rsVenue);
}
}
// set ExhibInfo
if (Location != null) {
rsExhibition.Region = Location.Region;
rsExhibition.Country = Location.Country;
rsExhibition.City = Location.City;
}
rsExhibition.Status = ExhibInfo.Status;
rsExhibition.Intro = ExhibInfo.Intro;
rsExhibition.Profile = ExhibInfo.Profile;
rsExhibition.Detail = ExhibInfo.Detail;
rsExhibition.StartDate = ExhibInfo.StartDate;
rsExhibition.EndDate = ExhibInfo.EndDate;
// set Statistic
ExhibStatMaintain_QryService esm_qry = new ExhibStatMaintain_QryService();
var Stat = esm_qry.FindAllByIDsAsDictionary(Exhibition.ExhibitionID, ExhibInfo.Year).Values.FirstOrDefault();
if (Stat != null) {
rsExhibition.ExhibSize = Stat.ExhibSize;
rsExhibition.VisitorCount = Stat.VisitorCount;
rsExhibition.IntVisitorCount = Stat.IntVisitorCount;
rsExhibition.ExhibitorCount = Stat.ExhibitorCount;
}
var rsExhibition = QueryAllDetailExhibitionAsDictionary(sLanguageID)
.Values.ToList()
.Where(w => w.ExhibitionID == sExhibitionID)
.FirstOrDefault();
return rsExhibition;
}
public List<CategoryExhibitionDTO> QueryCategoryExhibition(string sLanguageID) {
public List<CategoryExhibitionDTO> QueryCategoryExhibition(string sLanguageID, List<string> IncludeCountryIDs, List<string> ExcludeCountryIDs) {
Dictionary<string, CategoryExhibitionDTO> rsResult = new Dictionary<string, CategoryExhibitionDTO>();
@ -1593,6 +1485,14 @@ namespace EasyBL.WEBAPP.SYS
var rsExhibitionList = QueryAllDetailExhibitionAsDictionary(sLanguageID).Values.Where(w => w.MainCategories.Count > 0);
if (IncludeCountryIDs.Count > 0) {
rsExhibitionList = rsExhibitionList.Where(w => IncludeCountryIDs.Contains(w.Country.CountryID));
}
if (ExcludeCountryIDs.Count > 0) {
rsExhibitionList = rsExhibitionList.Where(w => !ExcludeCountryIDs.Contains(w.Country.CountryID));
}
foreach (var Exhibition in rsExhibitionList) {
List<CategoryDTO> MainCategoryList = Exhibition.MainCategories;

4
EuroTran/EasyBL.WEBAPP/ShowEasy/ExhibitionService.cs

@ -511,7 +511,7 @@ namespace EasyBL.WEBAPP.SYS
return HttpResponseExtension.ToJson(JsonConvert.SerializeObject(srm));
}
public HttpResponseMessage GetCategoryExhibition(string sLanguageID) {
public HttpResponseMessage GetCategoryExhibition(string sLanguageID, List<string> IncludeCountryIDs, List<string> ExcludeCountryIDs) {
SuccessResponseMessage srm = null;
string sError = null;
@ -526,7 +526,7 @@ namespace EasyBL.WEBAPP.SYS
}
ExhibMaintain_QryService em_qry = new ExhibMaintain_QryService();
var rsResult = em_qry.QueryCategoryExhibition(sLanguageID);
var rsResult = em_qry.QueryCategoryExhibition(sLanguageID, IncludeCountryIDs, ExcludeCountryIDs);
//返回token信息
srm = new SuccessResponseMessage(null, null);

78
EuroTran/EasyBL.WEBAPP/ShowEasy/ONSiteMaintain_QryService.cs

@ -1139,7 +1139,7 @@ namespace EasyBL.WEBAPP.ShowEasy
//搜尋條件
.Where(x => x.OrgID == sORIGID && x.ServiceID == sServiceID && x.LangID == sLanguageID)
.Single();
if (objONSiteBaseInfo != null && string.IsNullOrEmpty(objONSiteBaseInfo.BannerFile)) {
if (objONSiteBaseInfo != null && !string.IsNullOrEmpty(objONSiteBaseInfo.BannerFile)) {
saFilePath = db.Queryable<OTB_SYS_Files>()
.Where(x => x.ParentID == objONSiteBaseInfo.BannerFile && x.OrgID== sORIGID)
@ -1276,6 +1276,79 @@ namespace EasyBL.WEBAPP.ShowEasy
}
//展覽年份
public List<ArgumentDTO> GetExtensionYears(string sLanguageID, string sServiceID)
{
List<ArgumentDTO> saExhibitionYear = new List<ArgumentDTO>();
var db = SugarBase.GetIntance();
try
{
do
{
var sORIGID = WebAppGlobalConstWord.TG_ORGID;
var objONSiteBaseInfo = db.Queryable<SETB_PDT_ONSiteBaseInfo>()
//搜尋條件
.Where(x => x.OrgID == sORIGID && x.ServiceID == sServiceID && x.LangID == sLanguageID)
.Single();
if (objONSiteBaseInfo.ExhibitionID != "[]" && objONSiteBaseInfo.ExhibitionID != "")
{
saExhibitionYear = db.Queryable<SETB_CMS_Exhibition_Info>()
.Where((t1) => t1.LanguageID == sLanguageID && t1.OrgID== sORIGID && objONSiteBaseInfo.ExhibitionID.Contains(t1.ExhibitionID))
.Select((t1) => new ArgumentDTO
{
ArgumentID=t1.Year,
ArgumentValue=t1.Year
})
.OrderBy(x=>x.ArgumentID)
.ToList();
}
return saExhibitionYear;
} while (false);
}
catch (Exception ex)
{
}
return saExhibitionYear;
}
//展覽月份
public List<ArgumentDTO> GetExtensionMonths(string sLanguageID)
{
List<ArgumentDTO> saPackingTypes = new List<ArgumentDTO>();
var db = SugarBase.GetIntance();
try
{
do
{
var sORIGID = WebAppGlobalConstWord.TG_ORGID;
saPackingTypes = db.Queryable<OTB_SYS_Arguments>()
.Where(x => x.OrgID == sORIGID && x.Effective == "Y" && x.DelStatus == "N" && x.ArgumentClassID == "ExtensionMonth")
.Select(x => new ArgumentDTO
{
ArgumentID = x.ArgumentID,
ArgumentValue = x.ArgumentValue,
OrderByValue = x.OrderByValue
})
.OrderBy(x => x.OrderByValue)
.ToList();
return saPackingTypes;
} while (false);
}
catch (Exception ex)
{
}
return saPackingTypes;
}
//展覽列表
public List<ArgumentDTO> QueryExhibitions(string sLanguageID, string sServiceID)
{
@ -1342,7 +1415,7 @@ namespace EasyBL.WEBAPP.ShowEasy
.Where((t1) => t1.OrgID == sORIGID && t1.ServiceID == sServiceID && t1.LangID == sLanguageID)
.Select((t1, t2) => new ONSiteBaseInfoDTO
{
ServiceID = SqlFunc.GetSelfAndAutoFill(t1.ServiceID),
ServiceID = t1.ServiceID,
ServiceNo=t1.ServiceNo,
ServiceName=t1.ServiceName,
ConfirmDays=t2.ArgumentValue,
@ -1480,6 +1553,5 @@ namespace EasyBL.WEBAPP.ShowEasy
return objONSiteBaseInfo;
}
}
}

242
EuroTran/EasyBL.WEBAPP/ShowEasy/OnsiteService.cs

@ -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>
/// 展覽列表

1
EuroTran/Entity/ShowEasyDtos/ExhibitionDTO.cs

@ -11,6 +11,7 @@ namespace Entity.ShowEasyDtos
public string ExhibitionID { get; set; }
public string ExhibitionNo { get; set; }
public string ExhibitionName { get; set; }
public string ExhibitionENName { get; set; }
public string AbbreviatedName { get; set; }
public List<VenueDTO> Venues = new List<VenueDTO>();

18
EuroTran/Entity/ShowEasyDtos/ONSiteBaseInfoDTO.cs

@ -70,6 +70,24 @@ namespace Entity.ShowEasyDtos
}
public class ONSiteBaseListDTO
{
public string ServiceID { get; set; }
//服務編號
public string ServiceNo { get; set; }
//服務名稱
public string ServiceName { get; set; }
//圖片
public string PreviewFile { get; set; }
public int MinPrice { get; set; }
//適用地區
public string PlaceName { get; set; }
//服務類別名稱
public string ServiceCategoryName { get; set; }
public string LangID { get; set; }
}
public class FQADTO
{

16
EuroTran/WebApp/Controllers/ExhibitionController.cs

@ -216,10 +216,22 @@ namespace WebApp.Controllers
}
[HttpGet]
public HttpResponseMessage CategoryExhibition(string Lang)
public HttpResponseMessage CategoryExhibition(string Lang, string IncludeCountryIDs, string ExcludeCountryIDs)
{
return new ExhibitionService().GetCategoryExhibition(Lang);
List<string> rsIncludeCountryIDs = new List<string>();
List<string> rsExcludeCountryIDs = new List<string>();
if (!string.IsNullOrEmpty(IncludeCountryIDs)) {
rsIncludeCountryIDs = JsonConvert.DeserializeObject<List<string>>(IncludeCountryIDs);
}
if (!string.IsNullOrEmpty(ExcludeCountryIDs))
{
rsExcludeCountryIDs = JsonConvert.DeserializeObject<List<string>>(ExcludeCountryIDs);
}
return new ExhibitionService().GetCategoryExhibition(Lang, rsIncludeCountryIDs, rsExcludeCountryIDs);
}

19
EuroTran/WebApp/Controllers/OnsiteController.cs

@ -71,9 +71,24 @@ namespace WebApp.Controllers
{
return new OnsiteService().GetServiceItems(Lang, ServiceID);
}
//服務項目
//展覽年份
[HttpGet]
public HttpResponseMessage ExtensionYear(string Lang, string ServiceID)
{
return new OnsiteService().GetExtensionYears(Lang, ServiceID);
}
//展覽月份
[HttpGet]
public HttpResponseMessage ExtensionMonth(string Lang)
{
return new OnsiteService().GetExtensionMonths(Lang);
}
//展覽列表
[HttpGet]
public HttpResponseMessage Exhibitions(string Lang, string ServiceID)
public HttpResponseMessage Exhibitions(string Lang,string ServiceID,string Year,string Month)
{
return new OnsiteService().QueryExhibitions(Lang, ServiceID);
}

BIN
EuroTran/WebApp/Document/EurotranFile/Exhibition/3c6a6078-f082-4044-9e19-4c099b6e07c8.png

After

Width: 400  |  Height: 400  |  Size: 13 KiB

|||||||
100:0
Loading…
Cancel
Save