TG.WXCRM.V4/WEB/Handler/ControlResource.cs

598 lines
26 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using Ninject;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using System.Web.UI.WebControls;
using WX.CRM.BLL.QH;
using WX.CRM.Common;
using WX.CRM.IBLL.Base;
using WX.CRM.IBLL.QH;
using WX.CRM.IBLL.SYQ;
using WX.CRM.IBLL.Wx;
using WX.CRM.Model.Entity;
using WX.CRM.Model.Enum;
using WX.CRM.WebHelper;
namespace WX.CRM.WEB.Handler
{
public class ControlResource
{
private WX.CRM.IBLL.Base.IBAS_COMPANY_Q qy;
private WX.CRM.IBLL.Base.IBAS_PARAMETERGROUP_Q pr;
private WX.CRM.IBLL.Base.IBAS_COMTYPE_Q ct;
private WX.CRM.IBLL.Base.IBAS_INNERUSER_Q iu;
private WX.CRM.IBLL.Sms.ISMS_MSGTYPE_Q mstype;
private WX.CRM.IBLL.Sms.ISMS_MSGSUBTYPE_Q mstsubtype;
private WX.CRM.IBLL.Csvr.ICSVR_RECORDTYPE_Q recordType;
private WX.CRM.IBLL.Quality.IQC_COMPLAINTDICT_Q qc_Q;
IBAS_BUSINESSTYPE_Q businessBtypeQ;
private WX.CRM.IBLL.Wx.IWX_BALANCE _balance;
private WX.CRM.IBLL.QH.IQH_BALANCE _qhBalance;
private WX.CRM.IBLL.QH.IQH_MONTHLYSTATEMENT_Q monthly;
public ControlResource()
{
qy = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<WX.CRM.IBLL.Base.IBAS_COMPANY_Q>();
pr = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<WX.CRM.IBLL.Base.IBAS_PARAMETERGROUP_Q>();
ct = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<WX.CRM.IBLL.Base.IBAS_COMTYPE_Q>();
iu = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<WX.CRM.IBLL.Base.IBAS_INNERUSER_Q>();
mstype = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<WX.CRM.IBLL.Sms.ISMS_MSGTYPE_Q>();
mstsubtype = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<WX.CRM.IBLL.Sms.ISMS_MSGSUBTYPE_Q>();
monthly = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<WX.CRM.IBLL.QH.IQH_MONTHLYSTATEMENT_Q>();
recordType = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<WX.CRM.IBLL.Csvr.ICSVR_RECORDTYPE_Q>();
qc_Q = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<WX.CRM.IBLL.Quality.IQC_COMPLAINTDICT_Q>();
businessBtypeQ = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<WX.CRM.IBLL.Base.IBAS_BUSINESSTYPE_Q>();
_balance = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<IWX_BALANCE>();
_qhBalance = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<IQH_BALANCE>();
}
/// <summary>
/// 判断试用期
/// </summary>
public static void JudgeSYQ()
{
WX.CRM.IBLL.SYQ.ISYQManager _syq = WebHelper.Infrastructure.NinjectControllerFactory.ninjectKernel.Get<ISYQManager>();
_syq.SYQErro();
}
#region
/// <summary>
/// 获取公司下拉列表数据源(包括了顶端无)
/// type==0:不包括外部公司
/// type==1默认为1 包括了外部公司
/// </summary>
/// <returns></returns>
public List<SelectListItem> GetBas_companyList(int type = 1)
{
List<WX.CRM.Model.Entity.BAS_COMPANY> companyList = qy.GetList();
if (type == 0)
companyList = companyList.Where(m => m.ISOUTERAGENT == 0).ToList();
List<SelectListItem> list = new List<SelectListItem>();
list.Add(new SelectListItem() { Text = "--请选择--", Value = "0" });
foreach (WX.CRM.Model.Entity.BAS_COMPANY m in companyList)
{
list.Add(new SelectListItem() { Text = m.COMPANYNAME, Value = m.COMPANYID.ToString() });
}
return list;
}
/// <summary>
/// 获取公司下拉列表数据源(不包含无)
/// type==0:不包括外部公司
/// type==1默认为1 包括了外部公司
/// </summary>
/// <returns></returns>
public List<SelectListItem> GetBas_companyNeatList(int type = 1)
{
List<WX.CRM.Model.Entity.BAS_COMPANY> companyList = qy.GetList();
if (type == 0)
companyList = companyList.Where(m => m.ISOUTERAGENT == 0).ToList();
List<SelectListItem> list = new List<SelectListItem>();
foreach (WX.CRM.Model.Entity.BAS_COMPANY m in companyList)
{
list.Add(new SelectListItem() { Text = m.COMPANYNAME, Value = m.COMPANYID.ToString() });
}
return list;
}
#endregion
#region
/// <summary>
/// 获取参数分组配置下拉列表数据源(包括了顶端无)
/// </summary>
/// <returns></returns>
public List<SelectListItem> GetBas_parameterGroupList()
{
List<WX.CRM.Model.Entity.BAS_PARAMETERGROUP> parameterGroupList = pr.GetList();
List<SelectListItem> list = new List<SelectListItem>();
list.Add(new SelectListItem() { Text = "--请选择--", Value = "0" });
foreach (WX.CRM.Model.Entity.BAS_PARAMETERGROUP m in parameterGroupList)
{
list.Add(new SelectListItem() { Text = m.GROUPNAME, Value = m.GROUPID.ToString() });
}
return list;
}
#endregion
#region
/// <summary>
/// 获取通用大类下拉列表数据源(包括了顶端无)
/// </summary>
/// <returns></returns>
public List<SelectListItem> GetBas_comTypeList()
{
List<WX.CRM.Model.Entity.BAS_COMTYPE> comTypeList = ct.GetList();
List<SelectListItem> list = new List<SelectListItem>();
list.Add(new SelectListItem() { Text = "--请选择--", Value = "0" });
foreach (WX.CRM.Model.Entity.BAS_COMTYPE m in comTypeList)
{
list.Add(new SelectListItem() { Text = m.TYPENAME, Value = m.TYPECODE.ToString() });
}
return list;
}
#endregion
#region
/// <summary>
/// 获取收藏标签类型下拉列表数据源(包括了顶端无)
/// </summary>
/// i =0 则是查询页面使用1则是操作页面使用
/// <returns></returns>
public List<SelectListItem> GetBas_subcomTypeList(int i)
{
var comTypeList = DataCacheHelper.GetCache().GetList_SubComType(WX.CRM.Model.Enum.ComType.FavoritesCustType).OrderByDescending(c => c.CTIME);
var list = new List<SelectListItem>();
if (i == 0)
{
list.Add(new SelectListItem() { Text = "--全部--", Value = "0" });
}
foreach (var m in comTypeList)
{
list.Add(new SelectListItem() { Text = m.SUBTYPENAME, Value = m.SUBTYPECODE.ToString() });
}
return list;
}
#endregion
#region
/// <summary>
/// 获取工单样式列表
/// </summary>
/// <returns></returns>
public List<SelectListItem> GetOrd_MemoStyleList()
{
List<WX.CRM.Model.Entity.ORD_MEMOSTYLE> memoTypeList = DataCacheHelper.GetCache().GetList_MemoStyle();
List<SelectListItem> list = new List<SelectListItem>();
foreach (var item in memoTypeList)
{
list.Add(new SelectListItem() { Text = item.STYLENAME, Value = item.STYLEID.ToString().Trim() });
}
return list;
}
#endregion
#region
public List<SelectListItem> GetSchedualStatus(int i)
{
List<WX.CRM.Model.Entity.BAS_PARAMETER> parameterList = DataCacheHelper.GetCache().GetList_Parameter(ParameterGroup.FXH_ScheduleStatus);
List<SelectListItem> list = new List<SelectListItem>();
if (i == 0)
{
list.Add(new SelectListItem() { Text = "--全部--", Value = "0" });
}
foreach (var item in parameterList)
{
list.Add(new SelectListItem() { Text = item.map_PARANAME, Value = item.map_PARAVALUE });
}
return list;
}
#endregion
#region
public List<SelectListItem> GetGjs_SchedualStatus(int i)
{
List<WX.CRM.Model.Entity.BAS_PARAMETER> parameterList = DataCacheHelper.GetCache().GetList_Parameter(ParameterGroup.GJS_ScheduleStatus);
List<SelectListItem> list = new List<SelectListItem>();
if (i == 0)
{
list.Add(new SelectListItem() { Text = "--全部--", Value = "0" });
}
foreach (var item in parameterList)
{
list.Add(new SelectListItem() { Text = item.map_PARANAME, Value = item.map_PARAVALUE });
}
return list;
}
#endregion
#region
public List<SelectListItem> GetSoft_CustomerStatus(int i)
{
List<SelectListItem> list = new List<SelectListItem>();
if (i == 0)
list.Add(new SelectListItem() { Text = "--全部--", Value = "0" });
foreach (var item in OperationUtil.GetItemFromEnum<WX.CRM.Model.Enum.SoftCustomerStatus>())
{
list.Add(item);
}
return list;
}
#endregion
#region
public List<SelectListItem> GetGjs_AmtStatus(int i)
{
List<WX.CRM.Model.Entity.BAS_PARAMETER> parameterList = DataCacheHelper.GetCache().GetList_Parameter(ParameterGroup.GJS_AmtStatus);
List<SelectListItem> list = new List<SelectListItem>();
if (i == 0)
{
list.Add(new SelectListItem() { Text = "--全部--", Value = "0" });
}
foreach (var item in parameterList)
{
list.Add(new SelectListItem() { Text = item.map_PARANAME, Value = item.map_PARAVALUE });
}
return list;
}
#endregion
#region
public List<SelectListItem> GetGjs_TimeType(int i, int selectedValue = 1)
{
List<WX.CRM.Model.Entity.BAS_PARAMETER> parameterList = DataCacheHelper.GetCache().GetList_Parameter(ParameterGroup.GJS_TimeType);
List<SelectListItem> list = new List<SelectListItem>();
if (i == 0)
{
list.Add(new SelectListItem() { Text = "--全部--", Value = "-1" });
}
foreach (var item in parameterList)
{
if (item.map_PARAVALUE == selectedValue.ToString())
list.Add(new SelectListItem() { Text = item.map_PARANAME, Value = item.map_PARAVALUE, Selected = true });
else
list.Add(new SelectListItem() { Text = item.map_PARANAME, Value = item.map_PARAVALUE });
}
return list;
}
#endregion
#region
/// <summary>
/// 获取工单大类类型
/// </summary>
/// <param name="type">type=1默认有"全部选项" 0没有全部</param>
/// <returns></returns>
public List<SelectListItem> GetOrd_EnumMemoType(int type = 1)
{
List<SelectListItem> list = new List<SelectListItem>();
if (type == 1)
list.Add(new SelectListItem() { Text = "全部", Value = "-1" });
foreach (var item in OperationUtil.GetItemFromEnum<WX.CRM.Model.Enum.EnumMemoType>())
{
list.Add(item);
}
return list;
}
#endregion
#region
/// <summary>
/// 获取工单大类类型
/// </summary>
/// <param name="type">type=1默认有"全部选项" 0没有全部</param>
/// <returns></returns>
public ListOptGroup GetOrd_MemoType(int type = 1)
{
List<WX.CRM.Model.Entity.ORD_MEMOTYPE> memoTypeList = DataCacheHelper.GetCache().GetList_MemoType();
ListOptGroup groupList = new ListOptGroup();
groupList.selectListItem = new List<SelectListItem>();
groupList.groupList = new List<OptGroup>();
if (type == 1)
groupList.selectListItem.Add(new SelectListItem() { Text = "全部", Value = "-1" });
OptGroup group = null;
IList<SelectListItem> typeList = OperationUtil.GetItemFromEnum<WX.CRM.Model.Enum.EnumMemoType>();
foreach (SelectListItem item in typeList)
{
group = new OptGroup() { lable = item.Text, labValue = item.Value };
group.selectListItem = new List<SelectListItem>();
decimal memo_type = Convert.ToDecimal(item.Value);
foreach (WX.CRM.Model.Entity.ORD_MEMOTYPE ordtype in memoTypeList.Where(m => m.MEMO_TYPE == memo_type))
{
group.selectListItem.Add(new SelectListItem() { Text = ordtype.TYPENAME, Value = ordtype.TYPEID.ToString() });
}
groupList.groupList.Add(group);
}
return groupList;
}
#endregion
#region
/// <summary>
/// 获取短信类型
/// </summary>
/// <param name="type">type=1默认有"全部选项" 0没有全部</param>
/// <returns></returns>
public ListOptGroup GetOrd_MsgSubType(int type = 1)
{
List<WX.CRM.Model.Entity.SMS_MSGTYPE> TypeList = mstype.GetList();
List<WX.CRM.Model.Entity.SMS_MSGSUBTYPE> SubList = mstsubtype.GetList();
ListOptGroup groupList = new ListOptGroup();
groupList.selectListItem = new List<SelectListItem>();
groupList.groupList = new List<OptGroup>();
if (type == 1)
groupList.selectListItem.Add(new SelectListItem() { Text = "全部", Value = "-1" });
OptGroup group = null;
foreach (WX.CRM.Model.Entity.SMS_MSGTYPE item in TypeList)
{
group = new OptGroup() { lable = item.TYPENAME, labValue = item.TYPECODE };
group.selectListItem = new List<SelectListItem>();
foreach (WX.CRM.Model.Entity.SMS_MSGSUBTYPE ordtype in SubList.Where(m => m.TYPECODE == item.TYPECODE))
{
group.selectListItem.Add(new SelectListItem() { Text = ordtype.SUBTYPENAME, Value = ordtype.SUBTYPEID.ToString() });
}
groupList.groupList.Add(group);
}
return groupList;
}
#endregion
#region
/// <summary>
/// 获取产品列表 下拉数据源
/// </summary>
/// <param name="type">type=1有全部选项</param>
/// <returns></returns>
//public List<SelectListItem> GetGjs_Proudct(int type = 1)
//{
// List<GJS_PRODUCT> productList = DataCacheHelper.GetCache().GetList_Gjs_Product();
// List<SelectListItem> list = (from a in productList
// select new SelectListItem()
// {
// Text = a.PRODUCTNAME,
// Value = a.PRODUCTCODE
// }).ToList();
// if (type == 1)
// {
// List<SelectListItem> temp = new List<SelectListItem>();
// temp.Add(new SelectListItem() { Text = "全部", Value = "" });
// temp.AddRange(list);
// list = temp;
// }
// return list;
//}
#endregion
#region exlce类型
public List<SelectListItem> GetExcelTypeList(int type = 1)
{
List<BAS_EXCELIMPORTTYPE> typeList = DataCacheHelper.GetCache().GetList_ExcelImportType();
List<SelectListItem> drpList = new List<SelectListItem>();
if (type == 1)
drpList.Add(new SelectListItem() { Value = "", Text = "--全部--" });
foreach (var model in typeList)
{
drpList.Add(new SelectListItem() { Text = model.TYPENAME, Value = model.TYPECODE });
}
return drpList;
}
#endregion
#region
public IList<SelectListItem> GetGroupLeaderType()
{
return OperationUtil.GetItemFromEnum<WX.CRM.Model.Enum.GroupLeaderType>();
}
#endregion
/// <summary>
/// 显示全部列
/// </summary>
/// <param name="type">类型 1显示顶端的“--请选择--” 0不显示</param>
/// <returns></returns>
public List<SelectListItem> GetTutoruserList(int type = 1)
{
List<WX.CRM.Model.Entity.BAS_INNERUSER> list = iu.GetListByUserExt(-1, -1, 1);
List<SelectListItem> drpList = new List<SelectListItem>();
if (type == 1)
drpList.Add(new SelectListItem() { Value = "0", Text = "--请选择--" });
foreach (var model in list)
{
drpList.Add(new SelectListItem() { Text = model.UNAME, Value = model.PKID.ToString() });
}
return drpList;
}
#region
//public List<ListItem> GetCustomerCategoryType(int type = 1)
//{
// List<WX.CRM.Model.Entity.FXH_CUSTOMERCATEGORYTYPE> customerType = DataCacheHelper.GetCache().GetList_CustomerCategroryType().Where(m => m.CATEGORYGROUP == 0).ToList();
// List<ListItem> checkList = new List<ListItem>();
// foreach (var model in customerType)
// {
// checkList.Add(new ListItem() { Text = model.CATEGORYNAME, Value = model.CATEGORYNAME });
// }
// if (type == 1)
// checkList.Add(new ListItem() { Text = "未分类", Value = "-1" });
// return checkList;
//}
#endregion
#region
//public List<SelectListItem> GetGjs_CustomerCategoryType(int type = 1)
//{
// List<WX.CRM.Model.Entity.GJS_CUSTOMERCATEGORYTYPE> customerType = DataCacheHelper.GetCache().GetList_Gjs_CustomerCategroryType().Where(m => m.CATEGORYGROUP == 0).OrderBy(m=>m.CATEGORYLEVEL).ToList();
// List<SelectListItem> checkList = new List<SelectListItem>();
// foreach (var model in customerType)
// {
// checkList.Add(new SelectListItem() { Text = model.CATEGORYNAME, Value = model.CATEGORYID.ToString(), Selected = true });
// }
// if (type == 1)
// checkList.Add(new SelectListItem() { Text = "未分类", Value = "-1",Selected=true });
// return checkList;
//}
//public List<SelectListItem> GetGjs_CustomerCategoryTypeByManual()
//{
// List<WX.CRM.Model.Entity.GJS_CUSTOMERCATEGORYTYPE> customerType = DataCacheHelper.GetCache().GetList_Gjs_CustomerCategroryType().Where(m => m.CATEGORYGROUP == 0&&m.OPTYPE==0).OrderBy(m => m.CATEGORYLEVEL).ToList();
// List<SelectListItem> checkList = new List<SelectListItem>();
// foreach (var model in customerType)
// {
// checkList.Add(new SelectListItem() { Text = model.CATEGORYNAME, Value = model.CATEGORYID.ToString(), Selected = true });
// }
// return checkList;
//}
#endregion
#region
public List<SelectListItem> GetAllOpMonthAndYearList()
{
var monthList = _balance.GetList().OrderByDescending(p => p.MONTH).Select(p => p.MONTH).Distinct();
List<SelectListItem> list = new List<SelectListItem>();
foreach (var item in monthList)
{
var result = item.Year.ToString() + "-" + item.Month.ToString();
list.Add(new SelectListItem { Text = result.ToString(), Value = result.ToString() });
}
return list;
}
public List<SelectListItem> GetAllQHMonthAndYearList()
{
var monthList = _qhBalance.GetList().OrderByDescending(p => p.MONTH).Select(p => p.MONTH).Distinct();
List<SelectListItem> list = new List<SelectListItem>();
foreach (var item in monthList)
{
var result = item.Year.ToString() + "-" + item.Month.ToString();
list.Add(new SelectListItem { Text = result.ToString(), Value = result.ToString() });
}
return list;
}
public List<SelectListItem> GetMonthByUserPerformanct()
{
List<string> monthList = monthly.GetMonthByUserPerformanct();
List<SelectListItem> list = new List<SelectListItem>();
foreach (var result in monthList)
{
list.Add(new SelectListItem { Text = result, Value = result });
}
return list;
}
public List<SelectListItem> GetAllOpMonthByBackOrg()
{
BAS_MON_INNERUSER_BL bl = new BAS_MON_INNERUSER_BL();
List<DateTime> monthList = bl.GetBackupMont();
List<SelectListItem> list = new List<SelectListItem>();
foreach (DateTime result in monthList)
{
list.Add(new SelectListItem { Text = result.ToString("yyyy-MM-dd"), Value = result.ToString("yyyy-MM-dd") });
}
return list;
}
#endregion
#region
public List<SelectListItem> GetRecordTypeList(int type = 1)
{
List<WX.CRM.Model.Entity.CSVR_RECORDTYPE> list = DataCacheHelper.GetCache().GetList_RecordType();
List<SelectListItem> drpList = new List<SelectListItem>();
if (type == 1)
drpList.Add(new SelectListItem() { Value = "0", Text = "全部", Selected = true });
foreach (var model in list)
{
drpList.Add(new SelectListItem() { Text = model.NAME, Value = model.ID.ToString() });
}
return drpList;
}
#endregion
#region
//1为查询所有
public List<SelectListItem> GetComplainCustomerFromTypeList(int i = 1)
{
List<WX.CRM.Model.Entity.BAS_SUBCOMTYPE> comTypeList = DataCacheHelper.GetCache().GetList_SubComType(WX.CRM.Model.Enum.ComType.ComplainFromType);
List<SelectListItem> list = new List<SelectListItem>();
if (i == 1)
{
list.Add(new SelectListItem() { Text = "--全部--", Value = "" });
}
foreach (WX.CRM.Model.Entity.BAS_SUBCOMTYPE m in comTypeList)
{
list.Add(new SelectListItem() { Text = m.SUBTYPENAME, Value = m.SUBTYPECODE.ToString() });
}
return list;
}
#endregion
#region
//1为查询所有
public List<SelectListItem> GetComplainCustomerLevelList(int i = 1)
{
//List<WX.CRM.Model.Entity.BAS_SUBCOMTYPE> comTypeList = DataCacheHelper.GetCache().GetList_SubComType(Model.Enum.ComType.ComplainCustomerLevel);
//List<SelectListItem> list = new List<SelectListItem>();
//if (i == 1)
//{
// list.Add(new SelectListItem() { Text = "--全部--", Value = "" });
//}
//foreach (WX.CRM.Model.Entity.BAS_SUBCOMTYPE m in comTypeList)
//{
// list.Add(new SelectListItem() { Text = m.SUBTYPENAME, Value = m.SUBTYPECODE.ToString() });
//}
//return list;
List<WX.CRM.Model.Entity.QC_COMPLAINTDICT> levelList = qc_Q.GetList_ComplaintDict().OrderBy(m => m.ORD).ToList();
List<SelectListItem> list = new List<SelectListItem>();
if (i == 1)
{
List<SelectListItem> ItemList = new List<SelectListItem>() {
new SelectListItem(){
Text ="所有",
Value=""
},
// new SelectListItem(){
// Text ="不等于无",
// Value="0"
//},
// new SelectListItem(){
// Text ="所有普通",
// Value="PT"
//},
// new SelectListItem(){
// Text ="所有严重",
// Value="YZ"
//}
};
list.AddRange(ItemList);
}
foreach (WX.CRM.Model.Entity.QC_COMPLAINTDICT m in levelList)
{
list.Add(new SelectListItem() { Text = m.DICTDESC, Value = m.DICTVALUE.ToString() });
}
return list;
}
#endregion
#region
public List<SelectListItem> BusinessTypeList()
{
var blist = businessBtypeQ.GetList();
List<SelectListItem> lis = new List<SelectListItem>();
lis.Clear();
lis.Add(new SelectListItem() { Value = "", Text = "-选择-" });
foreach (var o in blist)
{
SelectListItem item = new SelectListItem() { Value = o.BUSINESSCODE, Text = o.BUSINESSNAME };
lis.Add(item);
}
return lis;
}
#endregion
}
}