zhupei il y a 3 ans
Parent
commit
576d41c90e

+ 118 - 1
RMYY_CallCenter_Api/Common/WorkOrderBase.cs

@@ -4,10 +4,11 @@ using System.Collections.Generic;
4 4
 using System.Linq;
5 5
 using System.Web;
6 6
 using RMYY_CallCenter_Api.Utility;
7
+using RMYY_CallCenter_Api.Models.Dto;
7 8
 
8 9
 namespace RMYY_CallCenter_Api
9 10
 {
10
-    public static class WorkOrderBase
11
+    public  class WorkOrderBase
11 12
     {
12 13
 
13 14
 
@@ -25,5 +26,121 @@ namespace RMYY_CallCenter_Api
25 26
         }
26 27
 
27 28
 
29
+        /// <summary>
30
+        /// 获取工单状态
31
+        /// </summary>
32
+        /// <param name="type"></param>
33
+        /// <returns></returns>
34
+        public static List<TypeState> GetTypeState(int type, int ftype = 0)
35
+        {
36
+
37
+            List<TypeState> wlist = Common.GetGongDanState<EnumWorkOrderState>();
38
+            List<TypeState> tlist = Common.GetGongDanState<EnumDisWorkOrderState>();
39
+            List<TypeState> qlist = Common.GetGongDanState<EnumMatWorkOrderState>();
40
+            List<TypeState> dlit = Common.GetGongDanState<EnumDevWorkOrderState>();
41
+            List<TypeState> alit = Common.GetGongDanState<EnumAccWorkOrderState>();
42
+            List<TypeState> hlit = Common.GetGongDanState<EnumHosWorkOrderState>();
43
+            List<TypeState> newlist = new List<TypeState>();
44
+            int parentid = ParentType(type);
45
+            if (parentid != 0)
46
+                ftype = parentid;
47
+            if (ftype == 3000)
48
+            {
49
+                newlist.Add(new TypeState { StateId = "-1", StateValue = "", StateRemark = "全部" });
50
+                newlist.Add(new TypeState { StateId = "0", StateValue = "", StateRemark = "代派工" });
51
+                newlist.Add(new TypeState { StateId = "1", StateValue = "", StateRemark = "已转派" });
52
+                newlist.Add(new TypeState { StateId = "2", StateValue = "", StateRemark = "已处理" });
53
+                newlist.Add(new TypeState { StateId = "3", StateValue = "", StateRemark = "已完结" });
54
+                newlist.Add(new TypeState { StateId = "4", StateValue = "", StateRemark = "异常结束" });
55
+                newlist.Add(new TypeState { StateId = "5", StateValue = "", StateRemark = "已拒单" });
56
+                newlist.Add(new TypeState { StateId = "6", StateValue = "", StateRemark = "外协作单子" });
57
+            }
58
+            else if (ftype == 1000 || ftype == 4000)
59
+            {
60
+                newlist = wlist;
61
+            }
62
+            else
63
+            {
64
+                switch (type)
65
+                {
66
+                    case (int)EnumWorkOrder.RedDis:
67
+                        tlist.RemoveAll(p => ("'" + (int)EnumDisWorkOrderState.dealing + "','" + (int)EnumDisWorkOrderState.takeblood + "','" + (int)EnumDisWorkOrderState.send + "'").Contains(p.StateId));
68
+                        newlist = tlist;
69
+                        break;
70
+
71
+                    case (int)EnumWorkOrder.OrtherDis:
72
+                    case (int)EnumWorkOrder.UrgDis:
73
+                        tlist.RemoveAll(p => ("'" + (int)EnumDisWorkOrderState.stayred + "','" + (int)EnumDisWorkOrderState.staydrug + "','" + (int)EnumDisWorkOrderState.takeblood + "','" + (int)EnumDisWorkOrderState.send + "'").Contains(p.StateId));
74
+
75
+                        newlist = tlist;
76
+                        break;
77
+
78
+                    case (int)EnumWorkOrder.BloodDis:
79
+
80
+                        tlist.RemoveAll(p => ("'" + (int)EnumDisWorkOrderState.stayred + "','" + (int)EnumDisWorkOrderState.staydrug + "','" + (int)EnumDisWorkOrderState.dealing + "','" + (int)EnumDisWorkOrderState.send + "'").Contains(p.StateId));
81
+
82
+                        newlist = tlist;
83
+                        break;
84
+                    case (int)EnumWorkOrder.Mat:
85
+
86
+                        newlist = qlist;
87
+                        break;
88
+                    case (int)EnumWorkOrder.Dev:
89
+
90
+                        newlist = dlit;
91
+                        break;
92
+                    case (int)EnumWorkOrder.Hos:
93
+                        newlist = hlit;
94
+                        break;
95
+
96
+                    case (int)EnumWorkOrder.Serve:
97
+                        alit.RemoveAll(p => ("'" + (int)EnumAccWorkOrderState.dealing + "'").Contains(p.StateId));
98
+                        newlist = alit;
99
+
100
+                        break;
101
+                    case (int)EnumWorkOrder.TakeBlood:
102
+                        alit.RemoveAll(p => ("'" + (int)EnumAccWorkOrderState.arrive + "','" + (int)EnumAccWorkOrderState.keep + "'").Contains(p.StateId));
103
+                        newlist = alit;
104
+
105
+                        break;
106
+
107
+                    case (int)EnumWorkOrder.consultation:
108
+                    case (int)EnumWorkOrder.complaint:
109
+                    case (int)EnumWorkOrder.externalcons:
110
+                    case (int)EnumWorkOrder.appointment:
111
+                    case (int)EnumWorkOrder.maintain:
112
+                        newlist = wlist;
113
+
114
+                        break;
115
+                }
116
+            }
117
+            return newlist;
118
+            //return newlist.OrderBy(p => Convert.ToInt32(p.StateId));
119
+
120
+        }
121
+
122
+
123
+        /// <summary>
124
+        /// 获取最大工单分类
125
+        /// </summary>
126
+        /// <param name="typeid"></param>
127
+        /// <returns></returns>
128
+        public static int ParentType(int typeid)
129
+        {
130
+            int parentid = 0;
131
+            var model = new Bll.T_Sys_GongDan().GetModel(typeid);
132
+            if (model != null)
133
+            {
134
+                if (model.F_ParentID != 0)
135
+                {
136
+                    ParentType(Convert.ToInt32(model.F_ParentID));
137
+                }
138
+                else
139
+                {
140
+                    parentid = model.F_GDId;
141
+                }
142
+            }
143
+            return parentid;
144
+        }
28 145
     }
