package com.qianwen.smartman.modules.mdc.mapper; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import java.util.Date; import java.util.List; import org.apache.ibatis.annotations.Param; import com.qianwen.smartman.common.constant.FmsConstant; import com.qianwen.smartman.modules.mdc.dto.IntervalDateDto; import com.qianwen.smartman.modules.mdc.entity.SuperAggregateState; import com.qianwen.smartman.modules.mdc.vo.DeviceStatusStatisticsVO; import com.qianwen.smartman.modules.mdc.vo.StatusAnalysisWorkstationVO; //@DS("tdengine") @DS("iotdb") @InterceptorIgnore(tenantLine = FmsConstant.AUTOMATIC) public interface SuperAggregateStateMapper { //void createTable(@Param("workstationId") Long workstationId); void insertData(@Param("workstationId") Long workstationId, @Param("sql") String sql); List countStatsShift(@Param("workstationId") String workstationId, @Param("factoryDate") String factoryDate, @Param("shiftIndex") Integer shiftIndex, @Param("calendarCode") String calendarCode); List statusByWorkstation(@Param("workstationId") String workstationId, @Param("startTime") String startTime, @Param("endTime") String endTime); List statusByWorkstationByNull(@Param("workstationId") String workstationId, @Param("startTime") String startTime); /** * 查询指定工位符合factoryDate的数据 用时分析 * @param factoryDate * @param ids * @return */ List dateState(@Param("factoryDate") int factoryDate, @Param("ids") List ids); /** * 查询指定工位符合星期的数据 用时分析 * @param ids * @param year * @param week * @return */ List weekState(@Param("ids") List ids, @Param("year") Integer year, @Param("week") Integer week); /** * 查询指定工位符合年份和月份的数据 用时分析 * @param ids * @param year * @param month * @return */ List yearState(@Param("ids") List ids, @Param("year") Integer year, @Param("month") Integer month); /** * 查询指定工位符合班次和factoryDate的数据,用时分析中使用 * @param workStationIds * @param factoryDate * @param shiftIndex * @param calendarCode * @return */ List shiftState(@Param("ids") List workStationIds, @Param("factoryDate") Integer factoryDate, @Param("shiftIndex") Integer shiftIndex, @Param("calendarCode") String calendarCode); List statusByWorkstationList(@Param("workstationIdList") List workstationIdList, @Param("startTime") String startTime, @Param("endTime") String endTime); List statusByWorkstationListByNull(@Param("workstationIdList") List workstationIdList, @Param("startTime") String startTime); List deviceStatusStatisticsList(@Param("startTime") String startTime); List getStatusDataMonth(@Param("intervalDateDtoList") List intervalDateDtoList, @Param("workstationIds") List workstationIds); List getStatusDataWeek(@Param("intervalDateDtoList") List intervalDateDtoList, @Param("workstationIds") List workstationIds); List getStatusDataDay(@Param("dayList") List dayList, @Param("workstationIds") List workstationIds); List getStatusDataShift(@Param("factoryDate") Integer factoryDate, @Param("shiftIndex") Integer shiftIndex, @Param("workstationIds") List workstationIds); List getStatusByFactory(@Param("factoryDate") Integer factoryDate, @Param("shiftIndex") Integer shiftIndex, @Param("workstationIds") List workstationIds); /** * 查询状态数据 * @param workstationIds 指定的工位id集合 * @param startDate 开始时间 * @param endDate 截至时间 * @return 数据列表 */ List getStatusData(@Param("workstationIds") List workstationIds, @Param("startDate") java.util.Date startDate, @Param("endDate") java.util.Date endDate); /** * 根据工位id列表和时间节点获取状态数据yys,首页稼动率时使用的 * @param workstationIds * @param startDate * @param endDate * @return */ List getStatusDataByTimeSection(@Param("workstationIds") List workstationIds, @Param("startDate") java.util.Date startDate, @Param("endDate") java.util.Date endDate); /** * 根据工厂日期获取聚合状态数据 * @param workstationIds * @param startDate * @param endDate * @return */ List getStatusDataByFactoryDate(@Param("workstationIds") List workstationIds, @Param("startFactoryDate") int startFactoryDate, @Param("endFactoryDate") int endFactoryDate); List getStatusDataByFactoryDateAndWorkstationId(@Param("workstationId") Long workstationId, @Param("startDate") String startDate, @Param("endDate") String endDate); /** * 获取设备运行时长所需全部状态数据,欢迎页面小部件调用.yys ,日期参数由string改为localdatetime * @param workstationIds * @param startDate 开始时间 * @param endDate 截至时间 * @param status 指定的状态 * @return */ //List getEquipmentStatusDuration(@Param("workstationIds") List workstationIds, @Param("startDate") String startDate, @Param("endDate") String endDate, @Param("status") Integer status); List getEquipmentStatusDuration(@Param("workstationIds") List workstationIds, @Param("startDate") java.util.Date startDate, @Param("endDate") java.util.Date endDate, @Param("status") Integer status); List getEquipmentStatusRecord(@Param("workstationIds") List workstationIds, @Param("shiftIndex") Integer shiftIndex, @Param("factoryDate") Integer factoryDate); List listsState(@Param("factoryDate") Integer factoryDate, @Param("workstationIds") List workstationIds, @Param("shiftIndex") List shiftIndex); List getDataByWeek(@Param("workstationIds") List workstationIds, @Param("year") Integer year, @Param("weekList") List weekList); List getDataByMonth(@Param("workstationIds") List workstationIds, @Param("year") Integer year, @Param("monthList") List monthList); List listCrossDay(@Param("startTime") String startTime, @Param("endTime") String endTime); //void saveState(@Param("workstationId") Long workstationId, @Param("list") List list); List listInTime(@Param("workstationIds") List workstationIdList, @Param("startTime") String startTime, @Param("endTime") String endTime); List listTsInTime(@Param("workstationIds") List workstationIdList, @Param("startTime") String startTime, @Param("endTime") String endTime); List listEndTimeInTime(@Param("workstationIds") List workstationIdList, @Param("startTime") String startTime, @Param("endTime") String endTime); List listOutTime(@Param("workstationIds") List workstationIdList, @Param("startTime") String startTime, @Param("endTime") String endTime); List queryPerfByDay(@Param("workstationId") Long workstationId, @Param("startTime") String startTime, @Param("endTime") String endTime, @Param("employeeId") Long employeeId); List queryPerfByWeek(@Param("workstationId") Long workstationId, @Param("weeks") List weeks, @Param("employeeId") Long employeeId); List queryPerfByMonth(@Param("workstationId") Long workstationId, @Param("months") List months, @Param("employeeId") Long employeeId); List queryPerfByEtDay(@Param("employeeId") Long employeeId, @Param("queryTime") String queryTime); List queryPerfByEtWeek(@Param("employeeId") Long employeeId, @Param("week") Integer week); List queryPerfByEtMonth(@Param("employeeId") Long employeeId, @Param("month") Integer month); List queryPerfByWtDay(@Param("workstationId") Long workstationId, @Param("time") String time); List queryPerfByWtWeek(@Param("workstationId") Long workstationId, @Param("week") Integer week); List queryPerfByWtMonth(@Param("workstationId") Long workstationId, @Param("month") Integer month); List getCurrMonthState(@Param("ids") List ids, @Param("month") Integer month); List getCurrMonthAlarmState(@Param("workIds") List workIds, @Param("month") Integer month, @Param("code") Integer code); List getCurrWeekAlarmState(@Param("workIds") List workIds, @Param("week") Integer week, @Param("code") Integer code); }