This commit is contained in:
Lemon
2023-08-23 15:36:14 +08:00
parent f70a26e714
commit 930486c5ff
8 changed files with 84 additions and 18 deletions

View File

@@ -11,6 +11,7 @@ import com.jsowell.common.exception.BusinessException;
import com.jsowell.common.response.RestApiResponse;
import com.jsowell.common.util.StringUtils;
import com.jsowell.pile.dto.*;
import com.jsowell.pile.service.IMemberBasicInfoService;
import com.jsowell.pile.vo.base.StationInfoVO;
import com.jsowell.pile.vo.uniapp.OrderVO;
import com.jsowell.pile.vo.uniapp.UniAppOrderDetailVO;
@@ -43,6 +44,9 @@ public class OrderController extends BaseController {
@Autowired
private WxAppletRemoteService wxAppletRemoteService;
@Autowired
private IMemberBasicInfoService memberBasicInfoService;
/**
* 生成订单
* http://localhost:8080/uniapp/order/generateOrder
@@ -234,10 +238,12 @@ public class OrderController extends BaseController {
* @return
*/
@PostMapping("/uniAppStartChargingSendMsg")
public RestApiResponse<?> uniAppStartChargingSendMsg(@RequestBody WechatSendMsgDTO dto) {
public RestApiResponse<?> uniAppStartChargingSendMsg(HttpServletRequest request, @RequestBody WechatSendMsgDTO dto) {
logger.info("微信小程序发送启动充电推送消息 param:{}", JSONObject.toJSONString(dto));
RestApiResponse<?> response = null;
try {
String memberId = getMemberIdByAuthorization(request);
dto.setMemberId(memberId);
Map<String, String> resultMap = wxAppletRemoteService.startChargingSendMsg(dto);
response = new RestApiResponse<>(resultMap);
} catch (Exception e){

View File

@@ -70,10 +70,12 @@ public class PayController extends BaseController {
throw new BusinessException(ReturnCodeEnum.CODE_TOKEN_ERROR);
}
dto.setMemberId(memberId);
String openId = memberService.getOpenIdByCode(dto.getCode());
if (StringUtils.isBlank(openId)) {
// String openId = memberService.getOpenIdByCode(dto.getCode());
MemberBasicInfo memberBasicInfo = memberBasicInfoService.selectInfoByMemberId(memberId);
if (memberBasicInfo == null) {
throw new BusinessException(ReturnCodeEnum.CODE_GET_OPEN_ID_BY_CODE_ERROR);
}
String openId = memberBasicInfo.getOpenId();
dto.setOpenId(openId);
// 充值余额 附加参数
PaymentScenarioDTO paymentScenarioDTO = new PaymentScenarioDTO();

View File

@@ -30,11 +30,9 @@ import com.jsowell.common.util.id.IdUtils;
import com.jsowell.pile.domain.AdapayMemberAccount;
import com.jsowell.pile.domain.ClearingBillInfo;
import com.jsowell.pile.domain.ClearingWithdrawInfo;
import com.jsowell.pile.domain.MemberBasicInfo;
import com.jsowell.pile.dto.PayOrderDTO;
import com.jsowell.pile.service.ClearingBillInfoService;
import com.jsowell.pile.service.ClearingWithdrawInfoService;
import com.jsowell.pile.service.IAdapayMemberAccountService;
import com.jsowell.pile.service.IPileMerchantInfoService;
import com.jsowell.pile.service.*;
import com.jsowell.wxpay.service.WxAppletRemoteService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
@@ -78,6 +76,9 @@ public class AdapayService {
@Autowired
private WxAppletRemoteService wxAppletRemoteService;
@Autowired
private IMemberBasicInfoService memberBasicInfoService;
/**
* 获取支付参数
*/
@@ -98,10 +99,15 @@ public class AdapayService {
}
// 获取openId
String openId = wxAppletRemoteService.getOpenIdByCode(dto.getCode());
if (StringUtils.isBlank(openId)) {
MemberBasicInfo memberBasicInfo = memberBasicInfoService.selectInfoByMemberId(dto.getMemberId());
if (memberBasicInfo == null) {
throw new BusinessException(ReturnCodeEnum.CODE_GET_OPEN_ID_BY_CODE_ERROR);
}
String openId =memberBasicInfo.getOpenId();
// String openId = wxAppletRemoteService.getOpenIdByCode(dto.getCode());
// if (StringUtils.isBlank(openId)) {
// throw new BusinessException(ReturnCodeEnum.CODE_GET_OPEN_ID_BY_CODE_ERROR);
// }
// 封装对象
String amount = AdapayUtil.formatAmount(dto.getPayAmount()); // 用户支付金额

View File

@@ -0,0 +1,32 @@
package com.jsowell.pile.dto.lutongyunting;
import lombok.Data;
/**
* 给指定车辆绑定优惠券
*
* @author Lemon
* @Date 2023/8/23 14:15
*/
@Data
public class BindCouponDTO {
/**
* 优惠券商家标识
*/
private String merchantId;
/**
* 优惠券特殊标识
*/
private String couponId;
/**
* 车牌号码
*/
private String plateNumber;
/**
* 车牌颜色
*/
private String plateColor;
}

View File

@@ -10,6 +10,7 @@ import lombok.Data;
*/
@Data
public class WechatSendMsgDTO {
private String memberId;
/**
* 用户code
*/

View File

@@ -13,6 +13,8 @@ import com.jsowell.common.exception.BusinessException;
import com.jsowell.common.util.DateUtils;
import com.jsowell.common.util.StringUtils;
import com.jsowell.common.util.http.HttpUtils;
import com.jsowell.pile.domain.MemberBasicInfo;
import com.jsowell.pile.service.IMemberBasicInfoService;
import com.jsowell.pile.service.IOrderBasicInfoService;
import com.jsowell.pile.service.IPileBillingTemplateService;
import com.jsowell.pile.vo.uniapp.CurrentTimePriceDetails;
@@ -53,6 +55,9 @@ public class WxAppletRemoteService {
@Autowired
private IPileBillingTemplateService pileBillingTemplateService;
@Autowired
private IMemberBasicInfoService memberBasicInfoService;
@Value("${weixin.login.appid}")
private String appid;
@@ -190,7 +195,11 @@ public class WxAppletRemoteService {
openId = dto.getOpenId();
}else {
// 通过code查询openId并set
openId = getOpenIdByCode(dto.getCode());
MemberBasicInfo memberBasicInfo = memberBasicInfoService.selectInfoByMemberId(dto.getMemberId());
if (memberBasicInfo == null) {
throw new BusinessException("99999", "开始充电发送消息 error, 查询openid为空");
}
openId = memberBasicInfo.getOpenId();
}
if (StringUtils.isBlank(openId)) {
return null;

View File

@@ -1,5 +1,6 @@
package com.jsowell.thirdparty.lutongyunting.service;
import com.jsowell.pile.dto.lutongyunting.BindCouponDTO;
import com.jsowell.pile.dto.lutongyunting.GetTokenDTO;
/**
@@ -17,5 +18,10 @@ public interface LTYTService {
*/
String getToken(GetTokenDTO dto);
/**
* 给指定车辆绑定优惠券
* @param dto
* @return
*/
String bindCoupon(BindCouponDTO dto);
}

View File

@@ -8,6 +8,7 @@ import com.jsowell.common.core.redis.RedisCache;
import com.jsowell.common.util.DateUtils;
import com.jsowell.common.util.StringUtils;
import com.jsowell.common.util.sign.MD5Util;
import com.jsowell.pile.dto.lutongyunting.BindCouponDTO;
import com.jsowell.pile.dto.lutongyunting.GetTokenDTO;
import com.jsowell.thirdparty.lutongyunting.service.LTYTService;
import org.slf4j.Logger;
@@ -62,15 +63,8 @@ public class LTYTServiceImpl implements LTYTService {
jsonObject.put("accTime", accTime);
jsonObject.put("version", "1.0");
// Map<String, Object> map = new LinkedHashMap<>();
// map.put("appId", dto.getAppId());
// map.put("accTime", accTime);
// map.put("version", "1.0");
// 获取sign签名
String sign = getSign(jsonObject, dto.getSecretKey());
// map.put("sign", sign);
jsonObject.put("sign", sign);
// 发送请求
@@ -89,6 +83,16 @@ public class LTYTServiceImpl implements LTYTService {
}
}
/**
* 给指定车辆绑定优惠券
* @param dto
* @return
*/
@Override
public String bindCoupon(BindCouponDTO dto) {
return null;
}
public static void main(String[] args) {
// String accTime = DateUtils.dateTimeNow(DateUtils.YYYYMMDDHHMMSS);
// Map<String, Object> map = new LinkedMap<>();