潘志宝
2024-09-24 f61dc2d33639010a7b9505fad0cfbe9d36e1f83b
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
package com.iailab.module.model.mcs.pre.service.impl;
 
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.iailab.module.model.mcs.pre.dao.SequenceNumDao;
import com.iailab.module.model.mcs.pre.entity.SequenceNumEntity;
import com.iailab.module.model.mcs.pre.service.SequenceNumService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
/**
 * @author PanZhibao
 * @date 2021年05月06日 13:20
 */
@Service
public class SequenceNumServiceImpl extends ServiceImpl<SequenceNumDao, SequenceNumEntity> implements SequenceNumService {
 
    @Autowired
    private SequenceNumDao sequenceNumDao;
 
    @Override
    public synchronized SequenceNumEntity getAndIncreaseByCode (String code) {
        QueryWrapper queryWrapper = new QueryWrapper<SequenceNumEntity>();
        queryWrapper.eq("code", code);
        SequenceNumEntity sequenceNumEntity =  sequenceNumDao.selectOne(queryWrapper);
 
        SequenceNumEntity sequenceNumUpdate = new SequenceNumEntity();
        sequenceNumUpdate.setId(sequenceNumEntity.getId());
        sequenceNumUpdate.setSequenceNum(sequenceNumEntity.getSequenceNum() + 1);
        sequenceNumDao.updateById(sequenceNumUpdate);
        return sequenceNumEntity;
    }
}