Ver Código Fonte

更新定责导出,定流程,转办支持选人

zhangkun 5 anos atrás
pai
commit
3d809befea

BIN
data/工单流程图/工单流程图2.0.jpg


+ 1 - 1
web/BaseCallCenter.BLL/Order/T_Wo_WorkOrderNotice.cs

@@ -38,7 +38,7 @@ namespace YTSoft.BaseCallCenter.BLL
38 38
         /// <summary>
39 39
         /// 更新定责次数
40 40
         /// </summary>
41
-        public bool updatenum(int orderid)
41
+        public int updatenum(int orderid)
42 42
         {
43 43
             return dal.updatenum(orderid);
44 44
         }

+ 1 - 1
web/BaseCallCenter.BLL/T_Wo_WorkOrderBase.cs

@@ -25,7 +25,7 @@ namespace YTSoft.BaseCallCenter.BLL
25 25
         /// <summary>
26 26
         /// 增加一条数据
27 27
         /// </summary>
28
-        public bool AddWbgd(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
28
+        public int AddWbgd(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
29 29
         {
30 30
             return dal.AddWbgd(model);
31 31
         }

+ 6 - 3
web/BaseCallCenter.DAL/COM/T_Com_Class.cs

@@ -392,7 +392,7 @@ namespace YTSoft.BaseCallCenter.DAL
392 392
                 model.code = 0;
393 393
                 model.iconClose = "../../Content/layui/zTree/v3/css/zTreeStyle/img/diy/1_close.png";
394 394
                 model.iconOpen = "../../Content/layui/zTree/v3/css/zTreeStyle/img/diy/1_open.png";
395
-                model.open = "true";
395
+                model.open = "true";                
396 396
                 model.children = modelList;
397 397
             }
398 398
             else
@@ -412,6 +412,7 @@ namespace YTSoft.BaseCallCenter.DAL
412 412
                     model.iconClose = "../../Content/layui/zTree/v3/css/zTreeStyle/img/diy/1_close.png";
413 413
                     model.iconOpen = "../../Content/layui/zTree/v3/css/zTreeStyle/img/diy/1_open.png";
414 414
                     model.open = "true";
415
+                    model.IsOrPrivate = 0;
415 416
                     model.children = modelList;
416 417
                 }
417 418
             }
@@ -432,19 +433,21 @@ namespace YTSoft.BaseCallCenter.DAL
432 433
         /// <returns></returns>
433 434
         public TreeNodeModel GetTreeModel(DataTable table, TreeNodeModel model, int type)
434 435
         {
435
-            DataRow[] rows = table.Select("Parentid=" + model.code);
436
+            DataRow[] rows = table.Select("Parentid=" + model.id);
436 437
             if (rows != null && rows.Length > 0)
437 438
             {
438 439
                 foreach (DataRow row in rows)
439 440
                 {
441
+                    
440 442
                     List<TreeNodeModel> modelList = new List<TreeNodeModel>();
441 443
                     TreeNodeModel childModel = new TreeNodeModel();
442 444
                     childModel.id = int.Parse(row["Classid"].ToString());
443 445
                     childModel.name = row["Classname"].ToString();
444
-                    childModel.code = int.Parse(row["Classid"].ToString());
446
+                    childModel.code = row["Remark"].ToInt32();
445 447
                     childModel.iconClose = "../../Content/layui/zTree/v3/css/zTreeStyle/img/diy/1_close.png";
446 448
                     childModel.iconOpen = "../../Content/layui/zTree/v3/css/zTreeStyle/img/diy/1_open.png";
447 449
                     childModel.open = "false";
450
+                    childModel.IsOrPrivate = 1;
448 451
                     childModel.children = modelList;
449 452
                     model.children.Add(childModel);
450 453
                     GetTreeModel(table, childModel, type);

+ 18 - 18
web/BaseCallCenter.DAL/Order/T_Wo_WorkOrderBase.cs

@@ -355,7 +355,7 @@ F_RETURNVISITID,F_RETURNVISITOPINION,F_RETURNVISITPROBLEM,F_CallId,F_CREATEBYids
355 355
         /// <summary>
356 356
         /// 增加一条手工微博工单数据
357 357
         /// </summary>
358
-        public bool AddWbgd(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
358
+        public int AddWbgd(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
359 359
         {
360 360
             StringBuilder strSql = new StringBuilder();
361 361
             strSql.Append("insert into T_Wo_WorkOrderBase(");
@@ -539,11 +539,11 @@ F_RETURNVISITOPINION,F_RETURNVISITPROBLEM,F_CallId,F_CREATEBYids)");
539 539
             object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
540 540
             if (obj == null)
541 541
             {
542
-                return false;
542
+                return 0;
543 543
             }
544 544
             else
545 545
             {
546
-                return true;
546
+                return Convert.ToInt32(obj);
547 547
             }
548 548
         }
549 549
         /// <summary>
@@ -1838,7 +1838,7 @@ F_SERVICETYPE,F_DECLARATIONTIME,F_SERVICENATURE,F_SERVICEWAY,F_RETURNVISITMAN,F_
1838 1838
                     EditStatus = true;
1839 1839
                     if (n == 0)
1840 1840
                     {
1841
-                        LogAciton.AddAction(model.F_UserName, model.F_OPTUSERID.ToInt32(), "历史工单模块调用工单模块", "模块调用", "DAL/T_Wo_WorkOrderBase/SubmitOrder", "DAL/T_Wo_WorkOrderBase/UpdateOrderToHF");
1841
+                        LogAciton.AddAction(eidthistoryModel.F_UserName, eidthistoryModel.F_OPTUSERID.ToInt32(), "历史工单模块调用工单模块", "模块调用", "DAL/T_Wo_WorkOrderBase/SubmitOrder", "DAL/T_Wo_WorkOrderBase/UpdateOrderToHF");
1842 1842
                         UpdateOrderToHF(eidthistoryModel.F_INSTANCEID.ToInt32());
1843 1843
                     }
1844 1844
                     //如果有转办信息插入转办信息
@@ -2293,20 +2293,20 @@ F_SERVICETYPE,F_DECLARATIONTIME,F_SERVICENATURE,F_SERVICEWAY,F_RETURNVISITMAN,F_
2293 2293
             historyModel.F_TASKFLAG = 2;
2294 2294
             historyModel.F_REMARK = "已撤消";
2295 2295
             historyId = InsertWorkOrderHistoryModel(historyModel);
2296
-            if (historyId > 0)
2297
-            {
2298
-                StringBuilder strSql = new StringBuilder();
2299
-                strSql.Append("update T_Wo_WorkOrderBase set ");
2300
-                strSql.Append("F_FORMID=@F_FORMID");
2301
-                strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
2302
-                SqlParameter[] parameters = {
2303
-                    new SqlParameter("@F_FORMID",  SqlDbType.Int,4),
2304
-                    new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)};
2305
-                parameters[0].Value = historyId;
2306
-                parameters[1].Value = workOrderId;
2307
-                bool EditStatus = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters) > 0;
2308
-
2309
-            }
2296
+            //if (historyId > 0)
2297
+            //{
2298
+            //    StringBuilder strSql = new StringBuilder();
2299
+            //    strSql.Append("update T_Wo_WorkOrderBase set ");
2300
+            //    strSql.Append("F_FORMID=@F_FORMID");
2301
+            //    strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
2302
+            //    SqlParameter[] parameters = {
2303
+            //        new SqlParameter("@F_FORMID",  SqlDbType.Int,4),
2304
+            //        new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)};
2305
+            //    parameters[0].Value = historyId;
2306
+            //    parameters[1].Value = workOrderId;
2307
+            //    bool EditStatus = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters) > 0;
2308
+
2309
+            //}
2310 2310
             return historyId;
2311 2311
 
2312 2312
         }

+ 8 - 11
web/BaseCallCenter.DAL/Order/T_Wo_WorkOrderNotice.cs

@@ -215,26 +215,23 @@ namespace YTSoft.BaseCallCenter.DAL
215 215
         /// <summary>
216 216
         /// 更新定责次数
217 217
         /// </summary>
218
-        public bool updatenum(int orderid)
218
+        public int updatenum(int orderid)
219 219
         {
220 220
 
221 221
             StringBuilder strSql = new StringBuilder();
222 222
             strSql.Append(" update T_Wo_WorkOrderNotice ");
223 223
             strSql.Append(" set NoticeState=0,DZNumber=DZNumber+1 ");
224
-            strSql.Append(" where OrderId=@OrderId");
224
+            strSql.Append(" where OrderId=@OrderId;");
225 225
             SqlParameter[] parameters = {
226 226
                     new SqlParameter("@OrderId",orderid)
227 227
             };
228 228
 
229
-            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
230
-            if (rows > 0)
231
-            {
232
-                return true;
233
-            }
234
-            else
235
-            {
236
-                return false;
237
-            }
229
+            DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
230
+            strSql.Clear();
231
+            strSql.Append(" select top 1 DZNumber from  T_Wo_WorkOrderNotice ");
232
+            strSql.Append(" where OrderId=@OrderId Order by DZNumber desc; ");
233
+            int rows = DbHelperSQL.GetSingle(strSql.ToString(), parameters).ToInt32();
234
+            return rows;
238 235
         }
239 236
 
240 237
         /// <summary>

+ 2 - 0
web/BaseCallCenter.Model/Order/T_Wo_WorkOrderNotice.cs

@@ -279,6 +279,8 @@ namespace YTSoft.BaseCallCenter.Model
279 279
         // 定性定责结果
280 280
         public string F_SERVICENATURE { get; set; }
281 281
 
282
+        public string DeptIds { get; set; }
283
+
282 284
 
283 285
         public int orderid { get; set; }
284 286
 

+ 73 - 21
web/YTSoft.BaseCallCenter.MVCWeb/Controllers/HW/CallRecordController.cs

@@ -162,7 +162,7 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
162 162
             callScreenModel.AgeModelList = GetCodeType("NLD");
163 163
             //获取部门列表
164 164
             callScreenModel.DepartmentList = deptBll.GetModelList("F_ParentId=0");
165
-            callScreenModel.HistoryOrderList = historyBll.GetModelList("F_INSTANCEID=" + int.Parse(workOrderNum.ToString()));
165
+            callScreenModel.HistoryOrderList = historyBll.GetModelList("F_INSTANCEID=" + workOrderNum.ToInt32());
166 166
 
167 167
             return View(callScreenModel);
168 168
         }
