更新查詢方式
This commit is contained in:
@@ -55,17 +55,17 @@ public class apporderController : ApiController
|
||||
// DELETE api/<controller>/5
|
||||
public void Delete(string id)
|
||||
{
|
||||
var prod = _db.pro_order.AsEnumerable().Where(q => q.order_no == id).FirstOrDefault(); //刪除該筆資料
|
||||
var prod = _db.pro_order.Where(q => q.order_no == id).FirstOrDefault(); //刪除該筆資料
|
||||
if (prod != null)
|
||||
{
|
||||
//刪除掛單表單
|
||||
var prod3 = _db.bed_order.AsEnumerable().Where(q => q.order_no == id).ToList();
|
||||
var prod3 = _db.bed_order.Where(q => q.order_no == id).ToList();
|
||||
if (prod3.Count > 0)
|
||||
{
|
||||
//刪除掛單明細
|
||||
foreach (var item3 in prod3)
|
||||
{
|
||||
var prod4 = _db.bed_order_detail.AsEnumerable().Where(q => q.bed_order_no == item3.bed_order_no).ToList();
|
||||
var prod4 = _db.bed_order_detail.Where(q => q.bed_order_no == item3.bed_order_no).ToList();
|
||||
if (prod4.Count > 0)
|
||||
{
|
||||
_db.bed_order_detail.RemoveRange(prod4); //查詢結果全部刪除
|
||||
@@ -97,17 +97,17 @@ public class apporderController : ApiController
|
||||
{
|
||||
if (id > 0)
|
||||
{
|
||||
var prod = _db.pro_order_detail.AsEnumerable().Where(q => q.num == id).FirstOrDefault(); //刪除該筆資料
|
||||
var prod = _db.pro_order_detail.Where(q => q.num == id).FirstOrDefault(); //刪除該筆資料
|
||||
if (prod != null)
|
||||
{
|
||||
//刪除掛單表單
|
||||
var prod3 = _db.bed_order.AsEnumerable().Where(q => q.order_no == prod.order_no).ToList();
|
||||
var prod3 = _db.bed_order.Where(q => q.order_no == prod.order_no).ToList();
|
||||
if (prod3.Count > 0) //count = 1
|
||||
{
|
||||
//刪除掛單明細
|
||||
foreach (var item3 in prod3)
|
||||
{
|
||||
var prod4 = _db.bed_order_detail.AsEnumerable().Where(q => q.bed_order_no == item3.bed_order_no).ToList();
|
||||
var prod4 = _db.bed_order_detail.Where(q => q.bed_order_no == item3.bed_order_no).ToList();
|
||||
if (prod4.Count > 0)
|
||||
{
|
||||
_db.bed_order_detail.RemoveRange(prod4); //查詢結果全部刪除
|
||||
@@ -132,20 +132,20 @@ public class apporderController : ApiController
|
||||
{
|
||||
var ids = nums.TrimEnd(',').Split(',');
|
||||
|
||||
var prod = _db.pro_order.AsEnumerable().Where(q => ids.Contains(q.order_no)).ToList();
|
||||
var prod = _db.pro_order.Where(q => ids.Contains(q.order_no)).ToList();
|
||||
if (prod.Count() > 0)
|
||||
{
|
||||
var prod2 = _db.pro_order_detail.AsEnumerable().Where(q => ids.Contains(Convert.ToString(q.order_no))).ToList();
|
||||
var prod2 = _db.pro_order_detail.Where(q => ids.Contains(Convert.ToString(q.order_no))).ToList();
|
||||
if (prod2.Count > 0)
|
||||
{
|
||||
foreach (var item2 in prod2)
|
||||
{
|
||||
var prod3 = _db.bed_order.AsEnumerable().Where(q => q.order_no == item2.order_no && q.o_detail_id == item2.num).ToList();
|
||||
var prod3 = _db.bed_order.Where(q => q.order_no == item2.order_no && q.o_detail_id == item2.num).ToList();
|
||||
if (prod3.Count > 0)
|
||||
{
|
||||
foreach (var item3 in prod3)
|
||||
{
|
||||
var prod4 = _db.bed_order_detail.AsEnumerable().Where(q => q.bed_order_no == item3.bed_order_no).ToList();
|
||||
var prod4 = _db.bed_order_detail.Where(q => q.bed_order_no == item3.bed_order_no).ToList();
|
||||
if (prod4.Count > 0)
|
||||
{
|
||||
_db.bed_order_detail.RemoveRange(prod4);
|
||||
@@ -156,8 +156,8 @@ public class apporderController : ApiController
|
||||
}
|
||||
|
||||
|
||||
//var prod32 = _db.bed_order.AsEnumerable().Where(q => q.order_no == item2.order_no && q.o_detail_id == item2.num).ToList();
|
||||
//var prod42 = _db.bed_order_detail.AsEnumerable().Where(q => prod32.Select(qf => qf.order_no).ToArray().Contains(q.bed_order_no)).ToList();
|
||||
//var prod32 = _db.bed_order.Where(q => q.order_no == item2.order_no && q.o_detail_id == item2.num).ToList();
|
||||
//var prod42 = _db.bed_order_detail.Where(q => prod32.Select(qf => qf.order_no).ToArray().Contains(q.bed_order_no)).ToList();
|
||||
//_db.bed_order_detail.RemoveRange(prod42);
|
||||
//_db.bed_order.RemoveRange(prod32);
|
||||
|
||||
@@ -199,8 +199,8 @@ public class apporderController : ApiController
|
||||
string sortBy = "", bool sortDesc = false)
|
||||
{
|
||||
|
||||
var qry = _db.pro_order.AsEnumerable();
|
||||
//var aIDt = _db.actItems.AsEnumerable().Where(f => f.subject.Contains(q.actItemTxt.Trim())).Select(f => f.num);//品項
|
||||
var qry = _db.pro_order.AsQueryable();
|
||||
//var aIDt = _db.actItems.Where(f => f.subject.Contains(q.actItemTxt.Trim())).Select(f => f.num);//品項
|
||||
|
||||
|
||||
if (!string.IsNullOrEmpty(q.order_no))
|
||||
@@ -317,11 +317,11 @@ public class apporderController : ApiController
|
||||
if (!string.IsNullOrEmpty( order_no ))
|
||||
{
|
||||
//檢查
|
||||
var prod = _db.pro_order.AsEnumerable().Where(o => o.order_no == order_no).FirstOrDefault();
|
||||
var prod = _db.pro_order.Where(o => o.order_no == order_no).FirstOrDefault();
|
||||
if (prod != null)
|
||||
{
|
||||
int activity = prod.activity_num.HasValue ? prod.activity_num.Value : 0; //活動
|
||||
var bedDt = _db.bed_order_detail.AsEnumerable().Where(b=>b.bed_order.order_no== order_no ); ;//掛單明細
|
||||
var bedDt = _db.bed_order_detail.Where(b=>b.bed_order.order_no== order_no ); ;//掛單明細
|
||||
|
||||
|
||||
//var qry1 = _db.pro_order_detail.AsEnumerable();
|
||||
@@ -435,7 +435,7 @@ public class apporderController : ApiController
|
||||
if (activity > 0)
|
||||
{
|
||||
i = 1;
|
||||
var qry2 = _db.activity_relating.AsEnumerable();
|
||||
var qry2 = _db.activity_relating.AsQueryable();
|
||||
qry2 = qry2.Where(o => o.activity_num == activity);
|
||||
|
||||
if (q.actItem_kind_num.HasValue)
|
||||
@@ -690,14 +690,14 @@ public class apporderController : ApiController
|
||||
|
||||
//家族 : 家長是我的人,跟我同家長的人,我的家長本人,我本人
|
||||
var cc = _db.followers.Where(x => x.num == _follower || x.leader == _follower).Select(x => x.num);
|
||||
var qry = _db.followers.AsEnumerable().Where(f => cc.Any(x => x == f.num) || cc.Any(x => x == f.leader));
|
||||
var qry = _db.followers.Where(f => cc.Any(x => x == f.num) || cc.Any(x => x == f.leader));
|
||||
|
||||
//未付款資料
|
||||
var unpayDt = _db.pro_order_detail.AsEnumerable();
|
||||
var unpayDt = _db.pro_order_detail.AsQueryable();
|
||||
var coDt = unpayDt.Where(x => x.keyin1 == (int)Model.pro_order.detailKeyin1.Collection);//只列出報名狀態為"收款中"的項目
|
||||
|
||||
//未付款訂單
|
||||
var orderDt = _db.pro_order.AsEnumerable();
|
||||
var orderDt = _db.pro_order.AsQueryable();
|
||||
if (!string.IsNullOrEmpty(order_no))
|
||||
orderDt = orderDt.Where(x => x.order_no == order_no);
|
||||
orderDt = orderDt.Where(x => coDt.Select(d => d.order_no).Contains(x.order_no));
|
||||
@@ -737,7 +737,7 @@ public class apporderController : ApiController
|
||||
{
|
||||
|
||||
//未付款資料
|
||||
var unpayDt = _db.pro_order_detail.AsEnumerable();
|
||||
var unpayDt = _db.pro_order_detail.AsQueryable();
|
||||
unpayDt = unpayDt.Where(x => x.keyin1 == (int)Model.pro_order.detailKeyin1.Collection);//只列出報名狀態為"收款中"的項目
|
||||
|
||||
if (!string.IsNullOrEmpty(q.order_no))
|
||||
@@ -865,10 +865,10 @@ public class apporderController : ApiController
|
||||
if (u_name >0 && (!string.IsNullOrEmpty(q.order_no)))
|
||||
{
|
||||
//檢查
|
||||
var prod = _db.pro_order.AsEnumerable().Where(o => o.f_num == u_name && o.order_no != q.order_no).ToList();
|
||||
var prod = _db.pro_order.Where(o => o.f_num == u_name && o.order_no != q.order_no).ToList();
|
||||
if (prod.Count > 0)
|
||||
{
|
||||
var qry = _db.pro_order_detail.AsEnumerable().Where(o => prod.Any(x => x.order_no==o.order_no) );
|
||||
var qry = _db.pro_order_detail.Where(o => prod.Any(x => x.order_no==o.order_no) );
|
||||
int i = 1;
|
||||
var ret = new
|
||||
{
|
||||
@@ -942,7 +942,7 @@ public class apporderController : ApiController
|
||||
if (detail_num > 0 )
|
||||
{
|
||||
//檢查
|
||||
var prod = _db.pro_order_record.AsEnumerable().Where(o => o.detail_num == detail_num )
|
||||
var prod = _db.pro_order_record.Where(o => o.detail_num == detail_num )
|
||||
.OrderByDescending(o=>o.pay_date).ToList();
|
||||
int i = 1;
|
||||
var ret = new
|
||||
@@ -979,7 +979,7 @@ public class apporderController : ApiController
|
||||
[Route("api/apporder/DeleteRecordDetail/{id}")]//刪除收款註記
|
||||
public void DeleteRecordDetail(int id)
|
||||
{
|
||||
var prod = _db.pro_order_record.AsEnumerable().Where(q => q.num == id).FirstOrDefault(); //刪除該筆資料
|
||||
var prod = _db.pro_order_record.Where(q => q.num == id).FirstOrDefault(); //刪除該筆資料
|
||||
if (prod != null)
|
||||
{
|
||||
|
||||
@@ -995,8 +995,8 @@ public class apporderController : ApiController
|
||||
{
|
||||
if (item.detail_num > 0)
|
||||
{
|
||||
float total = _db.pro_order_detail.AsEnumerable().Where(x => x.num == item.detail_num).Select(x => x.price.Value * x.qty.Value).Sum();
|
||||
float pay = _db.pro_order_record.AsEnumerable().Where(x => x.detail_num == item.detail_num).Select(x => x.price.Value).Sum();
|
||||
float total = _db.pro_order_detail.Where(x => x.num == item.detail_num).Select(x => x.price.Value * x.qty.Value).Sum();
|
||||
float pay = _db.pro_order_record.Where(x => x.detail_num == item.detail_num).Select(x => x.price.Value).Sum();
|
||||
|
||||
if (pay + item.price.Value <= total)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user