zxl
2025-05-29 71f61d13531b3e2a0099ba5afe3f268c99c5bacf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
package com.ycl.platform.mapper;
 
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.ycl.platform.domain.entity.WorkOrder;
import com.ycl.platform.domain.excel.WorkOrderWhiteExport;
import com.ycl.platform.domain.form.WorkOrderBatchAuditingForm;
import com.ycl.platform.domain.query.*;
import com.ycl.platform.domain.vo.DeviceInfoVO;
import com.ycl.platform.domain.vo.WorkOrderDetailVO;
import com.ycl.platform.domain.vo.WorkOrderVO;
import com.ycl.platform.domain.vo.YwPointJobVO;
import com.ycl.platform.domain.vo.screen.ScreenWorkOrderVO;
import com.ycl.platform.domain.vo.screen.WorkOrderRegionVO;
import com.ycl.platform.domain.vo.screen.WorkOrderTotalVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
 
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
import java.util.Map;
 
/**
 * 工单 Mapper 接口
 *
 * @author xp
 * @since 2024-03-05
 */
@Mapper
public interface WorkOrderMapper extends BaseMapper<WorkOrder> {
 
    IPage<WorkOrderVO> page(IPage page, @Param("query") WorkOrderQuery query);
    List<WorkOrderVO> export(@Param("query") WorkOrderExportQuery query);
 
    IPage<WorkOrderVO> distributePage(IPage page, @Param("query") DistributeWorkOrderQuery query);
 
    /**
     * 处理中的工单
     *
     * @return
     */
    List<YwPointJobVO> handlingWorkOrderList();
 
    /**
     * 统计大屏工单数据
     *
     * @param query
     * @return
     */
    ScreenWorkOrderVO screenWorkOrder(@Param("query") ScreenQuery query);
 
    /**
     * 首页统计数据
     * @param monitorQuery 查询条件
     * @return 数据
     */
    List<Map<String, Object>> home(HomeQuery monitorQuery);
 
    /**
     * 大屏工单总数
     * @param dashboardQuery 查询条件
     * @return 数据
     */
    WorkOrderTotalVO workOrderTotal(DashboardQuery dashboardQuery);
 
    /**
     * 大屏工单分区
     * @param dashboardQuery 查询条件
     * @return 数据
     */
    List<WorkOrderRegionVO> workOrderRegion(DashboardQuery dashboardQuery);
 
    /**
     * 查询工单设备信息
     * @return
     */
    List<DeviceInfoVO> hasErrorWorkOrderList(@Param("start") Date start, @Param("end") Date end);
 
    List<WorkOrderVO> selectPassOrder(@Param("startTime") LocalDateTime now, @Param("endTime")LocalDateTime thirtyDaysAgo, @Param("status") String status, @Param("errorList") List<String> errorList,@Param("auditStatus") String auditStatus);
 
    int addMany(@Param("workOrderList") List<WorkOrder> workOrderList);
 
    /**
     * 批量修改状态
     *
     * @param workOrderList
     * @return
     */
    int updateMany(List<WorkOrder> workOrderList);
 
    /**
     * 获取未完成的工单
     *
     * @param serialNumberList
     * @return
     */
    List<WorkOrder> getNotFinishedWorkOrders(@Param("list") List<String> serialNumberList);
 
    /**
     * 工单号查详情
     *
     * @param workOrderNo
     * @return
     */
    WorkOrderDetailVO detailByNo(@Param("workOrderNo") String workOrderNo);
 
    /**
     * 补充异常恢复监控信息
     * @param orders
     * @return
     */
    List<WorkOrderVO> getRecoveryInfo(List<String> orders);
 
    List<WorkOrder> selectByNos(@Param("workOrderNos") List<String> workOrderNos);
 
 
    List<String> getOfflineWorkOrder();
 
    List<WorkOrderVO> getAuditTimeList(@Param("workOrderNos")List<String> workOrderNos);
 
    List<WorkOrderVO> getHandleTimeList(@Param("workOrderNos")List<String> workOrderNos);
 
    WorkOrderDetailVO detailByNoButNoDistributeRecord(String workOrderNo);
 
    List<WorkOrderVO> distributeList();
}