更新重复校验代码

master
土豆兄弟 4 years ago
parent 3ab7697b57
commit 6857495d0d

@ -76,6 +76,11 @@
<artifactId>fastjson</artifactId>
<version>1.2.73</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.2.6</version>
</dependency>
</dependencies>
<build>

@ -58,6 +58,7 @@ public class ABClient {
CommonResponse.createBySuccess() : CommonResponse.createByErrorMessage("调用失败请重试");
}
/**
*
*

@ -1,15 +1,16 @@
package com.yuyou.openapi.openapi.common.security;
import cn.hutool.core.codec.Base64;
import cn.hutool.core.util.StrUtil;
import com.yuyou.openapi.openapi.exception.SecretException;
import com.yuyou.openapi.openapi.utils.SecurityOperationUtil;
import com.yuyou.openapi.openapi.utils.StringUtils;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import cn.hutool.core.codec.Base64;
import cn.hutool.core.util.StrUtil;
import com.yuyou.openapi.openapi.exception.SecretException;
import com.yuyou.openapi.openapi.utils.SecurityOperationUtil;
import com.yuyou.openapi.openapi.utils.StringUtils;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
*
@ -185,7 +186,10 @@ public class SecurityService implements SecurityConstants {
}
public static void main(String[] args) throws Exception {
String decryptValue = decrypt("$1r+ERD3RN2F/rm1PjMUKb0lCQ+2b3l15kD7kzkUm7YY=$0$", PHONE);
System.out.println(Base64.decodeStr(decryptValue));
List<String> numList = Arrays.asList(
);
for (String num : numList) {
System.out.println(Base64.decodeStr(decrypt(num, PHONE)));
}
}
}

@ -4,6 +4,17 @@ import com.yuyou.openapi.openapi.model.dataobject.ZhangmenMessageDO;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface ZhangmenMessageRepository extends JpaRepository<ZhangmenMessageDO,Long> {
/**
* RecId
*
* @param recId Id
* @return
*/
List<ZhangmenMessageDO> findByRecId(Long recId);
}

@ -45,7 +45,7 @@ public class ABMessageConverter {
abMessageDTO.setAppId(abMessageVO.getAppId());
abMessageDTO.setTimestamp(abMessageVO.getTimestamp());
// 对特殊的ActName进行处理
checkSpecailAppName(abMessageVO.getData());
checkSpecailAppName(each);
BeanUtils.copyProperties(each, abMessageDTO);
dataList.add(abMessageDTO);
}
@ -112,18 +112,14 @@ public class ABMessageConverter {
* xxxx-1
*
*
* @param list AppName
* @param detailInfo AppName
* @return
*/
private static void checkSpecailAppName(List<ABClientInterMessageVO.DetailInfo> list){
list.forEach(
one->{
String actName = one.getActName();
private static void checkSpecailAppName(ABClientInterMessageVO.DetailInfo detailInfo){
String actName = detailInfo.getActName();
String decodeStr = Base64.decodeStr(actName, CharsetUtil.UTF_8);
log.info("test decodeStr str is {}", decodeStr);
String matchActName = StringUtils.substringBeforeLast(decodeStr, "-");
one.setActName(matchActName);
}
);
detailInfo.setActName(matchActName);
}
}

@ -1,5 +1,6 @@
package com.yuyou.openapi.openapi.model.convert;
import cn.hutool.core.codec.Base64;
import com.yuyou.openapi.openapi.common.enums.GradeEnum;
import com.yuyou.openapi.openapi.common.enums.SubjectEnum;
import com.yuyou.openapi.openapi.common.security.SecurityConstants;
@ -65,6 +66,7 @@ public class ZhangmenMessageConverter {
ZhangmenMessageDO zhangmenMessageDO = new ZhangmenMessageDO();
BeanUtils.copyProperties(abzmMessageDTO.getData(), zhangmenMessageDO);
try {
abzmMessageDTO.getData().setMobile(Base64.encode(abzmMessageDTO.getData().getMobile()));
String encryptedMobile = SecurityService.encrypt(abzmMessageDTO.getData().getMobile(), SecurityConstants.PHONE);
String encryptedName = SecurityService.encrypt(abzmMessageDTO.getData().getName(), SecurityConstants.SIMPLE);
zhangmenMessageDO.setPnum(encryptedMobile);

@ -55,7 +55,6 @@ public class ABClientServiceImpl implements ABClientService {
log.error("========== [insert data error , please check .] ==========");
return Boolean.FALSE;
}
// TODO: 2020/8/10 0010 解密 发送
// 调用异步任务进行转发AB单 - 这里是这有一条数据
// 返回处理结果
// TODO: 2020/8/11 0011 暂时关闭下游接口 - 进行测试
@ -77,10 +76,24 @@ public class ABClientServiceImpl implements ABClientService {
}
ZhangmenMessageDO zhangmenMessageDO = ZhangmenMessageConverter.convertZhangmenMessageDOFromDTO(dto);
Long recId = zhangmenMessageDO.getRecId();
if (recId <= 0){
log.error("========== [recId is null,please check this data , error msg is {} ] ==========", dto.toString());
return Boolean.FALSE;
}
// 增加前先进行校验在数据库中是否存在
List<ZhangmenMessageDO> zhangmenMessageDOList = zhangmenMessageRepository.findByRecId(recId);
if (CollectionUtils.isEmpty(zhangmenMessageDOList)){
ZhangmenMessageDO result = zhangmenMessageRepository.save(zhangmenMessageDO);
if (result == null) {
log.error("========== [insert ZM data error , please check . ] ==========");
return Boolean.FALSE;
}
}else{
log.error("========== [insert ZM data error , recId is exist , recId is {} ] ==========", recId);
return Boolean.TRUE;
}
return Boolean.TRUE;
}
}

@ -41,7 +41,6 @@ public class ABClientServiceProxy implements ABClientService {
@Override
public boolean recordZMClientMsg(ABZMMessageDTO dto) {
// TODO: DTO层数据解密
return abClientService.recordZMClientMsg(dto);
}

@ -97,10 +97,10 @@ public class ABDownTask {
break;
}else{
count ++;
log.info("========== [request fail, response is {} ] ==========", httpResponse.body());
log.error("========== [request fail, response is {} ] ==========", httpResponse.body());
}
}
if (count > 4) {
if (count > 3) {
return Boolean.FALSE;
}
filterData.forEach(

@ -1,6 +1,6 @@
spring:
profiles:
active: prod
active: dev
# 序列化忽略null的k-v配置
jackson:
default-property-inclusion: non_null

@ -0,0 +1,31 @@
package com.yuyou.openapi.openapi;
import com.yuyou.openapi.openapi.dao.ZhangmenMessageRepository;
import com.yuyou.openapi.openapi.model.dataobject.ZhangmenMessageDO;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.List;
@SpringBootTest
@RunWith(SpringRunner.class)
public class DaoTest {
@Autowired
private ZhangmenMessageRepository zhangmenMessageRepository;
@Test
public void findByRecId(){
List<ZhangmenMessageDO> zhangmenMessageRepositoryByRecId = zhangmenMessageRepository.findByRecId(92L);
Assert.assertEquals(zhangmenMessageRepositoryByRecId.size(),1);
List<ZhangmenMessageDO> zhangmenMessageRepositoryByRecId1 = zhangmenMessageRepository.findByRecId(91L);
Assert.assertEquals(zhangmenMessageRepositoryByRecId1.size(),2);
}
}
Loading…
Cancel
Save