后台协议添加,快递鸟相关常数,正式服务器相关参数改动,快递鸟相关接口,苹果相关cid配置,改变提示,登录接口改为post请求,微信跳转连接

This commit is contained in:
liuyingfang
2023-05-22 16:34:08 +08:00
parent 329aafb487
commit 01335276c7
26 changed files with 210 additions and 41 deletions

View File

@@ -75,6 +75,9 @@ public class PushController {
String uid = userApp.getUserId().toString();
String cid = param.get("cid").toString();
if (cid.isEmpty()){
return ResultGenerator.genSuccessResult();
}
String deviceType = httpServletRequest.getHeader("type");
@@ -142,6 +145,9 @@ public class PushController {
String uid = userApp.getUserId().toString();
String cid = param.get("cid").toString();
if (cid.isEmpty()){
return ResultGenerator.genSuccessResult();
}
String deviceType = httpServletRequest.getHeader("type");
String token = "";

View File

@@ -229,6 +229,17 @@ public class UserInfoController {
return ResultGenerator.genSuccessResult();
}
/**
* 新版登录
* @param userInfo
* @return
*/
@PostMapping("/login")
public Result<Map<String, Object>> detail(@RequestBody UserInfo userInfo) {
Map<String, Object> login = userInfoNewService.login(userInfo.getLoginName(), userInfo.getPassword());
return ResultGenerator.genSuccessResult(login);
}
@GetMapping("/{loginName}/{password}")
@ApiOperation(tags = {"页面-登录", "页面-切换商户"}, value = "登录", notes = "登录接口", httpMethod = "GET")
@ApiImplicitParams({
@@ -265,6 +276,19 @@ public class UserInfoController {
return ResultGenerator.genSuccessResult("保存安全密码成功", null);
}
@PostMapping("/checkPayPassword")
public Result<Object> checkPayPassword(@RequestBody UserInfo userInfo){
if (userInfo.getId() == null){
return ResultGenerator.genFailResult("无ID");
}
UserInfo payPassword = userInfoNewService.queryUserInfo(userInfo);
if (payPassword.getPayPassword() == null){
return ResultGenerator.genSuccessResult("无支付密码","0");
}else {
return ResultGenerator.genSuccessResult("ok","1");
}
}
@PostMapping("/verifyPayPassword")
public Result<Object> verifyPayPassword(@RequestBody Map<String, Object> param) {
String payPassword = param.get("payPassword").toString();

View File

@@ -3,6 +3,7 @@ package cn.pluss.platform.controller.store;
import cn.pluss.platform.api.Result;
import cn.pluss.platform.api.ResultGenerator;
import cn.pluss.platform.device.MercOrderDetailService;
import cn.pluss.platform.device.MercOrderExpressService;
import cn.pluss.platform.dto.MercOrderDetailDTO;
import cn.pluss.platform.entity.MercOrderDetail;
import cn.pluss.platform.vo.MercOrderExpressVO;
@@ -26,6 +27,8 @@ public class MercOrderDetailController {
@Resource
private MercOrderDetailService modService;
@Resource
private MercOrderExpressService mercOrderExpressService;
/**
* 订单分页查询接口
@@ -114,6 +117,18 @@ public class MercOrderDetailController {
String msg = express == null ? "暂无物流信息" : "获取成功";
return ResultGenerator.genSuccessResult(msg,express);
}
/**
* 查看物流信息(快递鸟)
*/
@GetMapping("/logistic")
public Result<Object> logistic(@RequestParam String expressNo)throws Exception{
JSONObject expressInfo = mercOrderExpressService.getExpressInfo(expressNo);
if (expressInfo.isEmpty()){
return ResultGenerator.genFailResult("无法查询快递信息");
}else {
return ResultGenerator.genSuccessResult(expressInfo);
}
}
/**
* 申请退款

View File

@@ -66,6 +66,7 @@ public class TokenRegistryInterceptor extends HandlerInterceptorAdapter {
limitUri.add("/api/deviceGoods/deviceDetail/");
limitUri.add("/api/questionsAnswers");
limitUri.add("/api/helpVideo");
limitUri.add("/api/systemConfig/updateSystemVersion");
boolean passFlag = limitUri.stream().anyMatch(s -> s.equals(requestUri) || requestUri.startsWith(s));
if (passFlag) {
return true;

View File

@@ -1,14 +1,14 @@
spring:
datasource:
url: jdbc:mysql://60.205.224.68:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
username: root
password: CZGmysqlroot@123
driver-class-name: com.mysql.jdbc.Driver
# datasource:
# url: jdbc:mysql://rm-bp19ib8x213kh9t450o.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
# username: root
# password: prodCZGmysqlroot@123
# driver-class-name: com.mysql.jdbc.Driver
# url: jdbc:mysql://60.205.224.68:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
# username: root
# password: CZGmysqlroot@123
# driver-class-name: com.mysql.jdbc.Driver
datasource:
url: jdbc:mysql://rm-bp19ib8x213kh9t450o.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
username: root
password: prodCZGmysqlroot@123
driver-class-name: com.mysql.jdbc.Driver
parameter:
### 这个根据自己的情况配置
domain: https://ky.sxczgkj.cn

View File

@@ -1,10 +1,14 @@
spring:
# datasource:
# url: jdbc:mysql://rm-bp19ib8x213kh9t45.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
# username: root
# password: prodCZGmysqlroot@123
# driver-class-name: com.mysql.jdbc.Driver
datasource:
url: jdbc:mysql://rm-bp19ib8x213kh9t45.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
url: jdbc:mysql://rm-bp19ib8x213kh9t450o.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
username: root
password: prodCZGmysqlroot@123
driver-class-name: com.mysql.jdbc.Driver
parameter:
### 这个根据自己的情况配置
domain: https://ky.sxczgkj.cn

View File

@@ -276,6 +276,14 @@ public class ParameterConfig {
@Value("${parameter.SJ_APPSECRET}")
public String SJ_APPSECRET;
/**
* 快递相关(快递鸟)
*/
@Value("${express.USERID}")
public String USERID;
@Value("${express.APIKEY}")
public String APIKEY;
@PostConstruct
public void init() {
ParametersUtil.upload_save_path = upload_save_path;
@@ -322,6 +330,8 @@ public class ParameterConfig {
ParametersUtil.LESHUA_API=LESHUA_API;
ParametersUtil.SJ_APPID = SJ_APPID;
ParametersUtil.SJ_APPSECRET = SJ_APPSECRET;
ParametersUtil.USERID = USERID;
ParametersUtil.APIKEY = APIKEY;
SxfConfg.init(sxfDomain, publicKey, orgId);

View File

@@ -39,7 +39,7 @@ public class MobV2PushUtilIOS {
public static final String appKey = "QwyHsKpc0I9BQMk9Xysx74";
public static final String appId = "yuBG87yWEt6SXrwBSSvjy1 ";
public static final String masterSecret = "QwyHsKpc0I9BQMk9Xysx74";
public static final String masterSecret = "PpidsIbMSs7EQddDMHAh81";
public String getToken() throws IOException, NoSuchAlgorithmException {

View File

@@ -199,5 +199,11 @@ public class ParametersUtil {
* @date: 2021/9/23 10:27
*/
public static String SJ_APPSECRET;
/**
* 快递相关(快递鸟)
*/
public static String USERID;
public static String APIKEY;
}

View File

@@ -103,7 +103,7 @@ parameter:
APPLETS_APPID: wxc2bb94c0ddda1032
#小程序密钥
APPLETS_SECRET: 625cbce8772629312e42e8278a8d6889
APPSECRET: 4e00bbf3fc75a1ff68ce866fd13f2bcc
APPSECRET: 8492a7e8d55bbb1b57f5c8276ea1add0
# b84ee0efaa0d9a649746ac65525f8e10
#IOS端公众号
APPID_IOS: wx212769170d2c6b2a
@@ -156,3 +156,11 @@ sxf:
getui:
domain: https://restapi.getui.com/v2/${getui.appId}
appId: jzSkfM0Wsk8uSDL2zwGu07
#快递(快递鸟)
express:
USERID: 1778214
APIKEY: 63e75d64-e8fd-4dcc-93fa-17dc710cdf04

View File

@@ -1,16 +1,16 @@
spring:
datasource:
druid:
url: jdbc:mysql://60.205.224.68:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8&noAccessToProcedureBodies=true&allowMultiQueries=true
username: root
password: CZGmysqlroot@123
driver-class-name: com.mysql.jdbc.Driver
# datasource:
# druid:
# url: jdbc:mysql://rm-bp19ib8x213kh9t450o.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
# url: jdbc:mysql://60.205.224.68:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8&noAccessToProcedureBodies=true&allowMultiQueries=true
# username: root
# password: prodCZGmysqlroot@123
# password: CZGmysqlroot@123
# driver-class-name: com.mysql.jdbc.Driver
datasource:
druid:
url: jdbc:mysql://rm-bp19ib8x213kh9t450o.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
username: root
password: prodCZGmysqlroot@123
driver-class-name: com.mysql.jdbc.Driver
logging:
config: classpath:log4j2-dev.xml

View File

@@ -1,10 +1,16 @@
spring:
# datasource:
# druid:
# url: jdbc:mysql://rm-bp19ib8x213kh9t45.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8&noAccessToProcedureBodies=true&allowMultiQueries=true
# username: root
# password: prodCZGmysqlroot@123
# driver-class-name: com.mysql.jdbc.Driver
datasource:
druid:
url: jdbc:mysql://rm-bp19ib8x213kh9t45.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8&noAccessToProcedureBodies=true&allowMultiQueries=true
username: root
password: prodCZGmysqlroot@123
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://rm-bp19ib8x213kh9t450o.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
username: root
password: prodCZGmysqlroot@123
driver-class-name: com.mysql.jdbc.Driver
scheduling:
enabled: true

View File

@@ -44,7 +44,8 @@
<option value="3" <c:if test="${agreement.discern == 3}">selected</c:if>>隐私协议</option>
<option value="5" <c:if test="${agreement.discern == 5}">selected</c:if>>应用权限说明</option>
<option value="6" <c:if test="${agreement.discern == 6}">selected</c:if>>第三方SDK说明</option>
</select>
<option value="7" <c:if test="${agreement.discern == 7}">selected</c:if>>会员协议</option>
</select>
</div>
</div>
</div>

View File

@@ -88,6 +88,7 @@ public class MerChantOrderDTO {
private MerchantMemberCode mercMenberCode;
private String MercOrderNo;
/**
* 参数转换

View File

@@ -225,6 +225,8 @@ public class MerchantOrder {
*/
private BigDecimal mercFee;
private String thirdSendNo;
/**
* 节约金额
*/

View File

@@ -13,8 +13,9 @@ import lombok.Getter;
@AllArgsConstructor
public enum LogisticProvider {
YTO("YTO","圆通快递");
YTO("YTO","圆通快递"),
STO("STO", "申通快递"),
HTKY("HTKY", "百世快递");
private String code;
private String desc;

View File

@@ -1,6 +1,7 @@
package cn.pluss.platform.device;
import cn.pluss.platform.entity.MercOrderExpress;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.IService;
public interface MercOrderExpressService extends IService<MercOrderExpress> {
@@ -8,4 +9,6 @@ public interface MercOrderExpressService extends IService<MercOrderExpress> {
MercOrderExpress getByLogistNo(String logistNo);
MercOrderExpress getByExpressNo(String expressNo);
JSONObject getExpressInfo(String expressNo) throws Exception;
}

View File

@@ -2,14 +2,26 @@ package cn.pluss.platform.device.impl;
import cn.pluss.platform.device.MercOrderExpressService;
import cn.pluss.platform.entity.MercOrderExpress;
import cn.pluss.platform.enums.LogisticProvider;
import cn.pluss.platform.exception.MsgException;
import cn.pluss.platform.mapper.MercOrderExpressMapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import cn.pluss.platform.util.*;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.util.Base64;
import java.util.HashMap;
import java.util.Map;
@Slf4j
@Service
public class MercOrderExpressServiceImpl extends ServiceImpl<MercOrderExpressMapper, MercOrderExpress> implements MercOrderExpressService {
public static final String CHECK_Express = "https://api.kdniao.com/Ebusiness/EbusinessOrderHandle.aspx";
/**
* 根据上送物流单号查询商户单号
* @param logistNo
@@ -24,4 +36,57 @@ public class MercOrderExpressServiceImpl extends ServiceImpl<MercOrderExpressMap
public MercOrderExpress getByExpressNo(String expressNo) {
return baseMapper.getByExpressNo(expressNo);
}
@Override
public JSONObject getExpressInfo(String expressNo) throws Exception {
if (expressNo.isEmpty()){
throw new MsgException("暂无相应的快递单号");
}
JSONObject reqData = new JSONObject();
String subThree = expressNo.substring(0, 3);
if ("268".equals(subThree) || "368".equals(subThree) || "468".equals(subThree)|| "334".equals(subThree)
|| "888".equals(subThree) || "77".equals(expressNo.substring(0,2))){
reqData.put("ShipperCode", LogisticProvider.STO.getCode());
} else if ("YT".equals(expressNo.substring(0,2))){
reqData.put("ShipperCode", LogisticProvider.YTO.getCode());
} else if ("55".equals(expressNo.substring(0,2))){
reqData.put("ShipperCode", LogisticProvider.HTKY.getCode());
}else {
return new JSONObject();
}
reqData.put("LogisticCode", expressNo);
JSONObject jsonObject = reqJsonData(reqData);
if (!(Boolean) jsonObject.get("Success")){
log.info("快递查询错误===========>",jsonObject.get("Reason"));
throw new MsgException("快递查询失败");
}
return jsonObject;
}
public JSONObject reqJsonData(JSONObject requestData)throws Exception{
Map<String, Object> hashMap = new HashMap<>(16);
hashMap.put("RequestData", requestData);
hashMap.put("EBusinessID", ParametersUtil.USERID);
hashMap.put("RequestType", "1002");
hashMap.put("DataSign", dataSign(requestData));
hashMap.put("DataType", "2");
HttpResult httpResult = HttpUtil.doPost(CHECK_Express, hashMap);
JSONObject jsonObject = JSON.parseObject(httpResult.getBody());
return jsonObject;
}
private String dataSign(JSONObject requestData)throws Exception{
String sign = requestData.toString()+ParametersUtil.APIKEY;
//首先再进行MD5
String lowerMD5 = MD5Util.md5(sign).toLowerCase();
//然后再进行Base64
final byte[] lowerMD5Bytes = lowerMD5.getBytes(StandardCharsets.UTF_8);
String base64= Base64.getEncoder().encodeToString(lowerMD5Bytes);
//再进行base64URL编码
return URLEncoder.encode(base64, "UTF-8");
}
}

View File

@@ -101,4 +101,6 @@ public interface DeviceStockService extends IService<DeviceStock> {
void bindDevcieV2(DeviceStockDTO dto);
DeviceStock checkBind(String sn);
DeviceStock getDeviceBySnNo(String sn);
}

View File

@@ -399,6 +399,14 @@ public class DeviceStockServiceImpl extends ServiceImpl<DeviceStockMapper, Devic
return deviceBySnNo;
}
@Override
public DeviceStock getDeviceBySnNo(String sn) {
MsgException.checkBlank(sn,"缺失设备SN号");
DeviceStock deviceBySnNo = baseMapper.getDeviceBySnNo(sn);
MsgException.checkBlank(deviceBySnNo.getActMercId(),"未绑定扫码pos");
return deviceBySnNo;
}
@Override
public <E extends IPage<DeviceStock>> E page(E page, Wrapper<DeviceStock> queryWrapper) {
DeviceStock deviceStock = queryWrapper.getEntity();

View File

@@ -7,6 +7,7 @@ import cn.pluss.platform.entity.*;
import cn.pluss.platform.exception.MsgException;
import cn.pluss.platform.mapper.MerchantMenberMapper;
import cn.pluss.platform.mapper.PhoneValidateCodeMapper;
import cn.pluss.platform.merchant.MerchantBaseInfoService;
import cn.pluss.platform.merchantMenber.MerchantMenberService;
import cn.pluss.platform.merchantStore.MerchantStoreService;
import cn.pluss.platform.userApp.UserAppService;
@@ -51,6 +52,8 @@ public class MerchantMenberServiceImpl extends ServiceImpl<MerchantMenberMapper,
@Resource
private WxCommonService wxCommonService;
@Resource
private MerchantBaseInfoService merchantBaseInfoService;
private final String default_avatar = "https://syb-resource.oss-cn-hangzhou.aliyuncs.com/微信图片_20210408103257.png?versionId=CAEQKxiBgMCllMC9xRciIDMyZDA3Y2IzNGU5YjQ5ODk5NTlhOGI5MWJjZGNhNTYw";
@@ -366,10 +369,12 @@ public class MerchantMenberServiceImpl extends ServiceImpl<MerchantMenberMapper,
@Override
public void sendMenberBalanceChangeNotice(MerchantMenber menber, Double amt, String type) {
MerchantStore store = merchantStoreService.getStoreByMerchantCode(menber.getMerchantCode());
MerchantBaseInfo merchantBaseInfo = new MerchantBaseInfo();
merchantBaseInfo = merchantBaseInfoService.getMerchantBaseInfoByMerchantCode(menber.getMerchantCode());
if(store != null && StringUtil.isNotEmpty(menber.getOpenid())){
JSONObject miniprogram = new JSONObject();
miniprogram.put("appid", ParametersUtil.APPLETS_APPID);
miniprogram.put("pagepath","yb_o2ov2/vip/my-vip?storeId="+store.getId()+"&phone="+menber.getPhone());
miniprogram.put("pagepath","yb_o2ov2/vip/order_record?syb_m_id="+merchantBaseInfo.getId()+"&phone="+menber.getPhone()+"&memberCode"+menber.getMemberCode());
String first = "您的【"+store.getStoreName()+"】会员卡:"+menber.getCardNo()+"资金有变动啦,请注意查收!";
String remark = "如对此会员卡余额变动有疑问,可以点此进入小程序中查看!";

View File

@@ -123,7 +123,7 @@ public class RyxPayServiceimpl implements RyxPayService {
if(!RyxConfig.PAY_SUCCESS_CODE.equals(respCode)){
result.put("code",ResultCode.FAIL.code());
if(respMsg.contains("商户需补齐相关资料")){
result.put("msg","D1次日到账商户未在快银收银APP-商户认证-微信认证内完成授权,暂时无法微信收款");
result.put("msg","D0实时到账商户未在快银收银APP-商户认证-微信认证(支付宝认证)内完成授权,暂时无法收款");
}
return result;
}

View File

@@ -160,7 +160,7 @@ public class SxfPayServiceImpl implements SxfPayService {
if (respData.get("bizMsg").toString().contains("使用微信支付")) {
result.put("msg", "云闪付/京东支付失败:同一支付通道下一张身份证最多注册一个小微商户");
} else if (respData.get("bizMsg").toString().contains("商户需补齐相关资料") || respData.get("bizMsg").toString().contains("微信实名认证")) {
result.put("msg", "D1次日到账商户未在快银收银APP-商户认证-微信认证内完成授权,暂时无法微信收款");
result.put("msg", "D0实时到账商户未在快银收银APP-商户认证-微信认证(支付宝认证)内完成授权,暂时无法收款");
} else {
result.put("msg", respData.get("bizMsg"));
}

View File

@@ -208,7 +208,7 @@ public class YsPayOldServiceImpl extends YsPayServiceImpl{
String sub_code = respData.getString("sub_code");
String sub_msg = respData.getString("sub_msg");
if("4335".equals(sub_code) && StringUtil.isNotEmpty(sub_msg) && sub_msg.contains("商户需补齐相关资料")){
MsgException.throwException("D0实时到账商户未在快银收银APP-商户认证-微信认证内完成授权,暂时无法收款");
MsgException.throwException("D0实时到账商户未在快银收银APP-商户认证-微信认证(支付宝认证)内完成授权,暂时无法收款");
}else if("4335".equals(sub_code) && StringUtil.isNotEmpty(sub_msg) && sub_msg.contains("金额超限")){
MsgException.throwException("单笔交易金额超限");
}else{

View File

@@ -407,20 +407,21 @@ public class WechantController {
}
merchantMenberService.updateMerchantMenber(merchantMenber);
try {
MerchantStore store = merchantStoreService.getStoreByMerchantCode(merchantMenber.getMerchantCode());
// MerchantBaseInfo merchantBaseInfo = new MerchantBaseInfo();
// merchantBaseInfo = merchantBaseInfoService.queryMerchantBaseInfo(queryMerchantBaseInfo);
// MerchantStore store = merchantStoreService.getStoreByMerchantCode(merchantMenber.getMerchantCode());
MerchantBaseInfo merchantBaseInfo = new MerchantBaseInfo();
merchantBaseInfo = merchantBaseInfoService.getMerchantBaseInfoByMerchantCode(merchantMenber.getMerchantCode());
JSONObject miniprogram = new JSONObject();
miniprogram.put("appid",ParametersUtil.APPLETS_APPID);
miniprogram.put("pagepath","yb_o2ov2/vip/my-vip?syb_m_id="+store.getId()+"&phone="+merchantMenber.getPhone());
miniprogram.put("pagepath","yb_o2ov2/vip/my-vip?syb_m_id="+merchantBaseInfo.getId()+"&phone="+merchantMenber.getPhone()+
"&memberCode"+merchantMenber.getMemberCode());
String first = "恭喜您成为本店会员,祝你生活愉快!";
String remark = "如对此卡有疑问或查询会员更多优惠信息,可以点此进入小程序中查看!";
double usableRechargeFee = merchantMenber.getUsableRechargeFee() == null ? 0 : StringUtil.bigDecimal(merchantMenber.getUsableRechargeFee());
double usableGiveFee = merchantMenber.getUsableGiveFee() == null ? 0 : StringUtil.bigDecimal(merchantMenber.getUsableGiveFee());
String useFee = BigDecimal.valueOf(usableRechargeFee + usableGiveFee).setScale(2,BigDecimal.ROUND_HALF_DOWN).toString();
String[] array = {store.getStoreName(), merchantMenber.getMemberName(), merchantMenber.getPhone(), new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())};
String[] array = {merchantBaseInfo.getAlias(), merchantMenber.getMemberName(), merchantMenber.getPhone(), new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())};
//TODO 后面小程序同步后加miniprogram
WxTemolateRequest tempRequest = new WxTemolateRequest(openId,WxConstants.VIP_CARD_SUCCESS_TEMPLATE_ID,null, null)
WxTemolateRequest tempRequest = new WxTemolateRequest(openId,WxConstants.VIP_CARD_SUCCESS_TEMPLATE_ID,null, miniprogram)
.buildData(first,remark,array);
//发送开卡成功消息模板
wxCommonService.sendTemplateMsg(tempRequest,tokenRequest);

View File

@@ -1,7 +1,7 @@
spring:
datasource:
druid:
url: jdbc:mysql://rm-bp19ib8x213kh9t45.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
url: jdbc:mysql://rm-bp19ib8x213kh9t450o.rwlb.rds.aliyuncs.com:3306/chaozhanggui?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8
username: root
password: prodCZGmysqlroot@123
driver-class-name: com.mysql.jdbc.Driver