Selaa lähdekoodia

提交一次故障报修

liyuanyuan 3 vuotta sitten
vanhempi
commit
86247a4f04

+ 197 - 94
RMYY_CallCenter_Api/Controllers/FaultRepairController.cs

74
         {
74
         {
75
             Model.T_FaultRepair_Base model = new Model.T_FaultRepair_Base();
75
             Model.T_FaultRepair_Base model = new Model.T_FaultRepair_Base();
76
             model.F_Applicant = input.Applicant;
76
             model.F_Applicant = input.Applicant;
77
-            model.F_ApplicationDept = input.ApplicationDept;
77
+            model.F_ApplicationDept = input.ApplicationDept.Trim();
78
             model.F_Phone = input.Phone;
78
             model.F_Phone = input.Phone;
79
             model.F_Applicantsphone = input.Applicantsphone;
79
             model.F_Applicantsphone = input.Applicantsphone;
80
-            model.F_WorkOrderCategory = input.WorkOrderCategory;
80
+            model.F_WorkOrderCategory = input.WorkOrderCategory.Trim();
81
             model.F_Content = input.Content;
81
             model.F_Content = input.Content;
82
             model.F_PlaceOfRepair = input.PlaceOfRepair;
82
             model.F_PlaceOfRepair = input.PlaceOfRepair;
83
             model.F_File = input.File;
83
             model.F_File = input.File;
112
             {
112
             {
113
                 AddAddlog(model.F_WorkOrderCode);
113
                 AddAddlog(model.F_WorkOrderCode);
114
                
114
                
115
-                if (!string.IsNullOrEmpty(input.Maintenancer) && !string.IsNullOrEmpty(input.MaintenanceDept))
115
+                if ( !string.IsNullOrEmpty(input.MaintenanceDept))
116
                 {
116
                 {
117
-                    AddAssignlog(model.F_WorkOrderCode, input.Maintenancer);
117
+                    AddAssignlog(model.F_WorkOrderCode, input.MaintenanceDept);
118
                    
118
                    
119
                 }
119
                 }
120
                 if (input.IsEnd == 1)
120
                 if (input.IsEnd == 1)
128
         }
128
         }
129
 
129
 
130
 
130
 
131
+
132
+        //编辑工单
133
+        /// <summary>
134
+        ///编辑
135
+        /// </summary>
136
+        /// <param name="input"></param>
137
+        /// <returns></returns>
138
+        public ActionResult UpdateFaultRepairWorkOrder(T_FaultRepairBaseinput input)
139
+        {
140
+            Model.T_FaultRepair_Base model=  baseBll.GetModel(input.WorkOrderCode);
141
+
142
+            
143
+            model.F_Applicant = input.Applicant;
144
+            model.F_ApplicationDept = input.ApplicationDept;
145
+            model.F_Phone = input.Phone;
146
+            model.F_Applicantsphone = input.Applicantsphone;
147
+            model.F_WorkOrderCategory = input.WorkOrderCategory;
148
+            model.F_Content = input.Content;
149
+            model.F_PlaceOfRepair = input.PlaceOfRepair;
150
+            model.F_File = input.File;
151
+            bool addassignlog = false;
152
+
153
+            if (input.IsEnd == 1)
154
+            {
155
+                model.F_WorkOrderState = (int)EnumFaultRepairWorkOrderState.finish;
156
+            }
157
+        
158
+            else if (string.IsNullOrEmpty(model.F_MaintenanceDept))
159
+            {
160
+                if (!string.IsNullOrEmpty(input.MaintenanceDept))
161
+                {
162
+                    model.F_AssignTime = DateTime.Now;
163
+
164
+                    List<Model.T_Sys_GongDan> listgd = gdbll.GetModelList(" F_ParentID=0 and F_Name='故障报修'");
165
+                    int timeout = listgd.First().F_TimeOut;
166
+                    model.F_Deadline = DateTime.Now.AddHours(timeout);
167
+                    model.F_MaintenanceDept = input.MaintenanceDept;
168
+                    model.F_Maintenancer = input.Maintenancer;
169
+                    model.F_WorkOrderState = (int)EnumFaultRepairWorkOrderState.receive;
170
+                    addassignlog = true;
171
+                }
172
+            }
173
+            else
174
+            {
175
+                model.F_WorkOrderState = (int)EnumFaultRepairWorkOrderState.neworder;
176
+            }
177
+
178
+            model.F_UpdateTime = DateTime.Now;
179
+          
180
+
181
+            if (baseBll.Update(model) )
182
+            {                   
183
+                if (addassignlog)
184
+                {
185
+                    AddAssignlog(model.F_WorkOrderCode, input.MaintenanceDept);
186
+                }
187
+                if (input.IsEnd == 1)
188
+                {
189
+                    AddOperatorLog("完结了工单", (int)EnumOperatorType.dealed, model.F_WorkOrderCode);
190
+                }
191
+                return Success("编辑成功!");
192
+            }
193
+            else return Error("编辑失败!");
194
+
195
+        }
196
+
197
+
198
+
131
         //查收
199
         //查收
132
         public ActionResult CheckWorkOrder(string WorkOrderCode)
200
         public ActionResult CheckWorkOrder(string WorkOrderCode)
133
         {
201
         {
137
                 if (model.F_Maintenancer == User.F_UserCode)
205
                 if (model.F_Maintenancer == User.F_UserCode)
138
                 {
206
                 {
139
                     model.F_UpdateTime = DateTime.Now;
207
                     model.F_UpdateTime = DateTime.Now;
208
+                    model.F_Maintenancer = User.F_UserCode;
140
                     model.F_WorkOrderState = (int)EnumFaultRepairWorkOrderState.dealing;
209
                     model.F_WorkOrderState = (int)EnumFaultRepairWorkOrderState.dealing;
141
                     AddOperatorLog("查收了工单", (int)EnumOperatorType.check, model.F_WorkOrderCode);
210
                     AddOperatorLog("查收了工单", (int)EnumOperatorType.check, model.F_WorkOrderCode);
142
 
211
 
150
             return Error("工单不存在!");
219
             return Error("工单不存在!");
151
         }
220
         }
152
 
221
 
153
-        //退单
154
-        public ActionResult  BackWorkOrder(string WorkOrderCode)
222
+        //退单  
223
+        public ActionResult  BackWorkOrder(string WorkOrderCode,string BackReason)
155
         {
224
         {
156
             Model.T_FaultRepair_Base model = baseBll.GetModel(WorkOrderCode);
225
             Model.T_FaultRepair_Base model = baseBll.GetModel(WorkOrderCode);
157
             if (model != null)
226
             if (model != null)
158
             {
227
             {
159
-                if (model.F_Maintenancer == User.F_UserCode)
228
+                if (model.F_MaintenanceDept == User.F_DeptId.ToString())
160
                 {
229
                 {
161
                     model.F_WorkOrderState = (int)EnumFaultRepairWorkOrderState.neworder;
230
                     model.F_WorkOrderState = (int)EnumFaultRepairWorkOrderState.neworder;
162
                     model.F_Maintenancer = "";
231
                     model.F_Maintenancer = "";
164
                     model.F_AssignTime = null;
233
                     model.F_AssignTime = null;
165
                     model.F_UpdateTime = DateTime.Now;
234
                     model.F_UpdateTime = DateTime.Now;
166
                     model.F_Deadline = null;
235
                     model.F_Deadline = null;
167
-                    AddOperatorLog("退回了工单", (int)EnumOperatorType.back, model.F_WorkOrderCode);
236
+                    string s = "";
237
+                    if (!string.IsNullOrEmpty(BackReason))
238
+                      {
239
+                        s += ",退回原因:" + BackReason;
240
+                    }
241
+                    AddOperatorLog("退回了工单" + s, (int)EnumOperatorType.back, model.F_WorkOrderCode);
242
+
243
+
168
 
244
 
169
                     return Success(" 退回成功!");
245
                     return Success(" 退回成功!");
170
                 }
246
                 }
396
         //维修员的列表 待接单 待完成 已完成 
472
         //维修员的列表 待接单 待完成 已完成 
397
 
473
 
398
         public ActionResult MaintenancerList( )
474
         public ActionResult MaintenancerList( )
399
-        {
400
-
401
-            DataTable dt = new DataTable();
475
+        {       
402
             string sql = " and F_IsDelete=0 ";
476
             string sql = " and F_IsDelete=0 ";
403
             //待接单1  待完成 2 已完成 3
477
             //待接单1  待完成 2 已完成 3
404
 
478
 
441
             {
515
             {
442
                 sql += " and (F_Applicantsphone  like '%" + strtel + "%' or F_Phone like '%" + strtel + "%') ";
516
                 sql += " and (F_Applicantsphone  like '%" + strtel + "%' or F_Phone like '%" + strtel + "%') ";
443
             }
517
             }
444
-            if (strtel.Trim() != "" && strtel != "undefined")
518
+            if (strworkcode.Trim() != "" && strworkcode != "undefined")
445
             {
519
             {
446
-                sql += " and F_WorkOrderCode='" + strtel + "'";
520
+                sql += " and F_WorkOrderCode='" + strworkcode + "'";
447
             }
521
             }
448
 
522
 
449
             if (strstarttime.Trim() != "" && strstarttime != "undefined")
523
             if (strstarttime.Trim() != "" && strstarttime != "undefined")
492
                                               true,
566
                                               true,
493
                                               out recordCount
567
                                               out recordCount
494
                                             );
568
                                             );
495
-            dt.Columns.Add("GapTime", typeof(string));//执行时限
496
-                                                
497
-            dt.Columns.Add("AssistanceState", typeof(string));//协作工单的状态
569
+            datatable.Columns.Add("GapTime", typeof(string));//执行时限
498
 
570
 
499
-            dt.Columns.Add("StateName", typeof(string));//协作工单的状态
571
+            datatable.Columns.Add("AssistanceState", typeof(string));//协作工单的状态
500
 
572
 
501
-            dt.Columns.Add("Buttons", typeof(object));//操作按钮
502
-            foreach (DataRow dr in dt.Rows)
573
+            datatable.Columns.Add("StateName", typeof(string));//协作工单的状态
574
+
575
+            datatable.Columns.Add("Buttons", typeof(object));//操作按钮
576
+            foreach (DataRow dr in datatable.Rows)
503
             {
577
             {
504
                 #region 执行时限 不是已完成的工单 展示这个字段 
578
                 #region 执行时限 不是已完成的工单 展示这个字段 
505
                 if (Convert.ToInt32(dr["F_WorkOrderState"]) < 3)
579
                 if (Convert.ToInt32(dr["F_WorkOrderState"]) < 3)
506
                 {
580
                 {
507
-                    DateTime deadline = Convert.ToDateTime(dr["F_Deadline"]);
508
-                    TimeSpan ts = deadline.Subtract(DateTime.Now);
509
-                    double tss = double.Parse(Math.Round(ts.TotalSeconds, 0).ToString());
510
-                    if (tss < 0) { tss = -tss; }
511
-                    string gshsj = DateTimeConvert.parseTimeSeconds(tss, 1);
512
-
513
-                    if (deadline > DateTime.Now)
581
+                    if (!string.IsNullOrEmpty(dr["F_Deadline"].ToString()))
514
                     {
582
                     {
583
+                        DateTime deadline = Convert.ToDateTime(dr["F_Deadline"]);
584
+                        TimeSpan ts = deadline.Subtract(DateTime.Now);
585
+                        double tss = double.Parse(Math.Round(ts.TotalSeconds, 0).ToString());
586
+                        if (tss < 0) { tss = -tss; }
587
+                        string gshsj = DateTimeConvert.parseTimeSeconds(tss, 1);
515
 
588
 
516
-                        dr["GapTime"] = "剩余" + gshsj;
517
-                    }
518
-                    else
519
-                    {
589
+                        if (deadline > DateTime.Now)
590
+                        {
520
 
591
 
521
-                        dr["GapTime"] = "超时" + gshsj;
592
+                            dr["GapTime"] = "剩余" + gshsj;
593
+                        }
594
+                        else
595
+                        {
596
+
597
+                            dr["GapTime"] = "超时" + gshsj;
598
+                        }
522
                     }
599
                     }
523
                 }
600
                 }
524
                 #endregion
601
                 #endregion
544
                 #endregion
621
                 #endregion
545
 
622
 
546
                 #region  展示的工单状态
623
                 #region  展示的工单状态
547
-                if (  dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.receive.ToString())
624
+                if (Convert.ToInt32(dr["F_WorkOrderState"]) ==(int) EnumFaultRepairWorkOrderState.receive)
548
                 {
625
                 {
549
                     dr["StateName"] = "待接单";
626
                     dr["StateName"] = "待接单";
550
                 }
627
                 }
551
-                else if (dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.dealing.ToString())
628
+                else if (Convert.ToInt32( dr["F_WorkOrderState"] ) ==(int) EnumFaultRepairWorkOrderState.dealing)
552
                 {
629
                 {
553
                     dr["StateName"] = "待完成";
630
                     dr["StateName"] = "待完成";
554
                 }                
631
                 }                
559
                 #endregion
636
                 #endregion
560
 
637
 
561
                 #region 操作按钮
638
                 #region 操作按钮
562
-                var btns = new List<FaultButtonGroup.button>();
563
-
564
-                //待查收 -查收 退回
565
-                if (dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.receive.ToString())
566
-                {
567
-                    btns.Add(FaultButtonGroup.check());
568
-                    btns.Add(FaultButtonGroup.back());
569
-                }
570
-                //待完成 -协作 完成
571
-                if (dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.dealing.ToString())
572
-                {
573
-                    //没有协作
574
-                    if (!string.IsNullOrEmpty(dr["AssistanceState"].ToString()))
575
-                    {
576
-                        btns.Add(FaultButtonGroup.assistance());
577
-                        btns.Add(FaultButtonGroup.assign());
578
-                        btns.Add(FaultButtonGroup.finish());
579
-
580
-                    }
581
 
639
 
582
-                    else if (dr["AssistanceState"].ToString() == "未完成")
640
+               
641
+                    var btns = new List<FaultButtonGroup.button>();
642
+                    //待查收 -查收 退回
643
+                    if (Convert.ToInt32(dr["F_WorkOrderState"]) == (int)EnumFaultRepairWorkOrderState.receive)
583
                     {
644
                     {
584
-                        btns.Add(FaultButtonGroup.assistance());
585
-                        btns.Add(FaultButtonGroup.assign());
645
+                        btns.Add(FaultButtonGroup.check());
646
+                        btns.Add(FaultButtonGroup.back());
586
                     }
647
                     }
587
-                    else
648
+                if (dr["F_Maintenancer"].ToString() == User.F_UserCode)
649
+                {
650
+                    //待完成 -协作 完成
651
+                    if (Convert.ToInt32(dr["F_WorkOrderState"]) == (int)EnumFaultRepairWorkOrderState.dealing)
588
                     {
652
                     {
589
-                        btns.Add(FaultButtonGroup.finish());
590
-                    }
653
+                        //没有协作
654
+                        if (!string.IsNullOrEmpty(dr["AssistanceState"].ToString()))
655
+                        {
656
+                            btns.Add(FaultButtonGroup.assistance());
657
+                            btns.Add(FaultButtonGroup.assign());
658
+                            btns.Add(FaultButtonGroup.finish());
591
 
659
 
660
+                        }
592
 
661
 
662
+                        else if (dr["AssistanceState"].ToString() == "未完成")
663
+                        {
664
+                            btns.Add(FaultButtonGroup.assistance());
665
+                            btns.Add(FaultButtonGroup.assign());
666
+                        }
667
+                        else
668
+                        {
669
+                            btns.Add(FaultButtonGroup.finish());
670
+                        }
593
 
671
 
594
-                }
595
 
672
 
596
 
673
 
674
+                    }
675
+                    dr["Buttons"] = btns;
676
+                }
597
                 #endregion
677
                 #endregion
598
             }
678
             }
599
 
679
 
620
 
700
 
621
             DataTable dt = new DataTable();
701
             DataTable dt = new DataTable();
622
             string sql = " and F_IsDelete=0 and F_CreateUser='"+User.F_UserCode+"'";
702
             string sql = " and F_IsDelete=0 and F_CreateUser='"+User.F_UserCode+"'";
623
-            //待处理传2    已处理传3
703
+            
624
 
704
 
625
             string strpageindex = RequestString.GetQueryString("page");
705
             string strpageindex = RequestString.GetQueryString("page");
626
             int pageindex = 1;
706
             int pageindex = 1;
627
             string strpagesize = RequestString.GetQueryString("pagesize");
707
             string strpagesize = RequestString.GetQueryString("pagesize");
628
             int pagesize = 10;
708
             int pagesize = 10;
629
-
709
+            //待处理传2    已处理传3
630
             int strstate = RequestString.GetInt("state", -1);
710
             int strstate = RequestString.GetInt("state", -1);
631
             string strname = HttpUtility.UrlDecode(RequestString.GetQueryString("name"));
711
             string strname = HttpUtility.UrlDecode(RequestString.GetQueryString("name"));
632
 
712
 
657
             {
737
             {
658
                 sql += " and (F_Applicantsphone  like '%" + strtel + "%' or F_Phone like '%" + strtel + "%') ";
738
                 sql += " and (F_Applicantsphone  like '%" + strtel + "%' or F_Phone like '%" + strtel + "%') ";
659
             }
739
             }
660
-            if (strtel.Trim() != "" && strtel != "undefined")
740
+            if (strworkcode.Trim() != "" && strworkcode != "undefined")
661
             {
741
             {
662
-                sql += " and F_WorkOrderCode='" + strtel + "'";
742
+                sql += " and F_WorkOrderCode='" + strworkcode + "'";
663
             }
743
             }
664
 
744
 
665
             if (strstarttime.Trim() != "" && strstarttime != "undefined")
745
             if (strstarttime.Trim() != "" && strstarttime != "undefined")
695
 
775
 
696
             }
776
             }
697
             int recordCount = 0;
777
             int recordCount = 0;
698
-            DataTable datatable = Bll.PagerBll.GetListPager
778
+            dt= Bll.PagerBll.GetListPager
699
                                             ("T_FaultRepair_Base ",
779
                                             ("T_FaultRepair_Base ",
700
                                               "F_WorkOrderId",
780
                                               "F_WorkOrderId",
701
                                               "*",
781
                                               "*",
717
                 #region 执行时限 不是已完成的工单 展示这个字段 
797
                 #region 执行时限 不是已完成的工单 展示这个字段 
718
                 if (Convert.ToInt32(dr["F_WorkOrderState"]) < 3)
798
                 if (Convert.ToInt32(dr["F_WorkOrderState"]) < 3)
719
                 {
799
                 {
720
-                    DateTime deadline = Convert.ToDateTime(dr["F_Deadline"]);
721
-                    TimeSpan ts = deadline.Subtract(DateTime.Now);
722
-                    double tss = double.Parse(Math.Round(ts.TotalSeconds, 0).ToString());
723
-                    if (tss < 0) { tss = -tss; }
724
-                    string gshsj = DateTimeConvert.parseTimeSeconds(tss, 1);
725
-
726
-                    if (deadline > DateTime.Now)
727
-                    {
728
-
729
-                        dr["GapTime"] = "剩余" + gshsj;
730
-                    }
731
-                    else
800
+                    if (!string.IsNullOrEmpty(dr["F_Deadline"].ToString()))
732
                     {
801
                     {
733
-
734
-                        dr["GapTime"] = "超时" + gshsj;
802
+                        DateTime deadline = Convert.ToDateTime(dr["F_Deadline"]);
803
+                        TimeSpan ts = deadline.Subtract(DateTime.Now);
804
+                        double tss = double.Parse(Math.Round(ts.TotalSeconds, 0).ToString());
805
+                        if (tss < 0) { tss = -tss; }
806
+                        string gshsj = DateTimeConvert.parseTimeSeconds(tss, 1);
807
+                        if (deadline > DateTime.Now)
808
+                        {
809
+                            dr["GapTime"] = "剩余" + gshsj;
810
+                        }
811
+                        else
812
+                        {
813
+                            dr["GapTime"] = "超时" + gshsj;
814
+                        }
735
                     }
815
                     }
736
                 }
816
                 }
737
                 #endregion
817
                 #endregion
738
 
818
 
739
 
819
 
740
                 #region  展示的工单状态
820
                 #region  展示的工单状态
741
-                if (dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.receive.ToString() || dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.receive.ToString())
821
+                if (Convert.ToInt32(dr["F_WorkOrderState"]) == (int)EnumFaultRepairWorkOrderState.neworder || Convert.ToInt32(dr["F_WorkOrderState"]) == (int)EnumFaultRepairWorkOrderState.receive)
742
                 {
822
                 {
743
                     dr["StateName"] = "待接单";
823
                     dr["StateName"] = "待接单";
744
                 }
824
                 }
745
-                else if (dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.dealing.ToString())
825
+                else if (Convert.ToInt32(dr["F_WorkOrderState"]) == (int)EnumFaultRepairWorkOrderState.dealing)
746
                 {
826
                 {
747
                     dr["StateName"] = "已接单";
827
                     dr["StateName"] = "已接单";
748
                 }
828
                 }
749
-                else if (dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.dealed.ToString())
829
+                else if (Convert.ToInt32(dr["F_WorkOrderState"]) == (int)EnumFaultRepairWorkOrderState.dealed)
750
                 {
830
                 {
751
                     dr["StateName"] = "待评价";
831
                     dr["StateName"] = "待评价";
752
                 }
832
                 }
760
                 var btns = new List<FaultButtonGroup.button>();
840
                 var btns = new List<FaultButtonGroup.button>();
761
 
841
 
762
                 //待接单 已接单 -自行解决
842
                 //待接单 已接单 -自行解决
763
-                if (dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.neworder.ToString() ||
764
-                    dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.receive.ToString()||
765
-                    dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.dealing.ToString()
843
+                if ( Convert.ToInt32( dr["F_WorkOrderState"]) ==(int)EnumFaultRepairWorkOrderState.neworder  ||
844
+                   Convert.ToInt32(dr["F_WorkOrderState"]) == (int)EnumFaultRepairWorkOrderState.receive ||
845
+                     Convert.ToInt32(dr["F_WorkOrderState"]) == (int)EnumFaultRepairWorkOrderState.dealing 
766
                     )
846
                     )
767
                 {
847
                 {
768
                     btns.Add(FaultButtonGroup.solve());
848
                     btns.Add(FaultButtonGroup.solve());
769
                   
849
                   
770
                 }
850
                 }
771
                 //待评价  评价
851
                 //待评价  评价
772
-                if (dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.dealed.ToString())
852
+                if (Convert.ToInt32(dr["F_WorkOrderState"]) == (int)EnumFaultRepairWorkOrderState.dealed)
773
                 {
853
                 {
774
                     btns.Add(FaultButtonGroup.evaluate());                     
854
                     btns.Add(FaultButtonGroup.evaluate());                     
775
                 }
855
                 }
776
-                if (dr["F_WorkOrderState"].ToString() == EnumFaultRepairWorkOrderState.exceptionended.ToString())
856
+                if (Convert.ToInt32(dr["F_WorkOrderState"]) == (int)EnumFaultRepairWorkOrderState.exceptionended)
777
                 {
857
                 {
778
                     btns.Add(FaultButtonGroup.evaluate());
858
                     btns.Add(FaultButtonGroup.evaluate());
779
                 }
859
                 }
780
 
860
 
781
 
861
 
782
-
862
+                dr["Buttons"] = btns;
783
                 #endregion
863
                 #endregion
784
             }
864
             }
785
 
865
 
788
             {
868
             {
789
                 state = "success",
869
                 state = "success",
790
                 message = "成功",
870
                 message = "成功",
791
-                rows = datatable,
871
+                rows = dt,
792
                 total = recordCount
872
                 total = recordCount
793
             };
873
             };
794
             return Content(obj.ToJson());
874
             return Content(obj.ToJson());
802
 
882
 
803
         //工单详情
883
         //工单详情
804
 
884
 
805
-        public ActionResult GetWorkOrder ()
885
+        public ActionResult GetWorkOrder()
806
         {
886
         {
807
 
887
 
808
 
888
 
809
             string strworkorderid = HttpUtility.UrlDecode(RequestString.GetQueryString("WorkOrderCode"));
889
             string strworkorderid = HttpUtility.UrlDecode(RequestString.GetQueryString("WorkOrderCode"));
810
             Model.T_FaultRepair_Base model = baseBll.GetModel(strworkorderid);
890
             Model.T_FaultRepair_Base model = baseBll.GetModel(strworkorderid);
811
-            int type = RequestString.GetInt("type", 0);//0基本信息1监察意见2领导批示3办理情况4回访信息5督办信息6办理过程
891
+            int type = RequestString.GetInt("type", 0);//0基本信息1处理结果2协作工单3工单流程4维修记录5评价
812
             if (!string.IsNullOrEmpty(strworkorderid))
892
             if (!string.IsNullOrEmpty(strworkorderid))
813
             {
893
             {
814
                 switch (type)
894
                 switch (type)
842
 
922
 
843
                     case 3://工单流程
923
                     case 3://工单流程
844
 
924
 
845
-                     var loglist=   logBll.GetModelList(" F_WorkOrderCode='" + strworkorderid + "'" + " order by F_OperationTime desc");
846
-                        
847
-                        return Success("获取工单流程成功", loglist);
925
+                     //var loglist=   logBll.GetModelList(" F_WorkOrderCode='" + strworkorderid + "'" + " order by F_OperationTime desc");
926
+
927
+                        var sqllog = "select *,[dbo].[GetUserName] username from T_FaultRepair_OperationLog where F_WorkOrderCode = '" + strworkorderid + "' " + " order by F_OperationTime desc";
928
+
929
+                        DataTable dtlog = DbHelperSQL.Query(sqllog).Tables[0];
930
+
931
+                        return Success("获取工单流程成功", dtlog);
932
+
933
+
934
+                   
848
 
935
 
849
                     case 4://维修记录
936
                     case 4://维修记录
850
                         string sqlcl2 = "select * from T_FaultRepair_Process where F_WorkOrderCode='" + strworkorderid + "'";
937
                         string sqlcl2 = "select * from T_FaultRepair_Process where F_WorkOrderCode='" + strworkorderid + "'";
871
 
958
 
872
 
959
 
873
 
960
 
961
+        //转派 ,派给自己的工单 转给同部门的别的人
962
+        public ActionResult Transfer(string WorkOrderCode,string ToUserCode)
963
+        {
964
+            Model.T_FaultRepair_Base model = baseBll.GetModel(WorkOrderCode);
965
+            if (model != null && model.F_Maintenancer == User.F_UserCode)
966
+            {
967
+                model.F_Maintenancer = ToUserCode;
968
+
969
+                AddOperatorLog("转派工单给" + ToUserCode, (int)EnumOperatorType.transfer, WorkOrderCode);
970
+            }
971
+            return Error("暂时没有权限操作");
972
+
973
+        }
974
+
975
+
976
+
874
 
977
 
875
         // 返修
978
         // 返修
876
         public ActionResult ReturnWorkOrder(string WorkOrderCode, string ReturnReason)
979
         public ActionResult ReturnWorkOrder(string WorkOrderCode, string ReturnReason)
957
 
1060
 
958
         public void AddAddlog(string workordercode)
1061
         public void AddAddlog(string workordercode)
959
         {
1062
         {
960
-            AddOperatorLog("创建工单", (int)EnumOperatorType.add, workordercode);
1063
+            AddOperatorLog("创建报修工单", (int)EnumOperatorType.add, workordercode);
961
         }
1064
         }
962
 
1065
 
963
         public void AddAssignlog(string workordercode,string maintenancer)
1066
         public void AddAssignlog(string workordercode,string maintenancer)

+ 3 - 1
RMYY_CallCenter_Api/Models/Enum/EnumOperatorType.cs

33
         exceptionended,
33
         exceptionended,
34
 
34
 
35
         [Description("异常完结")]
35
         [Description("异常完结")]
36
-        submitreturn
36
+        submitreturn,
37
+            [Description("转派")]
38
+         transfer
37
 
39
 
38
 
40
 
39
     }
41
     }

+ 2 - 0
RMYY_CallCenter_Api/Models/Input/T_FaultRepairBaseinput.cs

7
 {
7
 {
8
     public class T_FaultRepairBaseinput
8
     public class T_FaultRepairBaseinput
9
     {
9
     {
10
+
11
+        public string WorkOrderCode { get; set; }
10
         /// <summary>
12
         /// <summary>
11
         /// 申请人
13
         /// 申请人
12
         /// </summary>
14
         /// </summary>