182 lines
6.8 KiB
C#
182 lines
6.8 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Web.Mvc;
|
|
using WX.CRM.Common;
|
|
using WX.CRM.IBLL.Res;
|
|
using WX.CRM.Model.Entity;
|
|
using WX.CRM.WebHelper;
|
|
|
|
namespace WX.CRM.WEB.Controllers.Res
|
|
{
|
|
public class AllocateStrategyController : BaseController
|
|
{
|
|
IRES_ALLOCATESTRATEGY _Ibll;
|
|
IRES_ALLOCATESTRATEGY_Q _Ibll_Q;
|
|
IRES_SALESGROUP_Q _groupQ;
|
|
|
|
public AllocateStrategyController(IRES_ALLOCATESTRATEGY Ibll, IRES_ALLOCATESTRATEGY_Q Ibll_Q, IRES_SALESGROUP_Q groupQ)
|
|
{
|
|
this._Ibll = Ibll;
|
|
this._Ibll_Q = Ibll_Q;
|
|
this._groupQ = groupQ;
|
|
}
|
|
ValidationErrors errors = new ValidationErrors();
|
|
|
|
#region 首页
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_资源分配策略)]
|
|
public ActionResult Index()
|
|
{
|
|
ToolBar tb = new ToolBar();
|
|
string[] toolbtn = new ToolButtonView().ToolButtonRight(InitRights.资源分配策略, userRightId);
|
|
tb.AllowButton(toolbtn);
|
|
ViewBag.ToolBar = tb;
|
|
|
|
Pager gp = new Pager() { page = 1, rows = 10 };
|
|
string tableId = "tablist";
|
|
Table tab = new Table(tableId);
|
|
tab.AddHiddenHeadCol("STRATEGYID", "策略ID");
|
|
tab.AddHeadCol("STRATEGYNAME", "", "策略名称", true);
|
|
tab.AddHeadCol("SSALESGROUPID", "", "客服资源分组", true);
|
|
//tab.AddHeadCol("CHECKPROCEDURE", "", "检测过程", true);
|
|
tab.AddHeadCol("ALLCOTEPROCEDURE", "", "分配过程", true);
|
|
//tab.AddHeadCol("VIEWPROCEDURE", "", "查看过程", true);
|
|
//tab.AddHeadCol("RECYCLEPROCEDURE", "", "回收过程", true);
|
|
tab.AddHeadCol("MEMO", "", "备注", true);
|
|
tab.AddHeadCol("CTIME", "", "创建时间", true);
|
|
tab.AddHeadCol("CREATEUSER", "", "创建人");
|
|
tab.AddHeadRow();
|
|
ViewBag.GroupList = tab.GetTable() + Pagination.GetPage(gp, tableId, "10,15,20");
|
|
|
|
List<SelectListItem> list = getSalesGroupList();
|
|
ViewBag.saleGroupList = list;
|
|
|
|
return View();
|
|
}
|
|
#endregion
|
|
|
|
#region 查询数据
|
|
[HttpPost]
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_资源分配策略)]
|
|
public JsonResult GetHtmlList(Pager pg, string columns)
|
|
{
|
|
string name = Request.Form["Name"];
|
|
string stime = Request.Form["STime"];
|
|
string etime = Request.Form["ETime"];
|
|
string checkProc = Request.Form["checkProc"];
|
|
string allocateProc = Request.Form["allocateProc"];
|
|
string viewProc = Request.Form["viewProc"];
|
|
string recyleProc = Request.Form["recyleProc"];
|
|
decimal salesGroupId = Request.Form["salesGroupId"].GetDecimal(0);
|
|
|
|
List<RES_ALLOCATESTRATEGY> list = _Ibll_Q.GetList_AllocateStrategy(ref pg, name, salesGroupId, checkProc, allocateProc, viewProc, recyleProc, stime, etime);
|
|
|
|
Table tb = new Table(columns, true);
|
|
tb.gridPager = pg;
|
|
foreach (RES_ALLOCATESTRATEGY model in list)
|
|
{
|
|
tb.AddHiddenCol(model.STRATEGYID);
|
|
tb.AddCol(model.STRATEGYNAME);
|
|
tb.AddCol(_groupQ.GetModel_ResSalesGroup(model.SALESGROUPID).NAME);
|
|
//tb.AddCol(model.CHECKPROCEDURE);
|
|
tb.AddCol(model.ALLCOTEPROCEDURE);
|
|
//tb.AddCol(model.VIEWPROCEDURE);
|
|
//tb.AddCol(model.RECYCLEPROCEDURE);
|
|
tb.AddCol(model.MEMO);
|
|
tb.AddCol(model.CTIME.ToUnityString(1));
|
|
tb.AddCol(InnerUserHelper.Instance.EidAndName(model.CREATEUSER));
|
|
tb.AddRow();
|
|
}
|
|
var json = new
|
|
{
|
|
totalPages = pg.totalPages,
|
|
totalRows = pg.totalRows,
|
|
rowsList = tb.GetRows()
|
|
};
|
|
return Json(json, JsonRequestBehavior.AllowGet);
|
|
}
|
|
#endregion
|
|
|
|
#region 显示修改页面
|
|
[HttpGet]
|
|
[AuthorizeToolBar(InitRights.CONST_资源分配策略, InitToolBar.CONST_Edit)]
|
|
public ActionResult Edit(string id)
|
|
{
|
|
RES_ALLOCATESTRATEGY model = new RES_ALLOCATESTRATEGY();
|
|
if (!string.IsNullOrEmpty(id))
|
|
{
|
|
model = _Ibll_Q.GetModel_AllocateStrategy(Convert.ToDecimal(id));
|
|
}
|
|
else
|
|
{
|
|
model.CHECKPROCEDURE = "PACK_RES_CHECK.DefaultCheckAndInsert";
|
|
model.ALLCOTEPROCEDURE = "PACK_RES_ALLOCATE.DefaultAllocate";
|
|
model.VIEWPROCEDURE = "PACK_RES_VIEW.DefaultView";
|
|
model.RECYCLEPROCEDURE = "PACK_RES_RECYCLE.DefaultRecycle";
|
|
|
|
}
|
|
|
|
List<SelectListItem> list = getSalesGroupList();
|
|
ViewBag.saleGroupList = list;
|
|
ViewBag.Eid = Eid;
|
|
return View(model);
|
|
}
|
|
#endregion
|
|
|
|
#region 提交 新增/修改
|
|
[HttpPost]
|
|
[AuthorizeToolBar(InitRights.CONST_资源分配策略, InitToolBar.CONST_Edit)]
|
|
public JsonResult Edit(RES_ALLOCATESTRATEGY model)
|
|
{
|
|
if (ModelState.IsValid)
|
|
{
|
|
if (model.STRATEGYID <= 0)
|
|
{
|
|
model.CREATEUSER = UserId;
|
|
model.CTIME = DateTime.Now;
|
|
return JsonHandler.InsertMessage(errors, _Ibll.Create_AllocateStrategy(ref errors, model));
|
|
}
|
|
else
|
|
{
|
|
return JsonHandler.UpdateMessage(errors, _Ibll.Update_AllocateStrategy(ref errors, model));
|
|
}
|
|
}
|
|
else
|
|
{
|
|
|
|
return JsonHandler.ValidateFailMessage();
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 删除
|
|
[AuthorizeToolBar(InitRights.CONST_资源分配策略, InitToolBar.CONST_Delete)]
|
|
public JsonResult Delete(string id)
|
|
{
|
|
if (!string.IsNullOrEmpty(id))
|
|
{
|
|
return JsonHandler.DeleteMessage(errors, _Ibll.Delete_AllocateStrategy(ref errors, Convert.ToDecimal(id)));
|
|
}
|
|
else
|
|
{
|
|
return JsonHandler.ManageMessage("删除失败!", false);
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region
|
|
public List<SelectListItem> getSalesGroupList()
|
|
{
|
|
List<RES_SALESGROUP> salesGrouplist = _groupQ.GetList();
|
|
List<SelectListItem> list = new List<SelectListItem>();
|
|
list.Add(new SelectListItem() { Text = "--请选择--", Value = "0" });
|
|
foreach (RES_SALESGROUP m in salesGrouplist)
|
|
{
|
|
list.Add(new SelectListItem() { Text = m.NAME, Value = m.GROUPID.ToString() });
|
|
}
|
|
return list;
|
|
}
|
|
#endregion
|
|
|
|
}
|
|
}
|