Sfoglia il codice sorgente

工单来源,一单通达

duhongyu 4 anni fa
parent
commit
134d4c0ea9

+ 2 - 2
CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Configs/system.config

15
   <!-- 设置邮箱名称 -->
15
   <!-- 设置邮箱名称 -->
16
   <add key="MailName" value="邮件中心" />
16
   <add key="MailName" value="邮件中心" />
17
   <!-- 设置邮箱地址 -->
17
   <!-- 设置邮箱地址 -->
18
-  <add key="MailUserName" value="sqszffwrx@126.com" />
18
+  <add key="MailUserName" value="ayszxx@126.com" />
19
   <!-- 设置邮箱密码 -->
19
   <!-- 设置邮箱密码 -->
20
-  <add key="MailPassword" value="sqszf@123456" />
20
+  <add key="MailPassword" value="5116008" />
21
   <!-- 设置邮箱主机 -->
21
   <!-- 设置邮箱主机 -->
22
   <add key="MailServer" value="smtp.126.com"/>
22
   <add key="MailServer" value="smtp.126.com"/>
23
   <!-- ================== 2:接收邮件参数(必须用pop.126.com) ================== -->
23
   <!-- ================== 2:接收邮件参数(必须用pop.126.com) ================== -->

+ 8 - 4
CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/report/DataAnalysisController.cs

217
         /// <param name="monthdate"></param>
217
         /// <param name="monthdate"></param>
218
         /// <param name="isdc"></param>
218
         /// <param name="isdc"></param>
219
         /// <returns></returns>
219
         /// <returns></returns>
220
-        public ActionResult GetSimpleReport(string type,string sdate, string edate, string monthdate, int isdc = 0)
220
+        public ActionResult GetSimpleReport(string type,string sdate, string edate, string monthdate, int isdc = 0, string source = "")
221
         {
221
         {
222
             DateTime stime = DateTime.Now;
222
             DateTime stime = DateTime.Now;
223
             DateTime etime = DateTime.Now;
223
             DateTime etime = DateTime.Now;
276
             Dictionary<string, string> paras = new Dictionary<string, string>();
276
             Dictionary<string, string> paras = new Dictionary<string, string>();
277
             paras.Add("@sdate", stime.ToString("yyyy-MM-dd"));
277
             paras.Add("@sdate", stime.ToString("yyyy-MM-dd"));
278
             paras.Add("@edate", etime.ToString("yyyy-MM-dd"));
278
             paras.Add("@edate", etime.ToString("yyyy-MM-dd"));
279
+            paras.Add("@source", source);
279
             var obj = DbHelperSQL.RunProcedure("P_SimpleReport", paras, "SimpleReport");
280
             var obj = DbHelperSQL.RunProcedure("P_SimpleReport", paras, "SimpleReport");
280
             if (isdc == 0)
281
             if (isdc == 0)
281
             {
282
             {
397
         /// <param name="date"></param>
398
         /// <param name="date"></param>
398
         /// <param name="isdc"></param>
399
         /// <param name="isdc"></param>
399
         /// <returns></returns>
400
         /// <returns></returns>
400
-        public ActionResult GetTellReport(string sdate, string edate, int isdc = 0)
401
+        public ActionResult GetTellReport(string sdate, string edate, int isdc = 0, string source = "")
401
         {
402
         {
402
             DateTime stime = DateTime.Now;
403
             DateTime stime = DateTime.Now;
403
             DateTime etime = DateTime.Now;
404
             DateTime etime = DateTime.Now;
417
             Dictionary<string, string> paras = new Dictionary<string, string>();
418
             Dictionary<string, string> paras = new Dictionary<string, string>();
418
             paras.Add("@sdate", stime.ToString("yyyy-MM-dd"));
419
             paras.Add("@sdate", stime.ToString("yyyy-MM-dd"));
419
             paras.Add("@edate", etime.ToString("yyyy-MM-dd"));
420
             paras.Add("@edate", etime.ToString("yyyy-MM-dd"));
421
+            paras.Add("@source", source);
420
             var obj = DbHelperSQL.RunProcedure("P_TellReport", paras, "TellReport");
422
             var obj = DbHelperSQL.RunProcedure("P_TellReport", paras, "TellReport");
421
             if (isdc > 0)
423
             if (isdc > 0)
422
             {
424
             {
480
         /// <param name="date"></param>
482
         /// <param name="date"></param>
481
         /// <param name="isdc"></param>
483
         /// <param name="isdc"></param>
482
         /// <returns></returns>
484
         /// <returns></returns>
483
-        public ActionResult GetYSSatisfaction(string date, int isdc = 0)
485
+        public ActionResult GetYSSatisfaction(string date, int isdc = 0, string source = "")
484
         {
486
         {
485
             DateTime dttime = DateTime.Now;
487
             DateTime dttime = DateTime.Now;
486
             if (!string.IsNullOrEmpty(date))
488
             if (!string.IsNullOrEmpty(date))
492
             }
494
             }
493
             Dictionary<string, string> paras = new Dictionary<string, string>();
495
             Dictionary<string, string> paras = new Dictionary<string, string>();
494
             paras.Add("@date", dttime.ToString("yyyy-MM-dd"));
496
             paras.Add("@date", dttime.ToString("yyyy-MM-dd"));
497
+            paras.Add("@source", source);
495
             var obj = DbHelperSQL.RunProcedure("P_YSSatisfaction", paras, "YSSatisfaction");
498
             var obj = DbHelperSQL.RunProcedure("P_YSSatisfaction", paras, "YSSatisfaction");
496
             return Success("成功", obj);
499
             return Success("成功", obj);
497
         }
500
         }
501
         /// <param name="date"></param>
504
         /// <param name="date"></param>
502
         /// <param name="isdc"></param>
505
         /// <param name="isdc"></param>
503
         /// <returns></returns>
506
         /// <returns></returns>
504
-        public ActionResult GetYSDuration(string date, int isdc = 0)
507
+        public ActionResult GetYSDuration(string date, int isdc = 0, string source = "")
505
         {
508
         {
506
             DateTime dttime = DateTime.Now;
509
             DateTime dttime = DateTime.Now;
507
             if (!string.IsNullOrEmpty(date))
510
             if (!string.IsNullOrEmpty(date))
513
             }
516
             }
514
             Dictionary<string, string> paras = new Dictionary<string, string>();
517
             Dictionary<string, string> paras = new Dictionary<string, string>();
515
             paras.Add("@date", dttime.ToString("yyyy")+"-01-01");
518
             paras.Add("@date", dttime.ToString("yyyy")+"-01-01");
519
+            paras.Add("@source", source);
516
             var obj = DbHelperSQL.RunProcedure("P_YSDuration", paras, "YSDuration");
520
             var obj = DbHelperSQL.RunProcedure("P_YSDuration", paras, "YSDuration");
517
             return Success("成功", obj);
521
             return Success("成功", obj);
518
         }
522
         }

+ 21 - 10
CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/report/WorkOrderReportController.cs

261
             }
261
             }
262
             return Success("成功", obj);
262
             return Success("成功", obj);
263
         }
263
         }
