czt
2026-01-26 fbc22dcbef9887f87247b04e878a6107787854bc
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/PatrolService.java
@@ -1,15 +1,22 @@
package com.fzzy.igds.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fzzy.igds.data.BaseResp;
import com.fzzy.igds.data.IgdsBaseParam;
import com.fzzy.igds.domain.Patrol;
import com.fzzy.igds.domain.PatrolConf;
import com.fzzy.igds.domain.PatrolRecord;
import com.fzzy.igds.mapper.PatrolConfMapper;
import com.fzzy.igds.mapper.PatrolMapper;
import com.fzzy.igds.mapper.PatrolRecordMapper;
import com.fzzy.igds.utils.ContextUtil;
import com.ruoyi.common.core.text.Convert;
import com.fzzy.igds.utils.DateUtil;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Slf4j
@@ -18,87 +25,121 @@
    @Resource
    private PatrolMapper patrolMapper;
    @Resource
    private PatrolRecordMapper patrolRecordMapper;
    @Resource
    private PatrolConfMapper patrolConfMapper;
    public List<Patrol> selectList(Patrol param) {
        QueryWrapper<Patrol> queryWrapper = getQueryWrapper(param);
    /*--------------------巡更主表管理------------------*/
    /**
     * 查询7天内的所有巡更记录信息
     *
     * @return
     */
    public List<Patrol> getWeekList() {
        Date end = new Date();
        Date start = DateUtil.getNewByDay(end, -6);
        QueryWrapper<Patrol> queryWrapper = new QueryWrapper<>();
        queryWrapper.ge("create_time", DateUtil.getCurZero(start));
        queryWrapper.le("create_time", DateUtil.getNextZero(end));
        return patrolMapper.selectList(queryWrapper);
    }
    /**
     * 封装查询条件
     *
     * 根据条件分页查询数据
     * @param page
     * @param param
     */
    public QueryWrapper<Patrol> getQueryWrapper(Patrol param) {
    public void pagePatrolData(Page<Patrol> page, IgdsBaseParam param) {
        QueryWrapper<Patrol> queryWrapper = new QueryWrapper<>();
        param.setCompanyId(ContextUtil.getCompanyId());
        queryWrapper.eq("company_id", param.getCompanyId());
        if (StringUtils.isNotBlank(param.getDeptId())) {
            queryWrapper.eq("dept_id", param.getDeptId());
        if(StringUtils.isNotBlank(param.getDeptId())){
            queryWrapper.like("dept_id", param.getDeptId());
        }else {
            if(StringUtils.isNotBlank(param.getCompanyId())){
                queryWrapper.likeRight("dept_id", param.getCompanyId());
            }
        }
        if(null != param.getStart()){
            queryWrapper.ge("create_time", DateUtil.getCurZero(param.getStart()));
        }
        if(null != param.getEnd()){
            queryWrapper.le("create_time", DateUtil.getCurZero(param.getEnd()));
        }
        if (StringUtils.isNotBlank(param.getUserName())) {
            queryWrapper.like("user_name", param.getUserName());
        }
        if (StringUtils.isNotBlank(param.getConfName())) {
            queryWrapper.like("conf_name", param.getConfName());
        }
        queryWrapper.orderByDesc("create_time");
        return queryWrapper;
        patrolMapper.selectPage(page, queryWrapper);
    }
    /*--------------------巡更轨迹表管理------------------*/
    /**
     * 通过id查询单条数据
     *
     * @param id
     * @author sgj
     * @date 2025/12/10
     * 根据巡更ID查询具体点位信息
     * @param patrolId
     * @return
     */
    public Patrol selectById(String id) {
        return patrolMapper.selectById(id);
    public List<PatrolRecord> getRecordByPatrolId(String patrolId) {
        if(StringUtils.isBlank(patrolId)){
            return null;
        }
        QueryWrapper<PatrolRecord> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("patrol_id", patrolId);
        queryWrapper.orderByDesc("id");
        return patrolRecordMapper.selectList(queryWrapper);
    }
    /*--------------------巡更配置表管理------------------*/
    /**
     * 新增数据
     *
     * 查询库区下所有配置信息
     * @param param
     * @author sgj
     * @date 2025/12/10
     * @return
     */
    public int insertData(Patrol param) {
        if (StringUtils.isEmpty(param.getId())) {
            param.setId(ContextUtil.generateId());
    public List<PatrolConf> listPatrolConf(IgdsBaseParam param) {
        if(null ==  param){
            param = new IgdsBaseParam();
        }
        return patrolMapper.insert(param);
        QueryWrapper<PatrolConf> queryWrapper = new QueryWrapper<>();
        if(StringUtils.isNotEmpty(param.getName())){
            queryWrapper.like("name", param.getName());
        }
        if(StringUtils.isNotBlank(param.getDeptId())){
            queryWrapper.like("dept_id", param.getDeptId());
        }else {
            if(StringUtils.isNotBlank(param.getCompanyId())){
                queryWrapper.likeRight("dept_id", param.getCompanyId());
            }
        }
        return patrolConfMapper.selectList(queryWrapper);
    }
    /**
     * 更新数据
     *
     * @param param
     * @author sgj
     * @date 2025/12/10
     */
    public int updateData(Patrol param) {
        return patrolMapper.updateById(param);
    public BaseResp addPatrolConf(PatrolConf conf) {
        conf.setId(ContextUtil.generateId());
        conf.setCompanyId(ContextUtil.getCompanyId());
        conf.setUpdateBy(ContextUtil.getLoginUserName());
        conf.setUpdateTime(new Date());
        conf.setCreateBy(ContextUtil.getLoginUserName());
        conf.setCreateTime(new Date());
        return patrolConfMapper.insert(conf) > 0 ? BaseResp.success() : BaseResp.error("添加失败");
    }
    /**
     * 通过id删除一条数据
     *
     * @param ids
     * @author sgj
     * @date 2025/12/10
     */
    public void deleteDataById(String ids) {
        String[] recordIds = Convert.toStrArray(ids);
        for (String recordId : recordIds) {
            patrolMapper.deleteById(recordId);
        }
    public BaseResp updatePatrolConf(PatrolConf conf) {
        conf.setUpdateBy(ContextUtil.getLoginUserName());
        conf.setUpdateTime(new Date());
        return patrolConfMapper.updateById(conf) > 0 ? BaseResp.success() : BaseResp.error("更新失败");
    }
    public BaseResp deletePatrolConf(PatrolConf conf) {
        return patrolConfMapper.deleteById(conf) > 0 ? BaseResp.success() : BaseResp.error("删除失败");
    }
}