sgj
2026-01-26 bc427c64d8c9066eda7a817c7c7926954e39abb0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
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.SnapRecord;
import com.fzzy.igds.mapper.SnapRecordMapper;
import com.fzzy.igds.utils.ContextUtil;
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
@Service
public class SnapRecordService {
 
    @Resource
    private SnapRecordMapper snapRecordMapper;
 
    /**
     * 分页查询数据
     *
     * @param page
     * @param param
     */
    public void listPage(Page<SnapRecord> page, IgdsBaseParam param) {
        QueryWrapper<SnapRecord> queryWrapper = getQueryWrapper(param);
        snapRecordMapper.selectPage(page, queryWrapper);
    }
 
    /**
     * 封装查询条件
     *
     * @param param
     */
    public QueryWrapper<SnapRecord> getQueryWrapper(IgdsBaseParam param) {
        QueryWrapper<SnapRecord> 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.getKey())) {
            queryWrapper.likeRight("dept_id", param.getKey());
        }
        //抓拍时间检索
        if (null != param.getStart()) {
            queryWrapper.ge("snap_time",param.getStart());
        }
        if (null != param.getEnd()) {
            queryWrapper.le("snap_time", param.getEnd());
        }
        //标签检索
        if (StringUtils.isNotBlank(param.getName())) {
            queryWrapper.like("tags", param.getName());
        }
 
        queryWrapper.orderByDesc("create_time");
 
        return queryWrapper;
    }
 
    /**
     * 查询所有数据
     *
     * @param param
     * @author sgj
     * @date 2025/12/10
     */
    public List<SnapRecord> getListByParam(IgdsBaseParam param) {
        if (null == param){
            param = new IgdsBaseParam();
        }
 
        QueryWrapper<SnapRecord> queryWrapper = new QueryWrapper<>();
        if (StringUtils.isNotBlank(param.getDeptId())) {
            queryWrapper.likeRight("dept_id", param.getDeptId());
        }
        if (null != param.getStart()) {
            queryWrapper.ge("snap_time", DateUtil.getCurZero(param.getStart()));
        }
        if (null != param.getEnd()) {
            queryWrapper.le("snap_time", DateUtil.getNextZero(param.getEnd()));
        }
        queryWrapper.orderByDesc("snap_time");
        return snapRecordMapper.selectList(queryWrapper);
    }
 
    /**
     * 持久化保存
     * @param snapRecord
     */
    public void addData(SnapRecord snapRecord) {
        if(StringUtils.isBlank(snapRecord.getId())){
            snapRecord.setId(ContextUtil.generateId());
        }
        if(StringUtils.isBlank(snapRecord.getCompanyId())){
            snapRecord.setCompanyId(ContextUtil.getCompanyId());
        }
 
        snapRecord.setUpdateBy(ContextUtil.getLoginUserName());
        snapRecord.setUpdateTime(new Date());
        snapRecord.setCreateBy(ContextUtil.getLoginUserName());
        snapRecord.setCreateTime(new Date());
        snapRecordMapper.insert(snapRecord);
    }
 
    /**
     * 更新数据
     *
     * @param snapRecord
     * @author sgj
     * @date 2025/12/10
     */
    public BaseResp updateData(SnapRecord snapRecord) {
        snapRecord.setUpdateBy(ContextUtil.getLoginUserName());
        snapRecord.setUpdateTime(new Date());
        return snapRecordMapper.updateById(snapRecord) > 0 ? BaseResp.success() : BaseResp.error("更新失败");
    }
 
    /**
     * 删除数据
     *
     * @param snapRecord
     * @author sgj
     * @date 2025/12/10
     */
    public BaseResp deleteData(SnapRecord snapRecord) {
        return snapRecordMapper.deleteById(snapRecord) > 0 ? BaseResp.success() : BaseResp.error("删除失败");
    }
 
}