264
-        public ActionResult GetDeptEfficiency(DateTime? start, DateTime? end, bool isExport = false)
264
+        public ActionResult GetDeptEfficiency(DateTime? start, DateTime? end, bool isExport = false,string source="")
265
         {
265
         {
266
             if (start == null)
266
             if (start == null)
267
             {
267
             {
275
             Dictionary<string, string> paras = new Dictionary<string, string>();
275
             Dictionary<string, string> paras = new Dictionary<string, string>();
276
             paras.Add("@sdate", start.Value.ToString("yyyy-MM-dd"));
276
             paras.Add("@sdate", start.Value.ToString("yyyy-MM-dd"));
277
             paras.Add("@edate", end.Value.ToString("yyyy-MM-dd"));
277
             paras.Add("@edate", end.Value.ToString("yyyy-MM-dd"));
278
+            paras.Add("@source", source);
278
             var obj = DbHelperSQL.RunProcedure("P_DeptEfficiencyReport_1", paras, "DeptEfficiencyReport");
279
             var obj = DbHelperSQL.RunProcedure("P_DeptEfficiencyReport_1", paras, "DeptEfficiencyReport");
279
             var newSet = new DataSet();
280
             var newSet = new DataSet();
280
             if (obj != null && obj.Tables[0] != null && obj.Tables[0].Rows.Count > 0)
281
             if (obj != null && obj.Tables[0] != null && obj.Tables[0].Rows.Count > 0)
685
         /// <param name="start"></param>
686
         /// <param name="start"></param>
686
         /// <param name="end"></param>
687
         /// <param name="end"></param>
687
         /// <returns></returns>
688
         /// <returns></returns>
688
-        public ActionResult GetDeptAssessment(DateTime? start, DateTime? end, bool isExport = false)
689
+        public ActionResult GetDeptAssessment(DateTime? start, DateTime? end, bool isExport = false,string source="")
689
         {
690
         {
690
             StringBuilder sb1 = new StringBuilder();
691
             StringBuilder sb1 = new StringBuilder();
691
             StringBuilder sb2 = new StringBuilder();
692
             StringBuilder sb2 = new StringBuilder();
701
             Dictionary<string, string> paras = new Dictionary<string, string>();
702
             Dictionary<string, string> paras = new Dictionary<string, string>();
702
             paras.Add("@sdate", start.Value.ToString("yyyy-MM-dd"));
703
             paras.Add("@sdate", start.Value.ToString("yyyy-MM-dd"));
703
             paras.Add("@edate", end.Value.ToString("yyyy-MM-dd"));
704
             paras.Add("@edate", end.Value.ToString("yyyy-MM-dd"));
705
+            paras.Add("@source", source);
704
             var obj = DbHelperSQL.RunProcedure("P_DeptAssessmentReport", paras, "DeptAssessmentReport");
706
             var obj = DbHelperSQL.RunProcedure("P_DeptAssessmentReport", paras, "DeptAssessmentReport");
705
             if (isExport)
707
             if (isExport)
706
             {
708
             {
918
             }
920
             }
919
             return Success("成功", obj);
921
             return Success("成功", obj);
920
         }
922
         }
921
-        public ActionResult GetUserAccountAssessment(DateTime? start, DateTime? end, bool isExport = false)
923
+        public ActionResult GetUserAccountAssessment(DateTime? start, DateTime? end, bool isExport = false,string source="")
922
         {
924
         {
923
             StringBuilder sb1 = new StringBuilder();
925
             StringBuilder sb1 = new StringBuilder();
924
             StringBuilder sb2 = new StringBuilder();
926
             StringBuilder sb2 = new StringBuilder();
934
             Dictionary<string, string> paras = new Dictionary<string, string>();
936
             Dictionary<string, string> paras = new Dictionary<string, string>();
935
             paras.Add("@sdate", start.Value.ToString("yyyy-MM-dd HH:mm:ss"));
937
             paras.Add("@sdate", start.Value.ToString("yyyy-MM-dd HH:mm:ss"));
936
             paras.Add("@edate", end.Value.ToString("yyyy-MM-dd HH:mm:ss"));
938
             paras.Add("@edate", end.Value.ToString("yyyy-MM-dd HH:mm:ss"));
939
+            paras.Add("@source", source);
937
             var obj = DbHelperSQL.RunProcedure("P_UserAssessmentReport_1", paras, "UserAssessmentReport");
940
             var obj = DbHelperSQL.RunProcedure("P_UserAssessmentReport_1", paras, "UserAssessmentReport");
938
             if (isExport)
941
             if (isExport)
939
             {
942
             {
1379
             }
1382
             }
1380
             return Success("成功", obj);
1383
             return Success("成功", obj);
1381
         }
1384
         }
1382
-        public ActionResult GetAppeal(DateTime? start, DateTime? end, bool isExport = false)
1385
+        public ActionResult GetAppeal(DateTime? start, DateTime? end, bool isExport = false
1386
+            , string source = "")
1383
         {
1387
         {
1384
             if (start == null)
1388
             if (start == null)
1385
             {
1389
             {
1394
             Dictionary<string, string> paras = new Dictionary<string, string>();
1398
             Dictionary<string, string> paras = new Dictionary<string, string>();
1395
             paras.Add("@sdate", start.Value.ToString("yyyy-MM-dd"));
1399
             paras.Add("@sdate", start.Value.ToString("yyyy-MM-dd"));
1396
             paras.Add("@edate", end.Value.ToString("yyyy-MM-dd"));
1400
             paras.Add("@edate", end.Value.ToString("yyyy-MM-dd"));
1401
+            paras.Add("@source", source);
1397
             var obj = DbHelperSQL.RunProcedure("P_UserAppealReport_1", paras, "UserAppealReport");
1402
             var obj = DbHelperSQL.RunProcedure("P_UserAppealReport_1", paras, "UserAppealReport");
1398
             var newSet = new DataSet();var newtable = new DataTable("UserAppealReport");
1403
             var newSet = new DataSet();var newtable = new DataTable("UserAppealReport");
1399
             #region
1404
             #region
1675
         /// <param name="pageIndex"></param>
1680
         /// <param name="pageIndex"></param>
1676
         /// <param name="pageSize"></param>
1681
         /// <param name="pageSize"></param>
1677
         /// <returns></returns>
1682
         /// <returns></returns>
1678
-        public ActionResult GetDayWeekMonthReport(DateTime? date, int type = 0, int dateType = 0, bool isExport = false)
1683
+        public ActionResult GetDayWeekMonthReport(DateTime? date, int type = 0, int dateType = 0, bool isExport = false,string  source="")
1679
         {
1684
         {
1680
             if (date == null)
1685
             if (date == null)
1681
             {
1686
             {
1685
             paras.Add("@date", date.Value.ToString("yyyy-MM-dd"));
1690
             paras.Add("@date", date.Value.ToString("yyyy-MM-dd"));
1686
             paras.Add("@datatype", type.ToString());
1691
             paras.Add("@datatype", type.ToString());
1687
             paras.Add("@datetype", dateType.ToString());
1692
             paras.Add("@datetype", dateType.ToString());
1693
+            paras.Add("@source", source);
1688
             var obj = DbHelperSQL.RunProcedure("P_DayWeekMonthReport", paras, "DayWeekMonthReport");
1694
             var obj = DbHelperSQL.RunProcedure("P_DayWeekMonthReport", paras, "DayWeekMonthReport");
1689
             if (isExport)
1695
             if (isExport)
1690
             {
1696
             {
1808
             }
1814
             }
1809
             return Success("成功", obj);
1815
             return Success("成功", obj);
1810
         }
1816
         }
1811
-        public ActionResult GetWorkLoad(DateTime? start, DateTime? end, bool isExport = false)
1817
+        public ActionResult GetWorkLoad(DateTime? start, DateTime? end, bool isExport = false, string source = "")
1812
         {
1818
         {
1813
             if (start == null)
1819
             if (start == null)
1814
             {
1820
             {
1822
             Dictionary<string, string> paras = new Dictionary<string, string>();
1828
             Dictionary<string, string> paras = new Dictionary<string, string>();
1823
             paras.Add("@sdate", start.Value.ToString("yyyy-MM-dd"));
1829
             paras.Add("@sdate", start.Value.ToString("yyyy-MM-dd"));
1824
             paras.Add("@edate", end.Value.ToString("yyyy-MM-dd"));
1830
             paras.Add("@edate", end.Value.ToString("yyyy-MM-dd"));
1831
+            paras.Add("@source", source);
1825
             var obj = DbHelperSQL.RunProcedure("P_LeaderAssessmentReport_1", paras, "LeaderAssessmentReport");
1832
             var obj = DbHelperSQL.RunProcedure("P_LeaderAssessmentReport_1", paras, "LeaderAssessmentReport");
1826
             if (isExport)
1833
             if (isExport)
1827
             {
1834
             {
1939
             }
1946
             }
1940
             return Success("成功", obj);
1947
             return Success("成功", obj);
1941
         }
1948
         }
1942
-        public ActionResult GetDeptDayReport(string sdate, string edate, int isdept = 1, bool isExport = false)
1949
+        public ActionResult GetDeptDayReport(string sdate, string edate, int isdept = 1, bool isExport = false,string source="")
1943
         {
1950
         {
1944
             if (string.IsNullOrEmpty(sdate))
1951
             if (string.IsNullOrEmpty(sdate))
1945
             {
1952
             {
1967
             paras.Add("@sdate", sdate);
1974
             paras.Add("@sdate", sdate);
1968
             paras.Add("@edate", edate);
1975
             paras.Add("@edate", edate);
1969
             paras.Add("@isdept", isdept.ToString());
1976
             paras.Add("@isdept", isdept.ToString());
1977
+            paras.Add("@source", source);
1970
             var obj = DbHelperSQL.RunProcedure("P_DeptDayReport_1", paras, "DeptDayReport");
1978
             var obj = DbHelperSQL.RunProcedure("P_DeptDayReport_1", paras, "DeptDayReport");
1971
             if (obj!=null && obj.Tables[0]!=null && obj.Tables[0].Rows.Count > 0) {
1979
             if (obj!=null && obj.Tables[0]!=null && obj.Tables[0].Rows.Count > 0) {
1972
                 for (int i = 0; i < obj.Tables[0].Rows.Count; i++)
1980
                 for (int i = 0; i < obj.Tables[0].Rows.Count; i++)
2035
             }
2043
             }
2036
             return Success("成功", obj);
2044
             return Success("成功", obj);
2037
         }
2045
         }
2038
-        public ActionResult GetDept3DayReport(string sdate, string edate, bool isExport = false)
2046
+        public ActionResult GetDept3DayReport(string sdate, string edate, bool isExport = false,string source = "")
2039
         {
2047
         {
2040
             if (string.IsNullOrEmpty(sdate))
2048
             if (string.IsNullOrEmpty(sdate))
2041
             {
2049
             {
2058
             paras.Add("@sdate", sdate);
2066
             paras.Add("@sdate", sdate);
2059
             paras.Add("@edate", edate);
2067
             paras.Add("@edate", edate);
2060
             paras.Add("@deptid", deptid.ToString());
2068
             paras.Add("@deptid", deptid.ToString());
2069
+            paras.Add("@source", source);
2061
             var obj = DbHelperSQL.RunProcedure("P_Dept3DayReport_1", paras, "Dept3DayReport");
2070
             var obj = DbHelperSQL.RunProcedure("P_Dept3DayReport_1", paras, "Dept3DayReport");
2062
             if (obj != null && obj.Tables[0] != null && obj.Tables[0].Rows.Count > 0)
2071
             if (obj != null && obj.Tables[0] != null && obj.Tables[0].Rows.Count > 0)
2063
             {
2072
             {
2092
         /// <param name="edate"></param>
2101
         /// <param name="edate"></param>
2093
         /// <param name="isExport"></param>
2102
         /// <param name="isExport"></param>
2094
         /// <returns></returns>
2103
         /// <returns></returns>
2095
-        public ActionResult GetDept3SatisfiedReport(string sdate, string edate, bool isExport = false)
2104
+        public ActionResult GetDept3SatisfiedReport(string sdate, string edate, bool isExport = false, string source = "")
2096
         {
2105
         {
2097
             if (string.IsNullOrEmpty(sdate))
2106
             if (string.IsNullOrEmpty(sdate))
2098
             {
2107
             {
2115
             paras.Add("@sdate", sdate);
2124
             paras.Add("@sdate", sdate);
2116
             paras.Add("@edate", edate);
2125
             paras.Add("@edate", edate);
2117
             paras.Add("@deptid", deptid.ToString());
2126
             paras.Add("@deptid", deptid.ToString());
2127
+            paras.Add("@source", source);
2118
             var obj = DbHelperSQL.RunProcedure("P_Dept3SatisfiedReport", paras, "Dept3SatisfiedReport");
2128
             var obj = DbHelperSQL.RunProcedure("P_Dept3SatisfiedReport", paras, "Dept3SatisfiedReport");
2119
             if (isExport)
2129
             if (isExport)
2120
             {
2130
             {
2131
         /// <param name="edate"></param>
2141
         /// <param name="edate"></param>
2132
         /// <param name="isExport"></param>
2142
         /// <param name="isExport"></param>
2133
         /// <returns></returns>
2143
         /// <returns></returns>
2134
-        public ActionResult GetDept3EfficiencyReport(string sdate, string edate, bool isExport = false)
2144
+        public ActionResult GetDept3EfficiencyReport(string sdate, string edate, bool isExport = false, string source = "")
2135
         {
2145
         {
2136
             if (string.IsNullOrEmpty(sdate))
2146
             if (string.IsNullOrEmpty(sdate))
2137
             {
2147
             {
2154
             paras.Add("@sdate", sdate);
2164
             paras.Add("@sdate", sdate);
2155
             paras.Add("@edate", edate);
2165
             paras.Add("@edate", edate);
2156
             paras.Add("@deptid", deptid.ToString());
2166
             paras.Add("@deptid", deptid.ToString());
2167
+            paras.Add("@source", source);
2157
             var obj = DbHelperSQL.RunProcedure("P_Dept3EfficiencyReport", paras, "Dept3EfficiencyReport");
2168
             var obj = DbHelperSQL.RunProcedure("P_Dept3EfficiencyReport", paras, "Dept3EfficiencyReport");
2158
             if (isExport)
2169
             if (isExport)
2159
             {
2170
             {

+ 195 - 17
CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/workorder/WorkOrderController.cs

8921
             #endregion
8921
             #endregion
8922
 
8922
 
8923
         }
8923
         }
8924
-
8924
+     
8925
         /// <summary>
8925
         /// <summary>
8926
         /// 添加工单信息
8926
         /// 添加工单信息
8927
         /// </summary>
8927
         /// </summary>
8966
                 int business = RequestString.GetInt("business", 0); ;//
8966
                 int business = RequestString.GetInt("business", 0); ;//
8967
                 int ispd = RequestString.GetInt("ispd", 0); ;//是否自动派单
8967
                 int ispd = RequestString.GetInt("ispd", 0); ;//是否自动派单
8968
                 int visittype = RequestString.GetInt("visittype", 0); ;//回访方式
8968
                 int visittype = RequestString.GetInt("visittype", 0); ;//回访方式
8969
-                
8970
                 string phonetype = RequestString.GetFormString("phonetype");//电话类型
8969
                 string phonetype = RequestString.GetFormString("phonetype");//电话类型
8971
                 lock (_MyLock)
8970
                 lock (_MyLock)
8972
                 {
8971
                 {
9001
                         modelT_Bus_WorkOrder.F_SplitUser = splituser;
9000
                         modelT_Bus_WorkOrder.F_SplitUser = splituser;
9002
                         modelT_Bus_WorkOrder.F_Level = level;
9001
                         modelT_Bus_WorkOrder.F_Level = level;
9003
                         modelT_Bus_WorkOrder.F_VisitType = visittype;
9002
                         modelT_Bus_WorkOrder.F_VisitType = visittype;
9004
-                        
9003
+
9005
                         modelT_Bus_WorkOrder.F_Latitude = latitude != "" ? decimal.Parse(latitude) : 0;//纬度
9004
                         modelT_Bus_WorkOrder.F_Latitude = latitude != "" ? decimal.Parse(latitude) : 0;//纬度
9006
                         modelT_Bus_WorkOrder.F_Longitude = longitude != "" ? decimal.Parse(longitude) : 0;//经度
9005
                         modelT_Bus_WorkOrder.F_Longitude = longitude != "" ? decimal.Parse(longitude) : 0;//经度
9007
                                                                                                           // modelT_Bus_WorkOrder.F_IsOpen = isopen;
9006
                                                                                                           // modelT_Bus_WorkOrder.F_IsOpen = isopen;
9091
                             if (string.IsNullOrEmpty(keys))
9090
                             if (string.IsNullOrEmpty(keys))
9092
                                 return Error("自动派单失败,请选择反映类别!");
9091
                                 return Error("自动派单失败,请选择反映类别!");
9093
                             int deptid = 0;
9092
                             int deptid = 0;
9093
+                          
9094
                             try
9094
                             try
9095
                             {
9095
                             {
9096
                                 var model = new BLL.T_Sys_DictionaryValue().GetModel
9096
                                 var model = new BLL.T_Sys_DictionaryValue().GetModel
9109
                             {
9109
                             {
9110
                                 return Error("自动派单失败,请选择反映类别");
9110
                                 return Error("自动派单失败,请选择反映类别");
9111
                             }
9111
                             }
9112
+                           
9112
                             var modeldept = new BLL.T_Sys_Department().GetModel(deptid);
9113
                             var modeldept = new BLL.T_Sys_Department().GetModel(deptid);
9113
                             if (modeldept == null)
9114
                             if (modeldept == null)
9114
                                 return Error("自动派单失败,派单单位不存在");
9115
                                 return Error("自动派单失败,派单单位不存在");
9116
+
9117
+
9118
+                            int typedept = 1;
9119
+                            var maindept = modeldept;
9120
+                            if (modeldept.F_IsDept == 2)
9121
+                            {
9122
+                                typedept = 2;
9123
+                                if (modeldept.F_PartentId > 0)
9124
+                                {
9125
+                                    maindept = department((int)modeldept.F_PartentId);
9126
+                                    if (maindept == null)
9127
+                                        return Error("该单位没有上级单位派单失败");
9128
+                                }
9129
+                                else
9130
+                                {
9131
+                                    return Error("该单位没有上级单位派单失败");
9132
+                                }
9133
+                            }
9115
                             string resdatetime = "";
9134
                             string resdatetime = "";
9116
                             string resdate = DateTime.Now.Date.ToString("yyyy-MM-dd");
9135
                             string resdate = DateTime.Now.Date.ToString("yyyy-MM-dd");
9117
                             DataTable dt = DbHelperSQL.Query("select top " + 7 + " F_OffDate from  T_Sys_WorkOFFDays  where F_OffState = 1   and F_OffDate>'" + resdate + "' order by F_OffDate").Tables[0];
9136
                             DataTable dt = DbHelperSQL.Query("select top " + 7 + " F_OffDate from  T_Sys_WorkOFFDays  where F_OffState = 1   and F_OffDate>'" + resdate + "' order by F_OffDate").Tables[0];
9121
                             Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo = new Model.T_Bus_AssignedInfo();
9140
                             Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo = new Model.T_Bus_AssignedInfo();
9122
                             modelT_Bus_AssignedInfo.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
9141
                             modelT_Bus_AssignedInfo.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
9123
                             modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
9142
                             modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
9124
-                            modelT_Bus_AssignedInfo.F_MainDeptId = deptid;
9143
+                            modelT_Bus_AssignedInfo.F_MainDeptId = maindept.F_DeptId ;
9125
                             modelT_Bus_AssignedInfo.F_OtherDeptIds = "";//协办单位id
9144
                             modelT_Bus_AssignedInfo.F_OtherDeptIds = "";//协办单位id
9126
                             modelT_Bus_AssignedInfo.F_AssignedOpinion = "自动派单";//交办意见
9145
                             modelT_Bus_AssignedInfo.F_AssignedOpinion = "自动派单";//交办意见
9127
                             modelT_Bus_AssignedInfo.F_State = 1;//0草稿  1正式
9146
                             modelT_Bus_AssignedInfo.F_State = 1;//0草稿  1正式
9135
                             modelT_Bus_AssignedInfo.F_TimeResp = assignBLL.GetRepTimly(DateTime.Now);//及时查收时间点
9154
                             modelT_Bus_AssignedInfo.F_TimeResp = assignBLL.GetRepTimly(DateTime.Now);//及时查收时间点
9136
                             int aid = assignBLL.Add(modelT_Bus_AssignedInfo);
9155
                             int aid = assignBLL.Add(modelT_Bus_AssignedInfo);
9137
                             modelT_Bus_WorkOrder.F_LimitTime = Convert.ToDateTime(resdatetime);
9156
                             modelT_Bus_WorkOrder.F_LimitTime = Convert.ToDateTime(resdatetime);
9138
-                            modelT_Bus_WorkOrder.F_MainDeptId = deptid;
9157
+                            modelT_Bus_WorkOrder.F_WorkState = 2;
9158
+                            modelT_Bus_WorkOrder.F_MainDeptId = maindept.F_DeptId;
9139
                             modelT_Bus_WorkOrder.F_OtherDeptIds = "";
9159
                             modelT_Bus_WorkOrder.F_OtherDeptIds = "";
9140
                             modelT_Bus_WorkOrder.F_AssignUser = User.F_UserCode;
9160
                             modelT_Bus_WorkOrder.F_AssignUser = User.F_UserCode;
9141
                             modelT_Bus_WorkOrder.F_AssignTime = DateTime.Now;
9161
                             modelT_Bus_WorkOrder.F_AssignTime = DateTime.Now;
9162
+                            if (typedept  == 2)
9163
+                            {
9164
+
9165
+                                if (SplitOrder(modelT_Bus_WorkOrder, modeldept, Convert.ToDateTime(resdatetime), modelT_Bus_AssignedInfo, "自动派单") == "操作失败")
9166
+                                {
9167
+
9168
+                                    return Error("一键通达失败");
9169
+                                }
9170
+                                else
9171
+                                {
9172
+                                    modelT_Bus_WorkOrder.F_MainDeptID3 = modeldept.F_DeptId.ToString();
9173
+                                    modelT_Bus_WorkOrder.F_WorkState = 4;
9174
+                                }
9175
+                            }
9142
                             workorderBLL.Update(modelT_Bus_WorkOrder);
9176
                             workorderBLL.Update(modelT_Bus_WorkOrder);
9143
-                            var msgss = userinfo + " 交办了工单,主办单位:" + modeldept.F_DeptName;
9177
+                            var msgss = userinfo + " 交办了工单,主办单位:" + maindept.F_DeptName;
9144
 
9178
 
9145
                             addoptlog(modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgss, User.F_UserCode);
9179
                             addoptlog(modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgss, User.F_UserCode);
9146
 
9180
 
9147
                             //推送消息表
9181
                             //推送消息表
9148
-                            var users = userBLL.GetModelList(" F_DeptId='" + deptid + "' ");
9182
+                            var users = userBLL.GetModelList(" F_DeptId='" + maindept.F_DeptId + "' ");
9149
 
9183
 
9150
                             foreach (var u in users)
9184
                             foreach (var u in users)
9151
                             {
9185
                             {
9154
                                 string mag = modelT_Bus_WorkOrder.F_WorkOrderId;
9188
                                 string mag = modelT_Bus_WorkOrder.F_WorkOrderId;
9155
                                 bool n = SMSController.AddSmS(0, mag, count, u.F_Mobile, "153305", "");
9189
                                 bool n = SMSController.AddSmS(0, mag, count, u.F_Mobile, "153305", "");
9156
                             }
9190
                             }
9157
-                            var user = new BLL.T_Sys_UserAccount().GetModelList("F_DeptId in (" + deptid + ") ");
9191
+                            var user = new BLL.T_Sys_UserAccount().GetModelList("F_DeptId in (" + maindept.F_DeptId + ") ");
9158
                         }
9192
                         }
9159
                         #endregion
9193
                         #endregion
9160
                         //推送消息表
9194
                         //推送消息表
9182
                 return Error("权限不足");
9216
                 return Error("权限不足");
9183
             }
9217
             }
9184
         }
9218
         }
9219
+      
9185
 
9220
 
9186
         /// <summary>
9221
         /// <summary>
9187
         /// 添加工单信息
9222
         /// 添加工单信息
10870
 
10905
 
10871
 
10906
 
10872
 
10907
 
10873
-
10874
-
10908
+        private Model .T_Sys_Department department (int PartentId)
10909
+        {
10910
+            var model = new BLL.T_Sys_Department().GetModel(PartentId);
10911
+            if (model.F_IsDept == 1)
10912
+            {
10913
+                return model;
10914
+            }
10915
+            else
10916
+            {
10917
+                if (model.F_PartentId > 0)
10918
+                    model = department((int)model.F_PartentId);
10919
+                else
10920
+                    return null;
10921
+            }
10922
+            return model;
10923
+        }
10875
 
10924
 
10876
         /// <summary>
10925
         /// <summary>
10877
         /// 
10926
         /// 
10920
                     {
10969
                     {
10921
                         if (deptlist.Count == 1)
10970
                         if (deptlist.Count == 1)
10922
                         {
10971
                         {
10972
+                           
10923
                             var deptinfo = deptlist.FirstOrDefault();
10973
                             var deptinfo = deptlist.FirstOrDefault();
10924
-
10974
+                            int type = 1;
10975
+                            var maindept = deptinfo;
10976
+                            if (deptinfo.F_IsDept ==2)
10977
+                            {
10978
+                                type = 2;
10979
+                                if (deptinfo.F_PartentId>0)
10980
+                                {
10981
+                                    maindept = department((int)deptinfo.F_PartentId);
10982
+                                    if (maindept==null )
10983
+                                        return Error("该单位没有上级单位派单失败");
10984
+                                }
10985
+                                else
10986
+                                {
10987
+                                    return Error("该单位没有上级单位派单失败");
10988
+                                }
10989
+                            }
10925
                             if (assignid == 0)
10990
                             if (assignid == 0)
10926
                             {
10991
                             {
10927
                                 #region 插入交办记录
10992
                                 #region 插入交办记录
10943
                                 {
11008
                                 {
10944
                                     modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
11009
                                     modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
10945
                                 }
11010
                                 }
10946
-                                modelT_Bus_AssignedInfo.F_MainDeptId = deptinfo.F_DeptId;//主办单位id
11011
+                                modelT_Bus_AssignedInfo.F_MainDeptId = maindept.F_DeptId;//主办单位id
10947
                                 modelT_Bus_AssignedInfo.F_OtherDeptIds = otherdeptids;//协办单位id
11012
                                 modelT_Bus_AssignedInfo.F_OtherDeptIds = otherdeptids;//协办单位id
10948
                                 modelT_Bus_AssignedInfo.F_AssignedOpinion = assignedopinion;//交办意见
11013
                                 modelT_Bus_AssignedInfo.F_AssignedOpinion = assignedopinion;//交办意见
10949
                                 modelT_Bus_AssignedInfo.F_State = state;//0草稿  1正式
11014
                                 modelT_Bus_AssignedInfo.F_State = state;//0草稿  1正式
10983
                                         modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
11048
                                         modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
10984
                                     }
11049
                                     }
10985
 
11050
 
10986
-                                    modelT_Bus_AssignedInfo.F_MainDeptId = deptinfo.F_DeptId;//主办单位id
11051
+                                    modelT_Bus_AssignedInfo.F_MainDeptId = maindept.F_DeptId;//主办单位id
10987
                                     modelT_Bus_AssignedInfo.F_OtherDeptIds = otherdeptids;//协办单位id
11052
                                     modelT_Bus_AssignedInfo.F_OtherDeptIds = otherdeptids;//协办单位id
10988
                                     modelT_Bus_AssignedInfo.F_AssignedOpinion = assignedopinion;//交办意见
11053
                                     modelT_Bus_AssignedInfo.F_AssignedOpinion = assignedopinion;//交办意见
10989
                                     modelT_Bus_AssignedInfo.F_TimeResp = assignBLL.GetRepTimly(DateTime.Now);//及时查收时间点
11054
                                     modelT_Bus_AssignedInfo.F_TimeResp = assignBLL.GetRepTimly(DateTime.Now);//及时查收时间点
11019
 
11084
 
11020
                                     modelT_Bus_WorkOrder.F_LimitTime = Convert.ToDateTime(resdatetime);
11085
                                     modelT_Bus_WorkOrder.F_LimitTime = Convert.ToDateTime(resdatetime);
11021
                                 }
11086
                                 }
11022
-                                modelT_Bus_WorkOrder.F_MainDeptId = deptinfo.F_DeptId;
11087
+                                modelT_Bus_WorkOrder.F_MainDeptId = maindept.F_DeptId;
11023
                                 modelT_Bus_WorkOrder.F_OtherDeptIds = otherdeptids;
11088
                                 modelT_Bus_WorkOrder.F_OtherDeptIds = otherdeptids;
11024
                                 modelT_Bus_WorkOrder.F_AssignUser = User.F_UserCode;
11089
                                 modelT_Bus_WorkOrder.F_AssignUser = User.F_UserCode;
11025
                                 modelT_Bus_WorkOrder.F_AssignTime = DateTime.Now;
11090
                                 modelT_Bus_WorkOrder.F_AssignTime = DateTime.Now;
11091
+                                if(type ==2)
11092
+                                {
11093
+                                    
11094
+                                    if (SplitOrder (modelT_Bus_WorkOrder ,deptinfo , Convert.ToDateTime(resdatetime), modelT_Bus_AssignedInfo, assignedopinion)=="操作失败")
11095
+                                    {
11096
+
11097
+                                        return Error("一键通达失败");
11098
+                                    }
11099
+                                    else
11100
+                                    {
11101
+                                        modelT_Bus_WorkOrder.F_MainDeptID3 = deptinfo.F_DeptId.ToString();
11102
+                                        modelT_Bus_WorkOrder.F_WorkState = 4;
11103
+                                    }
11104
+                                }
11026
                                 workorderBLL.Update(modelT_Bus_WorkOrder);
11105
                                 workorderBLL.Update(modelT_Bus_WorkOrder);
11027
                                 #endregion
11106
                                 #endregion
11028
 
11107
 
11040
                                 #endregion
11119
                                 #endregion
11041
 
11120
 
11042
                                 #region 插入操作记录
11121
                                 #region 插入操作记录
11043
-                                var msgss = userinfo + " 交办了工单,主办单位:" + deptinfo.F_DeptName;
11122
+                                var msgss = userinfo + " 交办了工单,主办单位:" + maindept.F_DeptName;
11044
                                 if (!string.IsNullOrEmpty(otherdeptids))
11123
                                 if (!string.IsNullOrEmpty(otherdeptids))
11045
                                 {
11124
                                 {
11046
                                     string sql = "select dbo.GetDeptNames('" + otherdeptids + "')";
11125
                                     string sql = "select dbo.GetDeptNames('" + otherdeptids + "')";
11049
                                 addoptlog(modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgss, User.F_UserCode);
11128
                                 addoptlog(modelT_Bus_WorkOrder.F_WorkOrderId, modelT_Bus_WorkOrder.F_WorkState, modelT_Bus_AssignedInfo.F_Id, msgss, User.F_UserCode);
11050
 
11129
 
11051
                                 //推送消息表
11130
                                 //推送消息表
11052
-                                var users = userBLL.GetModelList(" F_DeptId='" + deptinfo.F_DeptId + "' ");
11131
+                                var users = userBLL.GetModelList(" F_DeptId='" + maindept.F_DeptId + "' ");
11053
 
11132
 
11054
                                 foreach (var u in users)
11133
                                 foreach (var u in users)
11055
                                 {
11134
                                 {
11062
                         {
11141
                         {
11063
                             string newids = ""; string errdeptid = ""; string deptname = "";
11142
                             string newids = ""; string errdeptid = ""; string deptname = "";
11064
 
11143
 
11144
+                            if (deptlist.Where(x=>x .F_IsDept ==2).Count ()>0)
11145
+                                return Error("派单多单位不能派给三级单位");
11065
                             foreach (var deptinfo in deptlist)
11146
                             foreach (var deptinfo in deptlist)
11066
                             {
11147
                             {
11067
-                                deptname += deptinfo.F_DeptName + ",";
11148
+                                    deptname += deptinfo.F_DeptName + ",";
11068
                                 #region 新增工单
11149
                                 #region 新增工单
11069
                                 Model.T_Bus_WorkOrder modelT_Bus_WorkOrder1 = new Model.T_Bus_WorkOrder();
11150
                                 Model.T_Bus_WorkOrder modelT_Bus_WorkOrder1 = new Model.T_Bus_WorkOrder();
11070
                                 modelT_Bus_WorkOrder1 = tempT_Bus_WorkOrder;
11151
                                 modelT_Bus_WorkOrder1 = tempT_Bus_WorkOrder;
11398
                 return Error("权限不足");
11479
                 return Error("权限不足");
11399
             }
11480
             }
11400
         }
11481
         }
11482
+
11483
+        /// <summary>
11484
+        /// 派工单
11485
+        /// </summary>
11486
+        /// <returns></returns>
11487
+        //[Authority]
11488
+        public string  SplitOrder(Model.T_Bus_WorkOrder modelT_Bus_WorkOrder
11489
+            ,Model.T_Sys_Department deptinfo, DateTime limittime, Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo, string assignedopinion)
11490
+        {
11491
+               
11492
+                Model.T_Bus_AssignedInfo_Next modelT_Bus_AssignedInfo_Next = new Model.T_Bus_AssignedInfo_Next();
11493
+                if (modelT_Bus_WorkOrder != null && modelT_Bus_AssignedInfo != null && deptinfo != null)
11494
+                {
11495
+                   
11496
+                        if (modelT_Bus_AssignedInfo.F_IsNext == null || modelT_Bus_AssignedInfo.F_IsNext.Value == 0 || modelT_Bus_AssignedInfo.F_IsNext.Value == 4)
11497
+                        {
11498
+                            // using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
11499
+                            using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
11500
+                            {
11501
+                              
11502
+                                    #region 插入派单记录
11503
+                                    modelT_Bus_AssignedInfo_Next.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
11504
+                                    modelT_Bus_AssignedInfo_Next.F_LimitTime = limittime;//办理时限
11505
+                                                                                         //  modelT_Bus_AssignedInfo_Next.F_LimitTime = modelT_Bus_AssignedInfo.F_LimitTime ;
11506
+                                    modelT_Bus_AssignedInfo_Next.F_MainDeptId = deptinfo.F_DeptId ;//主办单位id
11507
+                                   
11508
+                                        modelT_Bus_AssignedInfo_Next.F_OtherDeptIds = "";
11509
+                                    modelT_Bus_AssignedInfo_Next.F_AssignedOpinion = assignedopinion;//交办意见
11510
+                                    modelT_Bus_AssignedInfo_Next.F_State = 1;//0草稿  1正式
11511
+                                    modelT_Bus_AssignedInfo_Next.F_CreateUser = User.F_UserCode;
11512
+                                    modelT_Bus_AssignedInfo_Next.F_CreateTime = DateTime.Now;
11513
+                                    modelT_Bus_AssignedInfo_Next.F_IsDelete = 0;
11514
+                                    modelT_Bus_AssignedInfo_Next.F_IsOverdue = 0;
11515
+                                    modelT_Bus_AssignedInfo_Next.F_IsSure = 0;
11516
+                                    modelT_Bus_AssignedInfo_Next.F_IsReload = 0;
11517
+                                    modelT_Bus_AssignedInfo_Next.F_Id = new BLL.T_Bus_AssignedInfo_Next().Add(modelT_Bus_AssignedInfo_Next);
11518
+                                    #endregion
11519
+                                
11520
+                             
11521
+                                if (modelT_Bus_AssignedInfo_Next != null && modelT_Bus_AssignedInfo_Next.F_State == 1)
11522
+                                {
11523
+                                    #region 保存交办信息
11524
+                                    modelT_Bus_AssignedInfo.F_IsNext = 1;
11525
+                                    modelT_Bus_AssignedInfo.F_NextUser = User.F_UserCode;
11526
+                                    modelT_Bus_AssignedInfo.F_NextTime = DateTime.Now;
11527
+                                    new BLL.T_Bus_AssignedInfo().Update(modelT_Bus_AssignedInfo);
11528
+                                    #endregion
11529
+                                    #region 保存工单信息
11530
+                                  
11531
+                                  
11532
+                                    #endregion
11533
+
11534
+                                    #region 插入操作记录
11535
+                                    Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
11536
+                                    oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
11537
+                                    oper.F_AssignedId = modelT_Bus_AssignedInfo.F_Id;
11538
+                                    oper.F_State =4;
11539
+
11540
+                                    string userinfo = User.depname + "(" + User.F_UserCode + ")";
11541
+                                    oper.F_Message = userinfo + " 派单给单位:" + deptinfo.F_DeptName;
11542
+                                    oper.F_CreateUser = User.F_UserCode;
11543
+                                    oper.F_CreateTime = DateTime.Now;
11544
+                                    oper.F_IsDelete = 0;
11545
+                                    operBLL.Add(oper);
11546
+                                    //推送消息表
11547
+                                    msg.AddInternalMessagesInfo("工单消息", oper.F_Message + ",工单编号:" + oper.F_WorkOrderId, modelT_Bus_WorkOrder.F_CreateUser, User.F_UserCode, (int)EnumSmsType.workorder);
11548
+                                    #endregion
11549
+                                }
11550
+                                trans.Complete();
11551
+                            }
11552
+                            var user = new BLL.T_Sys_UserAccount().GetModelList(" F_DeptId=" + deptinfo.F_DeptId  + "  ");
11553
+                            if (user != null && user.Count > 0)
11554
+                            {
11555
+                                foreach (var it in user)
11556
+                                {
11557
+                                    string count = "你有新工单:" + modelT_Bus_WorkOrder .F_WorkOrderId  + ",请及时查收处理。";
11558
+                                    string msg = modelT_Bus_WorkOrder.F_WorkOrderId;
11559
+                            bool n = SMSController.AddSmS(0, msg, count, it.F_Mobile, "153305", "");
11560
+                                }
11561
+
11562
+                            }
11563
+                            //二级单位给三级单位转派都有短信提醒
11564
+
11565
+                            return ("操作成功");
11566
+                        }
11567
+                        else
11568
+                        {
11569
+                          return ("操作失败");
11570
+                       }
11571
+                   
11572
+                }
11573
+                else
11574
+                {
11575
+                return ("操作失败");
11576
+            }
11577
+          
11578
+        }
11401
         /// <summary>
11579
         /// <summary>
11402
         /// 派工单
11580
         /// 派工单
11403
         /// </summary>
11581
         /// </summary>