29 146
 }

+ 1 - 0
RMYY_CallCenter_Api/Controllers/System/UserAccountController.cs

@@ -270,6 +270,7 @@ namespace RMYY_CallCenter_Api.Controllers.System
270 270
             {
271 271
                 usermodel.F_ExtensionNumber = Extno;
272 272
                 userbll.Update(usermodel);
273
+                return Success("编辑成功!");
273 274
             }
274 275
             return Error("不存在此坐席信息!");
275 276
         }

+ 7 - 5
RMYY_CallCenter_Api/Controllers/System/WoStatusOptController.cs

@@ -21,7 +21,7 @@ namespace RMYY_CallCenter_Api.Controllers.System
21 21
         /// <param name="pageindex"></param>
22 22
         /// <param name="pagesize"></param>
23 23
         /// <returns></returns>
24
-        public ActionResult GetList(int type, int pageindex = 1, int pagesize = 10)
24
+        public ActionResult GetList(int type=0, int pageindex = 1, int pagesize = 10)
25 25
         {
26 26
             if (User != null)
27 27
             {
@@ -48,10 +48,12 @@ namespace RMYY_CallCenter_Api.Controllers.System
48 48
                 foreach (DataRow dr in data.Rows)
49 49
                 {
50 50
                     string state = dr["F_State"] != null ? dr["F_State"].ToString() : "";
51
-                    //if (state != "")
52
-                    //{
53
-                    //    dr["F_StateName"] = GetTypeStatenew();
54
-                    //}
51
+                    int wotype = dr["F_Type"] != null ? Convert.ToInt32(dr["F_Type"]) : 0;
52
+                    if (state != "" && wotype>0)
53
+                    {
54
+                        dr["F_StateName"] = WorkOrderBase.GetTypeState(wotype).Where(t=>t.StateId==state).FirstOrDefault().StateRemark;
55
+                        dr["F_WoTypeName"] = gdbll.GetModel(Convert.ToInt32(dr["F_Type"])).F_Name;
56
+                    }              
55 57
                 }
56 58
 
57 59
                 var obj = new

+ 1 - 1
RMYY_CallCenter_Api/Models/Dto/TypeState.cs

@@ -26,7 +26,7 @@ namespace RMYY_CallCenter_Api.Models.Dto
26 26
         public string StateRemark { get; set; }
27 27
 
28 28
         /// <summary>
29
-        /// 工单状态
29
+        /// 工单类型
30 30
         /// </summary>
31 31
         public int WoType { get; set; }
32 32
     }