@@ -287,19 +287,18 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
287 287
         public bool ResetWorkOrder(int workOrderId)
288 288
         {
289 289
             bool result = false;;
290
-            int byid = F_UserID;
291 290
             string bycode = F_UserCode; 
292 291
             string byname =F_UserName;
293 292
             int bmid = F_DeptId;
294 293
             string bmmc = "";
295
-            if (byid>0) {
294
+            if (F_UserID > 0) {
296 295
                 YTSoft.BaseCallCenter.BLL.T_Sys_Department depBll = new BLL.T_Sys_Department();
297 296
                 List<Model.T_Sys_Department> list = new List<T_Sys_Department>();
298 297
                 list = depBll.GetModelList("F_DeptId=" + bmid);
299 298
                 if (list.Count>0)
300 299
                 {
301 300
                     bmmc = list[0].F_DeptName.ToString();
302
-                    result= orderBLL.ResetWorkOrder(workOrderId, byid, byname, bmid, bmmc);
301
+                    result= orderBLL.ResetWorkOrder(workOrderId, F_UserID, F_UserName, F_DeptId, bmmc);
303 302
                 }
304 303
             } 
305 304
             return result;
@@ -553,18 +552,26 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
553 552
         [AcceptVerbs(HttpVerbs.Post)]
554 553
         public bool workOrderAddData(T_Wo_WorkOrderBase workOrderBaseModel)
555 554
         {
556
-            //工单来源
557
-            //workOrderBaseModel.F_REPAIRMANID = 1;
558
-            //workOrderBaseModel.F_WORKORDERFROM = "语音";
559
-
560
-
561
-            ////当前用户信息
562
-            workOrderBaseModel.F_USERID = F_UserID;
555
+            if (workOrderBaseModel.F_REPAIRMANID == 4)
556
+            {
557
+                workOrderBaseModel.F_WORKORDERFROM = "微博工单";
558
+                string wbh = workOrderBaseModel.CustomerBaseModel.F_CustomerEName.Trim();
559
+                if (!string.IsNullOrEmpty(wbh))
560
+                {
561
+                    workOrderBaseModel.F_EMPCODE = wbh;
562
+                    workOrderBaseModel.CustomerBaseModel.F_PostCode = wbh;
563
+                }
564
+                ////客户等级
565
+                workOrderBaseModel.CustomerBaseModel.F_ScaleResume = "1";
566
+                workOrderBaseModel.CustomerBaseModel.F_CustomerClass = "一般客户";
567
+            }
568
+            workOrderBaseModel.F_USERID = F_UserID;//id
569
+            workOrderBaseModel.F_LINKMAN = F_UserCode;//工号
570
+            workOrderBaseModel.F_REPAIRMANNAME = F_UserName;//姓名
571
+            workOrderBaseModel.F_LINKMANTELEPHONE = workOrderBaseModel.CustomerBaseModel.F_Mobile;
563 572
             workOrderBaseModel.F_USERNAME = F_UserName;
564
-            //workOrderBaseModel.F_LINKMAN = F_UserCode;//工号
565
-            //workOrderBaseModel.F_REPAIRMANNAME = "12";//姓名
566
-
567 573
             workOrderBaseModel.F_DEPTID = F_DeptId;
574
+
568 575
             T_Sys_Department deptmodel = deptBll.GetModel(F_DeptId);
569 576
             if (deptmodel != null)
570 577
             {
@@ -599,10 +606,6 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
599 606
                 workOrderBaseModel.CustomerBaseModel.F_IndustryId = workOrderBaseModel.F_REPAIRLEVEL;
600 607
                 workOrderBaseModel.CustomerBaseModel.F_Url = workOrderBaseModel.F_ADSLACCOUNT;
601 608
 
602
-                ////客户等级
603
-                //workOrderBaseModel.CustomerBaseModel.F_ScaleResume = "1";
604
-                //workOrderBaseModel.CustomerBaseModel.F_CustomerClass = "一般客户";
605
-
606 609
                 //修改客户基础信息
607 610
                 int cusid = cusBLL.EditCusInfoModel(workOrderBaseModel.CustomerBaseModel);
608 611
                 if (cusid > 1)
@@ -617,6 +620,31 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
617 620
                 if (workOrderBaseModel.F_HOUSING == "表扬" || workOrderBaseModel.F_HOUSING == "咨询" || workOrderBaseModel.F_HOUSING == "挂失")
618 621
                 {
619 622
                     workOrderBaseModel.F_WORKORDERTYPEID = 3;
623
+                    if (workOrderBaseModel.HistoryOrderList != null && workOrderBaseModel.HistoryOrderList.Count > 0)
624
+                    {
625
+                        Dictionary<int, string> dict = new Dictionary<int, string>() { };
626
+
627
+                        for (int i = workOrderBaseModel.HistoryOrderList.Count - 1; i >= 0; i--)
628
+                        {
629
+                            T_Wo_WorkOrderHistory modelhis = workOrderBaseModel.HistoryOrderList[i];
630
+
631
+
632
+                            Model.T_Sys_Department model = new BLL.T_Sys_Department().GetModel(string.Format("F_DeptId=(select top 1 F_DeptId from T_Sys_UserAccount where F_UserId={0})", modelhis.F_OPTUSERID));
633
+                            if (model != null && model.F_DeptId > 0)
634
+                            {
635
+                                if (dict.ContainsKey(model.F_DeptId))
636
+                                {
637
+                                    workOrderBaseModel.HistoryOrderList.Remove(workOrderBaseModel.HistoryOrderList[i]);
638
+                                    continue;
639
+                                }
640
+                                modelhis.F_OPTBTNID = model.F_DeptId;
641
+                                modelhis.F_NEXTOWNERARRID = model.F_DeptName;
642
+                                dict.Add(model.F_DeptId, "1");
643
+                            }
644
+
645
+                           
646
+                        }
647
+                    }
620 648
                 }
621 649
                 else if (workOrderBaseModel.F_WORKORDERTYPEID == 3)
622 650
                 {
@@ -639,17 +667,28 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
639 667
                 {
640 668
                     if (workOrderBaseModel.HistoryOrderList != null && workOrderBaseModel.HistoryOrderList.Count > 0)
641 669
                     {
642
-                        foreach (T_Wo_WorkOrderHistory modelhis in workOrderBaseModel.HistoryOrderList)
670
+                        Dictionary<int, string> dict = new Dictionary<int, string>() { };
671
+                       
672
+                        for (int i= workOrderBaseModel.HistoryOrderList.Count-1; i>=0;i--)
643 673
                         {
644
-                          Model.T_Sys_Department model=  new BLL.T_Sys_Department().GetModel(string.Format("F_DeptId=(select top 1 F_DeptId from T_Sys_UserAccount where F_UserId={0})", modelhis.F_OPTUSERID));
674
+                            T_Wo_WorkOrderHistory modelhis = workOrderBaseModel.HistoryOrderList[i];
675
+                            if (dict.ContainsKey(modelhis.F_OPTUSERID.ToInt32()))
676
+                            {
677
+                                workOrderBaseModel.HistoryOrderList.Remove(workOrderBaseModel.HistoryOrderList[i]);
678
+                                continue;
679
+                            }
680
+
681
+                            Model.T_Sys_Department model=  new BLL.T_Sys_Department().GetModel(string.Format("F_DeptId=(select top 1 F_DeptId from T_Sys_UserAccount where F_UserId={0})", modelhis.F_OPTUSERID));
645 682
                             if (model != null && model.F_DeptId > 0)
646 683
                             {
647 684
                                 modelhis.F_OPTBTNID = model.F_DeptId;
648 685
                                 modelhis.F_NEXTOWNERARRID = model.F_DeptName; 
649 686
                             }
687
+                            dict.Add(modelhis.F_OPTUSERID.ToInt32(), "1");
650 688
                         }
651 689
                     }
652 690
                 }
691
+                return false;
653 692
                 if (workOrderBaseModel.F_WORKORDERTYPEID == 1)
654 693
                 {
655 694
                     AddAction("t_wo_workorderbase", workOrderBaseModel.F_WORKORDERID.ToMyString(), "转单处理工单", workOrderBaseModel.F_CODE);
@@ -662,6 +701,18 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
662 701
             else
663 702
             { workOrderBaseModel.F_CODE = ""; }
664 703
 
704
+            if (workOrderBaseModel.F_WORKORDERID == 0&& workOrderBaseModel.F_REPAIRMANID == 4)
705
+            {
706
+                workOrderBaseModel.F_CREATEDATE = DateTime.Now;
707
+                workOrderBaseModel.F_HASTENCOUNTS = 0;
708
+                int workid = orderBLL.AddWbgd(workOrderBaseModel);
709
+                if (workid==0)
710
+                {
711
+                    return false;
712
+                }
713
+                workOrderBaseModel.F_WORKORDERID = workid;
714
+            }
715
+
665 716
             return orderBLL.UpdateWorkOrderInfoModel(workOrderBaseModel);
666 717
         }
667 718
 
@@ -728,7 +779,8 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
728 779
                 if (workOrderBaseModel.F_WORKORDERID == 0)
729 780
                 {
730 781
                     workOrderBaseModel.F_CREATEDATE = DateTime.Now;
731
-                    bl = orderBLL.AddWbgd(workOrderBaseModel);
782
+                    workOrderBaseModel.F_HASTENCOUNTS = 0;
783
+                    bl = orderBLL.AddWbgd(workOrderBaseModel)>0;
732 784
                 }
733 785
                 else
734 786
                 {

+ 306 - 230
web/YTSoft.BaseCallCenter.MVCWeb/Controllers/Order/OrderController.cs

@@ -429,22 +429,129 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
429 429
             modelorder.F_SERVICENATURE = modelinput.F_SERVICENATURE;
430 430
             modelorder.F_SERVICETYPE = modelinput.F_SERVICETYPE;
431 431
             #endregion
432
+            int DZNumber=noticeBLL.updatenum(modelinput.orderid);
432 433
 
433
-            #region 通知
434
-            if (modelorder.F_WORKORDERTYPEID == 1)
434
+            if (string.IsNullOrEmpty(modelinput.DeptIds)&&false)
435 435
             {
436
-                List<T_Wo_WorkOrderHistory> modelhisList = historyBll.GetModelList(string.Format(" F_INSTANCEID={0}", modelinput.orderid));
437
-                if (modelhisList.Count > 0)
436
+                #region 通知  定责相关处理部门
437
+                if (modelorder.F_WORKORDERTYPEID == 1)
438 438
                 {
439
+                    List<T_Wo_WorkOrderHistory> modelhisList = historyBll.GetModelList(string.Format(" F_INSTANCEID={0}", modelinput.orderid));
440
+                    if (modelhisList.Count > 0)
441
+                    {
442
+
443
+                        Dictionary<int, string> dict = new Dictionary<int, string>() { };
439 444
 
440
-                    Dictionary<int, string> dict = new Dictionary<int, string>() { };
445
+                        foreach (T_Wo_WorkOrderHistory modelhis in modelhisList)
446
+                        {
447
+                            if (dict.ContainsKey(modelhis.F_OPTBTNID.ToInt32()))
448
+                            {
449
+                                continue;
450
+                            }
451
+                            T_Wo_WorkOrderNotice modeladd = new T_Wo_WorkOrderNotice();
452
+                            modeladd.OrderId = modelinput.orderid;
453
+                            modeladd.DealAdvise = modelinput.F_SERVICETYPE;
454
+                            modeladd.DealResult = modelinput.F_SERVICENATURE;
455
+
456
+                            modeladd.Class1 = modelorder.F_PROVINCE;
457
+                            modeladd.Class2 = modelorder.F_CITY;
458
+                            modeladd.Class3 = modelorder.F_AREA;
459
+
460
+                            modeladd.DZNumber = DZNumber;
461
+                            modeladd.NoticeState = 1;
462
+                            modeladd.NoticeType = 1;
463
+                            modeladd.Userid = F_UserID;
464
+                            modeladd.Username = F_UserName;
465
+
466
+                            modeladd.NoticeUserid = modelhis.F_OPTUSERID.ToInt32();
467
+                            modeladd.NoticeUsername = modelhis.F_UserName;
468
+                            modeladd.NoticeDeptId = modelhis.F_OPTBTNID.ToInt32();
469
+                            modeladd.NoticeDeptName = modelhis.F_NEXTOWNERARRID;
470
+                            modeladd.NoticeDeptContent = modelhis.F_NEXTOWNERARRID + " 调查情况:\n";
471
+                            modeladd.NoticeDeptAdvise = modelhis.F_NEXTOWNERARRID + " 处理意见和整改措施:\n";
472
+                            foreach (T_Wo_WorkOrderHistory modelhistemp in modelhisList)
473
+                            {
474
+                                if (string.IsNullOrEmpty(modelhistemp.F_REMARK))
475
+                                {
476
+                                    continue;
477
+                                }
478
+                                int tempint = modelhistemp.F_REMARK.IndexOf("|");
479
+                                if (tempint == -1)
480
+                                {
481
+                                    modeladd.NoticeDeptContent += modelhistemp.F_REMARK;
482
+                                    modeladd.NoticeDeptAdvise += modelhistemp.F_REMARK;
483
+                                }
484
+                                else
485
+                                {
486
+                                    string[] arrystr = modelhistemp.F_REMARK.Split('|');
487
+
488
+                                    modeladd.NoticeDeptContent += arrystr[0];
489
+                                    modeladd.NoticeDeptContent += "\n";
490
+                                    modeladd.NoticeDeptAdvise += arrystr[1];
491
+                                    modeladd.NoticeDeptAdvise += "\n";
492
+                                }
493
+                            }
494
+                            dict.Add(modelhis.F_OPTBTNID.ToInt32(), "1");
495
+                            noticeBLL.Add(modeladd);
496
+                        }
441 497
 
442
-                    foreach (T_Wo_WorkOrderHistory modelhis in modelhisList)
498
+                    }
499
+                }
500
+                else
501
+                {
502
+                    T_Wo_WorkOrderNotice modeladd = new T_Wo_WorkOrderNotice();
503
+                    modeladd.OrderId = modelinput.orderid;
504
+                    modeladd.DealAdvise = modelinput.F_SERVICETYPE;
505
+                    modeladd.DealResult = modelinput.F_SERVICENATURE;
506
+
507
+                    modeladd.Class1 = modelorder.F_PROVINCE;
508
+                    modeladd.Class2 = modelorder.F_CITY;
509
+                    modeladd.Class3 = modelorder.F_AREA;
510
+
511
+                    modeladd.DZNumber = DZNumber;
512
+                    modeladd.NoticeState = 1;
513
+                    modeladd.NoticeType = 1;
514
+                    modeladd.Userid = F_UserID;
515
+                    modeladd.Username = F_UserName;
516
+
517
+                    modeladd.NoticeUserid = modelorder.F_USERID.ToInt32();
518
+                    modeladd.NoticeUsername = modelorder.F_USERNAME;
519
+                    modeladd.NoticeDeptId = modelorder.F_DEPTID.ToInt32();
520
+                    modeladd.NoticeDeptName = modelorder.F_DEPTCODE;
521
+
522
+                    modeladd.NoticeDeptContent = modelorder.F_DEPTCODE + " 调查情况:\n";
523
+                    modeladd.NoticeDeptAdvise = modelorder.F_DEPTCODE + " 处理意见和整改措施:\n";
524
+                    if (!string.IsNullOrEmpty(modelorder.F_RETURNVISITCONTENT))
443 525
                     {
444
-                        if (dict.ContainsKey(modelhis.F_OPTBTNID.ToInt32()))
526
+                        int tempint = modelorder.F_RETURNVISITCONTENT.IndexOf("|");
527
+                        if (tempint == -1)
445 528
                         {
446
-                            continue;
529
+                            modeladd.NoticeDeptContent += modelorder.F_RETURNVISITCONTENT;
530
+                            modeladd.NoticeDeptAdvise += modelorder.F_RETURNVISITCONTENT;
447 531
                         }
532
+                        else
533
+                        {
534
+                            string[] arrystr = modelorder.F_RETURNVISITCONTENT.Split('|');
535
+
536
+                            modeladd.NoticeDeptContent += arrystr[0];
537
+                            modeladd.NoticeDeptContent += "\n";
538
+                            modeladd.NoticeDeptAdvise += arrystr[1];
539
+                            modeladd.NoticeDeptAdvise += "\n";
540
+                        }
541
+                    }
542
+                    noticeBLL.Add(modeladd);
543
+                }
544
+
545
+                #endregion
546
+            }
547
+            #region 通知 自选部门
548
+            if (!string.IsNullOrEmpty(modelinput.DeptIds))
549
+            {
550
+                List<T_Sys_Department> modelhisList = deptBll.GetModelList(string.Format(" F_DeptId in ({0})", modelinput.DeptIds));
551
+                if (modelhisList.Count > 0)
552
+                {
553
+                    foreach (T_Sys_Department modeldept in modelhisList)
554
+                    {
448 555
                         T_Wo_WorkOrderNotice modeladd = new T_Wo_WorkOrderNotice();
449 556
                         modeladd.OrderId = modelinput.orderid;
450 557
                         modeladd.DealAdvise = modelinput.F_SERVICETYPE;
@@ -454,126 +561,28 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
454 561
                         modeladd.Class2 = modelorder.F_CITY;
455 562
                         modeladd.Class3 = modelorder.F_AREA;
456 563
 
457
-
564
+                        modeladd.DZNumber = DZNumber + 1;
458 565
                         modeladd.NoticeState = 1;
459 566
                         modeladd.NoticeType = 1;
460 567
                         modeladd.Userid = F_UserID;
461 568
                         modeladd.Username = F_UserName;
462 569
 
463
-                        modeladd.NoticeUserid = modelhis.F_OPTUSERID.ToInt32();
464
-                        modeladd.NoticeUsername = modelhis.F_UserName;
465
-                        modeladd.NoticeDeptId = modelhis.F_OPTBTNID.ToInt32();
466
-                        modeladd.NoticeDeptName = modelhis.F_NEXTOWNERARRID;
467
-                        modeladd.NoticeDeptContent = modelhis.F_NEXTOWNERARRID + " 调查情况:\n";
468
-                        modeladd.NoticeDeptAdvise = modelhis.F_NEXTOWNERARRID + " 处理意见和整改措施:\n";
469
-                        foreach (T_Wo_WorkOrderHistory modelhistemp in modelhisList)
470
-                        {
471
-                            if (string.IsNullOrEmpty(modelhistemp.F_REMARK))
472
-                            {
473
-                                continue;
474
-                            }
475
-                            int tempint = modelhistemp.F_REMARK.IndexOf("|");
476
-                            if (tempint == -1)
477
-                            {
478
-                                modeladd.NoticeDeptContent += modelhistemp.F_REMARK;
479
-                                modeladd.NoticeDeptAdvise += modelhistemp.F_REMARK;
480
-                            }
481
-                            else
482
-                            {
483
-                                string[] arrystr = modelhistemp.F_REMARK.Split('|');
484
-
485
-                                modeladd.NoticeDeptContent += arrystr[0];
486
-                                modeladd.NoticeDeptContent += "\n";
487
-                                modeladd.NoticeDeptAdvise += arrystr[1];
488
-                                modeladd.NoticeDeptAdvise += "\n";
489
-                            }
490
-                        }
491
-                        dict.Add(modelhis.F_OPTBTNID.ToInt32(), "1");
570
+                        modeladd.NoticeUserid = 0;
571
+                        modeladd.NoticeUsername = "";
572
+                        modeladd.NoticeDeptId = modeldept.F_DeptId;
573
+                        modeladd.NoticeDeptName = modeldept.F_DeptName;
574
+                        modeladd.NoticeDeptContent = "";
575
+                        modeladd.NoticeDeptAdvise = "";
576
+                        //modeladd.NoticeDeptContent = modelhis.F_NEXTOWNERARRID + " 调查情况:\n";
577
+                        //modeladd.NoticeDeptAdvise = modelhis.F_NEXTOWNERARRID + " 处理意见和整改措施:\n";
492 578
                         noticeBLL.Add(modeladd);
493 579
                     }
494 580
 
495 581
                 }
496 582
             }
497
-            else
498
-            {
499
-                T_Wo_WorkOrderNotice modeladd = new T_Wo_WorkOrderNotice();
500
-                modeladd.OrderId = modelinput.orderid;
501
-                modeladd.DealAdvise = modelinput.F_SERVICETYPE;
502
-                modeladd.DealResult = modelinput.F_SERVICENATURE;
503
-
504
-                modeladd.Class1 = modelorder.F_PROVINCE;
505
-                modeladd.Class2 = modelorder.F_CITY;
506
-                modeladd.Class3 = modelorder.F_AREA;
507
-
508
-
509
-                modeladd.NoticeState = 1;
510
-                modeladd.NoticeType = 1;
511
-                modeladd.Userid = F_UserID;
512
-                modeladd.Username = F_UserName;
513
-
514
-                modeladd.NoticeUserid = modelorder.F_USERID.ToInt32();
515
-                modeladd.NoticeUsername = modelorder.F_USERNAME;
516
-                modeladd.NoticeDeptId = modelorder.F_DEPTID.ToInt32();
517
-                modeladd.NoticeDeptName = modelorder.F_DEPTCODE;
518
-
519
-                modeladd.NoticeDeptContent = modelorder.F_DEPTCODE + " 调查情况:\n";
520
-                modeladd.NoticeDeptAdvise = modelorder.F_DEPTCODE + " 处理意见和整改措施:\n";
521
-                if (!string.IsNullOrEmpty(modelorder.F_RETURNVISITCONTENT))
522
-                {
523
-                    int tempint = modelorder.F_RETURNVISITCONTENT.IndexOf("|");
524
-                    if (tempint == -1)
525
-                    {
526
-                        modeladd.NoticeDeptContent += modelorder.F_RETURNVISITCONTENT;
527
-                        modeladd.NoticeDeptAdvise += modelorder.F_RETURNVISITCONTENT;
528
-                    }
529
-                    else
530
-                    {
531
-                        string[] arrystr = modelorder.F_RETURNVISITCONTENT.Split('|');
532
-
533
-                        modeladd.NoticeDeptContent += arrystr[0];
534
-                        modeladd.NoticeDeptContent += "\n";
535
-                        modeladd.NoticeDeptAdvise += arrystr[1];
536
-                        modeladd.NoticeDeptAdvise += "\n";
537
-                    }
538
-                }
539
-                noticeBLL.Add(modeladd);
540
-            }
541 583
 
542 584
             #endregion
543
-            //if (modelinput.Noticelist != null && modelinput.Noticelist.Count > 0)
544
-            //{
545
-            //    noticeBLL.updatenum(modelinput.orderid);
546
-            //    foreach (T_Wo_WorkOrderNotice model in modelinput.Noticelist)
547
-            //    {
548
-            //        T_Wo_WorkOrderNotice modeladd = new T_Wo_WorkOrderNotice();
549
-
550
-            //        #region 前端传入参数
551
-            //        modeladd.OrderId = modelinput.orderid;
552
-            //        modeladd.DealAdvise = model.DealAdvise;
553
-            //        modeladd.DealResult = model.DealResult;
554
-            //        modeladd.NoticeDeptId = model.NoticeDeptId;
555
-            //        modeladd.NoticeDeptName = model.NoticeDeptName;
556
-            //        modeladd.Class1 = modelorder.F_PROVINCE;
557
-            //        modeladd.Class2 = modelorder.F_CITY;
558
-            //        modeladd.Class3 = modelorder.F_AREA;
559
-            //        #endregion
560
-
561
-            //        modeladd.NoticeState = 1;
562
-            //        modeladd.NoticeType = 1;
563
-            //        modeladd.Userid = F_UserID;
564
-            //        modeladd.Username = F_UserName;
565
-            //        List<T_Wo_WorkOrderHistory> modelhisList = historyBll.GetModelList(string.Format(" F_INSTANCEID={0} AND F_OPTBTNID={1}", modeladd.OrderId, model.NoticeDeptId));
566
-            //        foreach (T_Wo_WorkOrderHistory modelhis in modelhisList)
567
-            //        {
568
-            //            modeladd.NoticeDeptContent += modelhis.F_REMARK;
569
-            //            modeladd.NoticeDeptAdvise += modelhis.F_REMARK;
570
-            //            modeladd.NoticeUserid = modelhis.F_OPTUSERID.ToInt32();
571
-            //            modeladd.NoticeUsername = modelhis.F_UserName;
572
-            //        }
573
-            //        noticeBLL.Add(modeladd);
574 585
 
575
-            //    }
576
-            //}
577 586
             AddAction("t_wo_workorderbase", modelorder.F_WORKORDERID.ToMyString(), "提交定责工单", modelorder.F_CODE);
578 587
             AddAction("t_wo_workorderbase", modelorder.F_WORKORDERID.ToMyString(), "提交定责工单", "数据:" + JsonConvert.SerializeObject(modelorder), "关键信息");
579 588
             return orderBLL.UpdateDZClass(modelorder);
@@ -751,59 +760,59 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
751 760
             return View(model);
752 761
         }
753 762
 
754
-        /// <summary>
755
-        /// 录入定责结果
756
-        /// </summary>
757
-        /// <param name="workOrderBaseModel"></param>
758
-        /// <returns></returns>
759
-        [AcceptVerbs(HttpVerbs.Post)]
760
-        public bool SubmitOrderDZ1(T_Wo_WorkOrderNoticeInput modelinput)
761
-        {
762
-            if (modelinput.orderid == 0)
763
-            {
764
-                return false;
765
-            }
766
-            #region 处理工单事件分类
767
-            Model.T_Wo_WorkOrderBase modelorder = new T_Wo_WorkOrderBase();
768
-            modelorder.F_WORKORDERID = modelinput.orderid;
769
-            modelorder.F_PROVINCE = modelinput.ClassName1;
770
-            modelorder.F_CITY = modelinput.ClassName2;
771
-            modelorder.F_AREA = modelinput.ClassName3;
772
-            #endregion
773
-            if (modelinput.Noticelist != null)
774
-            {
775
-                noticeBLL.updatenum(modelinput.orderid);
776
-                foreach (T_Wo_WorkOrderNotice model in modelinput.Noticelist)
777
-                {
778
-                    T_Wo_WorkOrderNotice modeladd = new T_Wo_WorkOrderNotice();
779
-
780
-                    #region 前端传入参数
781
-                    modeladd.OrderId = modelinput.orderid;
782
-                    modeladd.DealAdvise = model.DealAdvise;
783
-                    modeladd.DealResult = model.DealResult;
784
-                    modeladd.NoticeDeptId = model.NoticeDeptId;
785
-                    modeladd.NoticeDeptName = model.NoticeDeptName;
786
-
787
-                    #endregion
788
-
789
-                    modeladd.NoticeState = 1;
790
-                    modeladd.NoticeType = 1;
791
-                    modeladd.Userid = F_UserID;
792
-                    modeladd.Username = F_UserName;
793
-                    List<T_Wo_WorkOrderHistory> modelhisList = historyBll.GetModelList(string.Format(" F_INSTANCEID={0} AND F_OPTBTNID={1}", model.OrderId, model.NoticeDeptId));
794
-                    foreach (T_Wo_WorkOrderHistory modelhis in modelhisList)
795
-                    {
796
-                        modeladd.NoticeDeptContent += modelhis.F_REMARK;
797
-                        modeladd.NoticeDeptAdvise += modelhis.F_REMARK;
798
-                        modeladd.NoticeUserid = modelhis.F_OPTUSERID.ToInt32();
799
-                        modeladd.NoticeUsername = modelhis.F_UserName;
800
-                    }
801
-                    noticeBLL.Add(modeladd);
802
-
803
-                }
804
-            }
805
-            return orderBLL.UpdateDZClass(modelorder);
806
-        }
763
+        ///// <summary>
764
+        ///// 录入定责结果
765
+        ///// </summary>
766
+        ///// <param name="workOrderBaseModel"></param>
767
+        ///// <returns></returns>
768
+        //[AcceptVerbs(HttpVerbs.Post)]
769
+        //public bool SubmitOrderDZ1(T_Wo_WorkOrderNoticeInput modelinput)
770
+        //{
771
+        //    if (modelinput.orderid == 0)
772
+        //    {
773
+        //        return false;
774
+        //    }
775
+        //    #region 处理工单事件分类
776
+        //    Model.T_Wo_WorkOrderBase modelorder = new T_Wo_WorkOrderBase();
777
+        //    modelorder.F_WORKORDERID = modelinput.orderid;
778
+        //    modelorder.F_PROVINCE = modelinput.ClassName1;
779
+        //    modelorder.F_CITY = modelinput.ClassName2;
780
+        //    modelorder.F_AREA = modelinput.ClassName3;
781
+        //    #endregion
782
+        //    if (modelinput.Noticelist != null)
783
+        //    {
784
+        //        noticeBLL.updatenum(modelinput.orderid);
785
+        //        foreach (T_Wo_WorkOrderNotice model in modelinput.Noticelist)
786
+        //        {
787
+        //            T_Wo_WorkOrderNotice modeladd = new T_Wo_WorkOrderNotice();
788
+
789
+        //            #region 前端传入参数
790
+        //            modeladd.OrderId = modelinput.orderid;
791
+        //            modeladd.DealAdvise = model.DealAdvise;
792
+        //            modeladd.DealResult = model.DealResult;
793
+        //            modeladd.NoticeDeptId = model.NoticeDeptId;
794
+        //            modeladd.NoticeDeptName = model.NoticeDeptName;
795
+
796
+        //            #endregion
797
+
798
+        //            modeladd.NoticeState = 1;
799
+        //            modeladd.NoticeType = 1;
800
+        //            modeladd.Userid = F_UserID;
801
+        //            modeladd.Username = F_UserName;
802
+        //            List<T_Wo_WorkOrderHistory> modelhisList = historyBll.GetModelList(string.Format(" F_INSTANCEID={0} AND F_OPTBTNID={1}", model.OrderId, model.NoticeDeptId));
803
+        //            foreach (T_Wo_WorkOrderHistory modelhis in modelhisList)
804
+        //            {
805
+        //                modeladd.NoticeDeptContent += modelhis.F_REMARK;
806
+        //                modeladd.NoticeDeptAdvise += modelhis.F_REMARK;
807
+        //                modeladd.NoticeUserid = modelhis.F_OPTUSERID.ToInt32();
808
+        //                modeladd.NoticeUsername = modelhis.F_UserName;
809
+        //            }
810
+        //            noticeBLL.Add(modeladd);
811
+
812
+        //        }
813
+        //    }
814
+        //    return orderBLL.UpdateDZClass(modelorder);
815
+        //}
807 816
 
808 817
 
809 818
         /// <summary>
@@ -1153,7 +1162,12 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
1153 1162
             //F_REPAIRMANID 接入渠道 1语音 2留言  3微信 4微博 FromType
1154 1163
             //string sql = string.Format(" and F_WORKORDERTYPEID=1 and F_WORKORDERSTATEID=1 and F_WORKORDERID in (select F_INSTANCEID from T_Wo_WorkOrderHistory where F_WORKORDERSTATEID=0 and F_OPTUSERID={0})", F_UserID);
1155 1164
 
1156
-            string sql = " and F_WORKORDERTYPEID=3 and F_WORKORDERSTATEID in (2,5) ";
1165
+            string sql = string.Format(" and F_WORKORDERTYPEID=3 and F_WORKORDERSTATEID in (2,5) and T2.NoticeDeptId={0} AND NoticeType={1} AND  NoticeState=1", F_DeptId, NoticeType);
1166
+            if (NoticeType == 1)
1167
+            {
1168
+                sql = string.Format(" and F_HOUSING='投诉'  and F_WORKORDERSTATEID=5 and T2.NoticeDeptId={0} AND NoticeType={1} AND  NoticeState=1", F_DeptId, NoticeType);
1169
+            }
1170
+
1157 1171
 
1158 1172
             //工单编号
1159 1173
             if (!string.IsNullOrEmpty(workorderNum))
@@ -1237,17 +1251,16 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
1237 1251
             DataTable dt = new DataTable();
1238 1252
             int recordCount = 0;
1239 1253
             Model.PageData<Model.T_Wo_WorkOrderBase> pageModel = new Model.PageData<Model.T_Wo_WorkOrderBase>();
1240
-            dt = BLL.PagerBLL.GetListPager(
1241
-                string.Format(" T_Wo_WorkOrderBase T1 Inner join T_Wo_WorkOrderNotice T2 On T1.F_WORKORDERID=T2.OrderId AND T2.NoticeDeptId={0} AND NoticeType={1} AND  NoticeState=1", F_DeptId, NoticeType),
1254
+            dt = BLL.PagerBLL.GetTableList(
1255
+                " T_Wo_WorkOrderBase T1 Inner join T_Wo_WorkOrderNotice T2 On T1.F_WORKORDERID=T2.OrderId  ",
1242 1256
                 "F_WORKORDERID",
1243
-              "*,CONVERT(varchar,F_CREATEDATE, 120 ) as F_CREATEDATENew,NoticeDeptId,NoticeDeptName"
1257
+              "T1.*,CONVERT(varchar,F_CREATEDATE, 120 ) as F_CREATEDATENew,NoticeDeptId,NoticeDeptName"
1244 1258
               + @" , replace(replace(CASE F_WORKORDERFROM WHEN '留言工单' THEN (SELECT F_RecFileUrl FROM dbo.T_Call_LeaveRecord  WHERE F_CallId=F_KSHADDRESSCODE) WHEN '语音工单' THEN (SELECT FilePath FROM dbo.T_Call_CallRecords WHERE CallId=F_KSHADDRESSCODE AND FilePath!='') ELSE NULL END,'\','/'),'" + GetSysconfig("newFilePath") + "','" + GetSysconfig("newPlayPath") + "') as FilePath",
1245 1259
                 //+ " ,(CASE F_WORKORDERFROM WHEN '留言工单' THEN (SELECT F_RecFileUrl FROM dbo.T_Call_LeaveRecord  WHERE F_CallId=F_KSHADDRESSCODE) WHEN '语音工单' THEN (SELECT FilePath FROM dbo.T_Call_CallRecords WHERE CallId=F_KSHADDRESSCODE AND FilePath!='') ELSE NULL END ) as FilePath",
1246 1260
                 sql,
1247
-                "ORDER BY F_CREATEDATE desc",
1261
+                " F_CREATEDATE desc",
1248 1262
                 limit,
1249 1263
                 page,
1250
-                true,
1251 1264
                 out recordCount);
1252 1265
 
1253 1266
 
@@ -1838,64 +1851,64 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
1838 1851
             //工单编号
1839 1852
             if (!string.IsNullOrEmpty(paramModel.workorderNum))
1840 1853
             {
1841
-                sql += " and t.F_CODE like '%" + paramModel.workorderNum.Trim() + "%'";
1854
+                sql += " and F_CODE like '%" + paramModel.workorderNum.Trim() + "%'";
1842 1855
             }
1843 1856
             //客户姓名
1844 1857
             if (!string.IsNullOrEmpty(paramModel.cusName))
1845 1858
             {
1846
-                sql += " and t.F_CUSTOMERNAME like '%" + paramModel.cusName.Trim() + "%'";
1859
+                sql += " and F_CUSTOMERNAME like '%" + paramModel.cusName.Trim() + "%'";
1847 1860
             }
1848 1861
             //客户电话
1849 1862
             if (!string.IsNullOrEmpty(paramModel.phoneNumber))
1850 1863
             {
1851
-                sql += " and t.F_CUSTOMERTELEPHONE like '%" + paramModel.phoneNumber.Trim() + "%'";
1864
+                sql += " and F_CUSTOMERTELEPHONE like '%" + paramModel.phoneNumber.Trim() + "%'";
1852 1865
             }
1853
-            
1866
+
1854 1867
             //坐席工号
1855 1868
             if (!string.IsNullOrEmpty(paramModel.userInfo))
1856 1869
             {
1857
-                sql += " and t.F_LINKMAN like '%" + paramModel.userInfo.Trim() + "%'";
1870
+                sql += " and F_LINKMAN like '%" + paramModel.userInfo.Trim() + "%'";
1858 1871
             }
1859 1872
             //状态
1860 1873
             if (paramModel.status != null)
1861 1874
             {
1862
-                sql += " and t.F_WORKORDERSTATEID =" + paramModel.status;
1875
+                sql += " and F_WORKORDERSTATEID =" + paramModel.status;
1863 1876
             }
1864 1877
             //业务类别
1865 1878
             if (paramModel.bussType != null && paramModel.bussType > 0)
1866 1879
             {
1867
-                sql += " and t.F_FILEFLAG =" + paramModel.bussType;
1880
+                sql += " and F_FILEFLAG =" + paramModel.bussType;
1868 1881
             }
1869 1882
             //业务类型
1870 1883
             if (paramModel.detailType != null && paramModel.detailType > 0)
1871 1884
             {
1872
-                sql += " and t.F_REPAIRLEVEL =" + paramModel.detailType;
1885
+                sql += " and F_REPAIRLEVEL =" + paramModel.detailType;
1873 1886
             }
1874 1887
             //内容
1875 1888
             if (!string.IsNullOrEmpty(paramModel.Content))
1876 1889
             {
1877
-                sql += " and t.F_CONTENT like '%" + paramModel.Content.Trim() + "%'";
1890
+                sql += " and F_CONTENT like '%" + paramModel.Content.Trim() + "%'";
1878 1891
             }
1879 1892
             //处理方式
1880 1893
             if (paramModel.GoType != null && paramModel.GoType > 0)
1881 1894
             {
1882
-                sql += " and t.F_WORKORDERTYPEID =" + paramModel.GoType;
1895
+                sql += " and F_WORKORDERTYPEID =" + paramModel.GoType;
1883 1896
             }
1884 1897
             //渠道
1885 1898
             if (paramModel.FromType != null && paramModel.FromType > 0)
1886 1899
             {
1887
-                sql += " and t.F_REPAIRMANID =" + paramModel.FromType;
1900
+                sql += " and F_REPAIRMANID =" + paramModel.FromType;
1888 1901
             }
1889 1902
             //处理方式
1890 1903
             if (paramModel.F_HASTENCOUNTS != null && paramModel.F_HASTENCOUNTS > -1)
1891 1904
             {
1892 1905
                 if (paramModel.F_HASTENCOUNTS == 0)
1893 1906
                 {
1894
-                    sql += " and t.F_HASTENCOUNTS =0";
1907
+                    sql += " and F_HASTENCOUNTS =0";
1895 1908
                 }
1896 1909
                 else
1897 1910
                 {
1898
-                    sql += " and t.F_HASTENCOUNTS >0";
1911
+                    sql += " and F_HASTENCOUNTS >0";
1899 1912
                 }
1900 1913
 
1901 1914
             }
@@ -1914,18 +1927,18 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
1914 1927
 
1915 1928
                 string startDate = paramModel.dateParty.Substring(0, 10);
1916 1929
                 string endDate = paramModel.dateParty.Substring(12);
1917
-                sql += " and t.F_CREATEDATE>= '" + startDate + " 00:00:00" + "'";
1918
-                sql += " and t.F_CREATEDATE<= '" + endDate + " 23:59:59" + "'";
1930
+                sql += " and F_CREATEDATE>= '" + startDate + " 00:00:00" + "'";
1931
+                sql += " and F_CREATEDATE<= '" + endDate + " 23:59:59" + "'";
1919 1932
 
1920 1933
             }
1921 1934
             else
1922 1935
             {
1923 1936
                 string endDate = DateTime.Now.ToString("yyyy-MM-dd");
1924 1937
                 string startDate = DateTime.Now.ToString("yyyy-MM-dd");
1925
-                sql += " and t.F_CREATEDATE>= '" + startDate + " 00:00:00" + "'";
1926
-                sql += " and t.F_CREATEDATE<= '" + endDate + " 23:59:59" + "'";
1938
+                sql += " and F_CREATEDATE>= '" + startDate + " 00:00:00" + "'";
1939
+                sql += " and F_CREATEDATE<= '" + endDate + " 23:59:59" + "'";
1927 1940
             }
1928
-            
1941
+
1929 1942
 
1930 1943
 
1931 1944
 
@@ -1935,70 +1948,133 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
1935 1948
             dt = BLL.PagerBLL.GetListPager(
1936 1949
                 "T_Wo_WorkOrderBase",
1937 1950
                 " F_WORKORDERID",
1938
-                " 0 as 序号"
1939
-                 + ", F_CODE as 工单编号"
1940
-                 + ", F_UserName as 受理人"
1941
-                   + ",CONVERT(varchar,  F_CREATEDATE, 120) as 受理时间"
1942
-                     + ", F_WORKORDERFROM as 事件来源"
1943
-                          + ", F_RETURNVISITPROBLEM as 事件概况"
1944
-                               + ", F_PROVINCE as 一级内容分类"
1945
-                                  + " ,  F_CITY as 二级内容分类"
1946
-                                    + ",  F_AREA as 三级内容分类"
1947
-                                         + ", '' as 责任部门"
1948
-                                           + ", '' as 责任部门调查情况"
1949
-                                           + ", '' as 责任部门处理意见和整改措施"
1950
-                                            + ", F_SERVICETYPE as 计划经营部处理意见"
1951
-                                             + ", F_SERVICENATURE as 定性定责结果"
1952
-                                               + ",case when F_WORKORDERSTATEID=0 then '未处理' when F_WORKORDERSTATEID=1 then '处理中' else '已处理' END AS 办理状态"
1953
-                                                 + " ,'-' as 风险点"
1954
-                                                   + ",'-' as 风险等级"
1955
-                                                     + ",'-' as 风险概率"
1956
-                                                       + ",'-' as 风险评估 "
1957
-
1951
+                " F_WORKORDERID as 序号"
1952
+                + ", F_CODE as 工单编号"
1953
+                + ", F_UserName as 受理人"
1954
+                + ",CONVERT(varchar,  F_CREATEDATE, 120) as 受理时间"
1955
+                + ", F_WORKORDERFROM as 事件来源"
1956
+                + ", F_RETURNVISITPROBLEM as 事件概况"
1957
+                + ", F_PROVINCE as 一级内容分类"
1958
+                + " ,  F_CITY as 二级内容分类"
1959
+                + ",  F_AREA as 三级内容分类"
1960
+                + ", '' as 责任部门"
1961
+                + ", '' as 责任部门调查情况"
1962
+                + ", '' as 责任部门处理意见和整改措施"
1963
+                + ", F_SERVICETYPE as 计划经营部处理意见"
1964
+                + ", F_SERVICENATURE as 定性定责结果"
1965
+                + ",case when F_WORKORDERSTATEID=0 then '未处理' when F_WORKORDERSTATEID=1 then '处理中' else '已处理' END AS 办理状态"
1966
+                + " ,'-' as 风险点"
1967
+                + ",'-' as 风险等级"
1968
+                + ",'-' as 风险概率"
1969
+                + ",'-' as 风险评估"
1970
+                + ",F_WORKORDERTYPEID,F_RETURNVISITCONTENT"
1958 1971
                 ,
1959 1972
                 sql,
1960
-                "ORDER BY t.F_CREATEDATE desc",
1973
+                "ORDER BY F_CREATEDATE desc",
1961 1974
                 100000,
1962 1975
                 1,
1963 1976
                 true,
1964 1977
                 out recordCount);
1965 1978
 
1966
-
1979
+            #region 通知  定责相关处理部门
1980
+           
1981
+           
1982
+            #endregion
1967 1983
             if (recordCount > 0)
1968 1984
             {
1969
-                string tempCode = "";
1970 1985
                 int tempn = 0;
1971 1986
                 foreach (DataRow dr in dt.Rows)
1972 1987
                 {
1973
-                    //if (tempCode != dr["工单编号"].ToMyString())
1974
-                    //{
1975
-                    //    tempn += 1;
1976
-                    //}
1977
-                    tempn += 1;
1978
-                    List<T_Wo_WorkOrderNotice> modellist=  noticeBLL.GetModelList(string.Format(" orderid={0} and NoticeType=1 AND  NoticeState=1", dr["F_WORKORDERID"].ToInt32()));
1979 1988
                     string temp1 = "";
1980 1989
                     string temp2 = "";
1981 1990
                     string temp3 = "";
1982
-                    if (modellist.Count > 0)
1991
+
1992
+                    #region 责任部门
1993
+
1994
+                    List<T_Wo_WorkOrderNotice> modellistnotice = noticeBLL.GetModelList(string.Format(" orderid={0} and NoticeType=1 AND  NoticeState=1", dr["序号"].ToInt32()));
1995
+                    if (modellistnotice.Count > 0)
1983 1996
                     {
1984
-                        foreach (T_Wo_WorkOrderNotice modelnotice in modellist)
1997
+                        foreach (T_Wo_WorkOrderNotice modelnotice in modellistnotice)
1985 1998
                         {
1986
-                            temp1 += modelnotice.NoticeDeptName;
1987
-                            temp2 += modelnotice.NoticeDeptContent;
1988
-                            temp3 += modelnotice.NoticeDeptAdvise;
1999
+                            temp1 += modelnotice.NoticeDeptName + "\n";
1989 2000
                         }
1990
-                        
2001
+                    }
2002
+                    dr["责任部门"] = temp1;
2003
+                    #endregion
1991 2004
 
1992
-                        dr["责任部门"] = temp1;
1993
-                        dr["责任部门调查情况"] = temp2;
1994
-                        dr["责任部门处理意见和整改措施"] = temp3;
2005
+                    if (dr["F_WORKORDERTYPEID"].ToInt32() == 1)
2006
+                    {
2007
+                        List<T_Wo_WorkOrderHistory> modelhisList = historyBll.GetModelList(string.Format(" F_INSTANCEID={0}", dr["序号"].ToInt32()));
2008
+                        if (modelhisList.Count > 0)
2009
+                        {
2010
+                            foreach (T_Wo_WorkOrderHistory modelhistemp in modelhisList)
2011
+                            {
2012
+                                temp2 += modelhistemp.F_NEXTOWNERARRID + " 调查情况:\n";
2013
+                                temp3 += modelhistemp.F_NEXTOWNERARRID + " 处理意见和整改措施:\n";
2014
+                          
2015
+                                if (string.IsNullOrEmpty(modelhistemp.F_REMARK))
2016
+                                {
2017
+                                    continue;
2018
+                                }
2019
+                                int tempint = modelhistemp.F_REMARK.IndexOf("|");
2020
+                                if (tempint == -1)
2021
+                                {
2022
+                                    temp2 += modelhistemp.F_REMARK;
2023
+                                    temp3 += modelhistemp.F_REMARK;
2024
+                                }
2025
+                                else
2026
+                                {
2027
+                                    string[] arrystr = modelhistemp.F_REMARK.Split('|');
2028
+
2029
+                                    temp2 += arrystr[0];
2030
+                                    temp2 += "\n";
2031
+                                    temp3 += arrystr[1];
2032
+                                    temp3 += "\n";
2033
+                                }                                
2034
+                            }
2035
+                        }
2036
+                    }
2037
+                    else
2038
+                    {
2039
+                        temp2 += dr["F_RETURNVISITCONTENT"].ToMyString();
2040
+                        temp3 += "客服即时处理工单";
2041
+                        //if (!string.IsNullOrEmpty(dr["F_RETURNVISITCONTENT"].ToMyString()))
2042
+                        //{
2043
+                        //    int tempint = dr["F_RETURNVISITCONTENT"].ToMyString().IndexOf("|");
2044
+                        //    if (tempint == -1)
2045
+                        //    {
2046
+                        //        temp2 += dr["F_RETURNVISITCONTENT"].ToMyString();
2047
+                        //        temp3 += dr["F_RETURNVISITCONTENT"].ToMyString();
2048
+                        //    }
2049
+                        //    else
2050
+                        //    {
2051
+                        //        string[] arrystr = dr["F_RETURNVISITCONTENT"].ToMyString().Split('|');
2052
+
2053
+                        //        temp2 += arrystr[0];
2054
+                        //        temp2 += "\n";
2055
+                        //        temp3 += arrystr[1];
2056
+                        //        temp3 += "\n";
2057
+                        //    }
2058
+                        //}
1995 2059
                     }
1996 2060
 
2061
+                    dr["责任部门调查情况"] = temp2;
2062
+                    dr["责任部门处理意见和整改措施"] = temp3;
2063
+
2064
+                    tempn += 1;
1997 2065
                     dr["序号"] = tempn;
1998 2066
                     //tempCode = dr["工单编号"].ToMyString();
1999 2067
                 }
2000 2068
             }
2001 2069
 
2070
+            DataTable dataTable = dt.Copy();
2071
+            foreach (DataColumn dc in dataTable.Columns)
2072
+            {
2073
+                if (dc.ColumnName.Equals("F_RETURNVISITCONTENT"))
2074
+                    dt.Columns.Remove(dc.ColumnName);
2075
+                if (dc.ColumnName.Equals("F_WORKORDERTYPEID"))
2076
+                    dt.Columns.Remove(dc.ColumnName);
2077
+            }
2002 2078
             ResponseDataModel NewData = new ResponseDataModel();
2003 2079
 
2004 2080
             ExcelReadWrite erw = new ExcelReadWrite();

+ 1 - 1
web/YTSoft.BaseCallCenter.MVCWeb/Controllers/WXInterFaceController.cs

@@ -521,7 +521,7 @@ namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
521 521
                 if (workOrderBaseModel.F_WORKORDERID == 0)
522 522
                 { 
523 523
                     workOrderBaseModel.F_CREATEDATE = DateTime.Now;
524
-                    bl =orderBLL.AddWbgd(workOrderBaseModel); 
524
+                    bl =orderBLL.AddWbgd(workOrderBaseModel)>0; 
525 525
                 }
526 526
                 else
527 527
                 {