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; /** *

* 服务实现类 *

* * @author kimi * @since 2020-04-21 */ @Service public class SysDispenseLogsServiceImpl extends ServiceImpl implements ISysDispenseLogsService { @Autowired IMaintainService maintainService; @Override public SysDispenseLogs getLogByMqEntity(MqEntity mqEntity) { String type = mqEntity.getType(); Wrapper sysDispenseLogsWrapper = new EntityWrapper() .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 sysDispenseLogsWrapper = new EntityWrapper() .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; } }