Browse Source

回访记录

liyuanyuan 2 years ago
parent
commit
e4a9716e4c

+ 29 - 7
zxkf-api/src/main/java/api/controller/order/WorkOrderBaseController.java

4
 import api.entity.database.call.CallLog;
4
 import api.entity.database.call.CallLog;
5
 import api.entity.database.call.Record;
5
 import api.entity.database.call.Record;
6
 import api.entity.database.order.WorkOrderOperateLog;
6
 import api.entity.database.order.WorkOrderOperateLog;
7
+import api.entity.database.order.WorkOrderVisitLog;
7
 import api.entity.database.system.*;
8
 import api.entity.database.system.*;
8
 import api.entity.input.order.TransOrderInput;
9
 import api.entity.input.order.TransOrderInput;
9
 import api.entity.view.order.WorkOrderBaseView;
10
 import api.entity.view.order.WorkOrderBaseView;
12
 import api.service.call.ICallLogService;
13
 import api.service.call.ICallLogService;
13
 import api.service.call.IRecordService;
14
 import api.service.call.IRecordService;
14
 import api.service.order.IWorkOrderOperateLogService;
15
 import api.service.order.IWorkOrderOperateLogService;
16
+import api.service.order.IWorkOrderVisitLogService;
15
 import api.service.system.*;
17
 import api.service.system.*;
16
 import api.util.annotation.Anonymous;
18
 import api.util.annotation.Anonymous;
17
 import com.alibaba.fastjson2.JSON;
19
 import com.alibaba.fastjson2.JSON;
79
     @Autowired
81
     @Autowired
80
     private IWorkroderTypeService workrodertypeService;
82
     private IWorkroderTypeService workrodertypeService;
81
 
83
 
84
+    @Autowired
85
+    private IWorkOrderVisitLogService visitLogService;
86
+
87
+
88
+
89
+
82
     //待交办1 ; 待接单(没有处理人的时候)2; 待处理3; 待审核 4 ;待回访5 ;已完结6;
90
     //待交办1 ; 待接单(没有处理人的时候)2; 待处理3; 待审核 4 ;待回访5 ;已完结6;
83
     @ApiOperation("列表 listType 0 综合查询列表 1(处理人)我的待处理;2 待交办;3 已办待审核;4 已办待回访;5 我的回复列表;6 组内工单")
91
     @ApiOperation("列表 listType 0 综合查询列表 1(处理人)我的待处理;2 待交办;3 已办待审核;4 已办待回访;5 我的回复列表;6 组内工单")
84
     @Log(title = "查询wo_workorderbase列表", businessType = BusinessType.QUERY)
92
     @Log(title = "查询wo_workorderbase列表", businessType = BusinessType.QUERY)
579
     @ApiOperation("回访")
587
     @ApiOperation("回访")
580
     @Log(title = "回访wo_workorderbase", businessType = BusinessType.UPDATE)
588
     @Log(title = "回访wo_workorderbase", businessType = BusinessType.UPDATE)
581
     @PutMapping("/visit/{id}")
589
     @PutMapping("/visit/{id}")
