using System; using System.Collections.Generic; using System.Linq; using System.Web.Mvc; using WX.CRM.Common; using WX.CRM.IBLL.Util; using WX.CRM.WEB.ViewModel.Level2; using WX.CRM.WebHelper; namespace WX.CRM.WEB.Controllers.Level2 { public class BatchOrderController : BaseController { // // GET: /BatchOrder/ [Ninject.Inject] public ISecurityHelper security { get; set; } [HttpGet] [AuthorizeRedirect(Roles = InitRights.CONST_L2批量下载)] public ActionResult Index() { return View(); } [HttpPost] [AuthorizeRedirect(Roles = InitRights.CONST_L2批量下载)] public ActionResult getList(Pager pager, BatchOrder order) { List orders = new List(); if (pager.page < 1) { pager.page = 1; } if (pager.rows < 1) { pager.rows = 12; } if (ModelState.IsValid) { orders = order.GetList(); pager.totalRows = orders.Count; if (pager.page == 1) { orders = orders.OrderBy(p => p.FullName).Take(pager.rows).ToList(); } else if (pager.page > 1) { orders = orders.OrderBy(p => p.FullName).Skip((pager.page - 1) * pager.rows).Take(pager.rows).ToList(); } } string Para = order.getPara(); string page = Pagination.GetPage(pager); return Json(new { result = true, page = page, para = Para, Data = orders }, JsonRequestBehavior.AllowGet); } [HttpPost] [AuthorizeRedirect(Roles = InitRights.CONST_L2批量下载)] public ActionResult Open(BatchOrder order) { bool result = true; string msg = ""; List resultList = new List(); if (ModelState.IsValid) { try { foreach (var model in order.GetList()) { returnOrderResult reg, addorder, openorder; RegUserParamModel parm = new RegUserParamModel(model.FullName, "888888", "", model.campaignId, "", "P", ""); reg = parm.getResult(); resultList.Add(reg); if (reg.result) { AddOrderModel1 addOrder = new AddOrderModel1(model.ProductCode, model.FullName, model.campaignId, 1, "13838380038", model.IP, Eid.ToString()); addorder = addOrder.getResult(); resultList.Add(addorder); if (addorder.result) { OpenOrderModel1 openOrder = new OpenOrderModel1(addorder.ApplyOrderId, model.FullName); openorder = openOrder.getResult(); resultList.Add(openorder); } } } } catch (Exception ex) { result = false; msg = ex.Message; } } else { msg = "验证不通过"; } var regCount = resultList.Where(p => p.result == false && p.type == "reg").ToList(); if (regCount.Count > 0) { result = false; string userNames = string.Join(",", regCount.Select(p => p.userName).ToArray()); msg = "注册不通过数:" + regCount.Count + "。" + userNames; LogHelper.Error("注册不通过:" + JsonHelper.ObjDivertToJson(regCount)); } var addCount = resultList.Where(p => p.result == false && p.type == "add").ToList(); if (addCount.Count > 0) { result = false; string userNames = string.Join(",", addCount.Select(p => p.userName).ToArray()); msg += "下单不通过数:" + addCount.Count + "。" + userNames; LogHelper.Error("申请不通过:" + JsonHelper.ObjDivertToJson(addCount)); } var openCount = resultList.Where(p => p.result == false && p.type == "open").ToList(); if (openCount.Count > 0) { result = false; string userNames = string.Join(",", openCount.Select(p => p.userName).ToArray()); msg += "开通不通过数:" + openCount.Count + "。" + userNames; LogHelper.Error("开通不通过:" + JsonHelper.ObjDivertToJson(openCount)); } return Json(new { result = result, message = msg }, JsonRequestBehavior.AllowGet); } } }