ComplianceServer/oldcode/WEB/Controllers/Res/SalesGroupPromotionControll...

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);
}
}
}
}