Sfoglia il codice sorgente

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

zhangkun 5 anni fa
parent
commit
3d809befea

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


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

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

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

25
         /// <summary>
25
         /// <summary>
26
         /// 增加一条数据
26
         /// 增加一条数据
27
         /// </summary>
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
             return dal.AddWbgd(model);
30
             return dal.AddWbgd(model);
31
         }
31
         }

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

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

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

355
         /// <summary>
355
         /// <summary>
356
         /// 增加一条手工微博工单数据
356
         /// 增加一条手工微博工单数据
357
         /// </summary>
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
             StringBuilder strSql = new StringBuilder();
360
             StringBuilder strSql = new StringBuilder();
361
             strSql.Append("insert into T_Wo_WorkOrderBase(");
361
             strSql.Append("insert into T_Wo_WorkOrderBase(");
539
             object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
539
             object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
540
             if (obj == null)
540
             if (obj == null)
541
             {
541
             {
542
-                return false;
542
+                return 0;
543
             }
543
             }
544
             else
544
             else
545
             {
545
             {
546
-                return true;
546
+                return Convert.ToInt32(obj);
547
             }
547
             }
548
         }
548
         }
549
         /// <summary>
549
         /// <summary>
1838
                     EditStatus = true;
1838
                     EditStatus = true;
1839
                     if (n == 0)
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
                         UpdateOrderToHF(eidthistoryModel.F_INSTANCEID.ToInt32());
1842
                         UpdateOrderToHF(eidthistoryModel.F_INSTANCEID.ToInt32());
1843
                     }
1843
                     }
1844
                     //如果有转办信息插入转办信息
1844
                     //如果有转办信息插入转办信息
2293
             historyModel.F_TASKFLAG = 2;
2293
             historyModel.F_TASKFLAG = 2;
2294
             historyModel.F_REMARK = "已撤消";
2294
             historyModel.F_REMARK = "已撤消";
2295
             historyId = InsertWorkOrderHistoryModel(historyModel);
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
             return historyId;
2310
             return historyId;
2311
 
2311
 
2312
         }
2312
         }

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

215
         /// <summary>
215
         /// <summary>
216
         /// 更新定责次数
216
         /// 更新定责次数
217
         /// </summary>
217
         /// </summary>
