| | |
| | | <mapper namespace="com.qianwen.mdc.collect.mapper.iotdb.DeviceStateMapper"> |
| | | <resultMap id="BaseResultMap" type="com.qianwen.mdc.collect.entity.iotdb.DeviceState"> |
| | | <result column="workstation_id" jdbcType="BIGINT" property="workstationId"/> |
| | | <result column="value_collect" jdbcType="BIGINT" property="valueCollect"/> |
| | | <result column="value_collect" jdbcType="INTEGER" property="valueCollect"/> |
| | | <result column="calendar_code" jdbcType="VARCHAR" property="calendarCode"/> |
| | | <result column="factory_year" jdbcType="INTEGER" property="factoryYear"/> |
| | | <result column="factory_month" jdbcType="INTEGER" property="factoryMonth"/> |
| | |
| | | <result column="is_sync" jdbcType="BOOLEAN" property="isSync"/> |
| | | <result column="feedback_id" jdbcType="BIGINT" property="feedbackId"/> |
| | | <result column="is_deleted" jdbcType="BOOLEAN" property="isDeleted"/> |
| | | <result column="is_plan" jdbcType="BIGINT" property="isPlan"/> |
| | | <result column="is_plan" jdbcType="INTEGER" property="isPlan"/> |
| | | |
| | | <result column="feedback_point_type" jdbcType="INTEGER" property="feedbackPointType"/><!-- new --> |
| | | |
| | | <result column="employee_id" jdbcType="BIGINT" property="employeeId"/> |
| | | </resultMap> |
| | | <!-- |
| | |
| | | align by device |
| | | </select> |
| | | |
| | | <!-- 只能用as 和resultType的形式??? resultType="com.qianwen.mdc.collect.entity.iotdb.DeviceState" |
| | | <select id="statesInTimeRange" resultMap="BaseResultMap"> |
| | | select <include refid="all_columns" /> FROM root.f2.state_${workstationId} |
| | | <where> |
| | | is_deleted=false |
| | | <if test="timeRange.startTime != null"> |
| | | AND time >= #{timeRange.startTime} |
| | | </if> |
| | | AND time <= #{timeRange.endTime} |
| | | </where> |
| | | |
| | | order by time asc |
| | | align by device |
| | | </select>--> |
| | | <select id="fixPointCountByDate" resultType="Long"> |
| | | select count(factory_date) FROM root.f2.state_* where factory_date=#{factoryDate} and is_fix_point=true |
| | | </select> |
| | | |
| | | <!-- 获取工位上时间小于指定时间的非反馈点(不含固定点) --> |
| | | <!-- .eq(WorkstationState::getWorkstationId, feedback.getWorkstationId()) |
| | | .lt(WorkstationState::getTs,cancelDetail.getStartTime().getTime()) |
| | | .eq(WorkstationState::getIsFixPoint, Boolean.FALSE) |
| | | .eq(WorkstationState::getFeedbackPointType, FeedbackTimePointEnum.NO_FEED_BACK_POINT.getValue()) |
| | | .ne(WorkstationState::getIsDeleted, Boolean.TRUE)); --> |
| | | <select id="lastNoFeedbackStateLessThanTime" resultMap="BaseResultMap"> |
| | | select <include refid="all_columns" /> FROM root.f2.state_${workstationId} |
| | | where |
| | | is_deleted=false and is_fix_point=false |
| | | and feedback_point_type=0 |
| | | AND time < #{time} |
| | | order by time desc limit 1 |
| | | |
| | | </select> |
| | | |
| | | <select id="lastNoFeedbackStateLeTime" resultMap="BaseResultMap"> |
| | | select <include refid="all_columns" /> FROM root.f2.state_${workstationId} |
| | | where |
| | | is_deleted=false and is_fix_point=false |
| | | and feedback_point_type=0 |
| | | AND time <= #{time} |
| | | order by time desc limit 1 |
| | | |
| | | </select> |
| | | |
| | | <!-- stateMapper.selectOne(Wrappers.<WorkstationState>lambdaQuery().eq(WorkstationState::getWorkstationId |
| | | , workstationId).ne(WorkstationState::getIsDeleted, Boolean.TRUE).eq(WorkstationState::getTs, time)); --> |
| | | <select id="getByWorkstationIdAndTime" resultMap="BaseResultMap"> |
| | | select <include refid="all_columns" /> FROM root.f2.state_${workstationId} |
| | | where is_deleted=false AND time = #{time} |
| | | limit 1 |
| | | </select> |
| | | |
| | | |
| | | <!-- |
| | | Wrappers.<WorkstationState>lambdaQuery() |
| | | .eq(WorkstationState::getWorkstationId, feedback.getWorkstationId()) |
| | | .le(WorkstationState::getTs, Long.valueOf(feedback.getEndTime().getTime())) |
| | | .isNotNull(WorkstationState::getShiftIndex) |
| | | .ne(WorkstationState::getIsDeleted, Boolean.TRUE)); |
| | | --> |
| | | <select id="getLastByWorkstationIdAndLeTimeAndShiftIndexNotNull" resultMap="BaseResultMap"> |
| | | select <include refid="all_columns" /> FROM root.f2.state_${workstationId} |
| | | where is_deleted=false AND time <= #{time} and shift_index is not null |
| | | order by time desc limit 1 |
| | | </select> |
| | | |
| | | <!-- |
| | | stateMapper.selectOne(Wrappers.<WorkstationState>lambdaQuery() |
| | | .eq(WorkstationState::getWorkstationId, feedback.getWorkstationId()) |
| | | .eq(WorkstationState::getIsFixPoint, Boolean.TRUE) |
| | | .eq(WorkstationState::getTs, Long.valueOf(feedback.getStartTime().getTime()))); |
| | | --> |
| | | <select id="getFixPointByWorkstationIdAndTime" resultMap="BaseResultMap"> |
| | | select <include refid="all_columns" /> FROM root.f2.state_${workstationId} |
| | | where is_fix_point=true AND time = #{time} |
| | | limit 1 |
| | | </select> |
| | | |
| | | <!-- |
| | | 工位上所有符合时间区间的非反馈点状态数据 |
| | | List<WorkstationState> effectiveStateList = stateMapper.selectList(Wrappers.<WorkstationState>lambdaQuery() |
| | | .le(WorkstationState::getTs, Long.valueOf(analyseResult.getEffectiveEndDate().getTime())) |
| | | .ge(WorkstationState::getTs, Long.valueOf(analyseResult.getEffectiveStartDate().getTime())) |
| | | .eq(WorkstationState::getWorkstationId, analyseResult.getWorkstationId()) |
| | | .ne(WorkstationState::getIsDeleted, Boolean.TRUE) |
| | | .gt(WorkstationState::getFeedbackPointType, FeedbackTimePointEnum.NO_FEED_BACK_POINT.getValue())); |
| | | --> |
| | | <select id="workstationNoFeedbackPointStatesInTimeRange" resultMap="BaseResultMap"> |
| | | select <include refid="all_columns" /> FROM root.f2.state_${workstationId} |
| | | where feedback_point_type=0 and is_deleted=false and time >= #{startTime} AND time <= #{endTime} |
| | | </select> |
| | | |
| | | <!-- |
| | | 时间区间内的固定点数据 |
| | | List<WorkstationState> fixPointStateList = stateMapper.selectList(Wrappers.<WorkstationState>lambdaQuery() |
| | | .le(WorkstationState::getTs, Long.valueOf(analyseResult.getEffectiveEndDate().getTime())) |
| | | .ge(WorkstationState::getTs, Long.valueOf(analyseResult.getEffectiveStartDate().getTime())) |
| | | .eq(WorkstationState::getWorkstationId, analyseResult.getWorkstationId()) |
| | | .eq(WorkstationState::getIsFixPoint, Boolean.TRUE)); |
| | | --> |
| | | <select id="workstationFixPointStatesInTimeRange" resultMap="BaseResultMap"> |
| | | select <include refid="all_columns" /> FROM root.f2.state_${workstationId} |
| | | where is_fix_point=true and is_deleted=false and time >= #{startTime} AND time <= #{endTime} |
| | | </select> |
| | | |
| | | |
| | | </mapper> |
| | | |