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

316 lines
12 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using WX.CRM.BLL.Util;
using WX.CRM.Common;
using WX.CRM.IBLL.Base;
using WX.CRM.IBLL.Ord;
using WX.CRM.IBLL.Util;
using WX.CRM.Model.Entity;
using WX.CRM.WebHelper;
namespace WX.CRM.WEB.Controllers.Base
{
public class ParameterController : BaseController
{
IBAS_PARAMETER _parameter;
IBAS_PARAMETER_Q _parameter_Q;
IORD_MEMOTYPE_Q _Iord_memotype_Q;
IBAS_PARAMETERGROUP_Q _parameterGroup_Q;
ICACHE_Q _cache_Q;
public ParameterController(
IBAS_PARAMETER Ibll,
IBAS_PARAMETER_Q Ibll_Q,
IORD_MEMOTYPE_Q Iord_bll_Q,
IBAS_PARAMETERGROUP_Q IparaGroup_Q,
ICACHE_Q cache_Q
)
{
this._parameter = Ibll;
this._parameter_Q = Ibll_Q;
this._Iord_memotype_Q = Iord_bll_Q;
this._parameterGroup_Q = IparaGroup_Q;
this._cache_Q = cache_Q;
}
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);
// tb.AllowButton("Create", "Edit", "Details", "Delete");
ViewBag.ToolBar = tb;
Pager gp = new Pager() { page = 1, rows = 10 };
Table tab = new Table("tablist");
tab.AddHiddenHeadCol("map_PKID", "ID");
tab.AddHeadCol("paraKey", "", "参数键", true);
tab.AddHeadCol("paraName", "", "参数名", true);
tab.AddHeadCol("groupName", "", "参数分组", true);
tab.AddHeadCol("paraValue", "150px", "参数值", true);
tab.AddHeadCol("paraType", "", "参数类型", true);
tab.AddHeadCol("map_DEPTCDOE", "", "营业部");
tab.AddHeadCol("remark", "150px", "备注", true);
tab.AddHeadCol("url", "120px", "编辑页面", true);
tab.AddHeadCol("ctime", "75px", "创建时间", true);
tab.AddHeadCol("creatUser", "", "创建人");
tab.AddHeadCol("utime", "75px", "修改时间", true);
tab.AddHeadCol("updateUser", "", "修改人");
tab.AddHeadRow();
ViewBag.GroupList = tab.GetTable() + Pagination.GetPage(gp, "tablist", "5,8,10,15");
return View();
}
#endregion
#region
[AuthorizeRedirect(Roles = InitRights.CONST_参数配置)]
public JsonResult GetHtmlList(Pager gp, string columns)
{
string groupId = Request.Form["groupId"];
string parakey = Request.Form["ParaKey"];
string paraName = Request.Form["ParaName"];
string paraValue = Request.Form["ParaValue"];
string paraType = Request.Form["ParaType"];
string stime = Request.Form["STime"];
string etime = Request.Form["ETime"];
List<BAS_PARAMETER_Extend> list = _parameter_Q.GetList_Patameter(ref gp, parakey, paraName, paraValue, paraType, groupId, stime, etime);
Table tb = new Table(columns, true);
tb.gridPager = gp;
foreach (BAS_PARAMETER_Extend model in list)
{
tb.AddHiddenCol(model.parameter.map_PKID);
tb.AddCol(model.parameter.PARAKEY);
tb.AddCol(model.parameter.PARANAME);
tb.AddCol(model.GroupName);
tb.AddCol(model.parameter.PARAVALUE);
tb.AddCol(model.parameter.PARATYPE);
tb.AddCol(model.parameter.DEPTCDOE);
tb.AddCol(model.parameter.REMARK);
tb.AddCol(model.parameter.EDITFORM);
tb.AddCol(model.parameter.CTIME);
tb.AddCol(InnerUserHelper.Instance.EidAndName(model.parameter.CREATEUSER));
tb.AddCol(model.parameter.UTIME);
tb.AddCol(InnerUserHelper.Instance.EidAndName(model.parameter.UPDATEUSER));
tb.AddRow();
}
var json = new
{
totalPages = gp.totalPages,
totalRows = gp.totalRows,
rowsList = tb.GetRows()
};
return Json(json, JsonRequestBehavior.AllowGet);
}
#endregion
#region
[AuthorizeToolBar(InitRights.CONST_参数配置, InitToolBar.CONST_Details)]
public ActionResult Details(string pkid)
{
BAS_PARAMETER model = new BAS_PARAMETER();
model = _parameter_Q.GetModelByPkid(pkid.GetDecimal(-1));
return View(model);
}
#endregion
#region
#region
[HttpGet]
[AuthorizeToolBar(InitRights.CONST_参数配置, InitToolBar.CONST_Edit)]
public ActionResult Edit(string pkid)
{
BAS_PARAMETER model = new BAS_PARAMETER();
model = _parameter_Q.GetModelByPkid(pkid.GetDecimal(-1));
List<BAS_SALESDEPARTMENT> department = _cache_Q.GetList_SalesDepartMent();
List<BAS_PARAMETERGROUP> list = _parameterGroup_Q.GetList();
List<SelectListItem> selectlistItem = list.Select(m => new SelectListItem() { Text = m.GROUPNAME, Value = m.GROUPID.ToString() }).ToList();
List<SelectListItem> departmentItem = new List<SelectListItem>();
departmentItem.Add(new SelectListItem() { Text = "默认", Value = "" });
departmentItem.AddRange(department.Select(m => new SelectListItem() { Text = m.map_DEPTNAME, Value = m.map_SALEDEPTCODE }).ToList());
// = new List<SelectListItem>();
//foreach (WX.CRM.Model.Entity.BAS_PARAMETERGROUP m in list)
//{
// selectlistItem.Add(new SelectListItem() { Text = m.GROUPNAME, Value = m.GROUPID.ToString() });
//}
ViewBag.ParameterGroupList = selectlistItem;
ViewBag.DepartmentItem = departmentItem;
return View(model);
}
#endregion
#region /
[HttpPost]
[AuthorizeToolBar(InitRights.CONST_参数配置, InitToolBar.CONST_Edit)]
public JsonResult Edit(BAS_PARAMETER model)
{
if (ModelState.IsValid)
{
string op = Request.Form["hid_option"];
if (op == "add")
{
model.map_CTIME = DateTime.Now;
model.map_UTIME = DateTime.Now;
model.map_CREATEUSER = UserId;
model.map_UPDATEUSER = UserId;
var ret = _parameter.Create_Parameter(ref errors, model);
if (ret)
CacheHelper.Remove("cache_Parameter_getList");
return JsonHandler.InsertMessage(errors, ret);
}
else
{
model.map_UPDATEUSER = UserId;
var ret = _parameter.Update_Parameter(ref errors, model);
if (ret)
CacheHelper.Remove("cache_Parameter_getList");
return JsonHandler.UpdateMessage(errors, ret);
}
}
else
{
return JsonHandler.ValidateFailMessage();
}
}
#endregion
#endregion
#region
[AuthorizeToolBar(InitRights.CONST_参数配置, InitToolBar.CONST_Delete)]
public JsonResult Delete(string pkid)
{
var ret = _parameter.Delete_Parameter(ref errors, pkid.GetDecimal(-1));
if (ret)
CacheHelper.Remove("cache_Parameter_getList");
return JsonHandler.DeleteMessage(errors, ret);
}
#endregion
#region
#region
[HttpGet]
public ActionResult MemoParameterEdit(string pkid)
{
BAS_PARAMETER model = new BAS_PARAMETER();
model = _parameter_Q.GetModelByPkid(pkid.GetDecimal(-1));
List<SelectListItem> items = new List<SelectListItem>();
string[] str = model.map_PARAVALUE.Split('#');
List<ORD_MEMOTYPE> lists = _Iord_memotype_Q.GetList();
foreach (var item in lists)
{
SelectListItem sli = new SelectListItem();
sli.Text = item.map_TYPENAME;
sli.Value = item.map_TYPEID.ToString();
for (int i = 0; i < str.Length; i++)
{
if (item.map_TYPEID.ToString() == str[i])
{
sli.Selected = true;
}
}
items.Add(sli);
}
List<BAS_SALESDEPARTMENT> department = _cache_Q.GetList_SalesDepartMent();
List<BAS_PARAMETERGROUP> list = _parameterGroup_Q.GetList();
List<SelectListItem> selectlistItem = list.Select(m => new SelectListItem() { Text = m.GROUPNAME, Value = m.GROUPID.ToString() }).ToList();
List<SelectListItem> departmentItem = new List<SelectListItem>();
departmentItem.Add(new SelectListItem() { Text = "默认", Value = "" });
departmentItem.AddRange(department.Select(m => new SelectListItem() { Text = m.map_DEPTNAME, Value = m.map_SALEDEPTCODE }).ToList());
ViewBag.MemoList = items;
ViewBag.ParameterGroupList = selectlistItem;
ViewBag.DepartmentItem = departmentItem;
return View(model);
}
#endregion
#region /
[HttpPost]
public JsonResult MemoParemeterEdit(BAS_PARAMETER model)
{
if (ModelState.IsValid)
{
model.map_UPDATEUSER = UserId;
return JsonHandler.UpdateMessage(errors, _parameter.Update_Parameter(ref errors, model));
}
else
{
return JsonHandler.ValidateFailMessage();
}
}
#endregion
#endregion
[HttpGet]
public ActionResult SessionParameterEdit(string pkid)
{
BAS_PARAMETER model = _parameter_Q.GetModelByPkid(pkid.GetDecimal(-1));
List<BAS_SALESDEPARTMENT> department = _cache_Q.GetList_SalesDepartMent();
List<BAS_PARAMETERGROUP> list = _parameterGroup_Q.GetList();
List<SelectListItem> selectlistItem = list.Select(m => new SelectListItem() { Text = m.GROUPNAME, Value = m.GROUPID.ToString() }).ToList();
List<SelectListItem> departmentItem = new List<SelectListItem>();
departmentItem.Add(new SelectListItem() { Text = "默认", Value = "" });
departmentItem.AddRange(department.Select(m => new SelectListItem() { Text = m.map_DEPTNAME, Value = m.map_SALEDEPTCODE }).ToList());
ViewBag.ParameterGroupList = selectlistItem;
ViewBag.DepartmentItem = departmentItem;
return View(model);
}
[HttpPost]
public JsonResult SessionParameterEdit(BAS_PARAMETER model)
{
if (ModelState.IsValid)
{
model.map_UPDATEUSER = UserId;
return JsonHandler.UpdateMessage(errors, _parameter.Update_Parameter(ref errors, model));
}
else
{
return JsonHandler.ValidateFailMessage();
}
}
[HttpPost]
public JsonResult GenSessionPwd(string pwd)
{
try
{
if (string.IsNullOrEmpty(pwd))
{
return JsonHandler.ManageMessage("参数错误", false);
}
string clientid = Utility.GetSettingByKey("CRMClientKey");
WX.CRM.IBLL.Util.ISecurityHelper sHelper = new SecurityHelper();
var data = sHelper.encyptData(clientid, pwd);
return Json(new { data = data }, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
LogHelper.Error(ex.ToString());
return JsonHandler.ManageMessage("系统错误", false);
}
}
}
}