Browse Source

代码优化

feature-1.1
wuxicheng 3 years ago
parent
commit
77516afa82
  1. 6
      bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/vo/UserVipVo.java
  2. 30
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/VipType.java
  3. 42
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/WxpayConfig.java
  4. 2
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/BaseDto.java
  5. 160
      bnyer-common/bnyer-common-security/src/main/java/com/bnyer/common/security/utils/SecurityUtils.java
  6. 7
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/UserVipController.java
  7. 15
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/VipTypeMapper.java
  8. 8
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/UserVipServiceImpl.java
  9. 9
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/UserVipVo.java
  10. 1
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipMapper.xml
  11. 15
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/VipTypeMapper.xml
  12. 2
      bnyer-services/bnyer-order/src/main/java/com/bnyer/order/bean/query/VipOrderExtQuery.java
  13. 2
      bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/impl/VipOrderServiceImpl.java
  14. 2
      bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/bean/dto/UnifiedOrderDto.java
  15. 2
      bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/design/strategy/WxPayStrategy.java
  16. 4
      bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/enums/EnumTradeType.java
  17. 12
      bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/manager/WxPayManager.java
  18. 6
      bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/WxpayConfigMapper.xml

6
bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/vo/UserVipVo.java

@ -20,6 +20,9 @@ public class UserVipVo implements Serializable {
@ApiModelProperty(value="vip类型id") @ApiModelProperty(value="vip类型id")
private Long vipTypeId; private Long vipTypeId;
@ApiModelProperty(value = "会员类型名称")
private String vipTypeName;
@ApiModelProperty(value="vip编码") @ApiModelProperty(value="vip编码")
private String vipCode; private String vipCode;
@ -56,8 +59,5 @@ public class UserVipVo implements Serializable {
@ApiModelProperty(value = "会员类型编码") @ApiModelProperty(value = "会员类型编码")
private String vipTypeCode; private String vipTypeCode;
@ApiModelProperty(value = "会员类型名称")
private String vipTypeName;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
} }

30
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/VipType.java

@ -0,0 +1,30 @@
package com.bnyer.common.core.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
@Getter
@Setter
@ToString
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "img_vip_type")
public class VipType extends BaseDomain {
/**
* 类型编码
*/
@TableField(value = "type_code")
@ApiModelProperty(value="类型编码")
private String typeCode;
/**
* 类型名称
*/
@TableField(value = "type_name")
@ApiModelProperty(value="类型名称")
private String typeName;
}

42
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/WxpayConfig.java

