|
@@ -102,7 +102,25 @@ public class RiskServiceImpl extends ReflectUtil implements RiskService {
|
|
|
List<RiskConfigView> configList = new ArrayList<RiskConfigView>();
|
|
List<RiskConfigView> configList = new ArrayList<RiskConfigView>();
|
|
|
try{
|
|
try{
|
|
|
for (AgentAppClassView view : viewList) {
|
|
for (AgentAppClassView view : viewList) {
|
|
|
- addConfigItem(Class.forName(view.getFullName()).getDeclaredFields(),configList);
|
|
|
|
|
|
|
+ addConfigItem(Class.forName(view.getFullName()).getDeclaredFields(),configList,null);
|
|
|
|
|
+ }
|
|
|
|
|
+ }catch (Exception e){
|
|
|
|
|
+ log.error(e.getMessage());
|
|
|
|
|
+ throw new CustomerException(e.getMessage());
|
|
|
|
|
+ }
|
|
|
|
|
+ return ResultTable.resultTableOk(new PageInfo<RiskConfigView>(configList));
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 根据业务节点查询配置项
|
|
|
|
|
+ */
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public ResultTable<RiskConfigView> getFieldConfigByNode(Integer effectNode) {
|
|
|
|
|
+ List<AgentAppClassView> viewList = configMapper.getAppClazz("");
|
|
|
|
|
+ List<RiskConfigView> configList = new ArrayList<RiskConfigView>();
|
|
|
|
|
+ try{
|
|
|
|
|
+ for (AgentAppClassView view : viewList) {
|
|
|
|
|
+ addConfigItem(Class.forName(view.getFullName()).getDeclaredFields(),configList,effectNode);
|
|
|
}
|
|
}
|
|
|
}catch (Exception e){
|
|
}catch (Exception e){
|
|
|
log.error(e.getMessage());
|
|
log.error(e.getMessage());
|
|
@@ -114,14 +132,15 @@ public class RiskServiceImpl extends ReflectUtil implements RiskService {
|
|
|
/**
|
|
/**
|
|
|
* 添加配置项
|
|
* 添加配置项
|
|
|
*/
|
|
*/
|
|
|
- private void addConfigItem(Field[] fields, List<RiskConfigView> configList) {
|
|
|
|
|
|
|
+ private void addConfigItem(Field[] fields, List<RiskConfigView> configList, Integer effectNode) {
|
|
|
RiskConfigView view;
|
|
RiskConfigView view;
|
|
|
for (Field field : fields) {
|
|
for (Field field : fields) {
|
|
|
field.setAccessible(true);
|
|
field.setAccessible(true);
|
|
|
|
|
+ if(Objects.nonNull(effectNode) && field.getAnnotation(CustomField.class).node() != effectNode)continue;
|
|
|
if(!field.isAnnotationPresent(CustomField.class))continue;
|
|
if(!field.isAnnotationPresent(CustomField.class))continue;
|
|
|
view = new RiskConfigView();
|
|
view = new RiskConfigView();
|
|
|
view.setFieldName(field.getName());
|
|
view.setFieldName(field.getName());
|
|
|
- if(StrUtil.isNotBlank(field.getAnnotation(CustomField.class).value())){
|
|
|
|
|
|
|
+ if(CharSequenceUtil.isNotBlank(field.getAnnotation(CustomField.class).value())){
|
|
|
view.setDictList(dictMapper.getByTypeCode(field.getAnnotation(CustomField.class).value()));
|
|
view.setDictList(dictMapper.getByTypeCode(field.getAnnotation(CustomField.class).value()));
|
|
|
}
|
|
}
|
|
|
view.setFieldDesc(field.getAnnotation(ApiModelProperty.class).value());
|
|
view.setFieldDesc(field.getAnnotation(ApiModelProperty.class).value());
|
|
@@ -407,8 +426,10 @@ public class RiskServiceImpl extends ReflectUtil implements RiskService {
|
|
|
@Override
|
|
@Override
|
|
|
public Result<?> checkRisk(YtDyzUser dyzUser) {
|
|
public Result<?> checkRisk(YtDyzUser dyzUser) {
|
|
|
RiskTemplateView view = configMapper.getByCode(dyzUser.getRiskCode());
|
|
RiskTemplateView view = configMapper.getByCode(dyzUser.getRiskCode());
|
|
|
- //校验默认的风控配置
|
|
|
|
|
- checkDefaultRiskConfig(dyzUser, view.getConfigList());
|
|
|
|
|
|
|
+ //如果启用了该配置 校验默认的风控配置
|
|
|
|
|
+ if(1==view.getEnabled()){
|
|
|
|
|
+ checkDefaultRiskConfig(dyzUser, view.getConfigList());
|
|
|
|
|
+ }
|
|
|
//查询用户所在app是否配置其他风控规则
|
|
//查询用户所在app是否配置其他风控规则
|
|
|
|
|
|
|
|
return Result.resultOk(RepMessage.QUERY_SUCCESS);
|
|
return Result.resultOk(RepMessage.QUERY_SUCCESS);
|
|
@@ -468,7 +489,7 @@ public class RiskServiceImpl extends ReflectUtil implements RiskService {
|
|
|
*/
|
|
*/
|
|
|
@Override
|
|
@Override
|
|
|
public Result<?> checkAdRisk(YtDyzUser dyzUser) {
|
|
public Result<?> checkAdRisk(YtDyzUser dyzUser) {
|
|
|
- ResultTable<YtDyzAdRecord> table = appFeign.adRecords(dyzUser.getUserId(),null);
|
|
|
|
|
|
|
+ ResultTable<YtDyzAdRecord> table = appFeign.adRecords(dyzUser.getUserId());
|
|
|
List<YtDyzAdRecord> records = table.getData();
|
|
List<YtDyzAdRecord> records = table.getData();
|
|
|
if(records.isEmpty()){
|
|
if(records.isEmpty()){
|
|
|
return Result.resultOk(RepMessage.QUERY_SUCCESS);
|
|
return Result.resultOk(RepMessage.QUERY_SUCCESS);
|
|
@@ -494,6 +515,7 @@ public class RiskServiceImpl extends ReflectUtil implements RiskService {
|
|
|
*/
|
|
*/
|
|
|
private void checkRisk746(YtDyzUser dyzUser, List<YtDyzAdRecord> records) {
|
|
private void checkRisk746(YtDyzUser dyzUser, List<YtDyzAdRecord> records) {
|
|
|
RiskTemplateView revenue = configMapper.getByCode("746");
|
|
RiskTemplateView revenue = configMapper.getByCode("746");
|
|
|
|
|
+ if(revenue.getEnabled()!=1)return;
|
|
|
Map<String, String> revenueMap = revenue.getConfigList().stream().collect(
|
|
Map<String, String> revenueMap = revenue.getConfigList().stream().collect(
|
|
|
Collectors.toMap(RiskConfigView::getFieldName, RiskConfigView::getConfigVal));
|
|
Collectors.toMap(RiskConfigView::getFieldName, RiskConfigView::getConfigVal));
|
|
|
List<YtDyzAdRecord> revenues = records.stream().filter(
|
|
List<YtDyzAdRecord> revenues = records.stream().filter(
|
|
@@ -516,6 +538,7 @@ public class RiskServiceImpl extends ReflectUtil implements RiskService {
|
|
|
* 校验默认风控规则742
|
|
* 校验默认风控规则742
|
|
|
*/
|
|
*/
|
|
|
private void checkRisk742(RiskTemplateView ecpmLimit,YtDyzUser dyzUser,List<YtDyzAdRecord> records) {
|
|
private void checkRisk742(RiskTemplateView ecpmLimit,YtDyzUser dyzUser,List<YtDyzAdRecord> records) {
|
|
|
|
|
+ if(ecpmLimit.getEnabled()!=1)return;
|
|
|
Map<String, String> limitMap = ecpmLimit.getConfigList().stream().collect(
|
|
Map<String, String> limitMap = ecpmLimit.getConfigList().stream().collect(
|
|
|
Collectors.toMap(RiskConfigView::getFieldName, RiskConfigView::getConfigVal));
|
|
Collectors.toMap(RiskConfigView::getFieldName, RiskConfigView::getConfigVal));
|
|
|
int adCount = 0;
|
|
int adCount = 0;
|