快速報名,功德內容設定調整:只要選擇預設版型
This commit is contained in:
@@ -235,6 +235,114 @@ public class activityController : ApiController
|
||||
var count = _db.activities.Count();
|
||||
return count;
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[Route("api/activity/GetListNew")]
|
||||
public IHttpActionResult GetListNew([FromBody] Model.ViewModel.activity q, int page, int pageSize = 10,
|
||||
string sortBy = "", bool sortDesc = false)
|
||||
{
|
||||
var qry = _db.activities.AsQueryable();
|
||||
if (!string.IsNullOrEmpty(q.subject))
|
||||
qry = qry.Where(o => o.subject.Contains(q.subject));
|
||||
if (q.kind.HasValue && q.kind > 0)
|
||||
{
|
||||
var _subKinds = new TreeView().subKinds(_db.activity_kind.Select(o => new TreeItem()
|
||||
{
|
||||
num = o.num,
|
||||
root = o.root,
|
||||
}).ToList(), q.kind.Value);
|
||||
|
||||
//qry = qry.Where(o => o.kind == q.kind);
|
||||
qry = qry.Where(o => o.kind == q.kind.Value || _subKinds.Any(s => s == o.kind));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(q.up_time1))
|
||||
{
|
||||
var s = DateTime.Parse(q.up_time1);
|
||||
qry = qry.Where(o => o.startDate_solar <=s&&o.endDate_solar>=s);
|
||||
}
|
||||
|
||||
//if (!string.IsNullOrEmpty(q.up_time2))
|
||||
//{
|
||||
// var end = DateTime.Parse(q.up_time2);
|
||||
// qry = qry.Where(o => o.endDate_solar<=end);
|
||||
//}
|
||||
|
||||
if (!string.IsNullOrEmpty(q.kindTxt))
|
||||
qry = qry.Where(o => o.activity_kind.kind.Contains(q.kindTxt));
|
||||
|
||||
if (sortBy.Equals("subject"))
|
||||
{
|
||||
if (sortDesc)
|
||||
qry = qry.OrderByDescending(o => o.subject);
|
||||
else
|
||||
qry = qry.OrderBy(o => o.subject);
|
||||
}
|
||||
else if (sortBy.Equals("kind"))
|
||||
{
|
||||
if (sortDesc)
|
||||
qry = qry.OrderByDescending(o => o.kind);
|
||||
else
|
||||
qry = qry.OrderBy(o => o.kind);
|
||||
}
|
||||
else if (sortBy.Equals("startDate_solar"))
|
||||
{
|
||||
if (sortDesc)
|
||||
qry = qry.OrderByDescending(o => o.startDate_solar);
|
||||
else
|
||||
qry = qry.OrderBy(o => o.startDate_solar);
|
||||
}
|
||||
else if (sortBy.Equals("endDate_solar"))
|
||||
{
|
||||
if (sortDesc)
|
||||
qry = qry.OrderByDescending(o => o.endDate_solar);
|
||||
else
|
||||
qry = qry.OrderBy(o => o.endDate_solar);
|
||||
}
|
||||
else if (sortBy.Equals("dueDate"))
|
||||
{
|
||||
if (sortDesc)
|
||||
qry = qry.OrderByDescending(o => o.dueDate);
|
||||
else
|
||||
qry = qry.OrderBy(o => o.dueDate);
|
||||
}
|
||||
else
|
||||
qry = qry.OrderByDescending(o => o.num);
|
||||
|
||||
var count = qry.Count(); //pageSize = count;//一次取回??
|
||||
var qryList = (pageSize > 0) ? qry.ToPagedList(page, pageSize).ToList() : qry.ToList();
|
||||
|
||||
var ret = new
|
||||
{
|
||||
list = qryList.Select(x => new
|
||||
{
|
||||
num = x.num,
|
||||
subject = x.subject,
|
||||
kind = x.kind,
|
||||
kindTxt = x.kind.HasValue ? x.activity_kind.kind : "",
|
||||
kindsTxt = x.kind.HasValue ? new TreeView().kindText(_db.activity_kind.Select(o => new TreeItem()
|
||||
{
|
||||
kind = o.kind,
|
||||
num = o.num,
|
||||
root = o.root,
|
||||
}).ToList(), x.kind) : "",
|
||||
startDate_solar = x.startDate_solar,
|
||||
endDate_solar = x.endDate_solar,
|
||||
startDate_lunar = x.startDate_lunar,
|
||||
endDate_lunar = x.endDate_lunar,
|
||||
dueDate = x.dueDate,
|
||||
orderCounts = _db.pro_order.Where(y => y.activity_num == x.num).Count(),
|
||||
}),
|
||||
count = count,
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
if (ret.list == null) throw new HttpResponseException(HttpStatusCode.NotFound);
|
||||
return Ok(ret);
|
||||
}
|
||||
|
||||
|
||||
[HttpPost]
|
||||
[Route("api/activity/GetList")]
|
||||
public IHttpActionResult GetList([FromBody] Model.ViewModel.activity q, int page, int pageSize = 10,
|
||||
|
||||
Reference in New Issue
Block a user