|
|
@ -1528,9 +1528,9 @@ namespace EasyBL.WEBAPP.ShowEasy |
|
|
|
} |
|
|
|
|
|
|
|
//展覽列表
|
|
|
|
public List<ArgumentDTO> QueryExhibitions(string sLanguageID, string sServiceID) |
|
|
|
public List<ArgumentDTO> QueryExhibitions(string sLanguageID, string sServiceID,string sYear, string sMonth) |
|
|
|
{ |
|
|
|
List<ArgumentDTO> saExhibition = new List<ArgumentDTO>(); |
|
|
|
List<ArgumentDTO> saReturnExhibition = new List<ArgumentDTO>(); |
|
|
|
var db = SugarBase.GetIntance(); |
|
|
|
try |
|
|
|
{ |
|
|
@ -1546,20 +1546,92 @@ namespace EasyBL.WEBAPP.ShowEasy |
|
|
|
|
|
|
|
if (objONSiteBaseInfo.ExhibitionID != "[]" && objONSiteBaseInfo.ExhibitionID != "") |
|
|
|
{ |
|
|
|
if (!string.IsNullOrEmpty(sYear) && string.IsNullOrEmpty(sMonth)) |
|
|
|
{ |
|
|
|
|
|
|
|
var saExhibition2 = db.Queryable<SETB_CMS_Exhibition, SETB_CMS_Exhibition_Info>((t1, t2) => |
|
|
|
new object[] { |
|
|
|
JoinType.Inner, t1.OrgID == t2.OrgID && t1.ExhibitionID == t2.ExhibitionID && t1.LanguageID==t2.LanguageID |
|
|
|
}) |
|
|
|
.Where((t1, t2) => t1.LanguageID == sLanguageID && objONSiteBaseInfo.ExhibitionID.Contains(t1.ExhibitionID) && t2.Year == sYear) |
|
|
|
|
|
|
|
.Select((t1, t2) => new ArgumentDTO |
|
|
|
{ |
|
|
|
ArgumentID = t1.ExhibitionID, |
|
|
|
ArgumentValue = t1.ExhibitionName |
|
|
|
}) |
|
|
|
.ToList(); |
|
|
|
|
|
|
|
//防止重複
|
|
|
|
if (saExhibition2.Count() > 0) |
|
|
|
{ |
|
|
|
saReturnExhibition.Add(saExhibition2[0]); |
|
|
|
foreach (var ExhibitionYearModel in saExhibition2) |
|
|
|
{ |
|
|
|
|
|
|
|
var Flag = saReturnExhibition.Where(x => x.ArgumentID == ExhibitionYearModel.ArgumentID).Single(); |
|
|
|
if (Flag == null) |
|
|
|
{ |
|
|
|
saReturnExhibition.Add(ExhibitionYearModel); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
saExhibition = db.Queryable<SETB_CMS_Exhibition> |
|
|
|
() |
|
|
|
.Where((t1) => t1.LanguageID == sLanguageID && objONSiteBaseInfo.ExhibitionID.Contains(t1.ExhibitionID)) |
|
|
|
.Select((t1) => new ArgumentDTO |
|
|
|
{ |
|
|
|
ArgumentID=t1.ExhibitionID, |
|
|
|
ArgumentValue = t1.ExhibitionName |
|
|
|
}) |
|
|
|
.ToList(); |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
else if (!string.IsNullOrEmpty(sYear) && !string.IsNullOrEmpty(sMonth)) |
|
|
|
{ |
|
|
|
|
|
|
|
var rMonthStart = new DateTime(); |
|
|
|
var rMonthEnd = new DateTime(); |
|
|
|
rMonthStart = SqlFunc.ToDate(sYear + "/" + sMonth.Split('-')[0] + "/01"); |
|
|
|
rMonthEnd = SqlFunc.ToDate(sYear + "/" + sMonth.Split('-')[1] + "/01").AddMonths(1).AddDays(-1); |
|
|
|
var saExhibition3 = db.Queryable<SETB_CMS_Exhibition, SETB_CMS_Exhibition_Info>((t1, t2) => |
|
|
|
new object[] { |
|
|
|
JoinType.Inner, t1.OrgID == t2.OrgID && t1.ExhibitionID == t2.ExhibitionID && t1.LanguageID==t2.LanguageID |
|
|
|
}) |
|
|
|
.Where((t1, t2) => t1.LanguageID == sLanguageID && objONSiteBaseInfo.ExhibitionID.Contains(t1.ExhibitionID) && t2.Year == sYear) |
|
|
|
.WhereIF(!string.IsNullOrEmpty(sMonth), (t1, t2) => t2.EndDate >= SqlFunc.ToDate(rMonthStart)) |
|
|
|
.WhereIF(!string.IsNullOrEmpty(sMonth), (t1, t2) => t2.StartDate <= SqlFunc.ToDate(rMonthEnd)) |
|
|
|
.WhereIF(!string.IsNullOrEmpty(sMonth), (t1, t2) => t2.StartDate <= SqlFunc.ToDate(rMonthEnd) && t2.EndDate >= SqlFunc.ToDate(rMonthStart)) |
|
|
|
.Select((t1, t2) => new ArgumentDTO |
|
|
|
{ |
|
|
|
ArgumentID = t1.ExhibitionID, |
|
|
|
ArgumentValue = t1.ExhibitionName |
|
|
|
}) |
|
|
|
.ToList(); |
|
|
|
|
|
|
|
|
|
|
|
//防止重複
|
|
|
|
if (saExhibition3.Count() > 0) |
|
|
|
{ |
|
|
|
saReturnExhibition.Add(saExhibition3[0]); |
|
|
|
foreach (var ExhibitionYearModel in saExhibition3) |
|
|
|
{ |
|
|
|
|
|
|
|
var Flag = saReturnExhibition.Where(x => x.ArgumentID == ExhibitionYearModel.ArgumentID).Single(); |
|
|
|
if (Flag == null) |
|
|
|
{ |
|
|
|
saReturnExhibition.Add(ExhibitionYearModel); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
else { |
|
|
|
var saExhibition = db.Queryable<SETB_CMS_Exhibition>() |
|
|
|
.Where((t1) => t1.LanguageID == sLanguageID && objONSiteBaseInfo.ExhibitionID.Contains(t1.ExhibitionID)) |
|
|
|
.Select((t1) => new ArgumentDTO |
|
|
|
{ |
|
|
|
ArgumentID = t1.ExhibitionID, |
|
|
|
ArgumentValue = t1.ExhibitionName |
|
|
|
}) |
|
|
|
.ToList(); |
|
|
|
|
|
|
|
|
|
|
|
saReturnExhibition = saExhibition; |
|
|
|
} |
|
|
|
} |
|
|
|
return saExhibition; |
|
|
|
return saReturnExhibition; |
|
|
|
|
|
|
|
|
|
|
|
} while (false); |
|
|
@ -1569,7 +1641,7 @@ namespace EasyBL.WEBAPP.ShowEasy |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return saExhibition; |
|
|
|
return saReturnExhibition; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
xxxxxxxxxx