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.query.*; import com.ycl.platform.domain.vo.DeviceInfoVO; 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.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 { IPage page(IPage page, @Param("query") WorkOrderQuery query); IPage distributePage(IPage page, @Param("query") DistributeWorkOrderQuery query); /** * 处理中的工单 * * @return */ List handlingWorkOrderList(); /** * 统计大屏工单数据 * * @param query * @return */ ScreenWorkOrderVO screenWorkOrder(@Param("query") ScreenQuery query); /** * 首页统计数据 * @param monitorQuery 查询条件 * @return 数据 */ List> home(HomeQuery monitorQuery); /** * 大屏工单总数 * @param dashboardQuery 查询条件 * @return 数据 */ WorkOrderTotalVO workOrderTotal(DashboardQuery dashboardQuery); /** * 大屏工单分区 * @param dashboardQuery 查询条件 * @return 数据 */ List workOrderRegion(DashboardQuery dashboardQuery); /** * 查询工单设备信息 * @return */ List hasErrorWorkOrderList(@Param("start") Date start, @Param("end") Date end); List selectPassOrder(@Param("startTime") LocalDateTime now, @Param("endTime")LocalDateTime thirtyDaysAgo, @Param("status") String status, @Param("auditStatus") String auditStatus); int addMany(@Param("workOrderList") List workOrderList); /** * 批量修改状态 * * @param workOrderList * @return */ int updateMany(List workOrderList); }