582
-    public AjaxResult visit(@RequestBody  HashMap<String,Object> map  ,@PathVariable int id) {
590
+    public AjaxResult visit(@RequestBody  HashMap<String,Object> map  ,@PathVariable Long id) {
583
         Date currentDate = new Date(System.currentTimeMillis());
591
         Date currentDate = new Date(System.currentTimeMillis());
584
         WorkOrderBase orderBase = workorderbaseService.getEntity(id);
592
         WorkOrderBase orderBase = workorderbaseService.getEntity(id);
585
         LambdaUpdateWrapper<WorkOrderBase> qw = new LambdaUpdateWrapper<>();
593
         LambdaUpdateWrapper<WorkOrderBase> qw = new LambdaUpdateWrapper<>();
586
         qw.eq(WorkOrderBase::getWorkorderId, id);
594
         qw.eq(WorkOrderBase::getWorkorderId, id);
587
-        int myd= (int) map.get("myd");
595
+        Long myd= (Long) map.get("myd");
588
         int isover= (int) map.get("isover");
596
         int isover= (int) map.get("isover");
589
         //工单状态改成已完结
597
         //工单状态改成已完结
590
          if (isover>0||myd>0)
598
          if (isover>0||myd>0)
598
         qw.set(WorkOrderBase::getVisittime, currentDate);
606
         qw.set(WorkOrderBase::getVisittime, currentDate);
599
         qw.set(WorkOrderBase::getMyd, myd);
607
         qw.set(WorkOrderBase::getMyd, myd);
600
         boolean result = workorderbaseService.updateBatch(qw);
608
         boolean result = workorderbaseService.updateBatch(qw);
601
-        String visitresult="";
602
-        if (map.get("visitresult")!=null&&!StringHelper.isEmpty(map.get("visitresult").toString())) {
603
-            visitresult= ",回访结果:" + map.get("visitresult");
604
-        }
609
+//        String visitresult="";
610
+//        if (map.get("visitresult")!=null&&!StringHelper.isEmpty(map.get("visitresult").toString())) {
611
+//            visitresult= ",回访结果:" + map.get("visitresult");
612
+//        }
613
+        //添加回访记录
614
+        WorkOrderVisitLog visitLog=new WorkOrderVisitLog();
615
+        if(map.get("callid")!=null){
616
+            visitLog.setCallid(map.get("callid").toString());
617
+        }
618
+
619
+        visitLog.setWorkorderid(id);
620
+        visitLog.setOperator(CurrentUser().getUserName());
621
+        visitLog.setOperatorname(CurrentUser().getNickName());
622
+        visitLog.setContent(map.get("visitresult").toString());
623
+        visitLog.setMyd(myd);
624
+        visitLog.setCreatetime(currentDate);
625
+        visitLogService.insert(visitLog);
626
+
605
         if (result) {
627
         if (result) {
606
-            boolean logresult = addlog("回访了工单" + visitresult, "回访", CurrentUser().getUserName(), orderBase.getWorkordercode(), CurrentUser().getNickName(), "");
628
+            boolean logresult = addlog("回访了工单" , "回访", CurrentUser().getUserName(), orderBase.getWorkordercode(), CurrentUser().getNickName(), "");
607
             return Success("回访成功");
629
             return Success("回访成功");
608
         } else {
630
         } else {
609
             return Error("回访失败");
631
             return Error("回访失败");

+ 35 - 2
zxkf-api/src/main/java/api/controller/order/WorkOrderVisitLogController.java

1
 package api.controller.order;
1
 package api.controller.order;
2
 
2
 
3
+import api.entity.database.call.Record;
4
+import api.entity.view.order.WorkOrderVisitLogView;
5
+import api.service.call.IRecordService;
6
+import api.service.system.IConfigService;
7
+import com.alibaba.fastjson2.JSON;
3
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
8
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
9
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
10
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
15
 import io.swagger.annotations.ApiOperation;
20
 import io.swagger.annotations.ApiOperation;
16
 import org.springframework.beans.factory.annotation.Autowired;
21
 import org.springframework.beans.factory.annotation.Autowired;
17
 import org.springframework.web.bind.annotation.*;
22
 import org.springframework.web.bind.annotation.*;
23
+
24
+import java.util.ArrayList;
18
 import java.util.Arrays;
25
 import java.util.Arrays;
26
+import java.util.List;
19
 
27
 
20
 @Api(value = "wo_visitlog",tags = "wo_visitlog")
28
 @Api(value = "wo_visitlog",tags = "wo_visitlog")
21
 @RestController
29
 @RestController
23
 public class WorkOrderVisitLogController extends BaseController {
31
 public class WorkOrderVisitLogController extends BaseController {
24
     @Autowired
32
     @Autowired
25
     private IWorkOrderVisitLogService workordervisitlogService;
33
     private IWorkOrderVisitLogService workordervisitlogService;
34
+    @Autowired
35
+    private IRecordService recordService;
36
+    @Autowired
37
+    private IConfigService configService;
26
 
38
 
27
     @ApiOperation("列表")
39
     @ApiOperation("列表")
28
     @Log(title = "查询wo_visitlog列表",businessType = BusinessType.QUERY)
40
     @Log(title = "查询wo_visitlog列表",businessType = BusinessType.QUERY)
30
     public AjaxResult getList(WorkOrderVisitLog input, PageInput pageInput) {
42
     public AjaxResult getList(WorkOrderVisitLog input, PageInput pageInput) {
31
         LambdaQueryWrapper<WorkOrderVisitLog> qw = new LambdaQueryWrapper();
43
         LambdaQueryWrapper<WorkOrderVisitLog> qw = new LambdaQueryWrapper();
32
         qw.eq(input.getVisitId() != null && input.getVisitId() > 0, WorkOrderVisitLog::getVisitId, input.getVisitId());
44
         qw.eq(input.getVisitId() != null && input.getVisitId() > 0, WorkOrderVisitLog::getVisitId, input.getVisitId());
33
-        qw.like(!StringHelper.isEmpty(input.getWorkordercode()), WorkOrderVisitLog::getWorkordercode, input.getWorkordercode());
45
+
46
+        qw.eq(input.getWorkorderid() != null && input.getWorkorderid() > 0, WorkOrderVisitLog::getWorkorderid, input.getWorkorderid());
47
+
34
         qw.eq(input.getMyd() != null && input.getMyd() > 0, WorkOrderVisitLog::getMyd, input.getMyd());
48
         qw.eq(input.getMyd() != null && input.getMyd() > 0, WorkOrderVisitLog::getMyd, input.getMyd());
35
         qw.like(!StringHelper.isEmpty(input.getContent()), WorkOrderVisitLog::getContent, input.getContent());
49
         qw.like(!StringHelper.isEmpty(input.getContent()), WorkOrderVisitLog::getContent, input.getContent());
36
         qw.like(!StringHelper.isEmpty(input.getCallid()), WorkOrderVisitLog::getCallid, input.getCallid());
50
         qw.like(!StringHelper.isEmpty(input.getCallid()), WorkOrderVisitLog::getCallid, input.getCallid());
42
             IPage<WorkOrderVisitLog> iPage = workordervisitlogService.getListPage(page, qw);
56
             IPage<WorkOrderVisitLog> iPage = workordervisitlogService.getListPage(page, qw);
43
             return Success("成功", iPage.getRecords(), iPage.getTotal());
57
             return Success("成功", iPage.getRecords(), iPage.getTotal());
44
         } else {
58
         } else {
45
-            return Success("成功", workordervisitlogService.getList(qw));
59
+            List<WorkOrderVisitLog> logList = workordervisitlogService.getList(qw);
60
+            List<WorkOrderVisitLogView> logViewList = new ArrayList<>();
61
+            for (WorkOrderVisitLog log : logList) {
62
+                WorkOrderVisitLogView ov = trans(log);
63
+                logViewList.add(ov);
64
+            }
65
+            return Success("成功", logViewList);
46
         }
66
         }
47
     }
67
     }
48
 
68
 
88
             return Error("删除失败");
108
             return Error("删除失败");
89
         }
109
         }
90
     }
110
     }