218
-        public bool updatenum(int orderid)
218
+        public int updatenum(int orderid)
219
         {
219
         {
220
 
220
 
221
             StringBuilder strSql = new StringBuilder();
221
             StringBuilder strSql = new StringBuilder();
222
             strSql.Append(" update T_Wo_WorkOrderNotice ");
222
             strSql.Append(" update T_Wo_WorkOrderNotice ");
223
             strSql.Append(" set NoticeState=0,DZNumber=DZNumber+1 ");
223
             strSql.Append(" set NoticeState=0,DZNumber=DZNumber+1 ");
224
-            strSql.Append(" where OrderId=@OrderId");
224
+            strSql.Append(" where OrderId=@OrderId;");
225
             SqlParameter[] parameters = {
225
             SqlParameter[] parameters = {
226
                     new SqlParameter("@OrderId",orderid)
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
         /// <summary>
237
         /// <summary>

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

279
         // 定性定责结果
279
         // 定性定责结果
280
         public string F_SERVICENATURE { get; set; }
280
         public string F_SERVICENATURE { get; set; }
281
 
281
 
282
+        public string DeptIds { get; set; }
283
+
282
 
284
 
283
         public int orderid { get; set; }
285
         public int orderid { get; set; }
284
 
286
 

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

162
             callScreenModel.AgeModelList = GetCodeType("NLD");
162
             callScreenModel.AgeModelList = GetCodeType("NLD");
163
             //获取部门列表
163
             //获取部门列表
164
             callScreenModel.DepartmentList = deptBll.GetModelList("F_ParentId=0");
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
             return View(callScreenModel);
167
             return View(callScreenModel);
168
         }
168
         }
287
         public bool ResetWorkOrder(int workOrderId)
287
         public bool ResetWorkOrder(int workOrderId)
288
         {
288
         {
289
             bool result = false;;
289
             bool result = false;;
290
-            int byid = F_UserID;
291
             string bycode = F_UserCode; 
290
             string bycode = F_UserCode; 
292
             string byname =F_UserName;
291
             string byname =F_UserName;
293
             int bmid = F_DeptId;
292
             int bmid = F_DeptId;
294
             string bmmc = "";
293
             string bmmc = "";
295
-            if (byid>0) {
294
+            if (F_UserID > 0) {
296
                 YTSoft.BaseCallCenter.BLL.T_Sys_Department depBll = new BLL.T_Sys_Department();
295
                 YTSoft.BaseCallCenter.BLL.T_Sys_Department depBll = new BLL.T_Sys_Department();
297
                 List<Model.T_Sys_Department> list = new List<T_Sys_Department>();
296
                 List<Model.T_Sys_Department> list = new List<T_Sys_Department>();
298
                 list = depBll.GetModelList("F_DeptId=" + bmid);
297
                 list = depBll.GetModelList("F_DeptId=" + bmid);
299
                 if (list.Count>0)
298
                 if (list.Count>0)
300
                 {
299
                 {
301
                     bmmc = list[0].F_DeptName.ToString();
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
             return result;
304
             return result;
553
         [AcceptVerbs(HttpVerbs.Post)]
552
         [AcceptVerbs(HttpVerbs.Post)]
554
         public bool workOrderAddData(T_Wo_WorkOrderBase workOrderBaseModel)
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
             workOrderBaseModel.F_USERNAME = F_UserName;
572
             workOrderBaseModel.F_USERNAME = F_UserName;
564
-            //workOrderBaseModel.F_LINKMAN = F_UserCode;//工号
565
-            //workOrderBaseModel.F_REPAIRMANNAME = "12";//姓名
566
-
567
             workOrderBaseModel.F_DEPTID = F_DeptId;
573
             workOrderBaseModel.F_DEPTID = F_DeptId;
574
+
568
             T_Sys_Department deptmodel = deptBll.GetModel(F_DeptId);
575
             T_Sys_Department deptmodel = deptBll.GetModel(F_DeptId);
569
             if (deptmodel != null)
576
             if (deptmodel != null)
570
             {
577
             {
599
                 workOrderBaseModel.CustomerBaseModel.F_IndustryId = workOrderBaseModel.F_REPAIRLEVEL;
606
                 workOrderBaseModel.CustomerBaseModel.F_IndustryId = workOrderBaseModel.F_REPAIRLEVEL;
600
                 workOrderBaseModel.CustomerBaseModel.F_Url = workOrderBaseModel.F_ADSLACCOUNT;
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
                 int cusid = cusBLL.EditCusInfoModel(workOrderBaseModel.CustomerBaseModel);
610
                 int cusid = cusBLL.EditCusInfoModel(workOrderBaseModel.CustomerBaseModel);
608
                 if (cusid > 1)
611
                 if (cusid > 1)
617
                 if (workOrderBaseModel.F_HOUSING == "表扬" || workOrderBaseModel.F_HOUSING == "咨询" || workOrderBaseModel.F_HOUSING == "挂失")
620
                 if (workOrderBaseModel.F_HOUSING == "表扬" || workOrderBaseModel.F_HOUSING == "咨询" || workOrderBaseModel.F_HOUSING == "挂失")
618
                 {
621
                 {
619
                     workOrderBaseModel.F_WORKORDERTYPEID = 3;
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
                 else if (workOrderBaseModel.F_WORKORDERTYPEID == 3)
649
                 else if (workOrderBaseModel.F_WORKORDERTYPEID == 3)
622
                 {
650
                 {
639
                 {
667
                 {
640
                     if (workOrderBaseModel.HistoryOrderList != null && workOrderBaseModel.HistoryOrderList.Count > 0)
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
                             if (model != null && model.F_DeptId > 0)
682
                             if (model != null && model.F_DeptId > 0)
646
                             {
683
                             {
647
                                 modelhis.F_OPTBTNID = model.F_DeptId;
684
                                 modelhis.F_OPTBTNID = model.F_DeptId;
648
                                 modelhis.F_NEXTOWNERARRID = model.F_DeptName; 
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
                 if (workOrderBaseModel.F_WORKORDERTYPEID == 1)
692
                 if (workOrderBaseModel.F_WORKORDERTYPEID == 1)
654
                 {
693
                 {
655
                     AddAction("t_wo_workorderbase", workOrderBaseModel.F_WORKORDERID.ToMyString(), "转单处理工单", workOrderBaseModel.F_CODE);
694
                     AddAction("t_wo_workorderbase", workOrderBaseModel.F_WORKORDERID.ToMyString(), "转单处理工单", workOrderBaseModel.F_CODE);
662
             else
701
             else
663
             { workOrderBaseModel.F_CODE = ""; }
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
             return orderBLL.UpdateWorkOrderInfoModel(workOrderBaseModel);
716
             return orderBLL.UpdateWorkOrderInfoModel(workOrderBaseModel);
666
         }
717
         }
667
 
718
 
728
                 if (workOrderBaseModel.F_WORKORDERID == 0)
779
                 if (workOrderBaseModel.F_WORKORDERID == 0)
729
                 {
780
                 {
730
                     workOrderBaseModel.F_CREATEDATE = DateTime.Now;
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
                 else
785
                 else
734
                 {
786
                 {

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

429
             modelorder.F_SERVICENATURE = modelinput.F_SERVICENATURE;
429
             modelorder.F_SERVICENATURE = modelinput.F_SERVICENATURE;
430
             modelorder.F_SERVICETYPE = modelinput.F_SERVICETYPE;
430
             modelorder.F_SERVICETYPE = modelinput.F_SERVICETYPE;
431
             #endregion
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
                         T_Wo_WorkOrderNotice modeladd = new T_Wo_WorkOrderNotice();
555
                         T_Wo_WorkOrderNotice modeladd = new T_Wo_WorkOrderNotice();
449
                         modeladd.OrderId = modelinput.orderid;
556
                         modeladd.OrderId = modelinput.orderid;
450
                         modeladd.DealAdvise = modelinput.F_SERVICETYPE;
557
                         modeladd.DealAdvise = modelinput.F_SERVICETYPE;
454
                         modeladd.Class2 = modelorder.F_CITY;
561
                         modeladd.Class2 = modelorder.F_CITY;
455
                         modeladd.Class3 = modelorder.F_AREA;
562
                         modeladd.Class3 = modelorder.F_AREA;
456
 
563
 
457
-
564
+                        modeladd.DZNumber = DZNumber + 1;
458
                         modeladd.NoticeState = 1;
565
                         modeladd.NoticeState = 1;
459
                         modeladd.NoticeType = 1;
566
                         modeladd.NoticeType = 1;
460
                         modeladd.Userid = F_UserID;
567
                         modeladd.Userid = F_UserID;
461
                         modeladd.Username = F_UserName;
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
                         noticeBLL.Add(modeladd);
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
             #endregion
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
             AddAction("t_wo_workorderbase", modelorder.F_WORKORDERID.ToMyString(), "提交定责工单", modelorder.F_CODE);
586
             AddAction("t_wo_workorderbase", modelorder.F_WORKORDERID.ToMyString(), "提交定责工单", modelorder.F_CODE);
578
             AddAction("t_wo_workorderbase", modelorder.F_WORKORDERID.ToMyString(), "提交定责工单", "数据:" + JsonConvert.SerializeObject(modelorder), "关键信息");
587
             AddAction("t_wo_workorderbase", modelorder.F_WORKORDERID.ToMyString(), "提交定责工单", "数据:" + JsonConvert.SerializeObject(modelorder), "关键信息");
579
             return orderBLL.UpdateDZClass(modelorder);
588
             return orderBLL.UpdateDZClass(modelorder);
751
             return View(model);
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
         /// <summary>
818
         /// <summary>
1153
             //F_REPAIRMANID 接入渠道 1语音 2留言  3微信 4微博 FromType
1162
             //F_REPAIRMANID 接入渠道 1语音 2留言  3微信 4微博 FromType
1154
             //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);
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
             if (!string.IsNullOrEmpty(workorderNum))
1173
             if (!string.IsNullOrEmpty(workorderNum))
1237
             DataTable dt = new DataTable();
1251
             DataTable dt = new DataTable();
1238
             int recordCount = 0;
1252
             int recordCount = 0;
1239
             Model.PageData<Model.T_Wo_WorkOrderBase> pageModel = new Model.PageData<Model.T_Wo_WorkOrderBase>();
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
                 "F_WORKORDERID",
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
               + @" , 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",
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
                 //+ " ,(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",
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
                 sql,
1260
                 sql,
1247
-                "ORDER BY F_CREATEDATE desc",
1261
+                " F_CREATEDATE desc",
1248
                 limit,
1262
                 limit,
1249
                 page,
1263
                 page,
1250
-                true,
1251
                 out recordCount);
1264
                 out recordCount);
1252
 
1265
 
1253
 
1266
 
1838
             //工单编号
1851
             //工单编号
1839
             if (!string.IsNullOrEmpty(paramModel.workorderNum))
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
             if (!string.IsNullOrEmpty(paramModel.cusName))
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
             if (!string.IsNullOrEmpty(paramModel.phoneNumber))
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
             if (!string.IsNullOrEmpty(paramModel.userInfo))
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
             if (paramModel.status != null)
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
             if (paramModel.bussType != null && paramModel.bussType > 0)
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
             if (paramModel.detailType != null && paramModel.detailType > 0)
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
             if (!string.IsNullOrEmpty(paramModel.Content))
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
             if (paramModel.GoType != null && paramModel.GoType > 0)
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
             if (paramModel.FromType != null && paramModel.FromType > 0)
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
             if (paramModel.F_HASTENCOUNTS != null && paramModel.F_HASTENCOUNTS > -1)
1903
             if (paramModel.F_HASTENCOUNTS != null && paramModel.F_HASTENCOUNTS > -1)
1891
             {
1904
             {
1892
                 if (paramModel.F_HASTENCOUNTS == 0)
1905
                 if (paramModel.F_HASTENCOUNTS == 0)
1893
                 {
1906
                 {
1894
-                    sql += " and t.F_HASTENCOUNTS =0";
1907
+                    sql += " and F_HASTENCOUNTS =0";
1895
                 }
1908
                 }
1896
                 else
1909
                 else
1897
                 {
1910
                 {
1898
-                    sql += " and t.F_HASTENCOUNTS >0";
1911
+                    sql += " and F_HASTENCOUNTS >0";
1899
                 }
1912
                 }
1900
 
1913
 
1901
             }
1914
             }
1914
 
1927
 
1915
                 string startDate = paramModel.dateParty.Substring(0, 10);
1928
                 string startDate = paramModel.dateParty.Substring(0, 10);
1916
                 string endDate = paramModel.dateParty.Substring(12);
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
             else
1934
             else
1922
             {
1935
             {
1923
                 string endDate = DateTime.Now.ToString("yyyy-MM-dd");
1936
                 string endDate = DateTime.Now.ToString("yyyy-MM-dd");
1924
                 string startDate = DateTime.Now.ToString("yyyy-MM-dd");
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
             dt = BLL.PagerBLL.GetListPager(
1948
             dt = BLL.PagerBLL.GetListPager(
1936
                 "T_Wo_WorkOrderBase",
1949
                 "T_Wo_WorkOrderBase",
1937
                 " F_WORKORDERID",
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
                 sql,
1972
                 sql,
1960
-                "ORDER BY t.F_CREATEDATE desc",
1973
+                "ORDER BY F_CREATEDATE desc",
1961
                 100000,
1974
                 100000,
1962
                 1,
1975
                 1,
1963
                 true,
1976
                 true,
1964
                 out recordCount);
1977
                 out recordCount);
1965
 
1978
 
1966
-
1979
+            #region 通知  定责相关处理部门
1980
+           
1981
+           
1982
+            #endregion
1967
             if (recordCount > 0)
1983
             if (recordCount > 0)
1968
             {
1984
             {
1969
-                string tempCode = "";
1970
                 int tempn = 0;
1985
                 int tempn = 0;
1971
                 foreach (DataRow dr in dt.Rows)
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
                     string temp1 = "";
1988
                     string temp1 = "";
1980
                     string temp2 = "";
1989
                     string temp2 = "";
1981
                     string temp3 = "";
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
                     dr["序号"] = tempn;
2065
                     dr["序号"] = tempn;
1998
                     //tempCode = dr["工单编号"].ToMyString();
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
             ResponseDataModel NewData = new ResponseDataModel();
2078
             ResponseDataModel NewData = new ResponseDataModel();
2003
 
2079
 
2004
             ExcelReadWrite erw = new ExcelReadWrite();
2080
             ExcelReadWrite erw = new ExcelReadWrite();

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

521
                 if (workOrderBaseModel.F_WORKORDERID == 0)
521
                 if (workOrderBaseModel.F_WORKORDERID == 0)
522
                 { 
522
                 { 
523
                     workOrderBaseModel.F_CREATEDATE = DateTime.Now;
523
                     workOrderBaseModel.F_CREATEDATE = DateTime.Now;
524
-                    bl =orderBLL.AddWbgd(workOrderBaseModel); 
524
+                    bl =orderBLL.AddWbgd(workOrderBaseModel)>0; 
525
                 }
525
                 }
526
                 else
526
                 else
527
                 {
527
                 {