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
|
* @date 2024-09-24 10:21
|
* @LastEditTime 2024-09-24 10:21
|
* @Description
|
*/
|
|
@Slf4j
|
@Service
|
public class InspectSv {
|
@Autowired
|
private OpeInspectMapper opeInspectMapper;
|
|
@Autowired
|
private OpeTrackMapper opeTrackMapper;
|
|
/**
|
* 添加巡检记录
|
*
|
* @param po
|
* @return
|
*/
|
public Long addInspect(OpeInspect po) {
|
opeInspectMapper.insert(po);
|
return po.getId();
|
}
|
|
/**
|
* 修改巡检记录
|
*
|
* @param po
|
* @return
|
*/
|
public Integer updateInspect(OpeInspect po) {
|
return opeInspectMapper.updateByPrimaryKeySelective(po);
|
}
|
|
/**
|
* 批量添加巡检轨迹
|
*
|
* @param list
|
* @return
|
*/
|
public Integer insertTracks(List<OpeTrack> list) {
|
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;
|
}
|
}
|