ComplianceServer/oldcode/WEB/Controllers/Ww/MyWorkController.cs

193 lines
7.6 KiB
C#

using CRM.Core.DTO;
using Newtonsoft.Json.Linq;
using Ninject;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web.Mvc;
using WX.CRM.Common;
using WX.CRM.Common.Layui;
using WX.CRM.IBLL.Util;
using WX.CRM.IBLL.Ww;
using WX.CRM.Model.crmModel;
using WX.CRM.Model.Entity;
using WX.CRM.Model.Ww;
using WX.CRM.WebHelper;
namespace WX.CRM.WEB.Controllers.Ww
{
public class MyWorkController : BaseController
{
ValidationErrors errors = new ValidationErrors();
[Inject]
public IWw_huser _iww_hhuser_service { get; set; }
[Inject]
public ICACHE_Q cacheQ { get; set; }
//
// GET: /MyWork/
[AuthorizeRedirect(Roles = InitRights.CONST_付费企业微信)]
public ActionResult Index()
{
//ToolBar
ToolBar tool = new ToolBar();
string[] toolbtn = new ToolButtonView().ToolButtonRight(InitRights., userRightId);
tool.AllowButton(toolbtn);
tool.AddOtherButton("Other1", "聊天记录", "icon-detail", "ChatRecord_Click", true);
tool.AddOtherButton("Other2", "外部联系人", "icon-group", "OuterUser_Click", true);
tool.AddOtherButton("Other3", "查找客户", "icon-search", "FindUser_Click", true);
tool.AddOtherButton("Other4", "群管理", "icon-search", "Group_Click", true);
tool.AddOtherButton("Other5", "设置工号", "", "", true);
tool.AddOtherButton("Other6", "测试企微", "", "", true);
ViewBag.ToolBar = tool;
string companycode = companyCode;
List<Ww_Corp> list = _iww_hhuser_service.Corp_Get();
if (!string.IsNullOrEmpty(companycode))
{
string companycodeFormat = string.Format("[{0}]", companycode);
list = list.Where(m => m.companycode.Contains(companycodeFormat)).ToList();
}
string defaultcorp = cacheQ.GetValue_Parameter("QWDefaultCorpId");
List<SelectListItem> selectlist = new List<SelectListItem>();
if (string.IsNullOrEmpty(companycode))//公司为空才能请选择
{
selectlist.Add(new SelectListItem() { Value = "", Text = "请选择" });
}
List<object> datalist = new List<object>();
if (list.Count > 0)
{
foreach (Ww_Corp item in list)
{
if (!string.IsNullOrEmpty(defaultcorp) && defaultcorp == item.corpid)
{
selectlist.Add(new SelectListItem() { Text = item.corpname, Value = item.corpid, Selected = true });
}
else
{
selectlist.Add(new SelectListItem() { Text = item.corpname, Value = item.corpid });
}
if (!string.IsNullOrEmpty(companycode))
{
if (!string.IsNullOrEmpty(item.deptid))
{
JObject obj = (JObject)Newtonsoft.Json.Linq.JObject.Parse(item.deptid);
datalist.Add(new { corpid = item.corpid, deptid = obj[companycode].ToString() });
}
else
{
datalist.Add(new { corpid = item.corpid, deptid = "" });
}
}
}
}
else
{
selectlist.Add(new SelectListItem() { Value = "-1", Text = "无数据" });
}
ViewBag.Select = selectlist;
ViewBag.companycode = companycode;
ViewBag.DataList = JsonHelper.ObjDivertToJson(datalist);
ViewBag.WwMessage_Url = cacheQ.GetValue_Parameter("WwMessage_Url");
ViewBag.IsHg = userRoleCodes.Contains("[HGZJ]") || userRoleCodes.Contains("[GLY]");
return View();
}
[HttpPost]
[AuthorizeRedirect(Roles = InitRights.CONST_付费企业微信)]
public JsonResult GetWeWorktHtmlList(Laypage pager, string name, string corp, string deptid, decimal? txt_companyId, string txt_deptId, string txt_groupIds, decimal? txt_userId, decimal? seid, int assignStatus,int orderType)
{
var layUidata = new LayuiData<Ww_hhuserModel>();
try
{
name = name.Trim();
List<Ww_hhuserModel> list = _iww_hhuser_service.WorList_Get(ref pager, name, corp, deptid, txt_companyId, txt_deptId, txt_groupIds, txt_userId, seid, assignStatus, orderType);
foreach (var item in list)
{
if (item.eid.HasValue)
{
decimal userid = InnerUserHelper.Instance.GetUserIdByEid(item.eid);
item.eidAndName = InnerUserHelper.Instance.EidAndName(userid);//工号姓名
item.gname = InnerUserHelper.Instance.GetGroupName(InnerUserHelper.Instance.GetGroupId(userid));//组别
}
}
layUidata.msg = "数据加载成功";
layUidata.code = 0;
layUidata.data = list;
layUidata.count = pager.count;
}
catch (Exception ex)
{
LogHelper.Error(ex.ToString());
layUidata.SetFail(1, "出现错误!" + ex.Message);
}
return Json(layUidata);
}
[HttpGet]
[AuthorizeToolBar(InitRights.CONST_付费企业微信, InitToolBar.CONST_Other5)]
public ActionResult SetEid(string corp, string userid)
{
WW_HHUSER_EID model = new WW_HHUSER_EID();
if (string.IsNullOrEmpty(corp) || string.IsNullOrEmpty(corp))
{
ViewBag.isOK = "0";
ViewBag.Msg = "参数不对!";
}
else
{
model = _iww_hhuser_service.GetModel(userid, corp);
if (model == null)
{
model = new WW_HHUSER_EID() { USERID = userid, CORPID = corp };
}
}
return View(model);
}
[HttpPost]
[AuthorizeToolBar(InitRights.CONST_付费企业微信, InitToolBar.CONST_Other5)]
public JsonResult SetEidSave(WW_HHUSER_EID model)
{
bool result = _iww_hhuser_service.SetEid(model.EID.Value, model.USERID, model.CORPID, model.ASSIGNSTATUS, ref errors);
retMsg ret = new retMsg() { result = result, retcode = 200, retmsg = "设置成功!" };
if (!result)
{
ret.retmsg = "设置失败:" + errors.Error;
}
return Json(ret);
}
[HttpGet]
public JsonResult Check(string appid, string userid)
{
var url = "http://sys.hc.dn8188.com/Work/getqr.html";
var rsp = Utility.PostAjaxData(url, new { appid, userid }.ToJson(), Encoding.UTF8);
var obj = Utility.JSONToObject<QwCheckRsp>(rsp);
if (obj.errcode == 0)
{
return Json(new { resutl = true }, JsonRequestBehavior.AllowGet);
}
return Json(new { resutl = false }, JsonRequestBehavior.AllowGet);
}
private class QwCheckRsp
{
//{"errcode":0,"errmsg":"成功","data":"二维码URL"}
public int errcode { get; set; }
public string errmsg { get; set; }
public string data { get; set; }
}
}
}