package com.highdatas.mdm.service.impl;
|
|
import com.baomidou.mybatisplus.mapper.EntityWrapper;
|
import com.baomidou.mybatisplus.mapper.Wrapper;
|
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
|
import com.highdatas.mdm.entity.SysDispenseLogs;
|
import com.highdatas.mdm.mapper.SysDispenseLogsMapper;
|
import com.highdatas.mdm.service.IMaintainService;
|
import com.highdatas.mdm.service.ISysDispenseLogsService;
|
import com.highdatas.mdm.util.Constant;
|
import com.highdatas.mdm.util.DbUtils;
|
import com.highdatas.mdm.util.pool.MqEntity;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.Date;
|
import java.util.concurrent.atomic.AtomicInteger;
|
|
/**
|
* <p>
|
* 服务实现类
|
* </p>
|
*
|
* @author kimi
|
* @since 2020-04-21
|
*/
|
@Service
|
public class SysDispenseLogsServiceImpl extends ServiceImpl<SysDispenseLogsMapper, SysDispenseLogs> implements ISysDispenseLogsService {
|
@Autowired
|
IMaintainService maintainService;
|
|
@Override
|
public SysDispenseLogs getLogByMqEntity(MqEntity mqEntity) {
|
String type = mqEntity.getType();
|
Wrapper<SysDispenseLogs> sysDispenseLogsWrapper = new EntityWrapper<SysDispenseLogs>()
|
.eq("topic_id", mqEntity.getMsgTopicName())
|
.eq("tag_id", mqEntity.getMsgTagName())
|
.eq("key_id", mqEntity.getMsgKey())
|
.orderBy("create_time desc");
|
if (Constant.Master.equalsIgnoreCase(type)) {
|
sysDispenseLogsWrapper.eq("maintain_id", mqEntity.getMaintainId());
|
}
|
|
|
|
SysDispenseLogs sysDispenseLogs = selectOne(sysDispenseLogsWrapper);
|
return sysDispenseLogs;
|
}
|
|
@Override
|
public SysDispenseLogs getPreUnSuccessByMqEntity(MqEntity mqEntity) {
|
Wrapper<SysDispenseLogs> sysDispenseLogsWrapper = new EntityWrapper<SysDispenseLogs>()
|
.eq("topic_id", mqEntity.getMsgTopicName())
|
.eq("tag_id", mqEntity.getMsgTagName())
|
.eq("user_id", mqEntity.getUserId())
|
.isNotNull("pages")
|
.eq("status", "fail")
|
.orderBy("create_time desc");
|
|
|
SysDispenseLogs sysDispenseLogs = selectOne(sysDispenseLogsWrapper);
|
return sysDispenseLogs;
|
}
|
|
@Override
|
public SysDispenseLogs createLogByMqEntity(MqEntity mqEntity) {
|
SysDispenseLogs sysDispenseLogs = new SysDispenseLogs()
|
.setId(DbUtils.getUUID())
|
.setCreateTime(new Date())
|
.setUserId(mqEntity.getUserId())
|
.setMaintainId(mqEntity.getMaintainId())
|
.setDataType(mqEntity.getType())
|
.setTopicId(mqEntity.getMsgTopicName())
|
.setTagId(mqEntity.getMsgTagName())
|
.setKeyId(mqEntity.getMsgKey());
|
int totalSize = mqEntity.getTotalSize();
|
if (totalSize > 0) {
|
sysDispenseLogs.setTotal(totalSize);
|
}
|
AtomicInteger pageNo = mqEntity.getPageNo();
|
if (pageNo != null) {
|
sysDispenseLogs.setPageNo(pageNo.get());
|
}
|
|
AtomicInteger pages = mqEntity.getPages();
|
if (pages != null) {
|
sysDispenseLogs.setPages(pages.get());
|
}
|
sysDispenseLogs.insert();
|
return sysDispenseLogs;
|
}
|
}
|