diff --git a/web/App_Code/admin.cs b/web/App_Code/admin.cs index 4de3c17..64fe4ea 100644 --- a/web/App_Code/admin.cs +++ b/web/App_Code/admin.cs @@ -42,7 +42,7 @@ namespace MyWeb } //定義欄位cookie==================end - private AdmItem JDecode(string json) + public AdmItem JDecode(string json) { json = encrypt.DecryptAutoKey(json); //解密 AdmItem mItem = JsonConvert.DeserializeObject(json); diff --git a/web/App_Code/api/preOrderController.cs b/web/App_Code/api/preOrderController.cs index a5dd57b..98cfcbc 100644 --- a/web/App_Code/api/preOrderController.cs +++ b/web/App_Code/api/preOrderController.cs @@ -1,17 +1,20 @@ -using PagedList; +using DocumentFormat.OpenXml.EMMA; +using MINOM.COM.Utility; +using MyWeb; +using PagedList; using System; using System.Collections.Generic; +using System.Configuration; using System.Linq; using System.Net; +using System.Text; using System.Web; using System.Web.Http; -using MyWeb; -using MINOM.COM.Utility; -using System.Text; +using static MyWeb.admin; // api/pre_order //[ezAuthorize(Roles = "admin")]//群組:* //[ezAuthorize] -public class preOrderController: ApiController +public class preOrderController : ApiController { private Model.ezEntities _db = new Model.ezEntities(); @@ -76,11 +79,12 @@ public class preOrderController: ApiController }); } } - catch (Exception ex) { + catch (Exception ex) + { return Ok(new { - result="N", - message=ex.Message, + result = "N", + message = ex.Message, }); } } @@ -92,20 +96,21 @@ public class preOrderController: ApiController public IHttpActionResult GetPreOrder([FromBody] Model.ViewModel.preOrder pre, int page, int pageSize = 10, string sortBy = "", bool sortDesc = false) { - var qry=_db.pre_order.AsQueryable(); + var qry = _db.pre_order.AsQueryable(); if (!string.IsNullOrEmpty(pre.f_name)) { - qry = qry.Where(x => _db.followers.Where(y => y.u_name.Contains( pre.f_name)).Select(y => y.num).ToList().Contains((int)x.f_num)); + qry = qry.Where(x => _db.followers.Where(y => y.u_name.Contains(pre.f_name)).Select(y => y.num).ToList().Contains((int)x.f_num)); } - if (!string.IsNullOrEmpty(pre.order_no)) { + if (!string.IsNullOrEmpty(pre.order_no)) + { qry = qry.Where(x => x.order_no.Contains(pre.order_no)); } if (!string.IsNullOrEmpty(pre.act_name)) { - qry = qry.Where(x => _db.activities.Where(z=>z.subject.Contains(pre.act_name)).Select(z=>z.num).ToList().Contains((int)x.act_num)); + qry = qry.Where(x => _db.activities.Where(z => z.subject.Contains(pre.act_name)).Select(z => z.num).ToList().Contains((int)x.act_num)); } //sortBy = sortBy ?? string.Empty; - qry =qry.OrderByDescending(x => x.num); + qry = qry.OrderByDescending(x => x.num); var count = qry.Count(); //pageSize = count;//一次取回?? if (pageSize == -1) { @@ -117,10 +122,19 @@ public class preOrderController: ApiController { list = qry.ToPagedList(page, pageSize).Select(x => new { - x.num,x.f_num,x.admin_num,x.order_no,x.item_count,x.total_amt,x.reg_time,x.receipt_num,x.act_num, - f_name=_db.followers.Where(z=>z.num==x.f_num).Select(z=>z.u_name).FirstOrDefault(), - act_name=_db.activities.Where(w=>w.num==x.act_num).Select(w=>w.subject).FirstOrDefault(), - receipt_amt=(_db.receipt_detail.Where(rd=>_db.receipt_master.Where(rm=>rm.order_no==x.order_no).Select(rm=>rm.num).ToList().Contains((int)rd.receipt_num))).Select(rd=>rd.amt).Sum() + x.num, + x.f_num, + x.admin_num, + x.order_no, + x.item_count, + x.total_amt, + x.reg_time, + x.receipt_num, + x.act_num, + admin_name=_db.admins.Where(q=>q.num==x.admin_num).Select(q=>q.u_name).FirstOrDefault(), + f_name = _db.followers.Where(z => z.num == x.f_num).Select(z => z.u_name).FirstOrDefault(), + act_name = _db.activities.Where(w => w.num == x.act_num).Select(w => w.subject).FirstOrDefault(), + receipt_amt = (_db.receipt_detail.Where(rd => _db.receipt_master.Where(rm => rm.order_no == x.order_no).Select(rm => rm.num).ToList().Contains((int)rd.receipt_num))).Select(rd => rd.amt).Sum() }).ToList(), count = count }; @@ -136,12 +150,25 @@ public class preOrderController: ApiController { //要檢查有無報過名 var qry1 = _db.pro_order.AsQueryable(); - qry1 = qry1.Where(y=>y.f_num==pre.f_num&&y.activity_num==pre.act_num); - var o=qry1.FirstOrDefault(); + qry1 = qry1.Where(y => y.f_num == pre.f_num && y.activity_num == pre.act_num); + var o = qry1.FirstOrDefault(); if (o != null && !string.IsNullOrEmpty(o.order_no)) { throw new Exception("已經報過名,請勿重複報名"); } + string scc = ConfigurationManager.AppSettings["shopCarCode"].ToString(); + int admin_num =0; + + if (HttpContext.Current.Session[scc + "admin"] != null) + { + MyWeb.admin admin = new MyWeb.admin(); + AdmItem item = admin.JDecode(HttpContext.Current.Session[scc + "admin"].ToString()); + string info = item.u_id; + if (!string.IsNullOrEmpty(info)) + { + admin_num=_db.admins.Where(x => x.u_id == info).Select(x=>x.num).FirstOrDefault(); + } + } var qry = _db.followers.AsQueryable(); qry = qry.Where(x => x.num == pre.f_num); @@ -154,34 +181,36 @@ public class preOrderController: ApiController preO.act_num = pre.act_num; preO.f_num = pre.f_num; preO.item_count = pre.item_count; - + if (admin_num!=0) { + preO.admin_num = admin_num; + } preO.total_amt = pre.total_amt; preO.reg_time = DateTime.Now; - proO.up_time= DateTime.Now; + proO.up_time = DateTime.Now; proO.reg_time = DateTime.Now; proO.order_no = preO.order_no; proO.activity_num = pre.act_num; proO.f_num = pre.f_num; proO.keyin1 = "A01"; proO.phone = f.phone; - proO.address = f.address??""; + proO.address = f.address ?? ""; proO.demo = ""; _db.pre_order.Add(preO); _db.pro_order.Add(proO); _db.SaveChanges(); - return Ok(new {result="Y",message="新增成功"}); + return Ok(new { result = "Y", message = "新增成功" }); } catch (Exception ex) { LogUtility log = new LogUtility(); - log.writeErrorPath(ex.Message+ex.StackTrace); + log.writeErrorPath(ex.Message + ex.StackTrace); return Ok(new { result = "N", message = $"新增失敗 {ex.Message}" }); } - + } [HttpPost] @@ -191,13 +220,13 @@ public class preOrderController: ApiController { var qry = _db.pre_order.AsQueryable(); - qry = qry.Where(x => x.order_no==pre.order_no); + qry = qry.Where(x => x.order_no == pre.order_no); //sortBy = sortBy ?? string.Empty; qry = qry.OrderByDescending(x => x.num); - + var ret = new { - data=qry.Select(x => new + data = qry.Select(x => new { x.num, x.f_num, @@ -212,8 +241,9 @@ public class preOrderController: ApiController act_name = _db.activities.Where(w => w.num == x.act_num).Select(w => w.subject).FirstOrDefault(), }).FirstOrDefault() }; - if (ret.data == null) { - return Ok(new {result="N",message=""}); + if (ret.data == null) + { + return Ok(new { result = "N", message = "" }); } ; return Ok(new diff --git a/web/admin/order/pre_index.aspx b/web/admin/order/pre_index.aspx index 914cd6b..d13f503 100644 --- a/web/admin/order/pre_index.aspx +++ b/web/admin/order/pre_index.aspx @@ -8,8 +8,8 @@
- - + @@ -50,6 +50,7 @@ order_no: '', f_name:'', }, + reload:0, } }, components: { @@ -84,6 +85,7 @@ if (item.action === "add") { this.currentView = "pre_order_reg-component"; } else if (item.action === "list") { + this.reload++; this.currentView = "pre_order-component"; } }, diff --git a/web/admin/order/pre_order.vue b/web/admin/order/pre_order.vue index d46a0a8..7d26b6f 100644 --- a/web/admin/order/pre_order.vue +++ b/web/admin/order/pre_order.vue @@ -14,11 +14,13 @@ :page.sync="data_table.page" :items-per-page.sync="data_table.pageSize" class="elevation-1"> - + @@ -67,13 +69,18 @@