diff --git a/src/main/java/cn/com/tenlion/operator/controller/route/systemuser/SystemUserRouteController.java b/src/main/java/cn/com/tenlion/operator/controller/route/systemuser/SystemUserRouteController.java index fda7074..a832693 100644 --- a/src/main/java/cn/com/tenlion/operator/controller/route/systemuser/SystemUserRouteController.java +++ b/src/main/java/cn/com/tenlion/operator/controller/route/systemuser/SystemUserRouteController.java @@ -90,8 +90,11 @@ public class SystemUserRouteController extends DefaultBaseController { ModelAndView mv = new ModelAndView(); Map pageParams = oAuthService.getPageParams(request); pageParams.put("loginPhoneAction", "oauth/phone"); - pageParams.put("wxAppid", wxOauth2Properties.getAppid()); - pageParams.put("wxRedirectUri", wxOauth2Properties.getRedirectUri()); + pageParams.put("wxOauth", wxOauth2Properties.getActivate() ? ISystemConstant.IS_TRUE : ISystemConstant.IS_FALSE); + if (wxOauth2Properties.getActivate()) { + pageParams.put("wxAppid", wxOauth2Properties.getAppid()); + pageParams.put("wxRedirectUri", wxOauth2Properties.getRedirectUri()); + } mv.addObject(IUserCenterConst.PAGE_PARAMS, pageParams); mv.addObject(IUserCenterConst.CUSTOM_LOGIN_FORM, loginFormService.getActive()); mv.addObject("HomeServerUrl", ProjectConfigUtil.getText("HomeServerUrl")); diff --git a/src/main/java/cn/com/tenlion/operator/properties/WxMiniappProperties.java b/src/main/java/cn/com/tenlion/operator/properties/WxMiniappProperties.java index 88ef0ee..c8ccd1e 100644 --- a/src/main/java/cn/com/tenlion/operator/properties/WxMiniappProperties.java +++ b/src/main/java/cn/com/tenlion/operator/properties/WxMiniappProperties.java @@ -7,9 +7,18 @@ import org.springframework.stereotype.Component; @ConfigurationProperties(prefix = "wx-miniapp") public class WxMiniappProperties { + private Boolean activate; private String appid; private String appsecret; + public Boolean getActivate() { + return !(activate == null) && activate; + } + + public void setActivate(Boolean activate) { + this.activate = activate; + } + public String getAppid() { return appid == null ? "" : appid.trim(); } diff --git a/src/main/java/cn/com/tenlion/operator/properties/WxOauth2Properties.java b/src/main/java/cn/com/tenlion/operator/properties/WxOauth2Properties.java index 5d5cd2e..484aeab 100644 --- a/src/main/java/cn/com/tenlion/operator/properties/WxOauth2Properties.java +++ b/src/main/java/cn/com/tenlion/operator/properties/WxOauth2Properties.java @@ -7,10 +7,18 @@ import org.springframework.stereotype.Component; @ConfigurationProperties(prefix = "wx-oauth2") public class WxOauth2Properties { + private Boolean activate; private String appid; private String appsecret; private String redirectUri; + public Boolean getActivate() { + return !(activate == null) && activate; + } + + public void setActivate(Boolean activate) { + this.activate = activate; + } public String getAppid() { return appid == null ? "" : appid.trim(); diff --git a/src/main/java/cn/com/tenlion/operator/service/user/wx/UserWxMiniappService.java b/src/main/java/cn/com/tenlion/operator/service/user/wx/UserWxMiniappService.java index 4c5dd60..d688d78 100644 --- a/src/main/java/cn/com/tenlion/operator/service/user/wx/UserWxMiniappService.java +++ b/src/main/java/cn/com/tenlion/operator/service/user/wx/UserWxMiniappService.java @@ -63,6 +63,10 @@ public class UserWxMiniappService { */ @PostConstruct public void refreshAccessToken() { + if(!wxMiniappProperties.getActivate()) { + LOG.debug("小程序未激活"); + return; + } long currentTimeMillis = System.currentTimeMillis(); if (miniappAccessToken != null && (currentTimeMillis - miniappAccessToken.getUpdateTime() < 5400000)) { LOG.debug("小程序 access_token 不需要刷新, 刷新时间: {}", LocalDateTime.fromDateFields(new Date(miniappAccessToken.getUpdateTime() + 5400000))); diff --git a/src/main/java/cn/com/tenlion/operator/util/pay/AliPayProperties.java b/src/main/java/cn/com/tenlion/operator/util/pay/AliPayProperties.java index d3ff0ec..736f4fc 100644 --- a/src/main/java/cn/com/tenlion/operator/util/pay/AliPayProperties.java +++ b/src/main/java/cn/com/tenlion/operator/util/pay/AliPayProperties.java @@ -11,7 +11,7 @@ import org.springframework.context.annotation.Configuration; @Configuration @ConfigurationProperties(prefix = "pay.ali-pay") public class AliPayProperties { - + private Boolean activate; // 应用ID private String appId; @@ -36,6 +36,14 @@ public class AliPayProperties { // 单笔最小金额 private Double minMoney; + public Boolean getActivate() { + return !(activate == null) && activate; + } + + public void setActivate(Boolean activate) { + this.activate = activate; + } + public String getAppId() { return appId == null ? "" : appId.trim(); } diff --git a/src/main/java/cn/com/tenlion/operator/util/pay/WxPayProperties.java b/src/main/java/cn/com/tenlion/operator/util/pay/WxPayProperties.java index 831eca1..5d202d8 100644 --- a/src/main/java/cn/com/tenlion/operator/util/pay/WxPayProperties.java +++ b/src/main/java/cn/com/tenlion/operator/util/pay/WxPayProperties.java @@ -11,7 +11,7 @@ import org.springframework.context.annotation.Configuration; @Configuration @ConfigurationProperties(prefix = "pay.wx-pay") public class WxPayProperties { - + private Boolean activate; // 商户号 private String mchId; @@ -70,6 +70,14 @@ public class WxPayProperties { return service; } + public Boolean getActivate() { + return !(activate == null) && activate; + } + + public void setActivate(Boolean activate) { + this.activate = activate; + } + public String getMchId() { return mchId == null ? "" : mchId.trim(); } diff --git a/src/main/java/cn/com/tenlion/operator/util/task/WxPayResultCheckTask.java b/src/main/java/cn/com/tenlion/operator/util/task/WxPayResultCheckTask.java index 4332ecc..b86b1ac 100644 --- a/src/main/java/cn/com/tenlion/operator/util/task/WxPayResultCheckTask.java +++ b/src/main/java/cn/com/tenlion/operator/util/task/WxPayResultCheckTask.java @@ -6,10 +6,7 @@ import cn.com.tenlion.operator.pojo.dtos.accountrecharge.AccountRechargeDTO; import cn.com.tenlion.operator.pojo.dtos.accountrecharge.AccountRechargePayResultDTO; import cn.com.tenlion.operator.pojo.pos.accountrecharge.AccountRechargePO; import cn.com.tenlion.operator.service.accountrecharge.IAccountRechargeService; -import cn.com.tenlion.operator.util.pay.ALiPay; -import cn.com.tenlion.operator.util.pay.PayResultDTO; -import cn.com.tenlion.operator.util.pay.PayUtil; -import cn.com.tenlion.operator.util.pay.WXPay; +import cn.com.tenlion.operator.util.pay.*; import ink.wgink.interfaces.consts.ISystemConstant; import org.apache.commons.lang3.StringUtils; import org.quartz.DisallowConcurrentExecution; @@ -31,9 +28,14 @@ public class WxPayResultCheckTask { private static final Logger LOG = LoggerFactory.getLogger(WxPayResultCheckTask.class); @Autowired private IAccountRechargeService iAccountRechargeService; + @Autowired + private AliPayProperties aliPayProperties; + @Autowired + private WxPayProperties wxPayProperties; private static IAccountRechargeService iAccountRechargeStaticService; + @PostConstruct public void init() throws Exception { iAccountRechargeStaticService = this.iAccountRechargeService; @@ -90,7 +92,7 @@ public class WxPayResultCheckTask { accountRechargePOS.forEach(po -> { LocalDateTime now = LocalDateTime.now(); LocalDateTime gmtCreateDateTime = LocalDateTime.parse(po.getGmtCreate(), DateTimeFormatter.ofPattern(ISystemConstant.DATE_FORMATTER_YYYY_MM_DD_HH_MM_SS)); - if (StringUtils.equals(po.getThirdParty(), ThirdPartyEnum.WX.getValue())) { + if (StringUtils.equals(po.getThirdParty(), ThirdPartyEnum.WX.getValue()) && wxPayProperties.getActivate()) { PayResultDTO payResultDTO = WXPay.queryPay(po.getAccountRechargeId()); // 成功 if (payResultDTO.getOrderStatus().equals("1") && payResultDTO.getMoney().equals(PayUtil.buiderMoney(po.getRechargeMoney()))) { @@ -100,7 +102,7 @@ public class WxPayResultCheckTask { iAccountRechargeStaticService.updateClose(po.getAccountRechargeId()); } } - } else if (StringUtils.equals(po.getThirdParty(), ThirdPartyEnum.ZFB.getValue())) { + } else if (StringUtils.equals(po.getThirdParty(), ThirdPartyEnum.ZFB.getValue()) && aliPayProperties.getActivate()) { PayResultDTO payResultDTO = ALiPay.queryPay(po.getAccountRechargeId()); // 成功 if (payResultDTO.getOrderStatus().equals("1") && diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index e21bd28..6ff182a 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -160,6 +160,7 @@ sms: pay: wx-pay: + activate: false # 商户号 mch-id: 1609461201 # 商户API证书序列号 @@ -181,6 +182,7 @@ pay: # 单笔最小金额 min-money: 0.01 ali-pay: + activate: false # 应用ID # 西藏 app-id: 2021004137636507 app-id: 2021004138650351 @@ -205,9 +207,11 @@ app-token: has-role: true wx-miniapp: + activate: false appid: wxe17874894f7ff27b appsecret: 0c2b1371e4fb32514030233da4ef094d wx-oauth2: + activate: false appid: wxb6296ee6223aafa0 appsecret: 09c423893098cd5566aead093ea5c25c # redirect-uri: https://www.aimzhu.com/operator/oauth/wx/qrcode diff --git a/src/main/resources/templates/systemuser/login.html b/src/main/resources/templates/systemuser/login.html index 9b5f576..a7266ef 100644 --- a/src/main/resources/templates/systemuser/login.html +++ b/src/main/resources/templates/systemuser/login.html @@ -185,7 +185,7 @@