Commit f292f73b authored by danfuman's avatar danfuman

Merge branch 'V20230915' of http://192.168.60.201/root/dsk-operate-sys into V20230915

parents 43d73ef8 389e5728
......@@ -40,7 +40,7 @@ public class CacheController {
CACHES.add(new SysCache(GlobalConstants.CAPTCHA_CODE_KEY, "验证码"));
CACHES.add(new SysCache(GlobalConstants.REPEAT_SUBMIT_KEY, "防重提交"));
CACHES.add(new SysCache(GlobalConstants.RATE_LIMIT_KEY, "限流处理"));
CACHES.add(new SysCache(CacheNames.SYS_OSS_CONFIG, "OSS配置"));
CACHES.add(new SysCache(GlobalConstants.SYS_OSS_CONFIG, "OSS配置"));
CACHES.add(new SysCache(GlobalConstants.PWD_ERR_CNT_KEY, "密码错误次数"));
}
......
......@@ -9,6 +9,7 @@ import com.dsk.common.core.domain.R;
import com.dsk.common.core.domain.model.DskAccessTokenVO;
import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.enums.BusinessType;
import com.dsk.common.tenant.helper.TenantHelper;
import com.dsk.common.utils.poi.ExcelUtil;
import com.dsk.system.domain.SysConfig;
import com.dsk.system.service.ISysConfigService;
......@@ -87,6 +88,19 @@ public class SysConfigController extends BaseController {
return R.ok();
}
/**
* 新增租户参数配置
*/
@SaCheckPermission("system:config:tenant:add")
@Log(title = "参数管理", businessType = BusinessType.INSERT)
@PostMapping("/tenant/add")
public R<Void> tenantAdd(@Validated @RequestBody SysConfig config) {
TenantHelper.ignore(() -> {
configService.insertTenantConfig(config);
});
return R.ok();
}
/**
* 修改参数配置
*/
......@@ -137,8 +151,6 @@ public class SysConfigController extends BaseController {
}
/**
* 获取大司空open 插件访问token
*/
......@@ -146,7 +158,7 @@ public class SysConfigController extends BaseController {
@Log(title = "获取dsk访问token", businessType = BusinessType.OTHER)
@GetMapping("/dsk/accessToken")
public R<DskAccessTokenVO> dskAccessToken() {
DskAccessTokenVO dskAccessTokenVO= configService.getDskAccessToken();
DskAccessTokenVO dskAccessTokenVO = configService.getDskAccessToken();
return R.ok(dskAccessTokenVO);
}
}
--- # 监控中心配置
spring.boot.admin.client:
# 增加客户端开关
enabled: true
enabled: false
url: http://localhost:9090/admin
instance:
service-host-type: IP
......
......@@ -51,7 +51,7 @@ public class JskCombineInfoController extends BaseController {
* 集团成员列表
*/
@PostMapping("/memberList")
public AjaxResult memberList(@RequestBody JskCombineSearchDto dto) throws Exception {
public TableDataInfo memberList(@RequestBody JskCombineSearchDto dto) throws Exception {
return baseService.memberList(dto);
}
......
......@@ -52,9 +52,13 @@ public class JskCombineInfoService {
@Resource
private RedisCache redisCache;
public AjaxResult memberList(JskCombineSearchDto dto) {
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/enterprice/combine/memberList", BeanUtil.beanToMap(dto, false, false));
return BeanUtil.toBean(map, AjaxResult.class);
// public AjaxResult memberList(JskCombineSearchDto dto) {
// Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/enterprice/combine/memberList", BeanUtil.beanToMap(dto, false, false));
// return BeanUtil.toBean(map, AjaxResult.class);
// }
public TableDataInfo memberList(JskCombineSearchDto dto) throws Exception {
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/combine/memberList", BeanUtil.beanToMap(dto, false, false));
return dskOpenApiUtil.responsePage(map);
}
public R groupMemberCount(JskCombineSearchDto dto) {
......
......@@ -179,7 +179,7 @@ public class ExportService {
//供应商
vo.setSupplierCount(MapUtil.getInt(dataMap, "supplierCount"));
//债卷余额
vo.setCreditBalance(MapUtil.getDouble(dataMap, "creditBalance"));
vo.setCreditBalance(MapUtil.getDouble(dataMap, "bondBalance"));
//主体评级
vo.setBratingSubjectLevel(MapUtil.getStr(dataMap, "bratingSubjectLevel"));
//行政级别
......
......@@ -30,7 +30,10 @@ public class OssFactory {
*/
public static OssClient instance() {
// 获取redis 默认类型
String configKey = RedisUtils.getCacheObject(GlobalConstants.DEFAULT_CONFIG_KEY);
String configKey = RedisUtils.getCacheObject(OssConstant.DEFAULT_CONFIG_KEY);
if (StringUtils.isEmpty(configKey)) {
configKey = RedisUtils.getCacheObject(GlobalConstants.DEFAULT_CONFIG_KEY);
}
if (StringUtils.isEmpty(configKey)) {
throw new OssException("文件存储服务类型无法找到!");
}
......
......@@ -55,6 +55,13 @@ public interface ISysConfigService {
* @return 结果
*/
String insertConfig(SysConfig config);
/**
* 新增租户参数配置
*
* @param config 参数配置信息
* @return 结果
*/
void insertTenantConfig(SysConfig config);
/**
* 修改参数配置
......
......@@ -10,32 +10,35 @@ import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HttpUtil;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsk.common.constant.CacheNames;
import com.dsk.common.constant.TenantConstants;
import com.dsk.common.constant.UserConstants;
import com.dsk.common.core.domain.PageQuery;
import com.dsk.common.core.domain.model.DskAccessTokenVO;
import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.core.service.ConfigService;
import com.dsk.common.exception.ServiceException;
import com.dsk.common.tenant.helper.TenantHelper;
import com.dsk.common.utils.JsonUtils;
import com.dsk.common.utils.StringUtils;
import com.dsk.common.utils.redis.CacheUtils;
import com.dsk.common.utils.spring.SpringUtils;
import com.dsk.system.domain.SysConfig;
import com.dsk.system.domain.SysTenant;
import com.dsk.system.mapper.SysConfigMapper;
import com.dsk.system.mapper.SysTenantMapper;
import com.dsk.system.service.ISysConfigService;
import jodd.bean.BeanException;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cache.annotation.CachePut;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* 参数配置 服务层实现
......@@ -49,15 +52,17 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService {
private final SysConfigMapper baseMapper;
private final SysTenantMapper tenantMapper;
@Override
public TableDataInfo<SysConfig> selectPageConfigList(SysConfig config, PageQuery pageQuery) {
Map<String, Object> params = config.getParams();
LambdaQueryWrapper<SysConfig> lqw = new LambdaQueryWrapper<SysConfig>()
.like(StringUtils.isNotBlank(config.getConfigName()), SysConfig::getConfigName, config.getConfigName())
.eq(StringUtils.isNotBlank(config.getConfigType()), SysConfig::getConfigType, config.getConfigType())
.like(StringUtils.isNotBlank(config.getConfigKey()), SysConfig::getConfigKey, config.getConfigKey())
.between(params.get("beginTime") != null && params.get("endTime") != null,
SysConfig::getCreateTime, params.get("beginTime"), params.get("endTime"));
.like(StringUtils.isNotBlank(config.getConfigName()), SysConfig::getConfigName, config.getConfigName())
.eq(StringUtils.isNotBlank(config.getConfigType()), SysConfig::getConfigType, config.getConfigType())
.like(StringUtils.isNotBlank(config.getConfigKey()), SysConfig::getConfigKey, config.getConfigKey())
.between(params.get("beginTime") != null && params.get("endTime") != null,
SysConfig::getCreateTime, params.get("beginTime"), params.get("endTime"));
Page<SysConfig> page = baseMapper.selectPage(pageQuery.build(), lqw);
return TableDataInfo.build(page);
}
......@@ -84,7 +89,7 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService {
@Override
public String selectConfigByKey(String configKey) {
SysConfig retConfig = baseMapper.selectOne(new LambdaQueryWrapper<SysConfig>()
.eq(SysConfig::getConfigKey, configKey));
.eq(SysConfig::getConfigKey, configKey));
if (ObjectUtil.isNotNull(retConfig)) {
return retConfig.getConfigValue();
}
......@@ -115,11 +120,11 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService {
public List<SysConfig> selectConfigList(SysConfig config) {
Map<String, Object> params = config.getParams();
LambdaQueryWrapper<SysConfig> lqw = new LambdaQueryWrapper<SysConfig>()
.like(StringUtils.isNotBlank(config.getConfigName()), SysConfig::getConfigName, config.getConfigName())
.eq(StringUtils.isNotBlank(config.getConfigType()), SysConfig::getConfigType, config.getConfigType())
.like(StringUtils.isNotBlank(config.getConfigKey()), SysConfig::getConfigKey, config.getConfigKey())
.between(params.get("beginTime") != null && params.get("endTime") != null,
SysConfig::getCreateTime, params.get("beginTime"), params.get("endTime"));
.like(StringUtils.isNotBlank(config.getConfigName()), SysConfig::getConfigName, config.getConfigName())
.eq(StringUtils.isNotBlank(config.getConfigType()), SysConfig::getConfigType, config.getConfigType())
.like(StringUtils.isNotBlank(config.getConfigKey()), SysConfig::getConfigKey, config.getConfigKey())
.between(params.get("beginTime") != null && params.get("endTime") != null,
SysConfig::getCreateTime, params.get("beginTime"), params.get("endTime"));
return baseMapper.selectList(lqw);
}
......@@ -139,6 +144,42 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService {
throw new ServiceException("操作失败");
}
/**
* 新增参数配置
*
* @param config 参数配置信息
* @return 结果
*/
@Override
public void insertTenantConfig(SysConfig config) {
//重复验证
boolean exists = baseMapper.exists(Wrappers.<SysConfig>lambdaQuery().eq(SysConfig::getConfigKey, config.getConfigKey()));
if(exists){
throw new BeanException("当前配置键已存在!");
}
List<SysConfig> list = new ArrayList<>();
SysConfig admin = new SysConfig();
BeanUtil.copyProperties(config, admin);
admin.setTenantId(TenantConstants.DEFAULT_TENANT_ID);
list.add(admin);
List<SysTenant> sysTenants = tenantMapper.selectList();
if (!CollectionUtils.isEmpty(sysTenants)) {
for (SysTenant sysTenant : sysTenants) {
SysConfig bean = new SysConfig();
BeanUtil.copyProperties(config, bean);
bean.setTenantId(sysTenant.getTenantId());
list.add(bean);
}
}
boolean b = baseMapper.insertBatch(list);
if (!b) {
throw new ServiceException("操作失败");
}
}
/**
* 修改参数配置
*
......@@ -157,7 +198,7 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService {
row = baseMapper.updateById(config);
} else {
row = baseMapper.update(config, new LambdaQueryWrapper<SysConfig>()
.eq(SysConfig::getConfigKey, config.getConfigKey()));
.eq(SysConfig::getConfigKey, config.getConfigKey()));
}
if (row > 0) {
return config.getConfigValue();
......@@ -189,7 +230,7 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService {
public void loadingConfigCache() {
List<SysConfig> configsList = selectConfigList(new SysConfig());
configsList.forEach(config ->
CacheUtils.put(CacheNames.SYS_CONFIG, config.getConfigKey(), config.getConfigValue()));
CacheUtils.put(CacheNames.SYS_CONFIG, config.getConfigKey(), config.getConfigValue()));
}
/**
......@@ -228,10 +269,10 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService {
@Override
public DskAccessTokenVO getDskAccessToken() {
List<SysConfig> dskName = queryListByKey("dsk");
Assert.notEmpty(dskName,"大司空数据APPkey配置异常");
Map<String,Object> dskConfig=new HashMap<>();
Assert.notEmpty(dskName, "大司空数据APPkey配置异常");
Map<String, Object> dskConfig = new HashMap<>();
for (SysConfig sysConfig : dskName) {
dskConfig.put(sysConfig.getConfigKey(),sysConfig.getConfigValue());
dskConfig.put(sysConfig.getConfigKey(), sysConfig.getConfigValue());
}
String domain = (String) dskConfig.get("dsk-Domain");
......@@ -240,19 +281,19 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService {
String appSecret = (String) dskConfig.get("dsk-AppSecret");
Map<String,Object> dskAccessTokenDto=new HashMap<>();
dskAccessTokenDto.put("appKey",appkey);
dskAccessTokenDto.put("appSecret",appSecret);
Map<String, Object> dskAccessTokenDto = new HashMap<>();
dskAccessTokenDto.put("appKey", appkey);
dskAccessTokenDto.put("appSecret", appSecret);
String post = HttpUtil.post(domain + accessTokenAPI, JsonUtils.toJsonString(dskAccessTokenDto));
Assert.notEmpty(post,"大司空数据accessTokenAPI响应异常");
log.info("大司空数据accessToken API响应:"+post);
Assert.notEmpty(post, "大司空数据accessTokenAPI响应异常");
log.info("大司空数据accessToken API响应:" + post);
Dict dict = JsonUtils.parseMap(post);
Object dataObj = dict.getObj("data");
if (dict.getInt("code")!=200||ObjectUtil.isEmpty(dataObj)) {
throw new ServiceException("API数据accessTokenAPI响应异常",500);
if (dict.getInt("code") != 200 || ObjectUtil.isEmpty(dataObj)) {
throw new ServiceException("API数据accessTokenAPI响应异常", 500);
}
return BeanUtil.toBean(dataObj,DskAccessTokenVO.class);
return BeanUtil.toBean(dataObj, DskAccessTokenVO.class);
}
/**
......@@ -267,9 +308,9 @@ public class SysConfigServiceImpl implements ISysConfigService, ConfigService {
}
public List<SysConfig> queryListByKey(String keyName){
public List<SysConfig> queryListByKey(String keyName) {
LambdaQueryWrapper<SysConfig> dsk = new LambdaQueryWrapper<SysConfig>().likeRight(SysConfig::getConfigKey, keyName);
return baseMapper.selectList(dsk);
return TenantHelper.ignore(() -> baseMapper.selectList(dsk));
}
}
......@@ -2,11 +2,14 @@ package com.dsk.system.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsk.common.constant.GlobalConstants;
import com.dsk.common.constant.TenantConstants;
import com.dsk.common.tenant.core.TenantEntity;
import com.dsk.common.tenant.helper.TenantHelper;
import com.dsk.common.utils.StreamUtils;
......@@ -67,6 +70,11 @@ public class SysOssConfigServiceImpl implements ISysOssConfigService {
RedisUtils.setCacheObject(OssConstant.DEFAULT_CONFIG_KEY, configKey);
}
CacheUtils.put(CacheNames.SYS_OSS_CONFIG, config.getConfigKey(), JsonUtils.toJsonString(config));
if(TenantConstants.DEFAULT_TENANT_ID.equals(config.getTenantId())){
RedisUtils.setCacheObject(GlobalConstants.DEFAULT_CONFIG_KEY, configKey);
CacheUtils.put(GlobalConstants.SYS_OSS_CONFIG, config.getConfigKey(), JsonUtils.toJsonString(config));
}
}
}
} finally {
......
......@@ -6,20 +6,16 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.dsk.acc.openapi.api.AccClient;
import com.dsk.acc.openapi.client.Config;
import com.dsk.acc.openapi.client.util.CommonUtils;
import com.dsk.common.config.DskOpenApiConfig;
import com.dsk.common.constant.TenantConstants;
import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.exception.ServiceException;
import com.dsk.common.tenant.helper.TenantHelper;
import com.dsk.system.domain.SysConfig;
import com.dsk.system.mapper.SysConfigMapper;
import org.apache.commons.collections4.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
import java.lang.reflect.Field;
import java.util.List;
import java.util.Map;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment