zhubaomin
2025-02-21 f3baf33f3dbb9b3091881185ccbe72327e7326c1
pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/inspect/InspectSv.java
@@ -1,14 +1,20 @@
package com.dy.pipIrrApp.inspect;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrApp.inspect.qo.QoInspect;
import com.dy.pipIrrGlobal.daoOp.OpeInspectMapper;
import com.dy.pipIrrGlobal.daoOp.OpeTrackMapper;
import com.dy.pipIrrGlobal.pojoOp.OpeInspect;
import com.dy.pipIrrGlobal.pojoOp.OpeTrack;
import com.dy.pipIrrGlobal.voOp.VoInspect;
import com.dy.pipIrrGlobal.voOp.VoTrackPoint;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.utils.PojoUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
 * @author ZhuBaoMin
@@ -28,6 +34,7 @@
    /**
     * 添加巡检记录
     *
     * @param po
     * @return
     */
@@ -37,7 +44,18 @@
    }
    /**
     * 修改巡检记录
     *
     * @param po
     * @return
     */
    public Integer updateInspect(OpeInspect po) {
        return opeInspectMapper.updateByPrimaryKeySelective(po);
    }
    /**
     * 批量添加巡检轨迹
     *
     * @param list
     * @return
     */
@@ -45,5 +63,81 @@
        return opeTrackMapper.insertTracks(list);
    }
    /**
     * 巡检查询
     *
     * @param queryVo
     * @return
     */
    public QueryResultVo<List<VoInspect>> getInspects(QoInspect queryVo) {
        //完善查询充值记录的起止时间
        String timeStart = queryVo.getTimeStart();
        String timeStop = queryVo.getTimeStop();
        if (timeStart == null || timeStart == "" || timeStop == null || timeStop == "") {
            queryVo.setTimeStart(null);
            queryVo.setTimeStop(null);
        } else {
            timeStart = timeStart + " 00:00:00";
            queryVo.setTimeStart(timeStart);
            timeStop = timeStop + " 23:59:59";
            queryVo.setTimeStop(timeStop);
        }
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
        Long itemTotal = opeInspectMapper.getInspectsCount(params);
        QueryResultVo<List<VoInspect>> rsVo = new QueryResultVo<>();
        rsVo.pageSize = queryVo.pageSize;
        rsVo.pageCurr = queryVo.pageCurr;
        rsVo.calculateAndSet(itemTotal, params);
        List<VoInspect> inspects = opeInspectMapper.getInspects(params);
        for (int i = 0; i < inspects.size(); i++) {
            List<OpeTrack> tracks = opeTrackMapper.selectByInspectId(inspects.get(i).getInspectId());
            inspects.get(i).setTracks(tracks);
        }
        rsVo.obj = inspects;
        return rsVo;
    }
    /**
     * 获取指定巡检ID下的全部轨迹点
     * @param inspectId
     * @return
     */
    public List<VoTrackPoint> getTrackPointsById(Long inspectId) {
        return opeTrackMapper.getTrackPointsById(inspectId);
    }
    /**
     * 更新指定巡检记录的巡检距离
     * @param inspectId
     * @param distance
     * @return
     */
    public int updateInspectDistance(Long inspectId, double distance ) {
        return opeInspectMapper.updateInspectDistance(inspectId, distance);
    }
    /**
     * 根据巡检员ID获取巡检列表
     * @param queryVo
     * @return
     */
    public QueryResultVo<List<VoInspect>> getInstectsByInspectorId(QoInspect queryVo) {
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
        Long itemTotal = opeInspectMapper.getInstectsCountByInspectorId(params);
        QueryResultVo<List<VoInspect>> rsVo = new QueryResultVo<>();
        rsVo.pageSize = queryVo.pageSize;
        rsVo.pageCurr = queryVo.pageCurr;
        rsVo.calculateAndSet(itemTotal, params);
        rsVo.obj = opeInspectMapper.getInstectsByInspectorId(params);
        return rsVo;
    }
}