yangys
2025-05-09 e44c211aab8da89e89657426460d44285de6959c
整理代码
已修改3个文件
56 ■■■■■ 文件已修改
smart-man-boot/src/main/java/com/qianwen/smartman/common/config/MdcMqttConfig.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
smart-man-boot/src/main/java/com/qianwen/smartman/modules/mdc/service/ProcessParameterHelperService.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smart-man-boot/src/main/resources/com/qianwen/smartman/modules/mdc/mapper/SuperAggregateStateMapper.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smart-man-boot/src/main/java/com/qianwen/smartman/common/config/MdcMqttConfig.java
@@ -155,7 +155,7 @@
                MessageDO messageDO = new MessageDO();
                messageDO.setNeedBroadcast(false);
                String msgtxt =JSONUtil.toJsonStr(jsonWebSocketMessage);
                logger.info("websockettxt={}",msgtxt);
                logger.info("send_to_page_websockettxt={}",msgtxt);
                messageDO.setMessageText(msgtxt);
               
                messageDistributor.distribute(messageDO);
smart-man-boot/src/main/java/com/qianwen/smartman/modules/mdc/service/ProcessParameterHelperService.java
@@ -24,15 +24,7 @@
    
    @DS("iotdb")
    public ProcessParameterVO queryLastParameterLessThenTime(long workstationId,String item,Long time) {
        /**
         *tdengine实现:oldFirstStatue
         * select last(ts) as realTime,
               last(v)  as value_collect
        from iot_data.super_collect_data
        where n = #{item}
          and ts < #{startTime}
          and workstation_id = #{workstationId}
         */
        ProcessParameterVO vo = null;
        String sql ="select max_time(n) as ts,last_value(n) as n,last_value(v) as v,last_value(workstation_id) as workstationId from root.f2.process_param_"+workstationId+"_"+item+" where time<"+time+" limit 1 align by device";
        List<ProcessParameterVO> list =  jdbcTemplate.query(sql, new RowMapper<ProcessParameterVO>() {
@@ -64,34 +56,7 @@
     */
    @DS("iotdb")
    public ProcessParameterVO getLastParameterGreaterThenTime(long workstationId,String item,Long time) {
        /*
         oldLastStatue
        select last(ts) as realTime,
               last(v)  as value_collect
        from iot_data.super_collect_data
        where n = #{item}
          and ts &gt; #{endTime}
          and workstation_id = #{workstationId}
         * */
        /*
        LastProcessParam lp = this.parameterMapper.lastParameterGreaterThanTime(workstationId,item,time);
        if(lp == null) {
            return null;
        }
        ProcessParameterVO vo = new ProcessParameterVO();
        //解析json为对象列表
        JSONObject paramsObj = JSONObject.parseObject(lp.getParamJson());
        
        if(paramsObj.containsKey(item)) {
            JSONObject itemObj = paramsObj.getJSONObject(item);
            Long lastTime = itemObj.getLong("time");
            vo.setTime(new Timestamp(lastTime));
            vo.setRealTime(lastTime);
            vo.setValueCollect(itemObj.getString("value"));
        }
        return vo;*/
        
        ProcessParameterVO vo = null;
        String sql ="select max_time(n) as ts,last_value(n) as n,last_value(v) as v,last_value(workstation_id) as workstationId from root.f2.process_param_"+workstationId+"_"+item+" where time>"+time+" limit 1 align by device";
smart-man-boot/src/main/resources/com/qianwen/smartman/modules/mdc/mapper/SuperAggregateStateMapper.xml
@@ -6,24 +6,7 @@
        insert into iot_data.aggregate_state_${workstationId}
        values ${sql}
    </insert>
    <!--
    <insert id="saveState">
        insert into iot_data.aggregate_state_${workstationId} USING iot_data.super_aggregate_state
        TAGS(${workstationId}) values
        <foreach separator="," collection="list" item="item" index="index">
            (#{item.startTime}, #{item.endTime}, #{item.durationCollect}, #{item.valueCollect}, #{item.calendarCode},
            #{item.factoryYear}, #{item.factoryMonth}, #{item.factoryWeek}, #{item.factoryDate},
            #{item.shiftIndex}, #{item.shiftTimeType}, #{item.wcs}, #{item.rps}, #{item.isDeleted},#{item.isPlan})
        </foreach>
    </insert>
    
    <update id="createTable">
        create table if not exists iot_data.aggregate_state_${workstationId} using super_aggregate_state tags
        (
            #{workstationId}
        )
    </update>
 -->
    <select id="countStatsShiftEndTimeNotNull" resultType="com.qianwen.smartman.modules.mdc.dto.CountResult">
        select sum(duration_collect) as nums, value_collect status
        from iot_data.super_aggregate_state