111
+    public WorkOrderVisitLogView trans(WorkOrderVisitLog log) {
112
+        WorkOrderVisitLogView ov = JSON.parseObject(JSON.toJSONString(log), WorkOrderVisitLogView.class);
113
+        if(!StringHelper.isEmpty( log.getCallid()))
114
+        {
115
+            //根据callid获取录音文件
116
+            String captchaEnabled = configService.selectCaptchaEnabled("FileUrl");
117
+             Record record=recordService.getEntity(log.getCallid());
118
+            ov.setLyurl(captchaEnabled + record.getFilePath());
119
+        }
120
+        return  ov;
121
+
122
+    }
123
+
91
 
124
 
92
 }
125
 }

+ 2 - 2
zxkf-entity/src/main/java/api/entity/database/order/WorkOrderVisitLog.java

18
     @TableId(type = IdType.AUTO)
18
     @TableId(type = IdType.AUTO)
19
     private Long visitId;
19
     private Long visitId;
20
     /** workordercode */
20
     /** workordercode */
21
-    @ApiModelProperty("workordercode")
22
-    private String workordercode;
21
+    @ApiModelProperty("workorderid")
22
+    private Long workorderid;
23
     /** myd */
23
     /** myd */
24
     @ApiModelProperty("myd")
24
     @ApiModelProperty("myd")
25
     private Long myd;
25
     private Long myd;

+ 2 - 0
zxkf-entity/src/main/java/api/entity/view/order/WorkOrderBaseView.java

12
 public class WorkOrderBaseView extends WorkOrderBase {
12
 public class WorkOrderBaseView extends WorkOrderBase {
13
 
13
 
14
 
14
 
15
+
15
     @ApiModelProperty("项目名")
16
     @ApiModelProperty("项目名")
16
     private String projectname;
17
     private String projectname;
17
 
18
 
33
     private String mydname;
34
     private String mydname;
34
 
35
 
35
 
36
 
37
+
36
 }
38
 }

+ 23 - 0
zxkf-entity/src/main/java/api/entity/view/order/WorkOrderVisitLogView.java

1
+package api.entity.view.order;
2
+
3
+
4
+import io.swagger.annotations.ApiModelProperty;
5
+import api.entity.database.order.WorkOrderVisitLog;
6
+import lombok.Data;
7
+
8
+import java.util.HashMap;
9
+import java.util.List;
10
+
11
+
12
+@Data
13
+public class WorkOrderVisitLogView extends WorkOrderVisitLog {
14
+
15
+
16
+    /** 工单类型 */
17
+    @ApiModelProperty("文件路径")
18
+    private String lyurl;
19
+
20
+
21
+
22
+
23
+}