129 lines
4.9 KiB
C#
129 lines
4.9 KiB
C#
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<BatchOrder> orders = new List<BatchOrder>();
|
|
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<returnOrderResult> resultList = new List<returnOrderResult>();
|
|
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);
|
|
}
|
|
|
|
|
|
}
|
|
}
|