173 lines
7.5 KiB
C#
173 lines
7.5 KiB
C#
using System;
|
|
using System.Linq;
|
|
using System.Web.Mvc;
|
|
using WX.CRM.BLL;
|
|
using WX.CRM.BLL.Base;
|
|
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 SalesGroupPromotionController : BaseController
|
|
{
|
|
private readonly IRES_SALESGROUPPROMOTION _resSalesgrouppromotion;
|
|
private readonly IRES_SALESGROUPPROMOTION_DETAIL _resSalesgrouppromotionDetail;
|
|
private readonly IRES_SALESGROUPPROMOTION_TAG _resSalesgrouppromotionTag;
|
|
private readonly IRES_SALESGROUPPROMOTION_LOG _resSalesgrouppromotionLog;
|
|
|
|
public SalesGroupPromotionController(IRES_SALESGROUPPROMOTION resSalesgrouppromotion, IRES_SALESGROUPPROMOTION_DETAIL resSalesgrouppromotionDetail, IRES_SALESGROUPPROMOTION_TAG resSalesgrouppromotionTag, IRES_SALESGROUPPROMOTION_LOG resSalesgrouppromotionLog)
|
|
{
|
|
_resSalesgrouppromotion = resSalesgrouppromotion;
|
|
_resSalesgrouppromotionDetail = resSalesgrouppromotionDetail;
|
|
_resSalesgrouppromotionTag = resSalesgrouppromotionTag;
|
|
_resSalesgrouppromotionLog = resSalesgrouppromotionLog;
|
|
}
|
|
|
|
[HttpGet]
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_微信资源标签设置)]
|
|
public ActionResult Index()
|
|
{
|
|
string tableId = "tablist";
|
|
Table tab = new Table(tableId);
|
|
//tab.isCheckbox = true;
|
|
tab.AddHiddenHeadCol("GROUPID", "组ID");
|
|
tab.AddHeadCol("GROUPNAME", "", "组名");
|
|
tab.AddHiddenHeadCol("INNERUSERID", "员工ID");
|
|
tab.AddHeadCol("EID", "", "员工");
|
|
tab.AddHeadCol("TAG", "", "标签");
|
|
tab.AddHeadCol("ALIAS", "", "工作微信号");
|
|
tab.AddHeadRow();
|
|
|
|
var groupList = _resSalesgrouppromotion.GetList().Select(item => new SelectListItem() { Text = item.NAME, Value = item.GROUPID.ToString() }).ToList();
|
|
var tagList = _resSalesgrouppromotionTag.GetList().Select(item => new SelectListItem() { Text = item.TAGNAME, Value = item.TAG }).ToList();
|
|
ViewBag.groupList = groupList;
|
|
ViewBag.tagList = tagList;
|
|
ViewBag.gridTable = tab.GetTable();
|
|
return View();
|
|
}
|
|
|
|
[HttpPost]
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_微信资源标签设置)]
|
|
public JsonResult Index(decimal? groupId, string tag, decimal? eid, string alias, string columns)
|
|
{
|
|
Table table = new Table(columns, true);
|
|
//table.isCheckbox = true;
|
|
var groupList = _resSalesgrouppromotion.GetList();
|
|
//var tagList = _resSalesgrouppromotionTag.GetList();
|
|
var where = PredicateExtensionses.True<RES_SALESGROUPPROMOTION_DETAIL>();
|
|
if (groupId.HasValue)
|
|
where = where.And(p => p.GROUPID == groupId.Value);
|
|
if (!string.IsNullOrEmpty(tag))
|
|
where = where.And(p => p.TAG == tag);
|
|
if (eid.HasValue)
|
|
where = where.And(p => p.INNERUSERID == InnerUserHelper.Instance.GetUserIdByEid(eid.Value));
|
|
if (!string.IsNullOrEmpty(alias))
|
|
where = where.And(p => p.ALIAS == alias);
|
|
var list = _resSalesgrouppromotionDetail.GetList(where);
|
|
foreach (var item in list)
|
|
{
|
|
table.AddHiddenCol(item.GROUPID);
|
|
table.AddCol(groupList.FirstOrDefault(p => p.GROUPID == item.GROUPID).NAME);
|
|
table.AddHiddenCol(item.INNERUSERID);
|
|
table.AddCol(InnerUserHelper.Instance.EidAndName(item.INNERUSERID));
|
|
table.AddCol(item.TAG);
|
|
table.AddCol(item.ALIAS);
|
|
table.AddRow();
|
|
}
|
|
var json = new { rowsList = table.GetRows() };
|
|
return Json(json, JsonRequestBehavior.AllowGet);
|
|
}
|
|
|
|
[HttpPost]
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_微信资源标签设置)]
|
|
public JsonResult Add(decimal groupId, string tag, decimal eid, string alias)
|
|
{
|
|
try
|
|
{
|
|
var model = new RES_SALESGROUPPROMOTION_DETAIL()
|
|
{
|
|
GROUPID = groupId,
|
|
TAG = tag,
|
|
INNERUSERID = InnerUserHelper.Instance.GetUserIdByEid(eid),
|
|
ALIAS = alias
|
|
};
|
|
var result = _resSalesgrouppromotionDetail.Add(model);
|
|
var modellog = new RES_SALESGROUPPROMOTION_LOG()
|
|
{
|
|
PKID = new SEQUENCES_BL().Seq_base_get(),
|
|
GROUPID = groupId,
|
|
TAG = tag,
|
|
INNERUSERID = InnerUserHelper.Instance.GetUserIdByEid(eid),
|
|
ALIAS = alias,
|
|
STARTDATE = DateTime.Now,
|
|
ENDDATE = Convert.ToDateTime("2050-01-01"),
|
|
CTIME = DateTime.Now
|
|
};
|
|
var resultlog = _resSalesgrouppromotionLog.Add(modellog);
|
|
if (result > 0 && resultlog > 0)
|
|
return Json(new { result = "success" }, JsonRequestBehavior.AllowGet);
|
|
else
|
|
return Json(new { result = "err" }, JsonRequestBehavior.AllowGet);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Error(ex.ToString());
|
|
return Json(new { result = "err" }, JsonRequestBehavior.AllowGet);
|
|
}
|
|
}
|
|
|
|
[HttpPost]
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_微信资源标签设置)]
|
|
public JsonResult Update(decimal groupId, string tag, decimal eid, string alias)
|
|
{
|
|
try
|
|
{
|
|
var model = _resSalesgrouppromotionDetail.Get(p => p.ALIAS == alias);
|
|
model.GROUPID = groupId;
|
|
model.TAG = tag;
|
|
model.INNERUSERID = InnerUserHelper.Instance.GetUserIdByEid(eid);
|
|
var result = _resSalesgrouppromotionDetail.Update(model);
|
|
var modellog = new RES_SALESGROUPPROMOTION_LOG()
|
|
{
|
|
GROUPID = groupId,
|
|
TAG = tag,
|
|
INNERUSERID = InnerUserHelper.Instance.GetUserIdByEid(eid),
|
|
ALIAS = alias,
|
|
STARTDATE = DateTime.Now,
|
|
ENDDATE = Convert.ToDateTime("2050-01-01"),
|
|
CTIME = DateTime.Now
|
|
};
|
|
var resultlog = _resSalesgrouppromotionLog.Save(modellog);
|
|
if (result && resultlog)
|
|
return Json(new { result = "success" }, JsonRequestBehavior.AllowGet);
|
|
else
|
|
return Json(new { result = "err" }, JsonRequestBehavior.AllowGet);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Error(ex.ToString());
|
|
return Json(new { result = "err" }, JsonRequestBehavior.AllowGet);
|
|
}
|
|
}
|
|
|
|
[HttpPost]
|
|
[AuthorizeRedirect(Roles = InitRights.CONST_微信资源标签设置)]
|
|
public JsonResult Delete(string alias)
|
|
{
|
|
try
|
|
{
|
|
var model = _resSalesgrouppromotionDetail.Get(p => p.ALIAS == alias);
|
|
_resSalesgrouppromotionDetail.Delete(model);
|
|
return Json(new { result = "success" }, JsonRequestBehavior.AllowGet);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Error(ex.ToString());
|
|
return Json(new { result = "err" }, JsonRequestBehavior.AllowGet);
|
|
}
|
|
}
|
|
}
|
|
}
|