|
|
@@ -73,51 +73,55 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
73
|
73
|
customerBaseBLL.Update(modelcustomer);
|
|
74
|
74
|
}
|
|
75
|
75
|
#endregion
|
|
76
|
|
-
|
|
77
|
|
- Dictionary<string, string> paras = new Dictionary<string, string>();
|
|
78
|
|
- string sql = " select * from T_Sys_UserAccount (NOLOCK) where F_UserCode=@F_UserCode and F_PassWord=@F_PassWord and F_DeleteFlag = 0 ";
|
|
79
|
|
- paras.Add("@F_UserCode", login.UserCode);
|
|
80
|
|
- paras.Add("@F_PassWord", login.Password);
|
|
81
|
|
- var dt = DbHelperSQL.Query(sql, paras).Tables[0];
|
|
82
|
76
|
|
|
83
|
|
- if (dt != null && dt.Rows.Count > 0)
|
|
84
|
|
- {
|
|
85
|
|
- //var user = userAccountBLL.GetModel(login.UserCode); //20180926 次方法查询有漏洞
|
|
86
|
|
- var user = userAccountBLL.DataTableToList(dt).ToList().FirstOrDefault();
|
|
87
|
|
- user.F_WxOpenId = login.OpenId;
|
|
|
77
|
+ if (string.IsNullOrEmpty(login.UserCode))
|
|
|
78
|
+ return Error("账号不能为空!");
|
|
|
79
|
+ if (string.IsNullOrEmpty(login.Password))
|
|
|
80
|
+ return Error("密码不能为空!");
|
|
|
81
|
+ Model.T_Sys_UserAccount loginCode = new BLL.T_Sys_UserAccount().LoginGetModel(login.UserCode, login.Password);
|
|
|
82
|
+ Model.T_Sys_UserAccount loginwork = new BLL.T_Sys_UserAccount().LogworkGetModel(login.UserCode, login.Password);
|
|
|
83
|
+ if (loginCode != null || loginwork != null)
|
|
|
84
|
+ {
|
|
|
85
|
+ Model.T_Sys_UserAccount loginUser = null;
|
|
|
86
|
+ string deptcode = "";
|
|
|
87
|
+ if (loginCode != null)
|
|
|
88
|
+ loginUser = loginCode;
|
|
|
89
|
+ else
|
|
|
90
|
+ loginUser = loginwork;
|
|
|
91
|
+ loginUser.F_WxOpenId = login.OpenId;
|
|
88
|
92
|
int UserType = 0;string rolecode = "";
|
|
89
|
93
|
|
|
90
|
94
|
//部门
|
|
91
|
|
- Model.T_Sys_Department modelDep = new BLL.T_Sys_Department().GetModel(user.F_DeptId);
|
|
|
95
|
+ Model.T_Sys_Department modelDep = new BLL.T_Sys_Department().GetModel(loginUser.F_DeptId);
|
|
92
|
96
|
if (modelDep == null)
|
|
93
|
97
|
return Error("获取失败!");
|
|
94
|
98
|
#region 读取角色code
|
|
95
|
|
- var rolemodel = roleBLL.GetModel(user.F_RoleId);
|
|
|
99
|
+ var rolemodel = roleBLL.GetModel(loginUser.F_RoleId);
|
|
96
|
100
|
if (rolemodel != null)
|
|
97
|
101
|
rolecode = rolemodel.F_RoleCode;
|
|
98
|
102
|
#endregion
|
|
99
|
103
|
#region 部门角色
|
|
100
|
104
|
//部门角色(-1管理员,1接待部,2案场经理、项目负责人,3销售部总经理、物业部总经理、工程总经理、设计总经理,4区域客服,5业主(客户档案))
|
|
101
|
|
- if (user.F_RoleId == 17 )
|
|
|
105
|
+ if (loginUser.F_RoleId == 17 )
|
|
102
|
106
|
{
|
|
103
|
107
|
//-1管理员
|
|
104
|
108
|
return Error("无操作权限");
|
|
105
|
109
|
}
|
|
106
|
110
|
else
|
|
107
|
111
|
{
|
|
108
|
|
- if ( user.F_RoleId == 60 || user.F_RoleId == 62)
|
|
|
112
|
+ if (loginUser.F_RoleId == 60 || loginUser.F_RoleId == 62)
|
|
109
|
113
|
{
|
|
110
|
114
|
UserType = 0;
|
|
111
|
115
|
}
|
|
112
|
|
- else if (user.F_RoleId == 61)
|
|
|
116
|
+ else if (loginUser.F_RoleId == 61)
|
|
113
|
117
|
{
|
|
114
|
118
|
UserType = 2;
|
|
115
|
119
|
}
|
|
116
|
|
- else if (user.F_RoleId == 58)
|
|
|
120
|
+ else if (loginUser.F_RoleId == 58)
|
|
117
|
121
|
{
|
|
118
|
122
|
UserType = 4;
|
|
119
|
123
|
}
|
|
120
|
|
- else if (user.F_RoleId == 59)
|
|
|
124
|
+ else if (loginUser.F_RoleId == 59)
|
|
121
|
125
|
{
|
|
122
|
126
|
UserType = 3;
|
|
123
|
127
|
}
|
|
|
@@ -163,7 +167,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
163
|
167
|
rolecode=rolecode,
|
|
164
|
168
|
};
|
|
165
|
169
|
|
|
166
|
|
- if (userAccountBLL.Update(user))
|
|
|
170
|
+ if (userAccountBLL.Update(loginUser))
|
|
167
|
171
|
return Success("绑定成功", obj);
|
|
168
|
172
|
else
|
|
169
|
173
|
return Error("绑定失败");
|
|
|
@@ -566,11 +570,16 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
566
|
570
|
sql += $" and F_IncidentCountry like '%" + country.Trim() + "%'";
|
|
567
|
571
|
if (!string.IsNullOrWhiteSpace(province))//乡
|
|
568
|
572
|
sql += $" and F_IncidentTownship like '%" + township.Trim() + "%'";
|
|
|
573
|
+
|
|
569
|
574
|
// sql += " and (F_CreateBy= '" + ua.F_UserCode + "' or T_Wo_WorkOrder.F_ID in ( " + GetCYWorkOrderID(ua.F_UserCode) + ")) ";
|
|
570
|
575
|
if (ua !=null )
|
|
571
|
576
|
{
|
|
572
|
577
|
Model.T_Sys_RoleInfo ro = rolebll.GetModel(ua.F_RoleId);
|
|
573
|
|
- switch (state)
|
|
|
578
|
+ if (source==3)
|
|
|
579
|
+ {
|
|
|
580
|
+ sql += $" and F_WxOpenId ='" + OpenId + "'";
|
|
|
581
|
+ }
|
|
|
582
|
+ switch (state)
|
|
574
|
583
|
{
|
|
575
|
584
|
case 0://待审批
|
|
576
|
585
|
string uwhere = "";
|
|
|
@@ -651,7 +660,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
651
|
660
|
case 4://待完成的(待处理)
|
|
652
|
661
|
if (GetDWCWorkOrderID(ua.F_UserCode) != null)
|
|
653
|
662
|
{
|
|
654
|
|
- sql += " and F_State in(" + (int)EnumWorkOrderState.dealing + "," + (int)EnumWorkOrderState.reassign + "," + (int)EnumWorkOrderState.receive + "," + (int)EnumWorkOrderState.reback + "," + (int)EnumWorkOrderState.abreback + ") and T_Wo_WorkOrder.F_ID in ( " + GetDWCWorkOrderID(ua.F_UserCode) + ") ";
|
|
|
663
|
+ sql += " and F_State in(" + (int)EnumWorkOrderState.dealing + "," + (int)EnumWorkOrderState.receive + "," + (int)EnumWorkOrderState.reback + "," + (int)EnumWorkOrderState.reassign + ") and T_Wo_WorkOrder.F_ID in ( " + GetDWCWorkOrderID(ua.F_UserCode) + ") ";
|
|
655
|
664
|
}
|
|
656
|
665
|
else
|
|
657
|
666
|
{
|
|
|
@@ -1048,7 +1057,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
1048
|
1057
|
public string GetHApproval(string user)
|
|
1049
|
1058
|
{
|
|
1050
|
1059
|
string str = string.Empty;
|
|
1051
|
|
- str = "select F_WoID from T_Wo_WorkOrderItem_New where isnull(F_IsUsed,'0')='0' and F_ItemType=" + (int)EnumItemType.audit + " and F_OptType=" + (int)EnumItemOpt.audit + "and F_NextUser= '" + user + "'"+ "and F_IsUsed=2"; ;
|
|
|
1060
|
+ str = "select F_WoID from T_Wo_WorkOrderItem_New where F_ItemType=" + (int)EnumItemType.audit + " and F_OptType=" + (int)EnumItemOpt.audit + "and F_NextUser= '" + user + "'" + "and F_IsUsed=2";
|
|
1052
|
1061
|
return str;
|
|
1053
|
1062
|
}
|
|
1054
|
1063
|
/// <summary>
|
|
|
@@ -1428,8 +1437,8 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
1428
|
1437
|
|
|
1429
|
1438
|
string str = string.Empty;
|
|
1430
|
1439
|
#region 查询自己名下未审批的工单列表
|
|
1431
|
|
- var itemlast = itembll.GetModelList(" isnull(F_IsUsed,'0')='0' and F_OptType in(" + (int)EnumItemOpt.audit +","+(int)EnumItemOpt.reback + "," + (int)EnumItemOpt.abreback + ")"+ " and "
|
|
1432
|
|
- + "F_WoState in(" + (int)EnumWorkOrderState.audit + ","+(int)EnumWorkOrderState.neworder + "," + (int)EnumWorkOrderState.assign + "," + (int)EnumWorkOrderState.reassign + "," + (int)EnumWorkOrderState.reback + "," + (int)EnumWorkOrderState.abreback + ") and F_NextUser='" + ua.F_UserCode + "' "
|
|
|
1440
|
+ var itemlast = itembll.GetModelList(" isnull(F_IsUsed,'0')='0' and F_OptType in(" + (int)EnumItemOpt.audit + ")"+ " and "
|
|
|
1441
|
+ + "F_WoState in(" + (int)EnumWorkOrderState.audit + ") and F_NextUser='" + ua.F_UserCode + "' "
|
|
1433
|
1442
|
+ "" + " ");
|
|
1434
|
1443
|
|
|
1435
|
1444
|
foreach (var it in itemlast)
|
|
|
@@ -1484,8 +1493,8 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
1484
|
1493
|
{
|
|
1485
|
1494
|
if (!string .IsNullOrEmpty (GetDeptment(ua)))
|
|
1486
|
1495
|
{
|
|
1487
|
|
- var itemlasts = itembll.GetModelList(" isnull(F_IsUsed,'0')='0' and F_OptType in(" + (int)EnumItemOpt.audit + "," + (int)EnumItemOpt.reback + "," + (int)EnumItemOpt.abreback + ")" + " and "
|
|
1488
|
|
- + "F_WoState in(" + (int)EnumWorkOrderState.audit + "," + (int)EnumWorkOrderState.neworder + (int)EnumWorkOrderState.assign + "," + (int)EnumWorkOrderState.reassign + "," + (int)EnumWorkOrderState.reback + "," + (int)EnumWorkOrderState.abreback + ") and F_NextUser in ( " + GetDeptment(ua) + ") ");
|
|
|
1496
|
+ var itemlasts = itembll.GetModelList(" isnull(F_IsUsed,'0')='0' and F_OptType in(" + (int)EnumItemOpt.audit+ ")" + " and "
|
|
|
1497
|
+ + "F_WoState in(" + (int)EnumWorkOrderState.audit + ") and F_NextUser in ( " + GetDeptment(ua) + ") ");
|
|
1489
|
1498
|
foreach (var it in itemlasts)
|
|
1490
|
1499
|
{
|
|
1491
|
1500
|
float hours = (DateTime.Now - DateTime.Parse(it.F_CreateTime.ToString())).Hours;
|
|
|
@@ -1592,6 +1601,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
1592
|
1601
|
model.F_BranchName = pdModel1.F_DeptName;
|
|
1593
|
1602
|
}
|
|
1594
|
1603
|
}
|
|
|
1604
|
+ model.F_CompanyName = cuModel.F_CompanyName;//公司名称
|
|
1595
|
1605
|
model.F_CustomerID = cuModel.F_CustomerCode;//客户编码
|
|
1596
|
1606
|
model.F_Salesman = cuModel.F_Salesman;
|
|
1597
|
1607
|
model.F_SalesPhone = cuModel.F_SalesPhone;
|
|
|
@@ -1720,7 +1730,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
1720
|
1730
|
}
|
|
1721
|
1731
|
else if (model1[i].F_State == 14)
|
|
1722
|
1732
|
{
|
|
1723
|
|
- model.F_StateName = "待审批";
|
|
|
1733
|
+ model.F_StateName = "待办理";
|
|
1724
|
1734
|
}
|
|
1725
|
1735
|
else if (model1[i].F_State == 15)
|
|
1726
|
1736
|
{
|
|
|
@@ -1728,12 +1738,12 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
1728
|
1738
|
}
|
|
1729
|
1739
|
else if (model1[i].F_State == 16)
|
|
1730
|
1740
|
{
|
|
1731
|
|
- model.F_StateName = "待审批";
|
|
|
1741
|
+ model.F_StateName = "待办理";
|
|
1732
|
1742
|
}
|
|
1733
|
1743
|
#endregion
|
|
1734
|
1744
|
model.F_CusName = model1[i].F_CusName;//客户姓名
|
|
1735
|
1745
|
model.F_CusPhone = model1[i].F_CusPhone;//客户电话
|
|
1736
|
|
- model.F_CompanyName = model1[i].F_CompanyName;//公司名称
|
|
|
1746
|
+ model.F_Canal = model1[i].F_Canal;//
|
|
1737
|
1747
|
model.F_IncidentProvince = model1[i].F_IncidentProvince;//事发地-省
|
|
1738
|
1748
|
model.F_IncidentCity = model1[i].F_IncidentCity;//事发地-市
|
|
1739
|
1749
|
model.F_IncidentCountry = model1[i].F_IncidentCountry;//事发地-县
|
|
|
@@ -1807,7 +1817,15 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
1807
|
1817
|
model.F_ZL_ImprovementRequirements = model1[i].F_ZL_ImprovementRequirements;//质量管理科-改进要求
|
|
1808
|
1818
|
model.F_ZL_CApprovalNo = model1[i].F_ZL_CApprovalNo;//质量管理科-对应审批工作流单号
|
|
1809
|
1819
|
model.F_ZL_CJ_IsRecord = model1[i].F_ZL_CJ_IsRecord;//质量管理科-抽检-未备案、已备案
|
|
1810
|
|
- model.F_IsVisit = model1[i].F_IsVisit;//质量管理科-抽检-未备案、已备案
|
|
|
1820
|
+ if (model1[i].F_IsVisit!=0)
|
|
|
1821
|
+ {
|
|
|
1822
|
+ model.F_IsVisit = "是";//是否回访
|
|
|
1823
|
+ }
|
|
|
1824
|
+ else
|
|
|
1825
|
+ {
|
|
|
1826
|
+ model.F_IsVisit = "否";//是否回访
|
|
|
1827
|
+ }
|
|
|
1828
|
+
|
|
1811
|
1829
|
model.F_IsAudit = model1[i].F_IsAudit;//是否审核
|
|
1812
|
1830
|
model.F_Highopinions = model1[i].F_Highopinions ;//高层处理意见
|
|
1813
|
1831
|
model.F_CreateOn = model1[i].F_CreateOn; ;//添加时间
|
|
|
@@ -2386,6 +2404,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
2386
|
2404
|
model.F_ZX_Branch = input.F_ZX_Branch;//分公司
|
|
2387
|
2405
|
model.F_Files = "0";//附件上传ids
|
|
2388
|
2406
|
model.F_DealType = input.F_DealType;//处理方式:当即办理、电话转接、网络转办(点选)
|
|
|
2407
|
+ model.F_Canal = input.F_Canal;//处理方式:当即办理、电话转接、网络转办(点选)
|
|
2389
|
2408
|
#endregion
|
|
2390
|
2409
|
model.F_QuestionType = input.F_QuestionType;//问题类别(投诉抽捡和咨询类别不一样)
|
|
2391
|
2410
|
model.F_CustomerID = input.F_CustomerID;//客户编号为10为纯数字
|
|
|
@@ -2678,7 +2697,15 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
2678
|
2697
|
model.F_ZL_CJ_IsRecord = input.F_ZL_CJ_IsRecord;//质量管理科-抽检-未备案、已备案
|
|
2679
|
2698
|
if (input.F_IsVisit != null)
|
|
2680
|
2699
|
{
|
|
2681
|
|
- model.F_IsVisit = input.F_IsVisit;
|
|
|
2700
|
+ try
|
|
|
2701
|
+ {
|
|
|
2702
|
+ model.F_IsVisit = int.Parse(input.F_IsVisit);
|
|
|
2703
|
+ }
|
|
|
2704
|
+ catch
|
|
|
2705
|
+ {
|
|
|
2706
|
+ model.F_IsVisit =1;
|
|
|
2707
|
+ }
|
|
|
2708
|
+
|
|
2682
|
2709
|
}
|
|
2683
|
2710
|
return model;
|
|
2684
|
2711
|
}
|
|
|
@@ -2727,7 +2754,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
2727
|
2754
|
}
|
|
2728
|
2755
|
else if (deptmodel.F_DeptId == 12)
|
|
2729
|
2756
|
{
|
|
2730
|
|
- input.F_IsVisit = isvisit;
|
|
|
2757
|
+ input.F_IsVisit = isvisit.ToString ();
|
|
2731
|
2758
|
input.F_ZL_QualityEventLevel = deptment.QualityEventLevel;//质量管理科-质量事件等级(未遂、一般、较大、重大)
|
|
2732
|
2759
|
input.F_ZL_ClaimAmount = deptment.ClaimAmount;// 质量管理科-索赔金额(单位元,对应责任单位)
|
|
2733
|
2760
|
input.F_ZL_ResponsibleUnit = deptment.ResponsibleUnit;// 质量管理科-责任单位(需列出,可选多个)
|
|
|
@@ -2755,7 +2782,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
2755
|
2782
|
}
|
|
2756
|
2783
|
else if (deptmodel.F_DeptId == 12)
|
|
2757
|
2784
|
{
|
|
2758
|
|
- input.F_IsVisit = isvisit;
|
|
|
2785
|
+ input.F_IsVisit = isvisit.ToString ();
|
|
2759
|
2786
|
input.F_ZL_CJ_IsRecord = deptment.IsRecord;//质量管理科-抽检-未备案、已备案
|
|
2760
|
2787
|
input.F_ZL_ClaimAmount = deptment.ClaimAmount;// 质量管理科-索赔金额(单位元,对应责任单位)
|
|
2761
|
2788
|
}
|
|
|
@@ -3323,7 +3350,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
3323
|
3350
|
}
|
|
3324
|
3351
|
else if (deptmodel.F_DeptId == 12)
|
|
3325
|
3352
|
{
|
|
3326
|
|
- input.F_IsVisit = isvisit;
|
|
|
3353
|
+ input.F_IsVisit = isvisit.ToString ();
|
|
3327
|
3354
|
input.F_ZL_QualityEventLevel = deptment.QualityEventLevel;//质量管理科-质量事件等级(未遂、一般、较大、重大)
|
|
3328
|
3355
|
input.F_ZL_ClaimAmount = deptment.ClaimAmount;// 质量管理科-索赔金额(单位元,对应责任单位)
|
|
3329
|
3356
|
input.F_ZL_ResponsibleUnit = deptment.ResponsibleUnit;// 质量管理科-责任单位(需列出,可选多个)
|
|
|
@@ -3346,7 +3373,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
3346
|
3373
|
}
|
|
3347
|
3374
|
else if (deptmodel.F_DeptId == 12)
|
|
3348
|
3375
|
{
|
|
3349
|
|
- input.F_IsVisit = isvisit;
|
|
|
3376
|
+ input.F_IsVisit = isvisit.ToString ();
|
|
3350
|
3377
|
input.F_ZL_CJ_IsRecord = deptment.IsRecord;//质量管理科-抽检-未备案、已备案
|
|
3351
|
3378
|
}
|
|
3352
|
3379
|
}
|
|
|
@@ -3513,7 +3540,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
3513
|
3540
|
var itemlast = itembll.GetModelList(" F_ItemType=" + (int)EnumItemType.deal + " and F_WoID='" + model.F_ID + "' and F_NextUser='" + nowUser.F_UserCode + "' order by F_CreateTime desc").FirstOrDefault();
|
|
3514
|
3541
|
if (itemlast != null)
|
|
3515
|
3542
|
touser = itemlast.F_CreateUser;
|
|
3516
|
|
- var itemid = AddLog((int)model.F_ID, wostate, content, (int)EnumItemType.deal, optbut, touser, 0, nowUser, limit + model .F_limit , sms);
|
|
|
3543
|
+ var itemid = AddLog((int)model.F_ID, wostate, content, (int)EnumItemType.Delay, optbut, touser, 0, nowUser, limit + model .F_limit , sms,"", 1);
|
|
3517
|
3544
|
|
|
3518
|
3545
|
#endregion
|
|
3519
|
3546
|
|
|
|
@@ -3624,7 +3651,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
3624
|
3651
|
}
|
|
3625
|
3652
|
var opt = "处理";
|
|
3626
|
3653
|
int optbut = (int)EnumItemOpt.deal;
|
|
3627
|
|
- int wostate = (int)EnumWorkOrderState.dealing;
|
|
|
3654
|
+ int wostate = (int)EnumWorkOrderState.receive;
|
|
3628
|
3655
|
|
|
3629
|
3656
|
if (isover == 1)
|
|
3630
|
3657
|
{
|
|
|
@@ -3808,7 +3835,7 @@ namespace CallCenterApi.Interface.Controllers.weixin
|
|
3808
|
3835
|
var model = woBLL.GetModel(input.F_ID);
|
|
3809
|
3836
|
if (model ==null )
|
|
3810
|
3837
|
return Error("查询不到此工单!");
|
|
3811
|
|
- if(model .F_State !=3)
|
|
|
3838
|
+ if(model .F_State !=3&& model.F_State != 12)
|
|
3812
|
3839
|
{
|
|
3813
|
3840
|
var itemlast = itembll.GetModelList(" F_WoID=" + input.F_ID + " ");
|
|
3814
|
3841
|
if (itemlast .Count >0)
|