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