gasWellWatch/src/main/java/com/isu/gaswellwatch/service/impl/DeviceOptLogServiceImpl.java

68 lines
2.9 KiB
Java
Raw Normal View History

2024-11-26 18:46:34 +08:00
package com.isu.gaswellwatch.service.impl;
import cn.dev33.satoken.stp.StpUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.isu.gaswellwatch.config.SnowflakeConfig;
import com.isu.gaswellwatch.constants.UserConstant;
import com.isu.gaswellwatch.dao.DeviceDao;
import com.isu.gaswellwatch.dao.DeviceOptLogDao;
import com.isu.gaswellwatch.entity.DeviceOptLog;
2024-12-07 14:50:35 +08:00
import com.isu.gaswellwatch.service.BlockService;
import com.isu.gaswellwatch.service.DeviceOptLogService;
import com.isu.gaswellwatch.service.UserService;
2024-11-26 18:46:34 +08:00
import com.isu.gaswellwatch.vo.BlockVO;
import com.isu.gaswellwatch.vo.DeviceVO;
import com.isu.gaswellwatch.vo.UserLoginInfoVO;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
@Service("deviceOptLogService")
@Transactional(rollbackFor = Exception.class)
public class DeviceOptLogServiceImpl extends ServiceImpl<DeviceOptLogDao, DeviceOptLog> implements DeviceOptLogService {
@Resource
private DeviceOptLogDao deviceOptLogDao;
@Resource
private UserService userService;
@Resource
private DeviceDao deviceDao;
@Resource
private BlockService blockService;
@Resource
private SnowflakeConfig snowflakeConfig;
@Override
2024-12-10 12:35:37 +08:00
public void saveGasWellOptLog(Integer isOpen, Long deviceId,String source) {
2024-11-26 18:46:34 +08:00
UserLoginInfoVO userLoginInfoVO = (UserLoginInfoVO) StpUtil.getTokenSession().get(UserConstant.TOKEN_SESSION);
2024-12-07 14:50:35 +08:00
DeviceVO deviceVO = this.deviceDao.getDeviceById(deviceId);
2024-11-26 18:46:34 +08:00
DeviceOptLog deviceOptLog = new DeviceOptLog();
2024-12-07 14:50:35 +08:00
deviceOptLog.setId(this.snowflakeConfig.snowflakeId());
2024-11-26 18:46:34 +08:00
deviceOptLog.setDeviceId(deviceId);
deviceOptLog.setUsername(userLoginInfoVO.getUserVO().getUsername());
deviceOptLog.setName(userLoginInfoVO.getUserVO().getNickname());
2024-12-07 14:50:35 +08:00
BlockVO blockVO = this.blockService.selectBlockById(deviceVO.getGasWell().getBlockId());
deviceOptLog.setBlock("苏里格气田-" + blockVO.getName());
2024-11-26 18:46:34 +08:00
deviceOptLog.setGasWell(deviceVO.getGasWell().getName());
2024-12-07 14:50:35 +08:00
deviceOptLog.setDeviceDetail(deviceVO.getDeviceType().getName() + "-" + deviceVO.getProduct().getName());
2024-11-26 18:46:34 +08:00
deviceOptLog.setGasStation(deviceVO.getGasStation());
2024-12-10 12:35:37 +08:00
String content = "";
if("device".equalsIgnoreCase(source)){
content = isOpen == 1 ? "检测到气井开启" : "检测到气井关闭";
}else{
content = isOpen == null ? "设置成功" : (isOpen == 1 ? "开井成功" : "关井成功");
}
2024-11-26 18:46:34 +08:00
deviceOptLog.setContent(content);
2024-12-07 14:50:35 +08:00
this.deviceOptLogDao.insert(deviceOptLog);
2024-11-26 18:46:34 +08:00
}
@Override
public Page<DeviceOptLog> page(Page<DeviceOptLog> page, Date start, Date end, Long deviceId) {
2024-12-07 14:50:35 +08:00
return this.deviceDao.deviceOptLogPage(page, start, end, deviceId);
2024-11-26 18:46:34 +08:00
}
}