|
|
@@ -36,11 +36,16 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
36
|
36
|
{
|
|
37
|
37
|
case 0:
|
|
38
|
38
|
//基本信息
|
|
39
|
|
- string sql = "select *,[dbo].[GetUserName](F_CreateUser) F_CreateUserName,[dbo].[GetUserName](F_HandleBy) F_DealUserName from T_Con_WorkOrder where F_WorkOrderCode='" + strworkorderid + "'";
|
|
|
39
|
+ string sql = "select *, dbo.GetDepName(F_ComplaintDept) ComplaintDept,[dbo].[GetUserName](F_CreateUser) F_CreateUserName,[dbo].[GetUserName](F_HandleBy) F_DealUserName " +
|
|
|
40
|
+ " from T_Con_WorkOrder where F_WorkOrderCode='" + strworkorderid + "'";
|
|
40
|
41
|
DataTable dtbase = DbHelperSQL.Query(sql).Tables[0];
|
|
41
|
42
|
|
|
42
|
43
|
dtbase.Columns.Add("StateName");
|
|
43
|
44
|
dtbase.Columns.Add("TypeName");
|
|
|
45
|
+ dtbase.Columns.Add("DealDept");
|
|
|
46
|
+ dtbase.Columns.Add("DealUser");
|
|
|
47
|
+ dtbase.Columns.Add("DealDeptName");
|
|
|
48
|
+ dtbase.Columns.Add("DealUserName");
|
|
44
|
49
|
|
|
45
|
50
|
foreach (DataRow dr in dtbase.Rows)
|
|
46
|
51
|
{
|
|
|
@@ -68,8 +73,31 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
68
|
73
|
}
|
|
69
|
74
|
|
|
70
|
75
|
}
|
|
|
76
|
+ string Wosql = "select *, dbo.GetDepName(F_DealDept) DealDept,[dbo].[GetUserNameByUserId](F_DealUser) UserName" +
|
|
|
77
|
+ " from T_Wo_CommonBase where F_WoCode='" + strworkorderid + "'";
|
|
|
78
|
+ DataTable wodtbase = DbHelperSQL.Query(Wosql).Tables[0];
|
|
|
79
|
+ if (wodtbase.Rows != null && wodtbase.Rows .Count >0)
|
|
|
80
|
+ {
|
|
|
81
|
+ dtbase.Rows[0]["DealDept"] = wodtbase.Rows[0]["F_DealDept"].ToString();
|
|
|
82
|
+ dtbase.Rows[0]["DealUser"] = wodtbase.Rows[0]["F_DealUser"].ToString();
|
|
|
83
|
+ dtbase.Rows[0]["DealDeptName"] = wodtbase.Rows[0]["DealDept"].ToString();
|
|
|
84
|
+ dtbase.Rows[0]["DealUserName"] = wodtbase.Rows[0]["UserName"].ToString();
|
|
|
85
|
+
|
|
|
86
|
+ }
|
|
|
87
|
+
|
|
71
|
88
|
|
|
|
89
|
+ var CommonBase = new BLL.T_Wo_CommonBase().GetModelList($"F_WoCode='{dtbase.Rows[0]["F_WorkOrderCode"].ToString () }' and F_IsDelete=0");
|
|
72
|
90
|
return Success("获取成功", dtbase);
|
|
|
91
|
+
|
|
|
92
|
+ case 1://工单流程
|
|
|
93
|
+ var sqllog = "select * from T_Dis_WorkOrderItem where F_WoID = '" + model.F_ID + "' " + " order by F_ID desc";
|
|
|
94
|
+
|
|
|
95
|
+ DataTable dtlog = DbHelperSQL.Query(sqllog).Tables[0];
|
|
|
96
|
+ return Success("获取成功", dtlog);
|
|
|
97
|
+
|
|
|
98
|
+
|
|
|
99
|
+
|
|
|
100
|
+
|
|
73
|
101
|
|
|
74
|
102
|
}
|
|
75
|
103
|
|
|
|
@@ -230,9 +258,13 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
230
|
258
|
F_DealContents=p.F_DealContents,
|
|
231
|
259
|
F_File=p.F_File,
|
|
232
|
260
|
F_Satisfaction=p.F_Satisfaction,
|
|
233
|
|
- F_State=p.F_State
|
|
234
|
|
-
|
|
235
|
|
- }),
|
|
|
261
|
+ F_State=p.F_State,
|
|
|
262
|
+ F_Relationship=p.F_Relationship,
|
|
|
263
|
+ F_FullName = p.F_FullName,
|
|
|
264
|
+ F_IDNumber = p.F_IDNumber,
|
|
|
265
|
+ F_ComplaintDept = p.F_ComplaintDept,
|
|
|
266
|
+ F_ComplaintUser = p.F_ComplaintUser,
|
|
|
267
|
+ }),
|
|
236
|
268
|
total = recordCount
|
|
237
|
269
|
};
|
|
238
|
270
|
return Content(obj.ToJson());
|
|
|
@@ -387,7 +419,7 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
387
|
419
|
/// 添加工单
|
|
388
|
420
|
/// </summary>
|
|
389
|
421
|
/// <returns></returns>
|
|
390
|
|
- public ActionResult AddWorkOrder(Con_WorkOrderInput input, int overtime = 0, int opt = 0, string cont = "")
|
|
|
422
|
+ public ActionResult AddWorkOrder(Con_WorkOrderInput input, int overtime = 0, int opt = 0, string cont = "",string clid="",int clbm=0)
|
|
391
|
423
|
{
|
|
392
|
424
|
|
|
393
|
425
|
if (User != null)
|
|
|
@@ -474,17 +506,12 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
474
|
506
|
}
|
|
475
|
507
|
else if (opt == 3)//转派
|
|
476
|
508
|
{
|
|
477
|
|
- if (input.F_Type2 == 1004 || input.F_Type2 == 1005)//家庭预约,静脉置管维护 立即处理并给健康事业部或置管室 推送一条钉钉消息
|
|
|
509
|
+ bool tt = AssignWO(User, work, cont, clid, clbm);
|
|
|
510
|
+ if (tt)
|
|
478
|
511
|
{
|
|
479
|
|
- int clbm = 0;//健康事业部的部门Id
|
|
480
|
|
- bool tt = DealWO(User, work, cont, "", 1);
|
|
481
|
|
- if (tt)
|
|
482
|
|
- {
|
|
483
|
|
- #region 给健康事业部或 置管室 推送一条钉钉消息
|
|
484
|
|
- #endregion
|
|
485
|
|
- }
|
|
|
512
|
+ #region 给健康事业部或 置管室 推送一条钉钉消息
|
|
|
513
|
+ #endregion
|
|
486
|
514
|
}
|
|
487
|
|
- else return Error("此工单类型不支持转派!");
|
|
488
|
515
|
}
|
|
489
|
516
|
|
|
490
|
517
|
}
|
|
|
@@ -505,7 +532,7 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
505
|
532
|
/// <param name="opt"></param>
|
|
506
|
533
|
/// <param name="cont"></param>
|
|
507
|
534
|
/// <returns></returns>
|
|
508
|
|
- public ActionResult UpdateWorkOrder(Con_WorkOrderInput input, int opt = 0, string cont = "")
|
|
|
535
|
+ public ActionResult UpdateWorkOrder(Con_WorkOrderInput input, int opt = 0, string cont = "", string clid = "", int clbm = 0)
|
|
509
|
536
|
{
|
|
510
|
537
|
if (User != null)
|
|
511
|
538
|
{
|
|
|
@@ -537,7 +564,7 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
537
|
564
|
return Error("查询不到此工单!");
|
|
538
|
565
|
if (User.F_UserCode != "8000")
|
|
539
|
566
|
{
|
|
540
|
|
- if (model.F_CreateUserID != User.F_UserCode)
|
|
|
567
|
+ if (model.F_CreateUser != User.F_UserCode )
|
|
541
|
568
|
return Error("非创建人不能修改工单!");
|
|
542
|
569
|
if (model.F_State == (int)EnumWorkOrderState.assign)
|
|
543
|
570
|
return Error("此工单已派单不能修改!");
|
|
|
@@ -595,18 +622,12 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
595
|
622
|
}
|
|
596
|
623
|
else if (opt == 3)//转派
|
|
597
|
624
|
{
|
|
598
|
|
- if (input.F_Type2 == 1004 || input.F_Type2 == 1005)//家庭预约,静脉置管维护 立即处理并给健康事业部或置管室 推送一条钉钉消息
|
|
|
625
|
+ bool tt = AssignWO(User, model, cont, clid , clbm );
|
|
|
626
|
+ if (tt)
|
|
599
|
627
|
{
|
|
600
|
|
- int clbm = 0;//健康事业部的部门Id
|
|
601
|
|
- bool tt = DealWO(User, model, cont, "", 1);
|
|
602
|
|
- if (tt)
|
|
603
|
|
- {
|
|
604
|
|
- #region 给健康事业部或 置管室 推送一条钉钉消息
|
|
605
|
|
- #endregion
|
|
606
|
|
- }
|
|
607
|
|
-
|
|
|
628
|
+ #region 给健康事业部或 置管室 推送一条钉钉消息
|
|
|
629
|
+ #endregion
|
|
608
|
630
|
}
|
|
609
|
|
- else return Error("此工单类型不支持转派!");
|
|
610
|
631
|
}
|
|
611
|
632
|
|
|
612
|
633
|
}
|
|
|
@@ -719,12 +740,15 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
719
|
740
|
model.F_Phon = input.F_Phon;//来电人电话
|
|
720
|
741
|
model.F_CusAddress = input.F_CusAddress;//地址
|
|
721
|
742
|
model.F_IdCard = input.F_IdCard;//身份证号
|
|
722
|
|
- if (input.F_Type2 == 1004)
|
|
723
|
|
- {
|
|
724
|
|
- model.F_ServiceItems = input.F_ServiceItems;//服务项目
|
|
725
|
|
- }
|
|
726
|
|
- if (input.F_Type2 == 1003)
|
|
727
|
|
- {
|
|
|
743
|
+
|
|
|
744
|
+ model.F_Relationship = input.F_Relationship;
|
|
|
745
|
+ model.F_FullName = input.F_FullName;
|
|
|
746
|
+ model.F_IDNumber = input.F_IDNumber;
|
|
|
747
|
+ model.F_ComplaintDept = input.F_ComplaintDept;
|
|
|
748
|
+ model.F_ComplaintUser = input.F_ComplaintUser;
|
|
|
749
|
+ model.F_ServiceItems = input.F_ServiceItems;//服务项目
|
|
|
750
|
+
|
|
|
751
|
+
|
|
728
|
752
|
model.F_Address = input.F_Address;//地区
|
|
729
|
753
|
model.F_FirstCheckHospital = input.F_FirstCheckHospital;//首次检查医院
|
|
730
|
754
|
model.F_NoduleSize = input.F_NoduleSize;//肺结节大小
|
|
|
@@ -733,15 +757,13 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
733
|
757
|
model.F_Urgency = input.F_Urgency;// 紧急程度:0,常规1,紧急
|
|
734
|
758
|
else
|
|
735
|
759
|
model.F_Urgency = model.F_Urgency;
|
|
736
|
|
- }
|
|
737
|
|
- if (input.F_Type2 == 1005)
|
|
738
|
|
- {
|
|
739
|
|
- model.F_Cathetertype = input.F_Cathetertype;//
|
|
|
760
|
+
|
|
|
761
|
+ model.F_Cathetertype = input.F_Cathetertype;//
|
|
740
|
762
|
model.F_Catheterdept = input.F_Catheterdept;//置管科室
|
|
741
|
763
|
model.F_Cathetertime = input.F_Cathetertime;//置管时间
|
|
742
|
764
|
model.F_BedNum = input.F_BedNum;//床号
|
|
743
|
765
|
model.F_InpatientNum = input.F_InpatientNum;//住院号
|
|
744
|
|
- }
|
|
|
766
|
+
|
|
745
|
767
|
|
|
746
|
768
|
//model.F_DealType = input.F_DealType;//处理方式:立即办理,提交审核,转派部门
|
|
747
|
769
|
model.F_WorkOrderContents = input.F_WorkOrderContents;//工单内容
|
|
|
@@ -977,7 +999,11 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
977
|
999
|
Inputmodel.F_DealContents = item.F_DealContents;//处理内容
|
|
978
|
1000
|
Inputmodel.F_File = "0";
|
|
979
|
1001
|
Inputmodel.F_Satisfaction = item.F_Satisfaction;//满意度
|
|
980
|
|
-
|
|
|
1002
|
+ Inputmodel.F_FullName = item.F_FullName;
|
|
|
1003
|
+ Inputmodel.F_IDNumber = item.F_IDNumber;
|
|
|
1004
|
+ Inputmodel.F_ComplaintDept = item.F_ComplaintDept;
|
|
|
1005
|
+ Inputmodel.F_ComplaintUser = item.F_ComplaintUser;
|
|
|
1006
|
+ Inputmodel.ComplaintDept = GetDeptModel(item.F_ComplaintDept == null ? 0 : item.F_ComplaintDept);
|
|
981
|
1007
|
Inputlist.Add(Inputmodel);
|
|
982
|
1008
|
}
|
|
983
|
1009
|
return Inputlist;
|
|
|
@@ -988,16 +1014,16 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
988
|
1014
|
/// 转派工单
|
|
989
|
1015
|
/// </summary>
|
|
990
|
1016
|
|
|
991
|
|
- private bool AssignWO(Model.T_Sys_UserAccount nowUser, Model.T_Con_WorkOrder wokerModel, string cont, int clid = 0, int clbm = 0)
|
|
|
1017
|
+ private bool AssignWO(Model.T_Sys_UserAccount nowUser, Model.T_Con_WorkOrder wokerModel, string cont, string clid = "", int clbm = 0)
|
|
992
|
1018
|
{
|
|
993
|
1019
|
|
|
994
|
1020
|
string touser = ""; string tousername = "";
|
|
995
|
|
- int deptid = 0;
|
|
|
1021
|
+ int deptid = 0;int handle = 0;
|
|
996
|
1022
|
#region 获取接收人
|
|
997
|
|
- if (clid != 0)
|
|
|
1023
|
+ if (!string .IsNullOrEmpty (clid))
|
|
998
|
1024
|
{
|
|
999
|
1025
|
Model.T_Sys_UserAccount clus = userbll.GetModel(clid);
|
|
1000
|
|
-
|
|
|
1026
|
+ handle = clus.F_UserId;
|
|
1001
|
1027
|
deptid = clus.F_DeptId;
|
|
1002
|
1028
|
clbm = clus.F_DeptId;
|
|
1003
|
1029
|
if (clus != null)
|
|
|
@@ -1034,7 +1060,7 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
1034
|
1060
|
#region 工单处理
|
|
1035
|
1061
|
var opt = "指派";
|
|
1036
|
1062
|
int optbut = (int)EnumItemOpt.assign;
|
|
1037
|
|
- int wostate = (int)EnumWorkOrderState.assign;//已指派待处理
|
|
|
1063
|
+ int wostate = (int)EnumWorkOrderState.assign;//已指派待接单
|
|
1038
|
1064
|
string deptname = "";
|
|
1039
|
1065
|
var deptmodel = deptbll.GetModel(nowUser.F_DeptId);
|
|
1040
|
1066
|
if (deptmodel != null)
|
|
|
@@ -1046,6 +1072,7 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
1046
|
1072
|
optcont = ",说明:" + cont;
|
|
1047
|
1073
|
var content = deptname + nowUser.F_UserName + "(" + nowUser.F_UserCode + ")" + opt + "工单给 " + tousername + optcont;
|
|
1048
|
1074
|
var itemid =logbll.AddLog(wokerModel.F_ID, wostate,(int)wokerModel.F_type1, content, (int)EnumItemType.deal, optbut, touser, clbm, nowUser.F_UserCode);
|
|
|
1075
|
+ int n = DbHelperSQL.ExecuteSql($"update T_Wo_CommonBase set F_DealDept='{clbm}',F_DealUser='{handle}' where F_WoCode='{wokerModel.F_WorkOrderCode}'");
|
|
1049
|
1076
|
#endregion
|
|
1050
|
1077
|
if (itemid > 0)
|
|
1051
|
1078
|
{
|
|
|
@@ -1091,7 +1118,7 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
1091
|
1118
|
if (AuditState == 1)
|
|
1092
|
1119
|
{
|
|
1093
|
1120
|
res =logbll.AddLog(wmodel.F_ID, wmodel.F_State.Value,(int)wmodel.F_type1, deptname + ua.F_UserName + "(" + ua.F_UserCode + ")" + "工单审批:已同意审批" + AuditCont, (int)EnumItemType.audit, (int)EnumItemOpt.reaudit, ua.F_UserCode, ua.F_DeptId, ua.F_UserCode);
|
|
1094
|
|
- AssignWO(User, wmodel, "", 0, (int)clbm);
|
|
|
1121
|
+ AssignWO(User, wmodel, "", "", (int)clbm);
|
|
1095
|
1122
|
wmodel.F_State = (int)EnumWorkOrderState.assign;//待处理
|
|
1096
|
1123
|
wmodel.F_AuditState = 1;
|
|
1097
|
1124
|
}
|
|
|
@@ -1129,14 +1156,14 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
1129
|
1156
|
/// <param name="F_Files"></param>
|
|
1130
|
1157
|
/// <param name="isover"></param>
|
|
1131
|
1158
|
/// <returns></returns>
|
|
1132
|
|
- public ActionResult DealWorkOrder(int id,string cont)
|
|
|
1159
|
+ public ActionResult DealWorkOrder(string WorkOrderCode, string cont, int isover=0)
|
|
1133
|
1160
|
{
|
|
1134
|
1161
|
if (User!=null)
|
|
1135
|
1162
|
{
|
|
1136
|
1163
|
if (string.IsNullOrEmpty(cont))
|
|
1137
|
1164
|
return Error("请输入内容");
|
|
1138
|
1165
|
|
|
1139
|
|
- Model.T_Con_WorkOrder wmodel = orderbll.GetModel(id);
|
|
|
1166
|
+ Model.T_Con_WorkOrder wmodel = orderbll.GetModelByCode(WorkOrderCode);
|
|
1140
|
1167
|
if (wmodel != null)
|
|
1141
|
1168
|
{
|
|
1142
|
1169
|
if (wmodel.F_State == 10)
|
|
|
@@ -1217,6 +1244,10 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
1217
|
1244
|
return false;
|
|
1218
|
1245
|
#endregion
|
|
1219
|
1246
|
}
|
|
|
1247
|
+
|
|
|
1248
|
+
|
|
|
1249
|
+
|
|
|
1250
|
+
|
|
1220
|
1251
|
#region nouser
|
|
1221
|
1252
|
///// <summary>
|
|
1222
|
1253
|
///// 转派工单
|
|
|
@@ -1290,78 +1321,86 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
1290
|
1321
|
/// <summary>
|
|
1291
|
1322
|
/// 接单 - 确认工单
|
|
1292
|
1323
|
/// </summary>
|
|
1293
|
|
- /// <param name="id"></param>
|
|
1294
|
|
- /// <returns></returns>
|
|
1295
|
|
- //public ActionResult SureWorkOrder(int id)
|
|
1296
|
|
- //{
|
|
1297
|
|
- // if (User != null)
|
|
1298
|
|
- // {
|
|
|
1324
|
+ /// <param name = "id" ></ param >
|
|
|
1325
|
+ /// < returns ></ returns >
|
|
|
1326
|
+ public ActionResult SureWorkOrder(string WorkOrderCode)
|
|
|
1327
|
+ {
|
|
|
1328
|
+ if (User != null)
|
|
|
1329
|
+ {
|
|
1299
|
1330
|
|
|
1300
|
|
- // Model.T_Con_WorkOrder wmodel = orderbll.GetModel(id);
|
|
1301
|
|
- // if (wmodel != null)
|
|
1302
|
|
- // {
|
|
1303
|
|
- // //var modellist=itembll.GetModelList("F_WoID=" + wmodel.F_ID + "and F_IsUsed=0 order by F_ID desc ").FirstOrDefault();
|
|
1304
|
|
- // // if (!string.IsNullOrEmpty(modellist.F_NextUser))
|
|
1305
|
|
- // // {
|
|
1306
|
|
- // // string[] str = modellist.F_NextUser.Split(',');
|
|
1307
|
|
- // // if (str.Length == 1)
|
|
1308
|
|
- // // {
|
|
1309
|
|
- // // if (modellist.F_NextUser != ua.F_UserCode)
|
|
1310
|
|
- // // return Error("非接单人不可操作工单");
|
|
1311
|
|
- // // }
|
|
1312
|
|
- // // }
|
|
1313
|
|
- // if (wmodel.F_State == (int)EnumWorkOrderState.receive)
|
|
1314
|
|
- // return Error("工单已接单无需重复操作");
|
|
1315
|
|
- // else
|
|
1316
|
|
- // {
|
|
1317
|
|
- // var res = OrdeReceive(User, wmodel);
|
|
1318
|
|
- // if (res)
|
|
1319
|
|
- // return Success("接单成功");
|
|
1320
|
|
- // else
|
|
1321
|
|
- // return Error("接单失败");
|
|
1322
|
|
- // }
|
|
1323
|
|
- // }
|
|
1324
|
|
- // else
|
|
1325
|
|
- // return Error("工单不存在");
|
|
1326
|
|
- // }
|
|
1327
|
|
- // return Error("无操作权限!");
|
|
1328
|
|
- //}
|
|
|
1331
|
+ Model.T_Con_WorkOrder wmodel = orderbll.GetModelByCode(WorkOrderCode);
|
|
|
1332
|
+ if (wmodel != null)
|
|
|
1333
|
+ {
|
|
|
1334
|
+ if (wmodel.F_State != (int)EnumWorkOrderState.receive)
|
|
|
1335
|
+ return Error("工单已接单无需重复操作");
|
|
|
1336
|
+ var Common = new Model.T_Wo_CommonBase();
|
|
|
1337
|
+ var CommonBase = new BLL.T_Wo_CommonBase().GetModelList($"F_WoCode='{wmodel.F_WorkOrderCode }' and F_IsDelete=0");
|
|
|
1338
|
+ if (CommonBase != null && CommonBase.Count > 0)
|
|
|
1339
|
+ {
|
|
|
1340
|
+ Common = CommonBase.FirstOrDefault();
|
|
|
1341
|
+ if (Common.F_DealUser !=null&& Common.F_DealUser>0)
|
|
|
1342
|
+ {
|
|
|
1343
|
+ if (Common.F_DealUser != User.F_UserId)
|
|
|
1344
|
+ return Error("非接单人不可接单");
|
|
|
1345
|
+ }
|
|
|
1346
|
+ else if (Common.F_DealDept != null && Common.F_DealDept > 0)
|
|
|
1347
|
+ {
|
|
|
1348
|
+ if (Common.F_DealDept != User.F_DeptId )
|
|
|
1349
|
+ return Error("非接单部门不可接单");
|
|
|
1350
|
+
|
|
|
1351
|
+ }
|
|
|
1352
|
+
|
|
|
1353
|
+ }
|
|
|
1354
|
+
|
|
|
1355
|
+ var res = OrdeReceive(User, wmodel, Common);
|
|
|
1356
|
+ if (res)
|
|
|
1357
|
+ return Success("接单成功");
|
|
|
1358
|
+ else
|
|
|
1359
|
+ return Error("接单失败");
|
|
|
1360
|
+
|
|
|
1361
|
+
|
|
|
1362
|
+ }
|
|
|
1363
|
+ else
|
|
|
1364
|
+ return Error("工单不存在");
|
|
|
1365
|
+ }
|
|
|
1366
|
+ return Error("无操作权限!");
|
|
|
1367
|
+ }
|
|
1329
|
1368
|
/// <summary>
|
|
1330
|
1369
|
/// 接单
|
|
1331
|
1370
|
/// </summary>
|
|
1332
|
|
- /// <param name="nowUser"></param>
|
|
1333
|
|
- /// <param name="model"></param>
|
|
|
1371
|
+ /// <param name = "nowUser" ></ param >
|
|
|
1372
|
+ /// < param name="model"></param>
|
|
1334
|
1373
|
/// <returns></returns>
|
|
1335
|
|
- //public bool OrdeReceive(Model.T_Sys_UserAccount nowUser, Model.T_Con_WorkOrder model)
|
|
1336
|
|
- //{
|
|
1337
|
|
- // #region 工单处理
|
|
1338
|
|
- // var opt = "接单";
|
|
1339
|
|
- // int optbut = (int)EnumItemOpt.receive;
|
|
1340
|
|
- // int wostate = (int)EnumWorkOrderState.receive;
|
|
1341
|
|
-
|
|
1342
|
|
- // #region 读取当前登录人部门
|
|
1343
|
|
- // string deptname = "";
|
|
1344
|
|
- // var deptmodel =deptbll.GetModel(nowUser.F_DeptId);
|
|
1345
|
|
- // if (deptmodel != null)
|
|
1346
|
|
- // {
|
|
1347
|
|
- // deptname = deptmodel.F_DeptName + "-";
|
|
1348
|
|
- // }
|
|
1349
|
|
- // #endregion
|
|
1350
|
|
- // var content = deptname + nowUser.F_UserName + "(" + nowUser.F_UserCode + ")" + opt;
|
|
1351
|
|
- // var itemid = AddLog((int)model.F_ID, wostate, content, (int)EnumItemType.deal, optbut, "", 0, nowUser);
|
|
1352
|
|
- // if (itemid > 0)
|
|
1353
|
|
- // {
|
|
1354
|
|
- // #region 处理工单
|
|
1355
|
|
- // model.F_State = wostate;//已接单待处理
|
|
1356
|
|
- // model.F_HandleBy = nowUser.F_UserCode;//已接单待处理
|
|
1357
|
|
- // orderbll.Update(model);
|
|
1358
|
|
- // #endregion
|
|
1359
|
|
- // return true;
|
|
1360
|
|
- // }
|
|
1361
|
|
- // else
|
|
1362
|
|
- // return false;
|
|
1363
|
|
- // #endregion
|
|
1364
|
|
- //}
|
|
|
1374
|
+ public bool OrdeReceive(Model.T_Sys_UserAccount nowUser, Model.T_Con_WorkOrder model,Model .T_Wo_CommonBase CommonBase)
|
|
|
1375
|
+ {
|
|
|
1376
|
+ #region 工单处理
|
|
|
1377
|
+ var opt = "接单";
|
|
|
1378
|
+ int optbut = (int)EnumItemOpt.receive;
|
|
|
1379
|
+ int wostate = (int)EnumWorkOrderState.receive;
|
|
|
1380
|
+
|
|
|
1381
|
+ #region 读取当前登录人部门
|
|
|
1382
|
+ string deptname = "";
|
|
|
1383
|
+ var deptmodel = deptbll.GetModel(nowUser.F_DeptId);
|
|
|
1384
|
+ if (deptmodel != null)
|
|
|
1385
|
+ {
|
|
|
1386
|
+ deptname = deptmodel.F_DeptName + "-";
|
|
|
1387
|
+ }
|
|
|
1388
|
+ #endregion
|
|
|
1389
|
+ var content = deptname + nowUser.F_UserName + "(" + nowUser.F_UserCode + ")" + opt;
|
|
|
1390
|
+ var itemid = logbll.AddLog((int)model.F_ID, (int)model.F_type1, wostate, content, (int)EnumItemType.deal, optbut, nowUser.F_UserCode, 0, nowUser.F_UserCode);
|
|
|
1391
|
+ if (itemid > 0)
|
|
|
1392
|
+ {
|
|
|
1393
|
+ #region 处理工单
|
|
|
1394
|
+ model.F_State = wostate;//已接单待处理
|
|
|
1395
|
+ model.F_HandleBy = nowUser.F_UserCode;//已接单待处理
|
|
|
1396
|
+ orderbll.Update(model);
|
|
|
1397
|
+ #endregion
|
|
|
1398
|
+ return true;
|
|
|
1399
|
+ }
|
|
|
1400
|
+ else
|
|
|
1401
|
+ return false;
|
|
|
1402
|
+ #endregion
|
|
|
1403
|
+ }
|
|
1365
|
1404
|
#endregion nouser nouser
|
|
1366
|
1405
|
|
|
1367
|
1406
|
/// <summary>
|
|
|
@@ -1386,7 +1425,102 @@ namespace RMYY_CallCenter_Api.Controllers
|
|
1386
|
1425
|
return Error("操作失败,不存在此工单编号!");
|
|
1387
|
1426
|
}
|
|
1388
|
1427
|
|
|
|
1428
|
+ public string GetDeptModel(int? deptId = 0)
|
|
|
1429
|
+ {
|
|
|
1430
|
+ string sql = " 1=1 ";
|
|
|
1431
|
+
|
|
|
1432
|
+ if (deptId>0)
|
|
|
1433
|
+ {
|
|
|
1434
|
+ sql += " and F_DeptId='" + deptId + "'";
|
|
|
1435
|
+ }
|
|
|
1436
|
+ else
|
|
|
1437
|
+ {
|
|
|
1438
|
+ return "";
|
|
|
1439
|
+ }
|
|
|
1440
|
+ var role = new Bll .T_Sys_Department ().GetModelList(sql).FirstOrDefault();
|
|
|
1441
|
+ string name = role.F_DeptName;
|
|
|
1442
|
+
|
|
|
1443
|
+ return name;
|
|
|
1444
|
+ }
|
|
|
1445
|
+ /// <summary>
|
|
|
1446
|
+ /// 退回工单
|
|
|
1447
|
+ /// </summary>
|
|
|
1448
|
+ /// <param name="WorkOrderCode"></param>
|
|
|
1449
|
+ /// <returns></returns>
|
|
|
1450
|
+ public ActionResult BackWorkOrder(string WorkOrderCode )
|
|
|
1451
|
+ {
|
|
|
1452
|
+ if (User != null)
|
|
|
1453
|
+ {
|
|
|
1454
|
+
|
|
|
1455
|
+ Model.T_Con_WorkOrder wmodel = orderbll.GetModelByCode (WorkOrderCode);
|
|
|
1456
|
+ if (wmodel != null)
|
|
|
1457
|
+ {
|
|
|
1458
|
+ if (wmodel.F_State != (int)EnumWorkOrderState.assign)
|
|
|
1459
|
+ return Error("工单已接单不能退回");
|
|
|
1460
|
+ var Common = new Model.T_Wo_CommonBase();
|
|
|
1461
|
+ var CommonBase = new BLL.T_Wo_CommonBase().GetModelList($"F_WoCode='{wmodel.F_WorkOrderCode }' and F_IsDelete=0");
|
|
|
1462
|
+ if (CommonBase != null && CommonBase.Count > 0)
|
|
|
1463
|
+ {
|
|
|
1464
|
+ Common = CommonBase.FirstOrDefault();
|
|
|
1465
|
+ if (Common.F_DealUser != null && Common.F_DealUser > 0)
|
|
|
1466
|
+ {
|
|
|
1467
|
+ if (Common.F_DealUser != User.F_UserId)
|
|
|
1468
|
+ return Error("非接单人不可退单");
|
|
|
1469
|
+ }
|
|
|
1470
|
+ else if (Common.F_DealDept != null && Common.F_DealDept > 0)
|
|
|
1471
|
+ {
|
|
|
1472
|
+ if (Common.F_DealDept != User.F_DeptId)
|
|
|
1473
|
+ return Error("非接单部门不可退单");
|
|
|
1474
|
+
|
|
|
1475
|
+ }
|
|
|
1476
|
+
|
|
|
1477
|
+ }
|
|
|
1478
|
+
|
|
|
1479
|
+ var res = BackWO(User, wmodel);
|
|
|
1480
|
+ if (res)
|
|
|
1481
|
+ return Success("退单成功");
|
|
|
1482
|
+ else
|
|
|
1483
|
+ return Error("退单失败");
|
|
|
1484
|
+
|
|
1389
|
1485
|
|
|
|
1486
|
+ }
|
|
|
1487
|
+ else
|
|
|
1488
|
+ return Error("工单不存在");
|
|
|
1489
|
+ }
|
|
|
1490
|
+ return Error("无操作权限!");
|
|
|
1491
|
+ }
|
|
|
1492
|
+ /// <summary>
|
|
|
1493
|
+ /// 退回工单
|
|
|
1494
|
+ /// </summary>
|
|
|
1495
|
+ public bool BackWO(Model.T_Sys_UserAccount nowUser, Model.T_Con_WorkOrder model)
|
|
|
1496
|
+ {
|
|
|
1497
|
+ #region 工单处理
|
|
|
1498
|
+ var opt = "接单";
|
|
|
1499
|
+ int optbut = (int)EnumItemOpt.reback;
|
|
|
1500
|
+ int wostate = (int)EnumWorkOrderState.reback;
|
|
|
1501
|
+
|
|
|
1502
|
+ #region 读取当前登录人部门
|
|
|
1503
|
+ string deptname = "";
|
|
|
1504
|
+ var deptmodel = deptbll.GetModel(nowUser.F_DeptId);
|
|
|
1505
|
+ if (deptmodel != null)
|
|
|
1506
|
+ {
|
|
|
1507
|
+ deptname = deptmodel.F_DeptName + "-";
|
|
|
1508
|
+ }
|
|
|
1509
|
+ #endregion
|
|
|
1510
|
+ var content = deptname + nowUser.F_UserName + "(" + nowUser.F_UserCode + ")" + opt;
|
|
|
1511
|
+ var itemid = logbll.AddLog((int)model.F_ID, (int)model.F_type1, wostate, content, (int)EnumItemType.deal, optbut, "", 0, nowUser.F_UserCode);
|
|
|
1512
|
+ if (itemid > 0)
|
|
|
1513
|
+ {
|
|
|
1514
|
+ #region 处理工单
|
|
|
1515
|
+ model.F_State = wostate;//已退回
|
|
|
1516
|
+ orderbll.Update(model);
|
|
|
1517
|
+ #endregion
|
|
|
1518
|
+ return true;
|
|
|
1519
|
+ }
|
|
|
1520
|
+ else
|
|
|
1521
|
+ return false;
|
|
|
1522
|
+ #endregion
|
|
|
1523
|
+ }
|
|
1390
|
1524
|
private class ItemListLog
|
|
1391
|
1525
|
{
|
|
1392
|
1526
|
/// <summary>
|