Commit bc1b02c5 authored by 郝彦辉's avatar 郝彦辉

根据rId手动将黑名单变为灰名单工具

parent 2bf97b4f
......@@ -149,4 +149,20 @@ public class BlackListToolsManagerController {
}
@RequestMapping("/manualBlackToGrey")
public GlobalResponse manualBlackToGrey(String privateKey,String rIds){
if(StringUtils.isNotEmpty(privateKey) && "aHVhdDI0V0JvT3hwTkJwQmk1d2Q4dz09".equals(privateKey)){
if(StringUtils.isBlank(rIds)){
return GlobalResponse.error("manualBlackToGrey参数为空!");
}
String result= iBlackListToolsManagerService.manualBlackToGrey(rIds);
return GlobalResponse.success(result);
}else{
return GlobalResponse.error("manualBlackToGrey私钥为空或不正确,请联系管理员!");
}
}
}
......@@ -48,4 +48,17 @@ public interface IBlackListToolsManagerService {
public String importBlackGrey(String txtTableFile);
/**
* -----------------------------------------------------------------------------<br>
* 描 述: 根据rId,手动将黑名单变为灰名单 <br>
* 创建人: yanhui.Hao <br>
* 创建时间: 2020.05.18 15:41 <br>
* 最后修改人: <br>
* 最后修改时间: 2020.05.18 15:41 <br>
* 入参说明: <br>
* 出参说明: <br>
* -----------------------------------------------------------------------------
*/
public String manualBlackToGrey(String rIds);
}
......@@ -75,6 +75,10 @@ public class BlackListToolsManagerServiceImpl implements IBlackListToolsManagerS
@Autowired
private BlackGreyListMapper blackGreyListMapper;
@Autowired
private BlackToGreyListParallel blackToGreyListParallel;
@PostConstruct
public void initChannelBlackListExpireConfig() {
List<BlackListChannelExpireConfigVo0> queryBlackListChannelExpireConfigVo0List = blackListJdbcTemplate.query(Constant.SQL.BLACK_LIST_NEW_QUERY_CHANNEL_BLACK_LIST_EXPIRE_CONFIG_SQL, new BeanPropertyRowMapper<>(BlackListChannelExpireConfigVo0.class));
......@@ -1840,4 +1844,85 @@ public class BlackListToolsManagerServiceImpl implements IBlackListToolsManagerS
}
/**
* -----------------------------------------------------------------------------<br>
* 描 述: 根据rId,手动将黑名单变为灰名单 <br>
* 创建人: yanhui.Hao <br>
* 创建时间: 2020.05.18 15:41 <br>
* 最后修改人: <br>
* 最后修改时间: 2020.05.18 15:41 <br>
* 入参说明: <br>
* 出参说明: <br>
* -----------------------------------------------------------------------------
*/
@Override
public String manualBlackToGrey(String rIds){
long startTime = System.currentTimeMillis();
StringBuffer buff = new StringBuffer();
if(StringUtils.isNotEmpty(rIds)){
String[] arry = rIds.split(",");
if(arry.length>0){
for(String rId : arry){
if(buff.length()==0){
buff.append("'").append(rId).append("'");
}else {
buff.append(",").append("'").append(rId).append("'");
}
}
}
}
if(buff.length()==0){
return "参数不正确";
}
String sql_query_tmp = "select r.r_id, r.uuid, r.black_type, r.types, r.reasons FROM black_grey_list_result r " +
" WHERE r.black_type='1' AND r.r_id in ("+buff.toString()+");";
List<BlackGreyListResult> blackListResults = new ArrayList<>();
int count_black = 0, count_type_11=0;
List<BlackGreyListResult> tmpQueryList = null;
try{
tmpQueryList = blackListJdbcTemplate.query(sql_query_tmp, new RowMapper<BlackGreyListResult>() {
@Override
public BlackGreyListResult mapRow(ResultSet rs, int rowNum) throws SQLException {
BlackGreyListResult bean = new BlackGreyListResult();
bean.setRId(rs.getString("r_id"));
bean.setUuid(rs.getString("uuid"));
bean.setBlackType(rs.getString("black_type"));
bean.setTypes(rs.getString("types"));
bean.setReasons(rs.getString("reasons"));
return bean;
}
});
if(tmpQueryList!=null && tmpQueryList.size() >0){
count_black+=tmpQueryList.size();
//blackListResults.addAll(tmpQueryList);
for (BlackGreyListResult result: tmpQueryList){
String types = ","+result.getTypes().trim()+",";
if(!types.contains(",11,")){
blackListResults.add(result);
}else {
count_type_11++;
}
}
}
}catch (Exception e){
e.printStackTrace();
log.error("查询结果表-黑名单列表异常, sql_query_tmp {} , 耗时: {} ", sql_query_tmp, (System.currentTimeMillis()-startTime), e);
}
log.info("黑转灰-查询黑灰名单结果表结束, 查询大小: {} , type11大小: {} , list大小: {} , 总查询耗时: {} ", count_black, count_type_11, blackListResults!=null?blackListResults.size():"null", (System.currentTimeMillis()-startTime));
//批量 逾期已还清黑名单>>转灰名单
if(blackListResults!=null && blackListResults.size() >0 ){
String resMsg1 = "黑名单转灰名单查询 "+blackListResults.size()+"条, 查询耗时 "+(System.currentTimeMillis()-startTime)+"毫秒, ";
String resMsg2 = blackToGreyListParallel.removeBlackToGrey(blackListResults);
return resMsg1+resMsg2;
}else {
return "黑名单转灰名单查询 0条, 查询耗时 "+(System.currentTimeMillis()-startTime)+"毫秒, 跳过转移!";
}
}
}
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