From 34cedca9674e1b38b6b8ea221ad81b0437386c07 Mon Sep 17 00:00:00 2001 From: wxp01309236 Date: Sun, 25 Jun 2023 19:12:19 +0800 Subject: [PATCH 1/7] fix --- .../impl/HyPartnerIntentInfoServiceImpl.java | 26 ++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java index f4d008098..c1c2060e2 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java @@ -160,20 +160,22 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic return intentInfoVO; } HyPartnerIntentInfoDO intentInfoDO = hyPartnerIntentInfoDAO.getByPartnerIdAndLineId(userInfoVO.getPartnerId(), lineId); + PartnerIntentInfoVO intentInfoVO = null; if (intentInfoDO != null){ - PartnerIntentInfoVO intentInfoVO = convertPartnerIntentApplyInfoDOToVO(intentInfoDO); - if(StringUtils.isBlank(intentInfoVO.getLiveArea())){ - intentInfoVO.setLiveArea(userInfoVO.getLiveArea()); - } - if(StringUtils.isBlank(intentInfoVO.getWantShopArea())){ - intentInfoVO.setWantShopArea(userInfoVO.getWantShopArea()); - } - if(Objects.isNull(intentInfoVO.getAcceptAdjustType())){ - intentInfoVO.setAcceptAdjustType(userInfoVO.getAcceptAdjustType()); - } - return intentInfoVO; + intentInfoVO = convertPartnerIntentApplyInfoDOToVO(intentInfoDO); + }else { + intentInfoVO = new PartnerIntentInfoVO(); } - return null; + if(StringUtils.isBlank(intentInfoVO.getLiveArea())){ + intentInfoVO.setLiveArea(userInfoVO.getLiveArea()); + } + if(StringUtils.isBlank(intentInfoVO.getWantShopArea())){ + intentInfoVO.setWantShopArea(userInfoVO.getWantShopArea()); + } + if(Objects.isNull(intentInfoVO.getAcceptAdjustType())){ + intentInfoVO.setAcceptAdjustType(userInfoVO.getAcceptAdjustType()); + } + return intentInfoVO; } private void fillIntentInfo(HyPartnerIntentInfoDO intentInfoDO, PartnerIntentInfoRequest request) { From af199011b186956f28eb3d09c8870b948aaa51b1 Mon Sep 17 00:00:00 2001 From: pserimal Date: Sun, 25 Jun 2023 19:21:51 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E8=85=BE=E8=AE=AF=E9=9F=B3=E8=A7=86?= =?UTF-8?q?=E9=A2=91=E4=B8=8A=E4=BC=A0=E5=9B=9E=E8=B0=83=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8F=8A=E6=89=93=E5=BC=80=E9=AA=8C=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cool/store/config/TRTCCallbackFilter.java | 52 +++++++++---------- .../main/resources/application-ab.properties | 1 + .../main/resources/application-dev.properties | 1 + .../main/resources/application-hd.properties | 1 + .../resources/application-local.properties | 1 + .../resources/application-online.properties | 1 + .../main/resources/application-pre.properties | 1 + .../resources/application-test.properties | 1 + 8 files changed, 33 insertions(+), 26 deletions(-) diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/config/TRTCCallbackFilter.java b/coolstore-partner-webb/src/main/java/com/cool/store/config/TRTCCallbackFilter.java index a1a2c97d7..7e12371ec 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/config/TRTCCallbackFilter.java +++ b/coolstore-partner-webb/src/main/java/com/cool/store/config/TRTCCallbackFilter.java @@ -22,7 +22,7 @@ import java.util.stream.Collectors; @Slf4j public class TRTCCallbackFilter implements Filter { - @Value("${trtc.secretKey}") + @Value("${trtc.video.callback.secretKey:null}") private String secretkey; @Override @@ -31,31 +31,31 @@ public class TRTCCallbackFilter implements Filter { @Override public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { -// HttpServletRequest request = (HttpServletRequest) servletRequest; -// String uri = request.getRequestURI(); -// //不是腾讯云音视频回调请求 -// if (!uri.startsWith("/partner/pc/video")) { -// filterChain.doFilter(servletRequest, servletResponse); -// return; -// } -// if (!"POST".equals(request.getMethod())) { -// return; -// } -// String requestBody = request.getReader().lines().collect(Collectors.joining()); -// //回调的签名 -// String sign = request.getHeader("Sign"); -// //服务器端生成的签名 -// String newSign = ""; -// try { -// newSign = getResultSign(secretkey, requestBody); -// } catch (Exception e) { -// log.error("腾讯云音视频回调签名生成错误,e:\t{}", e.getMessage()); -// return; -// } -// if (StringUtil.isEmpty(sign) || !newSign.equals(sign)) { -// log.error("腾讯云音视频回调签名错误, sign:\t{}, newSign:\t{}", sign, newSign); -// return; -// } + HttpServletRequest request = (HttpServletRequest) servletRequest; + String uri = request.getRequestURI(); + //不是腾讯云音视频回调请求 + if (!uri.startsWith("/partner/pc/video")) { + filterChain.doFilter(servletRequest, servletResponse); + return; + } + if (!"POST".equals(request.getMethod())) { + return; + } + String requestBody = request.getReader().lines().collect(Collectors.joining()); + //回调的签名 + String sign = request.getHeader("Sign"); + //服务器端生成的签名 + String newSign = ""; + try { + newSign = getResultSign(secretkey, requestBody); + } catch (Exception e) { + log.error("腾讯云音视频回调签名生成错误,e:\t{}", e.getMessage()); + return; + } + if (StringUtil.isEmpty(sign) || !newSign.equals(sign)) { + log.error("腾讯云音视频回调签名错误, sign:\t{}, newSign:\t{}", sign, newSign); + return; + } filterChain.doFilter(servletRequest, servletResponse); } diff --git a/coolstore-partner-webb/src/main/resources/application-ab.properties b/coolstore-partner-webb/src/main/resources/application-ab.properties index 82013e2d1..0824c1f2a 100644 --- a/coolstore-partner-webb/src/main/resources/application-ab.properties +++ b/coolstore-partner-webb/src/main/resources/application-ab.properties @@ -55,6 +55,7 @@ cdn.url=https://testhsaypic.coolstore.cn #TRTC trtc.sdkAppId=1400811820 trtc.secretKey=4854bab106c2ca2a2fda16a8c966933e28a078a34e458999d6227e8cd8ab8219 +trtc.video.callback.secretKey=1ECEAD34DBD84E838BF07FC7360EA4D8 weixin.appId=wx6f984e535e571818 weixin.appSecret=245a483747e6e9f8762d3e8539cf0318 diff --git a/coolstore-partner-webb/src/main/resources/application-dev.properties b/coolstore-partner-webb/src/main/resources/application-dev.properties index 5f0639fd7..dfded31a0 100644 --- a/coolstore-partner-webb/src/main/resources/application-dev.properties +++ b/coolstore-partner-webb/src/main/resources/application-dev.properties @@ -52,6 +52,7 @@ corp.id = 171cddee76471740 #TRTC trtc.sdkAppId=1400811820 trtc.secretKey=4854bab106c2ca2a2fda16a8c966933e28a078a34e458999d6227e8cd8ab8219 +trtc.video.callback.secretKey=1ECEAD34DBD84E838BF07FC7360EA4D8 weixin.appId=wx6f984e535e571818 weixin.appSecret=245a483747e6e9f8762d3e8539cf0318 diff --git a/coolstore-partner-webb/src/main/resources/application-hd.properties b/coolstore-partner-webb/src/main/resources/application-hd.properties index 50f132839..68a52a3fb 100644 --- a/coolstore-partner-webb/src/main/resources/application-hd.properties +++ b/coolstore-partner-webb/src/main/resources/application-hd.properties @@ -52,6 +52,7 @@ corp.id = 171cddee76471740 #TRTC trtc.sdkAppId=1400811820 trtc.secretKey=4854bab106c2ca2a2fda16a8c966933e28a078a34e458999d6227e8cd8ab8219 +trtc.video.callback.secretKey=1ECEAD34DBD84E838BF07FC7360EA4D8 weixin.appId=wx6f984e535e571818 weixin.appSecret=245a483747e6e9f8762d3e8539cf0318 diff --git a/coolstore-partner-webb/src/main/resources/application-local.properties b/coolstore-partner-webb/src/main/resources/application-local.properties index 3dfc50671..fc6389d30 100644 --- a/coolstore-partner-webb/src/main/resources/application-local.properties +++ b/coolstore-partner-webb/src/main/resources/application-local.properties @@ -58,6 +58,7 @@ cdn.url=https://testhsaypic.coolstore.cn #TRTC trtc.sdkAppId=1400811820 trtc.secretKey=4854bab106c2ca2a2fda16a8c966933e28a078a34e458999d6227e8cd8ab8219 +trtc.video.callback.secretKey=1ECEAD34DBD84E838BF07FC7360EA4D8 weixin.appId=wx6f984e535e571818 weixin.appSecret=245a483747e6e9f8762d3e8539cf0318 diff --git a/coolstore-partner-webb/src/main/resources/application-online.properties b/coolstore-partner-webb/src/main/resources/application-online.properties index b055f644a..0880a6389 100644 --- a/coolstore-partner-webb/src/main/resources/application-online.properties +++ b/coolstore-partner-webb/src/main/resources/application-online.properties @@ -52,6 +52,7 @@ corp.id = 171cddee76471740 #TRTC trtc.sdkAppId=1400811820 trtc.secretKey=4854bab106c2ca2a2fda16a8c966933e28a078a34e458999d6227e8cd8ab8219 +trtc.video.callback.secretKey=1ECEAD34DBD84E838BF07FC7360EA4D8 weixin.appId=wx6f984e535e571818 weixin.appSecret=245a483747e6e9f8762d3e8539cf0318 diff --git a/coolstore-partner-webb/src/main/resources/application-pre.properties b/coolstore-partner-webb/src/main/resources/application-pre.properties index b055f644a..0880a6389 100644 --- a/coolstore-partner-webb/src/main/resources/application-pre.properties +++ b/coolstore-partner-webb/src/main/resources/application-pre.properties @@ -52,6 +52,7 @@ corp.id = 171cddee76471740 #TRTC trtc.sdkAppId=1400811820 trtc.secretKey=4854bab106c2ca2a2fda16a8c966933e28a078a34e458999d6227e8cd8ab8219 +trtc.video.callback.secretKey=1ECEAD34DBD84E838BF07FC7360EA4D8 weixin.appId=wx6f984e535e571818 weixin.appSecret=245a483747e6e9f8762d3e8539cf0318 diff --git a/coolstore-partner-webb/src/main/resources/application-test.properties b/coolstore-partner-webb/src/main/resources/application-test.properties index d8a746a27..ec9163915 100644 --- a/coolstore-partner-webb/src/main/resources/application-test.properties +++ b/coolstore-partner-webb/src/main/resources/application-test.properties @@ -52,6 +52,7 @@ corp.id = 171cddee76471740 #TRTC trtc.sdkAppId=1400811820 trtc.secretKey=4854bab106c2ca2a2fda16a8c966933e28a078a34e458999d6227e8cd8ab8219 +trtc.video.callback.secretKey=1ECEAD34DBD84E838BF07FC7360EA4D8 weixin.appId=wx6f984e535e571818 weixin.appSecret=245a483747e6e9f8762d3e8539cf0318 From 6a8b3df31aadfb3b3b580dc8b567e8abb2afde5c Mon Sep 17 00:00:00 2001 From: pserimal Date: Sun, 25 Jun 2023 19:23:13 +0800 Subject: [PATCH 3/7] =?UTF-8?q?800=E5=B9=B3=E5=8F=B0=E5=AE=A1=E6=A0=B8?= =?UTF-8?q?=E5=AE=8C=E6=88=90=E5=9B=9E=E8=B0=83=E6=8E=A5=E5=8F=A3=E5=9C=B0?= =?UTF-8?q?=E5=9D=80=E5=8A=A0=E5=85=A5=E7=99=BD=E5=90=8D=E5=8D=95=E4=B8=8D?= =?UTF-8?q?=E9=AA=8Ctoken?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/cool/store/config/TokenValidateFilter.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/config/TokenValidateFilter.java b/coolstore-partner-webb/src/main/java/com/cool/store/config/TokenValidateFilter.java index c27cd277c..c7d1d2c04 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/config/TokenValidateFilter.java +++ b/coolstore-partner-webb/src/main/java/com/cool/store/config/TokenValidateFilter.java @@ -46,7 +46,9 @@ public class TokenValidateFilter implements Filter { "/partner/pc/doc.html","/partner/pc/v2/api-docs","/**/test/**","/partner/pc/feiShuLogin","/partner/pc/oss/getUploadFileConfig", "/**/swagger*/**", "/**/webjars/**", //腾讯音视频回调,单独做验签 - "/partner/pc/video/**"); + "/partner/pc/video/**", + //TODO 800回调地址暂时不做验证 + "/qualificationReview/callback"); /** From 414b99e132dcb4dca116236430ab304b95f070c4 Mon Sep 17 00:00:00 2001 From: wxp01309236 Date: Sun, 25 Jun 2023 19:23:32 +0800 Subject: [PATCH 4/7] assignFollowUser --- .../cool/store/service/impl/HyPartnerLineInfoServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java index f6019ce89..8b30fdd28 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java @@ -435,7 +435,7 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { return Boolean.FALSE; } //如果是私海线索 不需要重新分配招商经理 或者跟进次数大于1 - if (HyPartnerLineInfo.getLineStatus()==1||CollectionUtils.isEmpty(lineFollowHistoryList)){ + if ((HyPartnerLineInfo != null && HyPartnerLineInfo.getLineStatus()==1) || CollectionUtils.isEmpty(lineFollowHistoryList)){ return Boolean.FALSE; } if(HyPartnerLineInfo == null){ From f270e1f4003e5e73802e90e80bc63112ed002a6b Mon Sep 17 00:00:00 2001 From: wxp01309236 Date: Sun, 25 Jun 2023 19:39:55 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cool/store/service/impl/HyPartnerLineInfoServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java index 8b30fdd28..2c7fa8730 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java @@ -434,7 +434,7 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { if (hyIntendDevelopementMappingDO==null){ return Boolean.FALSE; } - //如果是私海线索 不需要重新分配招商经理 或者跟进次数大于1 + //如果是私海线索 不需要重新分配招商经理 或者跟进次数大于等于1 if ((HyPartnerLineInfo != null && HyPartnerLineInfo.getLineStatus()==1) || CollectionUtils.isEmpty(lineFollowHistoryList)){ return Boolean.FALSE; } From 5606dd3e679c82bd54ddcf20361b340a54d66d8e Mon Sep 17 00:00:00 2001 From: wxp01309236 Date: Sun, 25 Jun 2023 19:41:54 +0800 Subject: [PATCH 6/7] assignFollowUser --- .../cool/store/service/impl/HyPartnerLineInfoServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java index 2c7fa8730..24ed5daf2 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java @@ -435,7 +435,7 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { return Boolean.FALSE; } //如果是私海线索 不需要重新分配招商经理 或者跟进次数大于等于1 - if ((HyPartnerLineInfo != null && HyPartnerLineInfo.getLineStatus()==1) || CollectionUtils.isEmpty(lineFollowHistoryList)){ + if ((HyPartnerLineInfo != null && HyPartnerLineInfo.getLineStatus()==1) || CollectionUtils.isNotEmpty(lineFollowHistoryList)){ return Boolean.FALSE; } if(HyPartnerLineInfo == null){ From 6ba879d09ce880b10eb48a16127cfc0f770e8a68 Mon Sep 17 00:00:00 2001 From: wxp01309236 Date: Sun, 25 Jun 2023 19:50:54 +0800 Subject: [PATCH 7/7] getSubmitIntentionApplyFlag --- .../java/com/cool/store/controller/PartnerController.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/coolstore-partner-webc/src/main/java/com/cool/store/controller/PartnerController.java b/coolstore-partner-webc/src/main/java/com/cool/store/controller/PartnerController.java index 784f6932e..7c6e9d064 100644 --- a/coolstore-partner-webc/src/main/java/com/cool/store/controller/PartnerController.java +++ b/coolstore-partner-webc/src/main/java/com/cool/store/controller/PartnerController.java @@ -61,7 +61,10 @@ public class PartnerController { public ResponseResult getSubmitIntentionApplyFlag(){ PartnerUserInfoVO userInfoVO = PartnerUserHolder.getUser(); PartnerBaseInfoVO partnerBaseInfoVO = hyPartnerBaseInfoService.queryPartnerBaseInfo(userInfoVO.getPartnerId(), userInfoVO.getPartnerLineId()); - Boolean submitFlag = partnerBaseInfoVO.getStatus() > Integer.valueOf(WorkflowStatusEnum.INTENT_0.getCode()); + Boolean submitFlag = false; + if(partnerBaseInfoVO.getStatus() != null){ + submitFlag = partnerBaseInfoVO.getStatus() > Integer.valueOf(WorkflowStatusEnum.INTENT_0.getCode()); + } return ResponseResult.success(submitFlag); }