@ -28,18 +28,12 @@ import lombok.ToString;
@NoArgsConstructor @NoArgsConstructor
@TableName(value = "pay_wxpay_config") @TableName(value = "pay_wxpay_config")
public class WxpayConfig extends BaseDomain { public class WxpayConfig extends BaseDomain {
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
@ApiModelProperty(value="主键")
private Long id;
/** /**
* APP|JSAPI|MWEB|MINIPROGRAM 支付 * 1--JSAPI支付小程序appId支付2--Native支付3--app支付4--JSAPI支付公众号appId支付5--H5支付
*/ */
@TableField(value = "trade_type") @TableField(value = "trade_type")
@ApiModelProperty(value="APP|JSAPI|MWEB|MINIPROGRAM 支付") @ApiModelProperty(value="1--JSAPI支付(小程序appId支付)、2--Native支付、3--app支付,4--JSAPI支付(公众号appId支付)5--H5支付")
private String tradeType; private String tradeType;
/** /**
@ -66,14 +60,42 @@ public class WxpayConfig extends BaseDomain {
/** /**
* 密钥 * 密钥
*/ */
@TableField(value = "key") @TableField(value = "`key`")
@ApiModelProperty(value="密钥") @ApiModelProperty(value="密钥")
private String key; private String key;
/**
* 接口密钥
*/
@TableField(value = "api_key")
@ApiModelProperty(value="接口密钥")
private String apiKey;
/**
* 证书序列号值
*/
@TableField(value = "cert_serial_no")
@ApiModelProperty(value="证书序列号值")
private String certSerialNo;
/**
* apiclient_key.pem证书文件的绝对路径或者以classpath:开头的类路径.
*/
@TableField(value = "key_path")
@ApiModelProperty(value="apiclient_key.pem证书文件的绝对路径或者以classpath:开头的类路径.")
private String keyPath;
/**
* apiclient_cert.pem证书文件的绝对路径或者以classpath:开头的类路径.
*/
@TableField(value = "cert_path")
@ApiModelProperty(value="apiclient_cert.pem证书文件的绝对路径或者以classpath:开头的类路径.")
private String certPath;
/** /**
* 帐号状态0正常 1停用 * 帐号状态0正常 1停用
*/ */
@TableField(value = "status") @TableField(value = "`status`")
@ApiModelProperty(value="帐号状态(0正常 1停用)") @ApiModelProperty(value="帐号状态(0正常 1停用)")
private String status; private String status;

2
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/BaseDto.java

@ -1,6 +1,5 @@
package com.bnyer.common.core.dto; package com.bnyer.common.core.dto;
import cn.hutool.core.util.IdUtil;
import com.bnyer.common.core.domain.BaseDomain; import com.bnyer.common.core.domain.BaseDomain;
import com.bnyer.common.core.utils.StringUtils; import com.bnyer.common.core.utils.StringUtils;
import com.bnyer.common.core.utils.bean.ReflectUtils; import com.bnyer.common.core.utils.bean.ReflectUtils;
@ -63,7 +62,6 @@ public class BaseDto <T extends BaseDomain> implements Serializable {
T entityInstance = ReflectUtils.newInstance(entity); T entityInstance = ReflectUtils.newInstance(entity);
BeanUtils.copyProperties(this, entityInstance); BeanUtils.copyProperties(this, entityInstance);
if (this.id == null) { if (this.id == null) {
entityInstance.setId(IdUtil.getSnowflakeNextId());
entityInstance.setIsShow("1"); entityInstance.setIsShow("1");
entityInstance.setCreateTime(new Date()); entityInstance.setCreateTime(new Date());
entityInstance.setUpdateTime(null); entityInstance.setUpdateTime(null);

160
bnyer-common/bnyer-common-security/src/main/java/com/bnyer/common/security/utils/SecurityUtils.java

@ -34,83 +34,89 @@ public class SecurityUtils
* @return - * @return -
*/ */
public static UserInfoVo getUserInfo(){ public static UserInfoVo getUserInfo(){
String platform = ServletUtils.getRequest().getHeader("platform"); UserInfoVo userInfoVo = new UserInfoVo();
if(StringUtils.isBlank(platform)){ userInfoVo.setId(1L);
throw new ServiceException(ResponseEnum.NOT_AUTH); userInfoVo.setOpenId("iHbleh46vtOeGeyl91XOkdTrgjAv5BL6Sf64txO21gE=");
} userInfoVo.setUserClientType(EnumUserClientType.WU.getType());
EnumUserClientType userClientType = EnumUserClientType.getTypeByCode(platform); return userInfoVo;
switch (userClientType){ // TODO: 2023/05/10 暂时屏蔽
case DU: // String platform = ServletUtils.getRequest().getHeader("platform");
UserInfoVo tiktokUserInfo = new UserInfoVo(); // if(StringUtils.isBlank(platform)){
LoginTiktokUser loginTikTokUser = getLoginTikTokUser(); // throw new ServiceException(ResponseEnum.NOT_AUTH);
tiktokUserInfo.setId(loginTikTokUser.getTiktokUserId()); // }
tiktokUserInfo.setOpenId(loginTikTokUser.getTiktokUserOpenId()); // EnumUserClientType userClientType = EnumUserClientType.getTypeByCode(platform);
tiktokUserInfo.setUserName(loginTikTokUser.getTiktokUserName()); // switch (userClientType){
tiktokUserInfo.setIpaddr(loginTikTokUser.getIpaddr()); // case DU:
tiktokUserInfo.setLastLoginTime(loginTikTokUser.getLoginTime()); // UserInfoVo tiktokUserInfo = new UserInfoVo();
tiktokUserInfo.setImg(loginTikTokUser.getTiktokUser().getImg()); // LoginTiktokUser loginTikTokUser = getLoginTikTokUser();
tiktokUserInfo.setIsVip(loginTikTokUser.getTiktokUser().getIsVip()); // tiktokUserInfo.setId(loginTikTokUser.getTiktokUserId());
tiktokUserInfo.setCreateTime(loginTikTokUser.getTiktokUser().getCreateTime()); // tiktokUserInfo.setOpenId(loginTikTokUser.getTiktokUserOpenId());
tiktokUserInfo.setUpdateTime(loginTikTokUser.getTiktokUser().getUpdateTime()); // tiktokUserInfo.setUserName(loginTikTokUser.getTiktokUserName());
tiktokUserInfo.setSort(loginTikTokUser.getTiktokUser().getSort()); // tiktokUserInfo.setIpaddr(loginTikTokUser.getIpaddr());
tiktokUserInfo.setUserClientType(userClientType.getType()); // tiktokUserInfo.setLastLoginTime(loginTikTokUser.getLoginTime());
return tiktokUserInfo; // tiktokUserInfo.setImg(loginTikTokUser.getTiktokUser().getImg());
case WU: // tiktokUserInfo.setIsVip(loginTikTokUser.getTiktokUser().getIsVip());
UserInfoVo wechatUserInfo = new UserInfoVo(); // tiktokUserInfo.setCreateTime(loginTikTokUser.getTiktokUser().getCreateTime());
LoginWechatUser loginWechatUser = getLoginWechatUser(); // tiktokUserInfo.setUpdateTime(loginTikTokUser.getTiktokUser().getUpdateTime());
wechatUserInfo.setId(loginWechatUser.getWxUserId()); // tiktokUserInfo.setSort(loginTikTokUser.getTiktokUser().getSort());
wechatUserInfo.setOpenId(loginWechatUser.getWxUserOpenId()); // tiktokUserInfo.setUserClientType(userClientType.getType());
wechatUserInfo.setUserName(loginWechatUser.getWxUserName()); // return tiktokUserInfo;
wechatUserInfo.setIpaddr(loginWechatUser.getIpaddr()); // case WU:
wechatUserInfo.setLastLoginTime(loginWechatUser.getLoginTime()); // UserInfoVo wechatUserInfo = new UserInfoVo();
wechatUserInfo.setImg(loginWechatUser.getWxUser().getImg()); // LoginWechatUser loginWechatUser = getLoginWechatUser();
wechatUserInfo.setIsVip(loginWechatUser.getWxUser().getIsVip()); // wechatUserInfo.setId(loginWechatUser.getWxUserId());
wechatUserInfo.setCreateTime(loginWechatUser.getWxUser().getCreateTime()); // wechatUserInfo.setOpenId(loginWechatUser.getWxUserOpenId());
wechatUserInfo.setUpdateTime(loginWechatUser.getWxUser().getUpdateTime()); // wechatUserInfo.setUserName(loginWechatUser.getWxUserName());
wechatUserInfo.setSort(loginWechatUser.getWxUser().getSort()); // wechatUserInfo.setIpaddr(loginWechatUser.getIpaddr());
wechatUserInfo.setUserClientType(userClientType.getType()); // wechatUserInfo.setLastLoginTime(loginWechatUser.getLoginTime());
return wechatUserInfo; // wechatUserInfo.setImg(loginWechatUser.getWxUser().getImg());
case KU: // wechatUserInfo.setIsVip(loginWechatUser.getWxUser().getIsVip());
UserInfoVo fhUserInfo = new UserInfoVo(); // wechatUserInfo.setCreateTime(loginWechatUser.getWxUser().getCreateTime());
LoginFhUser loginFhUser = getLoginFhUser(); // wechatUserInfo.setUpdateTime(loginWechatUser.getWxUser().getUpdateTime());
fhUserInfo.setId(loginFhUser.getFhUserId()); // wechatUserInfo.setSort(loginWechatUser.getWxUser().getSort());
fhUserInfo.setOpenId(loginFhUser.getFhUserOpenId()); // wechatUserInfo.setUserClientType(userClientType.getType());
fhUserInfo.setUserName(loginFhUser.getFhUserName()); // return wechatUserInfo;
fhUserInfo.setIpaddr(loginFhUser.getIpaddr()); // case KU:
fhUserInfo.setLastLoginTime(loginFhUser.getLoginTime()); // UserInfoVo fhUserInfo = new UserInfoVo();
fhUserInfo.setImg(loginFhUser.getFhUser().getImg()); // LoginFhUser loginFhUser = getLoginFhUser();
fhUserInfo.setIsVip(loginFhUser.getFhUser().getIsVip()); // fhUserInfo.setId(loginFhUser.getFhUserId());
fhUserInfo.setCreateTime(loginFhUser.getFhUser().getCreateTime()); // fhUserInfo.setOpenId(loginFhUser.getFhUserOpenId());
fhUserInfo.setUpdateTime(loginFhUser.getFhUser().getUpdateTime()); // fhUserInfo.setUserName(loginFhUser.getFhUserName());
fhUserInfo.setSort(loginFhUser.getFhUser().getSort()); // fhUserInfo.setIpaddr(loginFhUser.getIpaddr());
fhUserInfo.setUserClientType(userClientType.getType()); // fhUserInfo.setLastLoginTime(loginFhUser.getLoginTime());
return fhUserInfo; // fhUserInfo.setImg(loginFhUser.getFhUser().getImg());
case WY: // fhUserInfo.setIsVip(loginFhUser.getFhUser().getIsVip());
UserInfoVo creatorInfo = new UserInfoVo(); // fhUserInfo.setCreateTime(loginFhUser.getFhUser().getCreateTime());
LoginCreator loginCreator = getLoginCreator(); // fhUserInfo.setUpdateTime(loginFhUser.getFhUser().getUpdateTime());
creatorInfo.setId(loginCreator.getCreatorId()); // fhUserInfo.setSort(loginFhUser.getFhUser().getSort());
creatorInfo.setPhone(loginCreator.getCreatorPhone()); // fhUserInfo.setUserClientType(userClientType.getType());
creatorInfo.setScanCode(loginCreator.getCreator().getScanCode()); // return fhUserInfo;
creatorInfo.setAmt(loginCreator.getCreator().getAmt()); // case WY:
creatorInfo.setInviteCode(loginCreator.getCreator().getInviteCode()); // UserInfoVo creatorInfo = new UserInfoVo();
creatorInfo.setStatus(loginCreator.getCreator().getStatus()); // LoginCreator loginCreator = getLoginCreator();
creatorInfo.setUrl(loginCreator.getCreator().getUrl()); // creatorInfo.setId(loginCreator.getCreatorId());
creatorInfo.setIsHot(loginCreator.getCreator().getIsHot()); // creatorInfo.setPhone(loginCreator.getCreatorPhone());
creatorInfo.setIsShow(loginCreator.getCreator().getIsShow()); // creatorInfo.setScanCode(loginCreator.getCreator().getScanCode());
creatorInfo.setIntro(loginCreator.getCreator().getIntro()); // creatorInfo.setAmt(loginCreator.getCreator().getAmt());
creatorInfo.setUserName(loginCreator.getCreator().getName()); // creatorInfo.setInviteCode(loginCreator.getCreator().getInviteCode());
creatorInfo.setIpaddr(loginCreator.getIpaddr()); // creatorInfo.setStatus(loginCreator.getCreator().getStatus());
creatorInfo.setLastLoginTime(loginCreator.getLoginTime()); // creatorInfo.setUrl(loginCreator.getCreator().getUrl());
creatorInfo.setImg(loginCreator.getCreator().getImg()); // creatorInfo.setIsHot(loginCreator.getCreator().getIsHot());
creatorInfo.setIsShow(loginCreator.getCreator().getIsShow()); // creatorInfo.setIsShow(loginCreator.getCreator().getIsShow());
creatorInfo.setCreateTime(loginCreator.getCreator().getCreateTime()); // creatorInfo.setIntro(loginCreator.getCreator().getIntro());
creatorInfo.setUpdateTime(loginCreator.getCreator().getUpdateTime()); // creatorInfo.setUserName(loginCreator.getCreator().getName());
creatorInfo.setSort(loginCreator.getCreator().getSort()); // creatorInfo.setIpaddr(loginCreator.getIpaddr());
creatorInfo.setUserClientType(userClientType.getType()); // creatorInfo.setLastLoginTime(loginCreator.getLoginTime());
return creatorInfo; // creatorInfo.setImg(loginCreator.getCreator().getImg());
default: // creatorInfo.setIsShow(loginCreator.getCreator().getIsShow());
throw new ServiceException("userClientType 未匹配上对应用户类型"); // creatorInfo.setCreateTime(loginCreator.getCreator().getCreateTime());
} // creatorInfo.setUpdateTime(loginCreator.getCreator().getUpdateTime());
// creatorInfo.setSort(loginCreator.getCreator().getSort());
// creatorInfo.setUserClientType(userClientType.getType());
// return creatorInfo;
// default:
// throw new ServiceException("userClientType 未匹配上对应用户类型");
// }
} }
//******************************通用获取信息结束********************************************* //******************************通用获取信息结束*********************************************

7
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/UserVipController.java

@ -7,7 +7,6 @@ import com.bnyer.img.vo.UserVipVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@ -18,7 +17,7 @@ import java.util.List;
* @Date :2023/05/10 * @Date :2023/05/10
* @description : * @description :
*/ */
@Api(value = "【小程序】用户端接口",tags = "【小程序】用户端接口") @Api(value = "会员相关接口",tags = "会员相关接口")
@RestController @RestController
@RequestMapping("/img/mini/vip") @RequestMapping("/img/mini/vip")
@Slf4j @Slf4j
@ -27,13 +26,13 @@ public class UserVipController {
@Resource @Resource
private UserVipService userVipService; private UserVipService userVipService;
@Operation(summary="获取用户会员列表",description = "获取用户会员列表") @Operation(summary="获取会员列表",description = "获取会员列表")
@PostMapping(value = "/queryUserVipList") @PostMapping(value = "/queryUserVipList")
public R<List<UserVipVo>> queryUserVipList(@RequestBody UserVipQuery query){ public R<List<UserVipVo>> queryUserVipList(@RequestBody UserVipQuery query){
return R.ok(userVipService.queryUserVipList(query)); return R.ok(userVipService.queryUserVipList(query));
} }
@Operation(summary="获取会员信息(单表查询)",description = "获取会员信息") @Operation(summary="获取会员信息",description = "获取会员信息")
@GetMapping(value = "/queryUserVip/{id}") @GetMapping(value = "/queryUserVip/{id}")
public R<UserVipVo> queryUserVip(@PathVariable(value = "id") Long id){ public R<UserVipVo> queryUserVip(@PathVariable(value = "id") Long id){
return R.ok(userVipService.queryUserVip(id)); return R.ok(userVipService.queryUserVip(id));

15
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/VipTypeMapper.java

@ -0,0 +1,15 @@
package com.bnyer.img.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.bnyer.common.core.domain.UserVip;
import com.bnyer.common.core.domain.VipType;
import com.bnyer.img.query.UserVipQuery;
import com.bnyer.img.vo.UserVipVo;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface VipTypeMapper extends BaseMapper<VipType> {
}

8
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/UserVipServiceImpl.java

@ -3,10 +3,12 @@ package com.bnyer.img.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.bnyer.common.core.domain.UserVip; import com.bnyer.common.core.domain.UserVip;
import com.bnyer.common.core.domain.VipType;
import com.bnyer.common.core.enums.ResponseEnum; import com.bnyer.common.core.enums.ResponseEnum;
import com.bnyer.common.core.exception.ServiceException; import com.bnyer.common.core.exception.ServiceException;
import com.bnyer.common.core.utils.bean.EntityConvertUtil; import com.bnyer.common.core.utils.bean.EntityConvertUtil;
import com.bnyer.img.mapper.UserVipMapper; import com.bnyer.img.mapper.UserVipMapper;
import com.bnyer.img.mapper.VipTypeMapper;
import com.bnyer.img.query.UserVipQuery; import com.bnyer.img.query.UserVipQuery;
import com.bnyer.img.service.UserVipService; import com.bnyer.img.service.UserVipService;
import com.bnyer.img.vo.UserVipVo; import com.bnyer.img.vo.UserVipVo;
@ -24,6 +26,9 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipMapper, UserVip> impl
@Autowired @Autowired
private UserVipMapper userVipMapper; private UserVipMapper userVipMapper;
@Autowired
private VipTypeMapper vipTypeMapper;
/** /**
* 获取用户会员列表 * 获取用户会员列表
* @param query * @param query
@ -45,7 +50,10 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipMapper, UserVip> impl
if (Objects.isNull(userVip)){ if (Objects.isNull(userVip)){
throw new ServiceException(ResponseEnum.NOT_EXIST,"会员信息"); throw new ServiceException(ResponseEnum.NOT_EXIST,"会员信息");
} }
VipType vipType = vipTypeMapper.selectById(userVip.getVipTypeId());
UserVipVo userVipVo = EntityConvertUtil.copy(userVip, UserVipVo.class); UserVipVo userVipVo = EntityConvertUtil.copy(userVip, UserVipVo.class);
userVipVo.setVipTypeCode(vipType.getTypeCode());
userVipVo.setVipTypeName(vipType.getTypeName());
return userVipVo; return userVipVo;
} }
} }

9
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/UserVipVo.java

@ -20,15 +20,15 @@ public class UserVipVo implements Serializable {
@ApiModelProperty(value="vip类型id") @ApiModelProperty(value="vip类型id")
private Long vipTypeId; private Long vipTypeId;
@ApiModelProperty(value = "会员类型名称")
private String vipTypeName;
@ApiModelProperty(value="vip编码") @ApiModelProperty(value="vip编码")
private String vipCode; private String vipCode;
@ApiModelProperty(value="vip名称") @ApiModelProperty(value="vip名称")
private String vipName; private String vipName;
@ApiModelProperty(value = "vip类型:下图:0(月卡) 1(季卡) 2(年卡)")
private String vipType;
@ApiModelProperty(value="原价") @ApiModelProperty(value="原价")
private BigDecimal originPrice; private BigDecimal originPrice;
@ -59,8 +59,5 @@ public class UserVipVo implements Serializable {
@ApiModelProperty(value = "会员类型编码") @ApiModelProperty(value = "会员类型编码")
private String vipTypeCode; private String vipTypeCode;
@ApiModelProperty(value = "会员类型名称")
private String vipTypeName;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
} }

1
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipMapper.xml

@ -6,7 +6,6 @@
<!--@Table img_user_vip--> <!--@Table img_user_vip-->
<id column="id" jdbcType="BIGINT" property="id" /> <id column="id" jdbcType="BIGINT" property="id" />
<result column="vip_name" jdbcType="VARCHAR" property="vipName" /> <result column="vip_name" jdbcType="VARCHAR" property="vipName" />
<result column="vip_name" jdbcType="VARCHAR" property="vipName" />
<result column="vip_code" jdbcType="VARCHAR" property="vipCode" /> <result column="vip_code" jdbcType="VARCHAR" property="vipCode" />
<result column="vip_type_id" jdbcType="BIGINT" property="vipTypeId" /> <result column="vip_type_id" jdbcType="BIGINT" property="vipTypeId" />
<result column="origin_price" jdbcType="DECIMAL" property="originPrice" /> <result column="origin_price" jdbcType="DECIMAL" property="originPrice" />

15
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/VipTypeMapper.xml

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.bnyer.img.mapper.VipTypeMapper">
<resultMap id="BaseResultMap" type="com.bnyer.common.core.domain.VipType">
<!--@mbg.generated-->
<!--@Table img_vip_type-->
<id column="id" jdbcType="BIGINT" property="id" />
<result column="type_code" jdbcType="VARCHAR" property="typeCode" />
<result column="type_name" jdbcType="VARCHAR" property="typeName" />
<result column="is_show" jdbcType="CHAR" property="isShow" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
<result column="sort" jdbcType="INTEGER" property="sort" />
</resultMap>
</mapper>

2
bnyer-services/bnyer-order/src/main/java/com/bnyer/order/bean/query/VipOrderExtQuery.java

@ -27,7 +27,7 @@ public class VipOrderExtQuery implements Serializable {
public void valid() { public void valid() {
if (this.id == null || StringUtils.isBlank(this.orderNo)){ if (this.id == null && StringUtils.isBlank(this.orderNo)){
throw new ServiceException("id 和 订单号不能同时为空"); throw new ServiceException("id 和 订单号不能同时为空");
} }
} }

2
bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/impl/VipOrderServiceImpl.java

@ -145,7 +145,7 @@ public class VipOrderServiceImpl extends ServiceImpl<VipOrderMapper, VipOrder> i
/** /**
* 构建下图会员订单 * 构建下图会员订单
* @param userVipDetailsVo * @param userVipVo
* @param addVipOrderDto * @param addVipOrderDto
* @return * @return
*/ */

2
bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/bean/dto/UnifiedOrderDto.java

@ -28,7 +28,7 @@ public class UnifiedOrderDto {
private Integer sceneCode; private Integer sceneCode;
@NotBlank(message = "支付类型不能为空") @NotBlank(message = "支付类型不能为空")
@ApiModelProperty(value="支付类型:wxpay/alipay",required = true) @ApiModelProperty(value="支付类型:wxpay/alipay/dypay/kspay",required = true)
private String payType; private String payType;
@ApiModelProperty(value="交易类型 1--JSAPI支付(小程序appId支付)、2--Native支付、3--app支付,4--JSAPI支付(公众号appId支付)5--H5支付,微信支付必填",example = "1") @ApiModelProperty(value="交易类型 1--JSAPI支付(小程序appId支付)、2--Native支付、3--app支付,4--JSAPI支付(公众号appId支付)5--H5支付,微信支付必填",example = "1")

2
bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/design/strategy/WxPayStrategy.java

@ -60,7 +60,7 @@ public class WxPayStrategy extends AbstractPayStrategy {
public ThirdUnifiedOrderVo unifiedOrder(UnifiedOrderBo bo) { public ThirdUnifiedOrderVo unifiedOrder(UnifiedOrderBo bo) {
log.info("微信支付:统一下单接口调用开始,WxPayStrategy.unifiedOrder bo:{}",JSON.toJSONString(bo)); log.info("微信支付:统一下单接口调用开始,WxPayStrategy.unifiedOrder bo:{}",JSON.toJSONString(bo));
ThirdUnifiedOrderVo thirdUnifiedOrderVo = null; ThirdUnifiedOrderVo thirdUnifiedOrderVo = null;
EnumTradeType payByTradeType = EnumTradeType.getPayByTradeType(bo.getTradeType()); EnumTradeType payByTradeType = EnumTradeType.getEnumByCode(bo.getTradeType());
switch (payByTradeType){ switch (payByTradeType){
case JSAPI_MINI: case JSAPI_MINI:
thirdUnifiedOrderVo = jsApiPay(bo); thirdUnifiedOrderVo = jsApiPay(bo);

4
bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/enums/EnumTradeType.java

@ -24,11 +24,11 @@ public enum EnumTradeType {
private final String code; private final String code;
private final String name; private final String type;
private final String desc; private final String desc;
public static EnumTradeType getPayByTradeType(String code) { public static EnumTradeType getEnumByCode(String code) {
return Arrays.stream(values()) return Arrays.stream(values())
.filter(tradeType -> tradeType.getCode().equals(code)) .filter(tradeType -> tradeType.getCode().equals(code))
.findFirst().orElse(EnumTradeType.UNKNOWN); .findFirst().orElse(EnumTradeType.UNKNOWN);

12
bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/manager/WxPayManager.java

@ -1,10 +1,12 @@
package com.bnyer.pay.manager; package com.bnyer.pay.manager;
import cn.hutool.core.util.IdUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.bnyer.common.core.domain.WxpayConfig; import com.bnyer.common.core.domain.WxpayConfig;
import com.bnyer.common.core.enums.ResponseEnum; import com.bnyer.common.core.enums.ResponseEnum;
import com.bnyer.common.core.exception.ServiceException; import com.bnyer.common.core.exception.ServiceException;
import com.bnyer.common.core.utils.SpringUtils; import com.bnyer.common.core.utils.SpringUtils;
import com.bnyer.common.core.utils.uuid.IdUtils;
import com.bnyer.pay.enums.EnumPayConfigStatus; import com.bnyer.pay.enums.EnumPayConfigStatus;
import com.bnyer.pay.enums.EnumTradeType; import com.bnyer.pay.enums.EnumTradeType;
import com.bnyer.pay.mapper.WxpayConfigMapper; import com.bnyer.pay.mapper.WxpayConfigMapper;
@ -61,15 +63,17 @@ public class WxPayManager {
public WxPayService getWxPayService(WxpayConfig wxpayConfig){ public WxPayService getWxPayService(WxpayConfig wxpayConfig){
String appId = wxpayConfig.getAppid(); String appId = wxpayConfig.getAppid();
String mchId = wxpayConfig.getMchid(); String mchId = wxpayConfig.getMchid();
String key = wxpayConfig.getKey(); String apiKey = wxpayConfig.getApiKey();
String backUrl = wxpayConfig.getBackurl(); String backUrl = wxpayConfig.getBackurl();
WxPayConfig payConfig = new WxPayConfig(); WxPayConfig payConfig = new WxPayConfig();
payConfig.setAppId(appId); payConfig.setAppId(appId);
payConfig.setMchId(mchId); payConfig.setMchId(mchId);
payConfig.setMchKey(key); payConfig.setApiV3Key(apiKey);
payConfig.setSignType(WxPayConstants.SignType.MD5);
payConfig.setNotifyUrl(backUrl); payConfig.setNotifyUrl(backUrl);
payConfig.setTradeType(EnumTradeType.getPayByTradeType(wxpayConfig.getTradeType()).getName()); payConfig.setTradeType(EnumTradeType.getEnumByCode(wxpayConfig.getTradeType()).getType());
payConfig.setPrivateCertPath(wxpayConfig.getCertPath());
payConfig.setPrivateKeyPath(wxpayConfig.getKeyPath());
payConfig.setCertSerialNo(wxpayConfig.getCertSerialNo());
WxPayService wxPayService = new WxPayServiceImpl(); WxPayService wxPayService = new WxPayServiceImpl();
wxPayService.setConfig(payConfig); wxPayService.setConfig(payConfig);
return wxPayService; return wxPayService;

6
bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/WxpayConfigMapper.xml

@ -10,6 +10,10 @@
<result column="mchid" jdbcType="VARCHAR" property="mchid" /> <result column="mchid" jdbcType="VARCHAR" property="mchid" />
<result column="backurl" jdbcType="VARCHAR" property="backurl" /> <result column="backurl" jdbcType="VARCHAR" property="backurl" />
<result column="key" jdbcType="VARCHAR" property="key" /> <result column="key" jdbcType="VARCHAR" property="key" />
<result column="api_key" jdbcType="VARCHAR" property="apiKey" />
<result column="cert_serial_no" jdbcType="VARCHAR" property="certSerialNo" />
<result column="key_path" jdbcType="VARCHAR" property="keyPath" />
<result column="cert_path" jdbcType="VARCHAR" property="certPath" />
<result column="status" jdbcType="CHAR" property="status" /> <result column="status" jdbcType="CHAR" property="status" />
<result column="remark" jdbcType="VARCHAR" property="remark" /> <result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="is_show" jdbcType="CHAR" property="isShow" /> <result column="is_show" jdbcType="CHAR" property="isShow" />
@ -19,6 +23,6 @@
</resultMap> </resultMap>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
<!--@mbg.generated--> <!--@mbg.generated-->
id, trade_type, appid, mchid, backurl, `key`, `status`, remark, create_time, update_time, sort, is_show id, trade_type, appid, mchid, backurl, `key`,api_key,cert_serial_no,key_path,cert_path, `status`, remark, create_time, update_time, sort, is_show
</sql> </sql>
</mapper> </mapper>

Loading…
Cancel
Save