TG.WXCRM.V4/WEB/Controllers/Base/InnerUserExtLogController.cs

173 lines
6.6 KiB
C#

using Ninject;
using System;
using System.Collections.Generic;
using System.Web.Mvc;
using WX.CRM.Common;
using WX.CRM.IBLL.Base;
using WX.CRM.WebHelper;
namespace WX.CRM.WEB.Controllers.Base
{
public class InnerUserExtLogController : BaseController
{
//
// GET: /InnerUserExtLog/
// GET: /RoomApplay/
[Inject]
public IBAS_INNERUSER_EXT_LOG_Q LogQ { get; set; }
[AuthorizeToolBar(InitRights.CONST_员工管理, InitToolBar.CONST_Other3)]
public ActionResult Index()
{
Pager pager = new Pager() { page = 1, rows = 10 };
string tableId = "tablist";
Table tab = new Table(tableId);
tab.AddHeadCol("INNERUSERID", "", "员工");
tab.AddHeadCol("gName", "", "组别");
tab.AddHeadCol("EXTENDTYPE", "", "扩展类型");
tab.AddHeadCol("NEWSTATUS", "", "新状态");
tab.AddHeadCol("OLDSTATUS", "", "旧状态");
tab.AddHeadCol("OPTIONUSER", "", "操作人");
tab.AddHeadCol("UTIME", "", "时间");
tab.AddHeadRow();
ViewBag.gridTable = tab.GetHead() + Pagination.GetPage(pager, tableId, "5,8,10,15");
return View();
}
[AuthorizeToolBar(InitRights.CONST_员工管理, InitToolBar.CONST_Other3)]
public JsonResult GetHtmlList(Pager pager, string columns)
{
string innerGroupId = Request.Form["innerGroupId"];
decimal inneruserid = InnerUserHelper.Instance.GetUserIdByEid(Request.Form["eId"].GetDecimal());
decimal? extendType = Request.Form["extendType"].GetDecimal();
Table table = new Table(columns, true);
table.gridPager = pager;
List<WX.CRM.Model.Entity.BAS_INNERUSER_EXT_LOG> list = LogQ.GetUserExtLog(ref pager, innerGroupId, inneruserid,
extendType);
foreach (WX.CRM.Model.Entity.BAS_INNERUSER_EXT_LOG model in list)
{
table.AddCol(InnerUserHelper.Instance.EidAndName(model.INNERUSERID));
table.AddCol(InnerUserHelper.Instance.GetGroupName(InnerUserHelper.Instance.GetGroupId(model.INNERUSERID)));
table.AddCol(GetExtendType(model.EXTENDTYPE));
table.AddCol(GetUserType(model.NEWSTATUS));
table.AddCol(GetUserType(model.OLDSTATUS));
table.AddCol(InnerUserHelper.Instance.EidAndName(model.OPTIONUSER));
table.AddCol(model.UTIME);
table.AddRow();
}
var json = new
{
totalPages = pager.totalPages,
totalRows = pager.totalRows,
rowsList = table.GetRows()
};
return Json(json, JsonRequestBehavior.AllowGet);
}
[AuthorizeToolBar(InitRights.CONST_员工管理, InitToolBar.CONST_Other3)]
public FileResult ExportAll()
{
string innerGroupId = Request.QueryString["innerGroupId"];
decimal inneruserid = InnerUserHelper.Instance.GetUserIdByEid(Request.QueryString["eId"].GetDecimal());
decimal? extendType = Request.QueryString["extendType"].GetDecimal();
Pager pager = new Pager() { order = "asc", rows = int.MaxValue, sort = "pkid" };
string checkedFilds = PageRequest.GetQueryString("checkedFilds");
string checkedTitles = PageRequest.GetQueryString("checkedTitles");
List<WX.CRM.Model.Entity.BAS_INNERUSER_EXT_LOG> list = LogQ.GetUserExtLog(ref pager, innerGroupId, inneruserid,
extendType);
return File(ExcelHelper.ExportListModelToExcel<WX.CRM.Model.Entity.BAS_INNERUSER_EXT_LOG>(list, "查看扩张属性变动日志", 10000, checkedFilds, checkedTitles, DataFormart), "application/ms-excel", PageRequest.GetDlownLoadName("查看扩张属性变动日志.xls"));
}
private string DataFormart(string key, object value)
{
string formartValue = string.Empty;
switch (key)
{
case "gName":
formartValue =
InnerUserHelper.Instance.GetGroupName(
InnerUserHelper.Instance.GetGroupId(Convert.ToDecimal(value ?? "0")));
break;
case "NEWSTATUS":
case "OLDSTATUS":
formartValue = GetUserType((decimal?)value);
break;
case "EXTENDTYPE":
formartValue = GetExtendType(Convert.ToDecimal(value));
break;
case "INNERUSERID":
case "OPTIONUSER":
formartValue = InnerUserHelper.Instance.EidAndName(Convert.ToDecimal(value ?? "0"));
break;
default: formartValue = string.Format("{0}", value); break;
}
return formartValue;
}
private string GetUserType(decimal? type)
{
if (!type.HasValue)
return "空";
int _type = Convert.ToInt32(type);
string value = string.Empty;
switch (_type)
{
case 0:
value = "否";
break;
case 1:
value = "是";
break;
case 2:
value = "客服经理";
break;
case 3:
value = "普通客服";
break;
case 4:
value = "高级客服";
break;
case 5:
value = "未分配";
break;
default:
value = "未知";
break;
}
return value;
}
private string GetExtendType(decimal type)
{
int _type = Convert.ToInt32(type);
string value = string.Empty;
switch (_type)
{
case 1:
value = "客服经理";
break;
case 2:
value = "普通客服";
break;
case 3:
value = "高级客服";
break;
case 4:
value = "员工离职";
break;
case 5:
value = "客服状态";
break;
default:
value = "未知";
break;
}
return value;
}
}
}