bug修复
This commit is contained in:
parent
185e944070
commit
7fe41f593a
@ -1,6 +1,7 @@
|
|||||||
package com.zhgd.xmgl.modules.basicdata.service.impl;
|
package com.zhgd.xmgl.modules.basicdata.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.zhgd.redis.lock.RedisRepository;
|
import com.zhgd.redis.lock.RedisRepository;
|
||||||
import com.zhgd.xmgl.modules.basicdata.entity.Company;
|
import com.zhgd.xmgl.modules.basicdata.entity.Company;
|
||||||
import com.zhgd.xmgl.modules.basicdata.entity.CompanyConfig;
|
import com.zhgd.xmgl.modules.basicdata.entity.CompanyConfig;
|
||||||
@ -9,10 +10,7 @@ import com.zhgd.xmgl.modules.basicdata.mapper.CompanyMapper;
|
|||||||
import com.zhgd.xmgl.modules.basicdata.service.ICompanyConfigService;
|
import com.zhgd.xmgl.modules.basicdata.service.ICompanyConfigService;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.data.redis.core.RedisTemplate;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -33,8 +31,8 @@ public class CompanyConfigServiceImpl extends ServiceImpl<CompanyConfigMapper, C
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateCompanyConfig(CompanyConfig companyConfig) {
|
public void updateCompanyConfig(CompanyConfig companyConfig) {
|
||||||
CompanyConfig config=companyConfigMapper.selectById(companyConfig.getClientId());
|
CompanyConfig config = companyConfigMapper.selectById(companyConfig.getClientId());
|
||||||
if(config!=null) {
|
if (config != null) {
|
||||||
companyConfigMapper.updateById(companyConfig);
|
companyConfigMapper.updateById(companyConfig);
|
||||||
if (redisRepository.exists("COMPANY_CONFIG" + config.getCompanySn())) {
|
if (redisRepository.exists("COMPANY_CONFIG" + config.getCompanySn())) {
|
||||||
redisRepository.del("COMPANY_CONFIG" + config.getCompanySn());
|
redisRepository.del("COMPANY_CONFIG" + config.getCompanySn());
|
||||||
@ -43,36 +41,37 @@ public class CompanyConfigServiceImpl extends ServiceImpl<CompanyConfigMapper, C
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CompanyConfig getCompanyConfig(String companySn){
|
public CompanyConfig getCompanyConfig(String companySn) {
|
||||||
CompanyConfig companyConfig = (CompanyConfig)redisRepository.get("COMPANY_CONFIG"+companySn);
|
CompanyConfig companyConfig = (CompanyConfig) redisRepository.get("COMPANY_CONFIG" + companySn);
|
||||||
if(companyConfig==null){
|
if (companyConfig == null) {
|
||||||
QueryWrapper<CompanyConfig> queryWrapper=new QueryWrapper<>();
|
QueryWrapper<CompanyConfig> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.lambda().eq(CompanyConfig::getCompanySn,companySn);
|
queryWrapper.lambda().eq(CompanyConfig::getCompanySn, companySn);
|
||||||
companyConfig=companyConfigMapper.selectOne(queryWrapper);
|
companyConfig = companyConfigMapper.selectOne(queryWrapper);
|
||||||
if(companyConfig == null) {
|
if (companyConfig == null) {
|
||||||
//如果数据库中数据为空,则存入一个空值,设置短时间内过期,防止缓存穿透
|
//如果数据库中数据为空,则存入一个空值,设置短时间内过期,防止缓存穿透
|
||||||
redisRepository.setExpire("COMPANY_CONFIG"+companySn,null,60*60*24);
|
redisRepository.setExpire("COMPANY_CONFIG" + companySn, null, 60 * 60 * 24);
|
||||||
}else {
|
} else {
|
||||||
//将数据写入缓存
|
//将数据写入缓存
|
||||||
redisRepository.setExpire("COMPANY_CONFIG"+companySn,companyConfig,60*60*24*3);
|
redisRepository.setExpire("COMPANY_CONFIG" + companySn, companyConfig, 60 * 60 * 24 * 3);
|
||||||
}
|
}
|
||||||
}else{
|
} else {
|
||||||
redisRepository.setExpire("COMPANY_CONFIG"+companySn,companyConfig,60*60*24*3);
|
redisRepository.setExpire("COMPANY_CONFIG" + companySn, companyConfig, 60 * 60 * 24 * 3);
|
||||||
}
|
}
|
||||||
return companyConfig;
|
return companyConfig;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CompanyConfig getCompanyConfigByProjectSn(String projectSn){
|
public CompanyConfig getCompanyConfigByProjectSn(String projectSn) {
|
||||||
String companySn=(String)redisRepository.get("COMPANY_HEAD_PROJECT"+projectSn);
|
String companySn = (String) redisRepository.get("COMPANY_HEAD_PROJECT" + projectSn);
|
||||||
if(StringUtils.isEmpty(companySn)){
|
if (StringUtils.isEmpty(companySn)) {
|
||||||
Company company=companyMapper.selectComapnyByProject(projectSn);
|
Company company = companyMapper.selectComapnyByProject(projectSn);
|
||||||
redisRepository.set("COMPANY_HEAD_PROJECT"+projectSn,company.getHeadquartersSn());
|
String headquartersSn = company != null ? company.getHeadquartersSn() : null;
|
||||||
companySn=company.getHeadquartersSn();
|
redisRepository.set("COMPANY_HEAD_PROJECT" + projectSn, headquartersSn);
|
||||||
|
companySn = headquartersSn;
|
||||||
}
|
}
|
||||||
if(StringUtils.isNotEmpty(companySn)) {
|
if (StringUtils.isNotEmpty(companySn)) {
|
||||||
return getCompanyConfig(companySn);
|
return getCompanyConfig(companySn);
|
||||||
}else{
|
} else {
|
||||||
return getCompanyConfig(null);
|
return getCompanyConfig(null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user