package com.hxzkmonitor.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.hxzkmonitor.mapper.TbCompanyMapper;
|
import com.hxzkmonitor.mapper.TbSystemWinMapper;
|
import com.hxzkmonitor.mapper.TbTankMapper;
|
import com.hxzkmonitor.mapper.TbUserMapper;
|
import com.hxzkmonitor.pojo.*;
|
import com.hxzkmonitor.service.TbSystemWinService;
|
import com.hxzkmonitor.service.TbTankService;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.text.SimpleDateFormat;
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Objects;
|
|
@Service
|
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
|
public class TbTankServiceImpl extends ServiceImpl<TbTankMapper, TbTank> implements TbTankService {
|
|
@Autowired
|
TbTankMapper tbTankMapper;
|
|
|
private final TbUserMapper tbUserMapper;
|
|
private final TbCompanyMapper tbCompanyMapper;
|
|
@Override
|
public Integer addorupTbTank(TbTank tank) {
|
|
|
Date date = new Date();
|
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
tank.setAddtime(formatter.format(date));
|
if (tank.getId() != null) {
|
return baseMapper.updateById(tank);
|
} else {
|
QueryWrapper queryWrapper2 = new QueryWrapper<>();
|
queryWrapper2.eq("username", tank.getCompanyname());
|
TbUser tbUser = tbUserMapper.selectOne(queryWrapper2);
|
tank.setCompanyname(tbUser.getCaname());
|
QueryWrapper<TbTank> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("tankname", tank.getTankname());
|
queryWrapper.eq("companyname", tank.getCompanyname());
|
List<TbTank> tagid1 = baseMapper.selectList(queryWrapper);
|
if (tagid1.size()>0){
|
return -1;
|
}else{
|
return baseMapper.insert(tank);
|
}
|
|
}
|
}
|
|
@Override
|
public IPage<TbTank> getTbTankPage(Page page, String username) {
|
|
QueryWrapper queryWrapper2 = new QueryWrapper<>();
|
queryWrapper2.eq("username", username);
|
TbUser tbUser = tbUserMapper.selectOne(queryWrapper2);
|
if (Objects.equals(tbUser.getRole(), "超级管理员")) {
|
QueryWrapper queryWrapper = new QueryWrapper<>();
|
queryWrapper.orderByDesc("addtime");
|
IPage<TbTank> userPage = baseMapper.selectPage(page, queryWrapper);
|
return userPage;
|
|
} else {
|
QueryWrapper queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("companyname", tbUser.getCaname());
|
queryWrapper.orderByDesc("addtime");
|
IPage<TbTank> userPage = baseMapper.selectPage(page, queryWrapper);
|
return userPage;
|
}
|
}
|
|
@Override
|
public IPage<TbTank> searchTbTank(Page page, String keyword, String username) {
|
|
QueryWrapper queryWrapperu = new QueryWrapper<>();
|
queryWrapperu.eq("username",username);
|
TbUser tbUser= tbUserMapper.selectOne(queryWrapperu);
|
if (Objects.equals(tbUser.getRole(), "超级管理员")){
|
QueryWrapper<TbTank> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("tankname", keyword);
|
queryWrapper.orderByDesc("addtime");
|
List<TbTank> tagid1 = baseMapper.selectList(queryWrapper);
|
|
if (tagid1.size() > 0) {
|
IPage<TbTank> tagid = baseMapper.selectPage(page, queryWrapper);
|
for (int i = 0; i < tagid.getRecords().size(); i++) {
|
QueryWrapper queryWrapper1 = new QueryWrapper<>();
|
queryWrapper1.eq("companyname",tagid.getRecords().get(i).getCompanyname());
|
TbCompany tbCompany = tbCompanyMapper.selectOne(queryWrapper1);
|
if (tbCompany!=null){
|
tagid.getRecords().get(i).setCompanyname(tbCompany.getCompanyname());
|
}
|
// tagid.getRecords().get(i).setCompany(tbCompany.getCompanyname());
|
}
|
return tagid;
|
} else {
|
return null;
|
}
|
}else{
|
|
|
QueryWrapper<TbTank> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("tankname", keyword);
|
queryWrapper.eq("companyname",tbUser.getCaname());
|
queryWrapper.orderByDesc("addtime");
|
List<TbTank> tagid1 = baseMapper.selectList(queryWrapper);
|
|
if (tagid1.size() > 0) {
|
IPage<TbTank> tagid = baseMapper.selectPage(page, queryWrapper);
|
for (int i = 0; i < tagid.getRecords().size(); i++) {
|
QueryWrapper queryWrapper1 = new QueryWrapper<>();
|
queryWrapper1.eq("companyname",tagid.getRecords().get(i).getTankname());
|
TbCompany tbCompany = tbCompanyMapper.selectOne(queryWrapper1);
|
if (tbCompany!=null){
|
tagid.getRecords().get(i).setCompanyname(tbCompany.getCompanyname());
|
}
|
// tagid.getRecords().get(i).setCompany(tbCompany.getCompanyname());
|
}
|
return tagid;
|
} else {
|
return null;
|
}
|
}
|
}
|
|
@Override
|
public TbTank delTbTank(Integer id) {
|
QueryWrapper queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("id",id);
|
baseMapper.delete(queryWrapper);
|
return baseMapper.selectOne(queryWrapper);
|
}
|
|
}
|