11
tjx
2025-12-04 0e96e64e353192138d770c2aef62a3175c8aa648
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
package com.gs.dingtalk.service.impl;
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gs.dingtalk.entity.MesAdDataExc;
import com.gs.dingtalk.entity.SendMessage;
import com.gs.dingtalk.mapper.SendMessageMapper;
import com.gs.dingtalk.service.MesAdDataExcService;
import com.gs.dingtalk.service.SendMessageService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import java.util.List;
 
@Service
@RequiredArgsConstructor
@Transactional(rollbackFor = Exception.class)
public class SendMessageServiceImpl extends ServiceImpl<SendMessageMapper, SendMessage> implements SendMessageService {
 
    private final MesAdDataExcService mesAdDataExcService;
 
    @Override
    public List<SendMessage> getSendMessageList(int Minutes) {
        LambdaQueryWrapper<SendMessage> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper
                .eq(SendMessage::getFstatus, "待处理")
                .eq(Minutes == 5,SendMessage::getFiveMinute, 0)
                .eq(Minutes == 15,SendMessage::getFifteenMinute, 0)
                .eq(Minutes == 30,SendMessage::getThirtyMinute, 0);
        return list(queryWrapper);
    }
 
    @Override
    public boolean setSendMessage(Long id, int Minutes) {
        LambdaUpdateWrapper<MesAdDataExc> wrapper = new LambdaUpdateWrapper<>();
        wrapper.set(Minutes == 5, MesAdDataExc::getFiveMinute, 1)
                .set(Minutes == 15, MesAdDataExc::getFifteenMinute, 1)
                .set(Minutes == 30, MesAdDataExc::getThirtyMinute, 1)
                .eq(MesAdDataExc::getId, id);
        return mesAdDataExcService.update(wrapper);
    }
}