diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/QueryUserVipDto.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/QueryUserVipDto.java new file mode 100644 index 0000000..689c6ee --- /dev/null +++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/dto/QueryUserVipDto.java @@ -0,0 +1,23 @@ +package com.bnyer.img.api.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +/** + * @author :WXC + * @Date :2023/03/31 + * @description : + */ +@Getter +@Setter +@ApiModel("会员vip查询类") +public class QueryUserVipDto { + @ApiModelProperty(value="主键Id") + private Long id; + + @ApiModelProperty(value="vip客户端类型:10用户-抖音 20用户-快手 30用户-微信 40艺术家-微信") + private Integer userClientType; + +} diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteImgFallbackFactory.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteImgFallbackFactory.java index 0c2c1eb..576254b 100644 --- a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteImgFallbackFactory.java +++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteImgFallbackFactory.java @@ -5,7 +5,7 @@ import com.bnyer.common.core.dto.CreatorLoginDto; import com.bnyer.common.core.dto.FhLoginDto; import com.bnyer.common.core.dto.TiktokLoginDto; import com.bnyer.common.core.dto.WxLoginDto; -import com.bnyer.img.api.RemoteImgService; +import com.bnyer.img.api.remote.RemoteImgService; import com.bnyer.img.api.dto.TiktokImgMiniDto; import com.bnyer.img.api.model.LoginCreator; import com.bnyer.img.api.model.LoginFhUser; diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteWxMiniFallbackFactory.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteWxMiniFallbackFactory.java new file mode 100644 index 0000000..968ed80 --- /dev/null +++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/factory/RemoteWxMiniFallbackFactory.java @@ -0,0 +1,36 @@ +package com.bnyer.img.api.factory; + +import com.bnyer.common.core.domain.R; +import com.bnyer.img.api.dto.QueryUserVipDto; +import com.bnyer.img.api.remote.RemoteWxMiniService; +import com.bnyer.img.api.vo.UserVipVo; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.cloud.openfeign.FallbackFactory; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * 图文服务降级处理 + * + * @author penny + */ +@Component +public class RemoteWxMiniFallbackFactory implements FallbackFactory +{ + private static final Logger log = LoggerFactory.getLogger(RemoteWxMiniFallbackFactory.class); + + + @Override + public RemoteWxMiniService create(Throwable throwable) { + log.error("api图文服务调用失败:{}", throwable.getMessage()); + return new RemoteWxMiniService() { + @Override + public R> queryUserVipList(QueryUserVipDto dto) { + return R.fail("获取会员信息失败:+"+throwable.getMessage()); + } + + }; + } +} diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/remote/RemoteImgService.java similarity index 98% rename from bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java rename to bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/remote/RemoteImgService.java index 5d30c78..a91586f 100644 --- a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/RemoteImgService.java +++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/remote/RemoteImgService.java @@ -1,4 +1,4 @@ -package com.bnyer.img.api; +package com.bnyer.img.api.remote; import com.bnyer.common.core.constant.ServiceNameConstants; import com.bnyer.common.core.domain.R; diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/remote/RemoteWxMiniService.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/remote/RemoteWxMiniService.java new file mode 100644 index 0000000..1674f57 --- /dev/null +++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/remote/RemoteWxMiniService.java @@ -0,0 +1,26 @@ +package com.bnyer.img.api.remote; + +import com.bnyer.common.core.constant.ServiceNameConstants; +import com.bnyer.common.core.domain.R; +import com.bnyer.img.api.dto.QueryUserVipDto; +import com.bnyer.img.api.factory.RemoteWxMiniFallbackFactory; +import com.bnyer.img.api.vo.UserVipVo; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; + +import java.util.List; + +/** + * @author :WXC + * @description : + */ +@FeignClient(contextId = "remoteWxMiniService", value = ServiceNameConstants.IMG_SERVICE, fallbackFactory = RemoteWxMiniFallbackFactory.class) +public interface RemoteWxMiniService { + + /** + * 获取会员vip列表 + * @return + */ + @GetMapping(value = "/queryUserVipList") + R> queryUserVipList(QueryUserVipDto dto); +} diff --git a/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/vo/UserVipVo.java b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/vo/UserVipVo.java new file mode 100644 index 0000000..eb8ed7f --- /dev/null +++ b/bnyer-api/bnyer-api-img/src/main/java/com/bnyer/img/api/vo/UserVipVo.java @@ -0,0 +1,49 @@ +package com.bnyer.img.api.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.math.BigDecimal; + + +@Getter +@Setter +@ApiModel("会员vip响应类") +public class UserVipVo implements Serializable { + + @ApiModelProperty(value="主键Id") + private Long id; + + @ApiModelProperty(value="vip编码") + private String vipCode; + + @ApiModelProperty(value="vip名称") + private String vipName; + + @ApiModelProperty(value="原价") + private BigDecimal originPrice; + + @ApiModelProperty(value="售价") + private BigDecimal price; + + @ApiModelProperty(value="描述") + private String description; + + @ApiModelProperty(value="热门描述") + private String hotSignDesc; + + @ApiModelProperty(value="排序") + private Integer sort; + + @ApiModelProperty(value="是否到期自动续费(0>否;1->是)") + private String isDelay; + + @ApiModelProperty(value="时长天数") + private Integer days; + + private static final long serialVersionUID = 1L; +} diff --git a/bnyer-auth/src/main/java/com/bnyer/auth/service/CreatorLoginService.java b/bnyer-auth/src/main/java/com/bnyer/auth/service/CreatorLoginService.java index 2a9a880..4b3dec7 100644 --- a/bnyer-auth/src/main/java/com/bnyer/auth/service/CreatorLoginService.java +++ b/bnyer-auth/src/main/java/com/bnyer/auth/service/CreatorLoginService.java @@ -4,14 +4,14 @@ import com.bnyer.common.core.constant.TiktokConstant; import com.bnyer.common.core.domain.R; import com.bnyer.common.core.dto.CreatorLoginDto; import com.bnyer.common.core.exception.ServiceException; -import com.bnyer.img.api.RemoteImgService; +import com.bnyer.img.api.remote.RemoteImgService; import com.bnyer.img.api.model.LoginCreator; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * 艺术家端登录校验方法 - * + * * @author penny */ @Component @@ -36,4 +36,4 @@ public class CreatorLoginService { return creatorInfo.getData(); } -} \ No newline at end of file +} diff --git a/bnyer-auth/src/main/java/com/bnyer/auth/service/FhUserLoginService.java b/bnyer-auth/src/main/java/com/bnyer/auth/service/FhUserLoginService.java index 3f16429..6008724 100644 --- a/bnyer-auth/src/main/java/com/bnyer/auth/service/FhUserLoginService.java +++ b/bnyer-auth/src/main/java/com/bnyer/auth/service/FhUserLoginService.java @@ -1,7 +1,7 @@ package com.bnyer.auth.service; import com.bnyer.common.core.dto.FhLoginDto; -import com.bnyer.img.api.RemoteImgService; +import com.bnyer.img.api.remote.RemoteImgService; import com.bnyer.img.api.model.LoginFhUser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -21,4 +21,4 @@ public class FhUserLoginService { return remoteImgService.getFhLoginUserByLoginParam(dto).getData(); } -} \ No newline at end of file +} diff --git a/bnyer-auth/src/main/java/com/bnyer/auth/service/TiktokUserLoginService.java b/bnyer-auth/src/main/java/com/bnyer/auth/service/TiktokUserLoginService.java index 24018be..3dfefe8 100644 --- a/bnyer-auth/src/main/java/com/bnyer/auth/service/TiktokUserLoginService.java +++ b/bnyer-auth/src/main/java/com/bnyer/auth/service/TiktokUserLoginService.java @@ -1,14 +1,14 @@ package com.bnyer.auth.service; import com.bnyer.common.core.dto.TiktokLoginDto; -import com.bnyer.img.api.RemoteImgService; +import com.bnyer.img.api.remote.RemoteImgService; import com.bnyer.img.api.model.LoginTiktokUser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * 抖音小程序端用户登录校验方法 - * + * * @author penny */ @Component @@ -21,4 +21,4 @@ public class TiktokUserLoginService { return remoteImgService.getTiktokLoginUserByLoginParam(dto).getData(); } -} \ No newline at end of file +} diff --git a/bnyer-auth/src/main/java/com/bnyer/auth/service/WxUserLoginService.java b/bnyer-auth/src/main/java/com/bnyer/auth/service/WxUserLoginService.java index aa2b169..31ac702 100644 --- a/bnyer-auth/src/main/java/com/bnyer/auth/service/WxUserLoginService.java +++ b/bnyer-auth/src/main/java/com/bnyer/auth/service/WxUserLoginService.java @@ -1,9 +1,7 @@ package com.bnyer.auth.service; -import com.bnyer.common.core.dto.FhLoginDto; import com.bnyer.common.core.dto.WxLoginDto; -import com.bnyer.img.api.RemoteImgService; -import com.bnyer.img.api.model.LoginFhUser; +import com.bnyer.img.api.remote.RemoteImgService; import com.bnyer.img.api.model.LoginWechatUser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -23,4 +21,4 @@ public class WxUserLoginService { return remoteImgService.getWxLoginUserByLoginParam(dto).getData(); } -} \ No newline at end of file +} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/annotation/DiyParamsValidation.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/annotation/DiyParamsValidation.java new file mode 100644 index 0000000..403d7b5 --- /dev/null +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/annotation/DiyParamsValidation.java @@ -0,0 +1,67 @@ +package com.bnyer.common.core.annotation; + +import org.apache.commons.lang3.StringUtils; + +import java.lang.annotation.Documented; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import static java.lang.annotation.ElementType.*; + +/** + * @author :WXC + * @Date :2023/03/31 + * @description : 自定义参数校验注解 + */ +@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER}) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface DiyParamsValidation { + + /** + * 限制字符串或者数字 可选项,用 | 分割 ,如 00|10|20 + * @return + */ + String range() default ""; + + + /** + * 预定义Range + * + */ + public static class Range{ + /** + * 参数只能是00,20 + */ + public static final String STATE_D_E="00|20"; + /** + * 参数只能是00,10,20 + */ + public static final String STATE_ALL="00|10|20"; + /** + * 参数只能是desc,asc + */ + public static final String SORT_DIRECTION="desc|asc"; + + private static boolean contains(String range,String value){ + boolean flag = false; + if(StringUtils.isEmpty(value)){ + return false; + } + if(StringUtils.isNotEmpty(range)){ + String[] arr = range.split("\\|"); + for (String string : arr) { + if(value.equals(string)){ + flag = true; + break; + } + } + } + return flag; + } + } + + + String message() default "参数基本校验不通过错误:注意格式及长度"; +} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/AlipayConfig.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/AlipayConfig.java new file mode 100644 index 0000000..d3fd3dc --- /dev/null +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/AlipayConfig.java @@ -0,0 +1,83 @@ +package com.bnyer.common.core.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.util.Date; +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import lombok.ToString; + +/** + * @author :WXC + * @description : + */ +/** + * 支付宝支付配置表 + */ +@ApiModel(value="com-bnyer-common-core-domain-PayAlipayConfig") +@Getter +@Setter +@ToString +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "pay_alipay_config") +public class AlipayConfig extends BaseDomain { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty(value="主键") + private Long id; + + /** + * appid + */ + @TableField(value = "appid") + @ApiModelProperty(value="appid") + private String appid; + + /** + * app私钥 + */ + @TableField(value = "app_private_key") + @ApiModelProperty(value="app私钥") + private String appPrivateKey; + + /** + * 阿里公钥 + */ + @TableField(value = "alipay_public_key") + @ApiModelProperty(value="阿里公钥") + private String alipayPublicKey; + + /** + * RSA/RSA2 + */ + @TableField(value = "key_type") + @ApiModelProperty(value="RSA/RSA2") + private String keyType; + + /** + * 回调地址url + */ + @TableField(value = "backurl") + @ApiModelProperty(value="回调地址url") + private String backurl; + + /** + * 帐号状态(0正常 1停用) + */ + @TableField(value = "status") + @ApiModelProperty(value="帐号状态(0正常 1停用)") + private String status; + + @TableField(value = "remark") + @ApiModelProperty(value="") + private String remark; +} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/PayInfo.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/PayInfo.java new file mode 100644 index 0000000..6e9cd84 --- /dev/null +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/PayInfo.java @@ -0,0 +1,150 @@ +package com.bnyer.common.core.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.math.BigDecimal; +import java.util.Date; +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import lombok.ToString; + +/** + * @author :WXC + * @description : + */ +/** + * 付款信息表 + */ +@ApiModel(value="com-bnyer-common-core-domain-PayPayInfo") +@Getter +@Setter +@ToString +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "pay_pay_info") +public class PayInfo extends BaseDomain { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty(value="主键") + private Long id; + + /** + * 支付单号(内部生成) + */ + @TableField(value = "pay_id") + @ApiModelProperty(value="支付单号(内部生成)") + private String payId; + + /** + * 业务主订单id:关联内部业务订单表 + */ + @TableField(value = "order_id") + @ApiModelProperty(value="业务主订单id:关联内部业务订单表") + private String orderId; + + /** + * 支付状态:1000未支付;1001支付成功 ;1002支付失败 + */ + @TableField(value = "pay_status") + @ApiModelProperty(value="支付状态:1000未支付;1001支付成功 ;1002支付失败") + private Integer payStatus; + + /** + * 支付类型:wxpay/alipay + */ + @TableField(value = "pay_type") + @ApiModelProperty(value="支付类型:wxpay/alipay") + private String payType; + + /** + * 支付单号(第三方返回) + */ + @TableField(value = "pay_no") + @ApiModelProperty(value="支付单号(第三方返回)") + private String payNo; + + /** + * appid + */ + @TableField(value = "appid") + @ApiModelProperty(value="appid") + private String appid; + + /** + * 商品标题 + */ + @TableField(value = "goods_subject") + @ApiModelProperty(value="商品标题") + private String goodsSubject; + + /** + * 商品描述 + */ + @TableField(value = "goods_desc") + @ApiModelProperty(value="商品描述") + private String goodsDesc; + + /** + * 支付金额,单位元 + */ + @TableField(value = "pay_amount") + @ApiModelProperty(value="支付金额,单位元") + private BigDecimal payAmount; + + /** + * 支付时间 + */ + @TableField(value = "pay_time") + @ApiModelProperty(value="支付时间") + private Date payTime; + + /** + * 支付场景:1.会员充值 + */ + @TableField(value = "scene_code") + @ApiModelProperty(value="支付场景:1.会员充值") + private Integer sceneCode; + + /** + * 用户ip + */ + @TableField(value = "ip") + @ApiModelProperty(value="用户ip") + private String ip; + + /** + * 调用第三方下单返回 + */ + @TableField(value = "third_code") + @ApiModelProperty(value="调用第三方下单返回") + private String thirdCode; + + /** + * 调用第三方下单返回 + */ + @TableField(value = "third_msg") + @ApiModelProperty(value="调用第三方下单返回") + private String thirdMsg; + + /** + * 调用第三方下单返回 + */ + @TableField(value = "third_no") + @ApiModelProperty(value="调用第三方下单返回") + private String thirdNo; + + /** + * 备注 + */ + @TableField(value = "remark") + @ApiModelProperty(value="备注") + private String remark; +} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/R.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/R.java index 2ae3ccc..825ea22 100644 --- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/R.java +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/R.java @@ -3,6 +3,8 @@ package com.bnyer.common.core.domain; import java.io.Serializable; import com.bnyer.common.core.constant.Constants; +import com.bnyer.common.core.enums.ResponseEnum; +import com.bnyer.common.core.web.domain.AjaxResult; /** * 响应信息主体 @@ -65,6 +67,16 @@ public class R implements Serializable return restResult(null, code, msg); } + /** + * 返回错误消息 + * @param responseEnum + * @return + */ + public static R fail(ResponseEnum responseEnum) + { + return restResult(null,responseEnum.getCode(), responseEnum.getMsg()); + } + private static R restResult(T data, int code, String msg) { R apiResult = new R<>(); @@ -103,4 +115,9 @@ public class R implements Serializable { this.data = data; } + + public boolean isSuccess(){ + return this.code == SUCCESS; + } + } diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/UserVip.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/UserVip.java index 700b7a6..f72107d 100644 --- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/UserVip.java +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/UserVip.java @@ -81,5 +81,12 @@ public class UserVip extends BaseDomain { @ApiModelProperty(value="是否到期自动续费(0>否;1->是)") private String isDelay; + /** + * 用户客户端类型:10用户-抖音 20用户-快手 30用户-微信 40艺术家-微信 + */ + @TableField(value = "user_client_type") + @ApiModelProperty(value="vip客户端类型:10用户-抖音 20用户-快手 30用户-微信 40艺术家-微信") + private Integer userClientType; + private static final long serialVersionUID = 1L; } \ No newline at end of file diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/UserVipRecord.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/UserVipRecord.java index 1325c6d..a6e974d 100644 --- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/UserVipRecord.java +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/UserVipRecord.java @@ -42,11 +42,11 @@ public class UserVipRecord extends BaseDomain { private String phone; /** - * 用户vip表id + * vip表id */ - @TableField(value = "user_vip_id") - @ApiModelProperty(value="用户vip表id") - private Long userVipId; + @TableField(value = "vip_id") + @ApiModelProperty(value="vip表id") + private Long vipId; /** * 开始时间 diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/VipOrder.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/VipOrder.java new file mode 100644 index 0000000..ba4a095 --- /dev/null +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/VipOrder.java @@ -0,0 +1,143 @@ +package com.bnyer.common.core.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.math.BigDecimal; +import java.util.Date; +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import lombok.ToString; + +/** + * @author :WXC + * @description : + */ +/** + * 会员订单表 + */ +@ApiModel(value="com-bnyer-common-core-domain-OrderVipOrder") +@Getter +@Setter +@ToString +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "order_vip_order") +public class VipOrder extends BaseDomain { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty(value="主键") + private Long id; + + /** + * 订单id + */ + @TableField(value = "order_id") + @ApiModelProperty(value="订单id") + private String orderId; + + /** + * 用户手机号 + */ + @TableField(value = "phone") + @ApiModelProperty(value="用户手机号") + private String phone; + + /** + * 用户id + */ + @TableField(value = "user_id") + @ApiModelProperty(value="用户id") + private Long userId; + + /** + * vip主键Id + */ + @TableField(value = "vip_id") + @ApiModelProperty(value="vip主键Id") + private Long vipId; + + /** + * vip编码 + */ + @TableField(value = "vip_code") + @ApiModelProperty(value="vip编码") + private String vipCode; + + /** + * vip名称 + */ + @TableField(value = "vip_name") + @ApiModelProperty(value="vip名称") + private String vipName; + + /** + * 支付金额,单位元 + */ + @TableField(value = "pay_amount") + @ApiModelProperty(value="支付金额,单位元") + private BigDecimal payAmount; + + /** + * 是否到期自动续费(0>否;1->是) + */ + @TableField(value = "is_delay") + @ApiModelProperty(value="是否到期自动续费(0>否;1->是)") + private String isDelay; + + /** + * 时长天数 + */ + @TableField(value = "days") + @ApiModelProperty(value="时长天数") + private Integer days; + + /** + * 订单状态:0未处理;1成功;2失败 + */ + @TableField(value = "order_status") + @ApiModelProperty(value="订单状态:0未处理;1成功;2失败") + private Integer orderStatus; + + /** + * 订单关闭原因:0超时未支付; 1买家取消 + */ + @TableField(value = "close_type") + @ApiModelProperty(value="订单关闭原因:0超时未支付; 1买家取消") + private Byte closeType; + + /** + * 支付时间 + */ + @TableField(value = "pay_time") + @ApiModelProperty(value="支付时间") + private Date payTime; + + /** + * 取消时间 + */ + @TableField(value = "cancel_time") + @ApiModelProperty(value="取消时间") + private Date cancelTime; + + /** + * 用户客户端类型:10用户-抖音 20用户-快手 30用户-微信 40艺术家-微信 + */ + @TableField(value = "user_client_type") + @ApiModelProperty(value = "用户客户端类型:10用户-抖音 20用户-快手 30用户-微信 40艺术家-微信") + private Integer userClientType; + + /** + * 备注 + */ + @TableField(value = "remark") + @ApiModelProperty(value="备注") + private String remark; +} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/WxpayConfig.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/WxpayConfig.java new file mode 100644 index 0000000..a9a60d8 --- /dev/null +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/domain/WxpayConfig.java @@ -0,0 +1,83 @@ +package com.bnyer.common.core.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.util.Date; +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import lombok.ToString; + +/** + * @author :WXC + * @description : + */ +/** + * 微信支付配置表 + */ +@ApiModel(value="com-bnyer-common-core-domain-PayWxpayConfig") +@Getter +@Setter +@ToString +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "pay_wxpay_config") +public class WxpayConfig extends BaseDomain { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty(value="主键") + private Long id; + + /** + * APP|JSAPI|MWEB|MINIPROGRAM 支付 + */ + @TableField(value = "trade_type") + @ApiModelProperty(value="APP|JSAPI|MWEB|MINIPROGRAM 支付") + private String tradeType; + + /** + * appid + */ + @TableField(value = "appid") + @ApiModelProperty(value="appid") + private String appid; + + /** + * 商户号 + */ + @TableField(value = "mchid") + @ApiModelProperty(value="商户号") + private String mchid; + + /** + * 回调地址url + */ + @TableField(value = "backurl") + @ApiModelProperty(value="回调地址url") + private String backurl; + + /** + * 密钥 + */ + @TableField(value = "key") + @ApiModelProperty(value="密钥") + private String key; + + /** + * 帐号状态(0正常 1停用) + */ + @TableField(value = "status") + @ApiModelProperty(value="帐号状态(0正常 1停用)") + private String status; + + @TableField(value = "remark") + @ApiModelProperty(value="") + private String remark; +} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/PayUserVipDto.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/PayUserVipDto.java index 83e2f01..80af424 100644 --- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/PayUserVipDto.java +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/PayUserVipDto.java @@ -21,7 +21,7 @@ public class PayUserVipDto implements Serializable { @NotNull(message = "用户vipId不能为空!") @ApiModelProperty(value="用户vip表id") - private Long userVipId; + private Long vipId; @NotBlank(message = "vip类型状态不能为空!") @ApiModelProperty(value="vip类型状态(0->月卡;1->季卡;2->年卡)") diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/QueryUserVipDto.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/QueryUserVipDto.java new file mode 100644 index 0000000..ea669fe --- /dev/null +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/QueryUserVipDto.java @@ -0,0 +1,23 @@ +package com.bnyer.common.core.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +/** + * @author :WXC + * @Date :2023/03/31 + * @description : + */ +@Getter +@Setter +@ApiModel("会员vip查询类") +public class QueryUserVipDto { + @ApiModelProperty(value="主键Id") + private Long id; + + @ApiModelProperty(value="vip客户端类型:10用户-抖音 20用户-快手 30用户-微信 40艺术家-微信") + private Integer userClientType; + +} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/VipOrderDto.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/VipOrderDto.java deleted file mode 100644 index 1ad7cbc..0000000 --- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/dto/VipOrderDto.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.bnyer.common.core.dto; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.NoArgsConstructor; -import lombok.Setter; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; -import java.io.Serializable; - -/** - * @author :WXC - * @Date :2023/03/27 - * @description : - */ -@Getter -@Setter -@NoArgsConstructor -public class VipOrderDto implements Serializable { - - @NotBlank(message = "手机号不能为空!") - @ApiModelProperty(value="手机号") - private String phone; - - @NotNull(message = "用户vipId不能为空!") - @ApiModelProperty(value="用户vip表id") - private Long userVipId; - - @NotBlank(message = "vip类型状态不能为空!") - @ApiModelProperty(value="vip类型状态(0->月卡;1->季卡;2->年卡)") - private String type; - -} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/enums/EnumUserClientType.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/enums/EnumUserClientType.java new file mode 100644 index 0000000..b520883 --- /dev/null +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/enums/EnumUserClientType.java @@ -0,0 +1,44 @@ +package com.bnyer.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @author :WXC + * @description : + */ +@Getter +@AllArgsConstructor +public enum EnumUserClientType { + + DU(10,"抖音","用户","DU"), + KU(20,"快手","用户","KU"), + WU(30,"微信","用户","WU"), + WY(40,"微信","艺术家","WY"), + ; + + private final int type; + + private final String name; + + private final String role; + + private final String desc; + + public static String getName(int type) { + for (EnumUserClientType s : EnumUserClientType.values()) { + if (type == s.type) { + return s.getName(); + } + } + return null; + } + public static String getDesc(int type) { + for (EnumUserClientType s : EnumUserClientType.values()) { + if (type == s.type) { + return s.getDesc(); + } + } + return null; + } +} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/enums/ResponseEnum.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/enums/ResponseEnum.java index 44f80ae..8ee1dd9 100644 --- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/enums/ResponseEnum.java +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/enums/ResponseEnum.java @@ -7,19 +7,25 @@ package com.bnyer.common.core.enums; */ public enum ResponseEnum { + //======================系统异常========================, + SERVER_ERROR(500, "系统繁忙,请稍候重试!"), + PARAM_ERROR(400, "参数异常!"), + NOT_EXIST(110001, "查询为空"), + + //======================订单异常======================== /** * 订单已过期,当前端看到该状态码的时候,提示订单信息已过期,请重新确认后提交,此时用户点击确定,前端刷新页面。 */ - ORDER_EXPIRED(110001, "订单已过期"), + ORDER_EXPIRED(210001, "订单已过期"), /** * 请勿重复提交订单, * 1.当前端遇到该异常时,说明前端防多次点击没做好 * 2.提示用户 订单已发生改变,请勿重复下单 */ - REPEAT_ORDER(110002,"请勿重复提交订单"), + REPEAT_ORDER(210002,"请勿重复提交订单"), ; @@ -27,7 +33,7 @@ public enum ResponseEnum { private final String msg; - public int value() { + public int getCode() { return code; } @@ -47,4 +53,13 @@ public enum ResponseEnum { ", msg='" + msg + '\'' + '}'; } + + public static String getCodeMsg(int code) { + for (ResponseEnum s : ResponseEnum.values()) { + if (code == s.getCode()) { + return s.getMsg(); + } + } + return null; + } } diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/exception/ServiceException.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/exception/ServiceException.java index 484d759..fc213cd 100644 --- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/exception/ServiceException.java +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/exception/ServiceException.java @@ -1,5 +1,10 @@ package com.bnyer.common.core.exception; +import com.bnyer.common.core.enums.ResponseEnum; +import com.bnyer.common.core.utils.StringUtils; + +import java.util.Arrays; + /** * 业务异常 * @@ -44,6 +49,15 @@ public final class ServiceException extends RuntimeException this.code = code; } + public ServiceException(Integer code, String... params) { + this.code = code; + if (StringUtils.isNotEmpty(params)){ + this.message = StringUtils.join(params,",") + ResponseEnum.getCodeMsg(code); + }else { + this.message = ResponseEnum.getCodeMsg(code); + } + } + public String getDetailMessage() { return detailMessage; diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/utils/OrderUtil.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/utils/OrderUtil.java new file mode 100644 index 0000000..9a88bcd --- /dev/null +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/utils/OrderUtil.java @@ -0,0 +1,30 @@ +package com.bnyer.common.core.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Random; + +public class OrderUtil { + + /** + * 生成流水(不超过32位) + * + * @frontStr 费用类型 RV=会员充值 + * @return 3位项目ID+2费用类型+14时间+11userId+2随机位 + */ + public static String getOrderId(String frontStr, Date curTime, String userClientType, String userId) { + SimpleDateFormat simple = new SimpleDateFormat("yyyyMMddHHmmss"); + String ms = simple.format(curTime); + + Random rand = new Random(); + String strRand = String.valueOf(rand.nextInt(100)); + while (strRand.length() < 2) { + strRand = "0" + strRand; + } + return frontStr+userClientType + ms + userId+ strRand; + } + + public static void main(String[] args) { + System.out.println(getOrderId("RV",new Date(),"DY",1+"")); + } +} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/vo/VipOrderVo.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/vo/VipOrderVo.java deleted file mode 100644 index 9036dd6..0000000 --- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/vo/VipOrderVo.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.bnyer.common.core.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.NoArgsConstructor; -import lombok.Setter; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * @author :WXC - * @Date :2023/03/27 - * @description : - */ -@Getter -@Setter -@NoArgsConstructor -public class VipOrderVo { - - @ApiModelProperty(value="手机号") - private String phone; - - @ApiModelProperty(value="用户vip表id") - private Long userVipId; - - @ApiModelProperty(value="vip类型状态(0->月卡;1->季卡;2->年卡)") - private String type; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @ApiModelProperty(value="开始时间") - private Date startTime; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @ApiModelProperty(value="到期时间") - private Date endTime; - - @ApiModelProperty(value="总金额") - private BigDecimal totalAmount; - -} diff --git a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/web/domain/AjaxResult.java b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/web/domain/AjaxResult.java index 633928c..741a214 100644 --- a/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/web/domain/AjaxResult.java +++ b/bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/web/domain/AjaxResult.java @@ -1,10 +1,10 @@ package com.bnyer.common.core.web.domain; -import java.util.HashMap; import com.bnyer.common.core.constant.HttpStatus; -import com.bnyer.common.core.enums.ResponseEnum; import com.bnyer.common.core.utils.StringUtils; +import java.util.HashMap; + /** * 操作消息提醒 * @@ -161,12 +161,4 @@ public class AjaxResult extends HashMap return new AjaxResult(code, msg, null); } - /** - * 返回错误消息 - * @param responseEnum - * @return - */ - public static AjaxResult error(ResponseEnum responseEnum) { - return new AjaxResult(responseEnum.value(), responseEnum.getMsg(), null); - } } diff --git a/bnyer-common/bnyer-common-redis/src/main/java/com/bnyer/common/redis/service/RedisService.java b/bnyer-common/bnyer-common-redis/src/main/java/com/bnyer/common/redis/service/RedisService.java index ab0dff5..335f92f 100644 --- a/bnyer-common/bnyer-common-redis/src/main/java/com/bnyer/common/redis/service/RedisService.java +++ b/bnyer-common/bnyer-common-redis/src/main/java/com/bnyer/common/redis/service/RedisService.java @@ -1,6 +1,7 @@ package com.bnyer.common.redis.service; import cn.hutool.core.util.StrUtil; +import com.bnyer.common.core.enums.ResponseEnum; import com.bnyer.common.core.exception.ServiceException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.*; @@ -355,7 +356,7 @@ public class RedisService public boolean cad(String key, String value) { if (key.contains(StrUtil.SPACE) || value.contains(StrUtil.SPACE)) { - throw new ServiceException("系统繁忙,请稍候重试!"); + throw new ServiceException(ResponseEnum.SERVER_ERROR.getCode()); } String script = "if redis.call('get', KEYS[1]) == ARGV[1] then return redis.call('del', KEYS[1]) else return 0 end"; diff --git a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java index 0b85b33..0d32885 100644 --- a/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java +++ b/bnyer-services/bnyer-file/src/main/java/com/bnyer/file/service/impl/FileServiceImpl.java @@ -2,30 +2,20 @@ package com.bnyer.file.service.impl; import com.bnyer.common.redis.service.RedisService; import com.bnyer.file.constants.RedisKeyConstant; -import com.bnyer.file.dto.FileDto; -import com.bnyer.file.dto.FileUploadDto; import com.bnyer.file.service.IFileService; import com.bnyer.file.service.IQiniuService; import com.bnyer.file.service.ITikTokImage; import com.bnyer.file.utils.ImgUtil; import com.bnyer.file.vo.ChekFileVo; -import com.bnyer.img.api.RemoteImgService; -import com.bnyer.img.api.dto.TiktokImgMiniDto; -import org.apache.http.entity.ContentType; +import com.bnyer.img.api.remote.RemoteImgService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.mock.web.MockMultipartFile; -import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; import java.util.ArrayList; import lombok.extern.slf4j.Slf4j; import java.text.SimpleDateFormat; import java.util.Date; -import java.util.UUID; /** * @Author: Yeman diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java index 2e89129..13cd97a 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/FhMiniController.java @@ -12,10 +12,7 @@ import com.bnyer.common.core.web.domain.AjaxResult; import com.bnyer.common.core.web.page.TableDataInfo; import com.bnyer.img.api.model.LoginFhUser; import com.bnyer.img.service.*; -import com.bnyer.img.vo.CreatorDetailsVo; -import com.bnyer.img.vo.CreatorFollowVo; -import com.bnyer.img.vo.SignImgVo; -import com.bnyer.img.vo.TiktokImgVo; +import com.bnyer.img.vo.*; import com.github.pagehelper.PageHelper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -292,8 +289,8 @@ public class FhMiniController extends BaseController { @ApiOperation(value="获取用户会员vip列表") @GetMapping(value = "/queryUserVipList") - public AjaxResult queryUserVipList(){ - return AjaxResult.success(userVipService.queryFront()); + public R> queryUserVipList(QueryUserVipDto dto){ + return R.ok(userVipService.queryFront(dto)); } @ApiOperation(value="支付购买用户会员vip") diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokMiniController.java index da2802a..ccc6bcd 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokMiniController.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/TiktokMiniController.java @@ -306,8 +306,8 @@ public class TiktokMiniController extends BaseController { @ApiOperation(value="获取用户会员vip列表") @GetMapping(value = "/queryUserVipList") - public AjaxResult queryUserVipList(){ - return AjaxResult.success(userVipService.queryFront()); + public R> queryUserVipList(QueryUserVipDto dto){ + return R.ok(userVipService.queryFront(dto)); } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java index 610a52f..9c9a2c2 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WxMiniController.java @@ -12,10 +12,7 @@ import com.bnyer.common.core.web.domain.AjaxResult; import com.bnyer.common.core.web.page.TableDataInfo; import com.bnyer.img.api.model.LoginWechatUser; import com.bnyer.img.service.*; -import com.bnyer.img.vo.CreatorDetailsVo; -import com.bnyer.img.vo.CreatorFollowVo; -import com.bnyer.img.vo.SignImgVo; -import com.bnyer.img.vo.TiktokImgVo; +import com.bnyer.img.vo.*; import com.github.pagehelper.PageHelper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -315,11 +312,10 @@ public class WxMiniController extends BaseController { @ApiOperation(value="获取用户会员vip列表") @GetMapping(value = "/queryUserVipList") - public AjaxResult queryUserVipList(){ - return AjaxResult.success(userVipService.queryFront()); + public R> queryUserVipList(QueryUserVipDto dto){ + return R.ok(userVipService.queryFront(dto)); } - @ApiOperation(value="支付购买用户会员vip") @PostMapping(value = "/payUserVip") public AjaxResult payUserVip(@Validated @RequestBody @ApiParam("购买会员vip对象") PayUserVipDto dto){ diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/UserVipMapper.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/UserVipMapper.java index 683996b..73675ec 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/UserVipMapper.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/UserVipMapper.java @@ -2,6 +2,7 @@ package com.bnyer.img.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.bnyer.common.core.domain.UserVip; +import com.bnyer.common.core.dto.QueryUserVipDto; import com.bnyer.img.vo.UserVipVo; import org.apache.ibatis.annotations.Mapper; @@ -14,6 +15,6 @@ public interface UserVipMapper extends BaseMapper { * 获取小程序端会员vip列表 * @return - */ - List queryFront(); + List queryFront(QueryUserVipDto dto); } \ No newline at end of file diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/UserVipService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/UserVipService.java index b873ec7..ad7f06e 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/UserVipService.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/UserVipService.java @@ -1,5 +1,6 @@ package com.bnyer.img.service; +import com.bnyer.common.core.dto.QueryUserVipDto; import com.bnyer.img.vo.UserVipVo; import java.util.List; @@ -10,5 +11,6 @@ public interface UserVipService { * 获取小程序端会员vip列表 * @return - */ - List queryFront(); + List queryFront(QueryUserVipDto dto); + } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/UserVipServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/UserVipServiceImpl.java index a6fd3bf..4f61520 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/UserVipServiceImpl.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/UserVipServiceImpl.java @@ -1,5 +1,6 @@ package com.bnyer.img.service.impl; +import com.bnyer.common.core.dto.QueryUserVipDto; import com.bnyer.img.mapper.UserVipMapper; import com.bnyer.img.service.UserVipService; import com.bnyer.img.vo.UserVipVo; @@ -17,7 +18,7 @@ public class UserVipServiceImpl implements UserVipService { private UserVipMapper userVipMapper; @Override - public List queryFront() { - return userVipMapper.queryFront(); + public List queryFront(QueryUserVipDto dto) { + return userVipMapper.queryFront(dto); } } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/UserVipVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/UserVipVo.java index 46fe4ae..d7c8cad 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/UserVipVo.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/UserVipVo.java @@ -17,6 +17,9 @@ public class UserVipVo implements Serializable { @ApiModelProperty(value="主键Id") private Long id; + @ApiModelProperty(value="vip编码") + private String vipCode; + @ApiModelProperty(value="vip名称") private String vipName; @@ -35,5 +38,11 @@ public class UserVipVo implements Serializable { @ApiModelProperty(value="排序") private Integer sort; + @ApiModelProperty(value="是否到期自动续费(0>否;1->是)") + private String isDelay; + + @ApiModelProperty(value="时长天数") + private Integer days; + private static final long serialVersionUID = 1L; } diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipMapper.xml index 84f4c52..eca0d75 100644 --- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipMapper.xml +++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipMapper.xml @@ -17,17 +17,36 @@ + - id, vip_name, vip_code, origin_price, price, description, hot_sign_desc, `days`, - is_delay, is_show, create_time, update_time, sort + v.id, + v.vip_name, + v.vip_code, + v.origin_price, + v.price, + v.description, + v.hot_sign_desc, + v.`days`, + v.is_delay, + v.is_show, + v.create_time, + v.update_time, + v.sort, + v.user_client_type \ No newline at end of file diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipRecordMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipRecordMapper.xml index 29a6113..ce14824 100644 --- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipRecordMapper.xml +++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipRecordMapper.xml @@ -7,7 +7,7 @@ - + @@ -20,7 +20,7 @@ - id,order_id, phone,price,status, user_vip_id, start_time, end_time,type, is_show, create_time, update_time, + id,order_id, phone,price,status, vip_id, start_time, end_time,type, is_show, create_time, update_time, sort diff --git a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/controller/VipOrderController.java b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/controller/VipOrderController.java index bd35334..701c021 100644 --- a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/controller/VipOrderController.java +++ b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/controller/VipOrderController.java @@ -1,9 +1,10 @@ package com.bnyer.order.controller; import com.bnyer.common.core.context.SecurityContextHolder; -import com.bnyer.common.core.dto.VipOrderDto; +import com.bnyer.common.core.domain.R; +import com.bnyer.order.dto.VipOrderDto; import com.bnyer.common.core.enums.ResponseEnum; -import com.bnyer.common.core.vo.VipOrderVo; +import com.bnyer.order.vo.VipOrderVo; import com.bnyer.common.core.web.controller.BaseController; import com.bnyer.common.core.web.domain.AjaxResult; import com.bnyer.common.redis.constant.CacheNames; @@ -49,30 +50,30 @@ public class VipOrderController extends BaseController { */ @PostMapping("/confirmVipOrder") @Operation(summary = "生成订单,返回订单信息" , description = "传入下单所需要的参数进行下单") - public AjaxResult confirmVipOrder(@Valid @RequestBody VipOrderDto vipOrderDto){ + public R confirmVipOrder(@Valid @RequestBody VipOrderDto vipOrderDto){ VipOrderVo vipOrderVo = vipOrderService.confirmVipOrder(vipOrderDto); - return AjaxResult.success(vipOrderVo); + return R.ok(vipOrderVo); } /** * 提交订单 */ @PostMapping("/submitOrder") - @Operation(summary = "提交订单,返回支付流水号" , description = "提交订单,通过支付场景获取订单信息生成订单并返回订单号") - public AjaxResult submitVipOrder() { + @Operation(summary = "提交订单,返回支付流水号" , description = "提交订单,返回支付流水号") + public R submitVipOrder() { // 防止重复提交 Long userId = SecurityContextHolder.getUserId(); VipOrderVo vipOrderVo = redisCacheService.getCache(OrderCacheNames.VIP_ORDER_PREFIX + OrderCacheNames.ORDER_CONFIRM_KEY, String.valueOf(userId)); // 看看订单有没有过期 if (Objects.isNull(vipOrderVo)) { - return AjaxResult.error(ResponseEnum.ORDER_EXPIRED); + return R.fail(ResponseEnum.ORDER_EXPIRED); } boolean cad = redisService.cad(OrderCacheNames.VIP_ORDER_PREFIX + OrderCacheNames.ORDER_CONFIRM_UID_KEY + CacheNames.UNION + userId, String.valueOf(userId)); if (!cad) { - return AjaxResult.error(ResponseEnum.REPEAT_ORDER); + return R.fail(ResponseEnum.REPEAT_ORDER); } String orderId = vipOrderService.submitVipOrder(userId,vipOrderVo); - return AjaxResult.success(orderId); + return R.fail(orderId); } } diff --git a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/dto/VipOrderDto.java b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/dto/VipOrderDto.java new file mode 100644 index 0000000..b29198d --- /dev/null +++ b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/dto/VipOrderDto.java @@ -0,0 +1,45 @@ +package com.bnyer.order.dto; + +import com.bnyer.common.core.annotation.DiyParamsValidation; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import org.hibernate.validator.constraints.Range; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @author :WXC + * @Date :2023/03/27 + * @description : + */ +@Getter +@Setter +@NoArgsConstructor +public class VipOrderDto implements Serializable { + + @NotBlank(message = "手机号不能为空!") + @ApiModelProperty(value="手机号") + private String phone; + +// @ApiModelProperty(value = "购买数量") +// private Integer payNum; + + @NotNull(message = "vipId不能为空!") + @ApiModelProperty(value="vip表id") + private Long vipId; + +// @NotBlank(message = "用户客户端类型不能为空!") +// @Range(min = 10,max = 40,message = "用户客户端类型只能包含:10用户-抖音 20用户-快手 30用户-微信 40艺术家-微信") +// @ApiModelProperty(value="用户客户端类型:10用户-抖音 20用户-快手 30用户-微信 40艺术家-微信") +// private Integer userClientType; + +// @NotBlank(message = "vip类型状态不能为空!") +// @DiyParamsValidation(range = "0|1|2",message = "下单范围类型暂时只能传0->月卡;1->季卡;2->年卡") +// @ApiModelProperty(value="vip类型状态(0->月卡;1->季卡;2->年卡)") +// private String type; + +} diff --git a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/enums/EnumVipOrderStatus.java b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/enums/EnumVipOrderStatus.java new file mode 100644 index 0000000..45fd1e5 --- /dev/null +++ b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/enums/EnumVipOrderStatus.java @@ -0,0 +1,32 @@ +package com.bnyer.order.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @author :WXC + * @description : + */ +@Getter +@AllArgsConstructor +public enum EnumVipOrderStatus { + + NOT_PROCESS(0,"未处理"), + SUCCESS(1,"成功"), + FAILS(2,"失败"), + ; + + private final int status; + + private final String name; + + public static String getStatusName(int status) { + for (EnumVipOrderStatus s : EnumVipOrderStatus.values()) { + if (status == s.status) { + return s.getName(); + } + } + return null; + } + +} diff --git a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/mapper/TestMapper.java b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/mapper/TestMapper.java deleted file mode 100644 index a1d8962..0000000 --- a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/mapper/TestMapper.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.bnyer.order.mapper; - -import org.apache.ibatis.annotations.Mapper; - -@Mapper -public class TestMapper { -} diff --git a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/mapper/VipOrderMapper.java b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/mapper/VipOrderMapper.java new file mode 100644 index 0000000..ddf7fce --- /dev/null +++ b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/mapper/VipOrderMapper.java @@ -0,0 +1,13 @@ +package com.bnyer.order.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.bnyer.common.core.domain.VipOrder; +import org.apache.ibatis.annotations.Mapper; + +/** + * @author :WXC + * @description : + */ +@Mapper +public interface VipOrderMapper extends BaseMapper { +} diff --git a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/VipOrderService.java b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/VipOrderService.java index b147150..1ed809a 100644 --- a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/VipOrderService.java +++ b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/VipOrderService.java @@ -1,14 +1,16 @@ package com.bnyer.order.service; -import com.bnyer.common.core.dto.VipOrderDto; -import com.bnyer.common.core.vo.VipOrderVo; +import com.baomidou.mybatisplus.extension.service.IService; +import com.bnyer.common.core.domain.VipOrder; +import com.bnyer.order.dto.VipOrderDto; +import com.bnyer.order.vo.VipOrderVo; /** * @author :WXC * @Date :2023/03/27 * @description : */ -public interface VipOrderService { +public interface VipOrderService extends IService { /** * 生成订单,返回订单信息 * @param vipOrderDto 下单所需要的参数 diff --git a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/impl/VipOrderServiceImpl.java b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/impl/VipOrderServiceImpl.java index cac68ea..9c4c7ec 100644 --- a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/impl/VipOrderServiceImpl.java +++ b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/service/impl/VipOrderServiceImpl.java @@ -1,13 +1,26 @@ package com.bnyer.order.service.impl; +import cn.hutool.core.collection.CollUtil; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.bnyer.common.core.domain.R; +import com.bnyer.common.core.domain.VipOrder; +import com.bnyer.common.core.enums.EnumUserClientType; +import com.bnyer.common.core.enums.ResponseEnum; import com.bnyer.common.core.exception.ServiceException; import com.bnyer.common.core.utils.DateUtils; +import com.bnyer.common.core.utils.OrderUtil; import com.bnyer.common.core.utils.bean.EntityConvertUtil; import com.bnyer.common.redis.constant.CacheNames; import com.bnyer.common.redis.constant.OrderCacheNames; import com.bnyer.common.core.context.SecurityContextHolder; -import com.bnyer.common.core.dto.VipOrderDto; -import com.bnyer.common.core.vo.VipOrderVo; +import com.bnyer.img.api.dto.QueryUserVipDto; +import com.bnyer.img.api.remote.RemoteWxMiniService; +import com.bnyer.img.api.vo.UserVipVo; +import com.bnyer.order.dto.VipOrderDto; +import com.bnyer.order.enums.EnumVipOrderStatus; +import com.bnyer.order.mapper.VipOrderMapper; +import com.bnyer.order.vo.VipOrderVo; import com.bnyer.common.redis.service.RedisCacheService; import com.bnyer.common.redis.service.RedisService; import com.bnyer.common.rocketmq.config.RocketMqConstant; @@ -17,11 +30,11 @@ import lombok.extern.slf4j.Slf4j; import org.apache.rocketmq.client.producer.SendStatus; import org.apache.rocketmq.spring.core.RocketMQTemplate; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.annotation.OrderUtils; import org.springframework.messaging.support.GenericMessage; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Objects; @@ -33,7 +46,7 @@ import java.util.Objects; */ @Slf4j @Service -public class VipOrderServiceImpl implements VipOrderService { +public class VipOrderServiceImpl extends ServiceImpl implements VipOrderService { @Autowired private RedisService redisService; @@ -44,11 +57,19 @@ public class VipOrderServiceImpl implements VipOrderService { @Autowired private RocketMQTemplate orderCancelMqTemplate; + @Autowired + private VipOrderMapper vipOrderMapper; + + @Autowired + private RemoteWxMiniService remoteWxMiniService; + @Override public VipOrderVo confirmVipOrder(VipOrderDto vipOrderDto) { Long userId = SecurityContextHolder.getUserId(); - //将要返回给前端的完整的订单信息 - VipOrderVo vipOrderVo = buildVipOrderVo(vipOrderDto); + //查询对应的vip信息 + UserVipVo userVipVo = buildUserVipVo(vipOrderDto); + //构建返回给前端的完整的订单信息 + VipOrderVo vipOrderVo = buildVipOrderVo(vipOrderDto,userVipVo); // 防止重复提交 redisService.setCacheObject(OrderCacheNames.VIP_ORDER_PREFIX + OrderCacheNames.ORDER_CONFIRM_UID_KEY + CacheNames.UNION + userId, String.valueOf(userId)); // 保存订单计算结果缓存 @@ -57,33 +78,64 @@ public class VipOrderServiceImpl implements VipOrderService { } /** - * 构建vip订单 + * 查询对应的vip信息 * @param vipOrderDto * @return */ - private VipOrderVo buildVipOrderVo(VipOrderDto vipOrderDto) { - VipOrderVo vipOrderVo = EntityConvertUtil.copy(vipOrderDto, VipOrderVo.class); - Date startTime = new Date(); - vipOrderVo.setStartTime(startTime); - if(EnumVipType.MONTH_CARD.getTypeCode().equals(vipOrderDto.getType())){ - //计算月卡(30天)的结束时间 - vipOrderVo.setEndTime(DateUtils.getDateAfter(startTime, 30)); - }else if(EnumVipType.SEASON_CARD.getTypeCode().equals(vipOrderDto.getType())){ - //结算季卡(90天)的结束时间 - vipOrderVo.setEndTime(DateUtils.getDateAfter(startTime, 90)); - }else if (EnumVipType.YEAR_CARD.getTypeCode().equals(vipOrderDto.getType())){ - //计算年卡(365天)的结束时间 - vipOrderVo.setEndTime(DateUtils.getDateAfter(startTime, 365)); - }else { - throw new ServiceException("参数异常!"); + private UserVipVo buildUserVipVo(VipOrderDto vipOrderDto) { + //查询会员信息 + QueryUserVipDto queryUserVipDto = new QueryUserVipDto(); + queryUserVipDto.setId(vipOrderDto.getVipId()); +// queryUserVipDto.setUserClientType(vipOrderDto.getUserClientType()); + R> userVipVoListResult = remoteWxMiniService.queryUserVipList(queryUserVipDto); + if (!userVipVoListResult.isSuccess()){ + log.error("内部接口调用异常:url:{}request{},result{},error:{}","queryUserVipList", JSON.toJSONString(queryUserVipDto),JSON.toJSONString(userVipVoListResult),userVipVoListResult.getMsg()); + throw new ServiceException(userVipVoListResult.getMsg()); + } + List userVipVoList = userVipVoListResult.getData(); + if (CollUtil.isEmpty(userVipVoList)){ + throw new ServiceException(ResponseEnum.NOT_EXIST.getCode(),"会员信息"); } + UserVipVo userVipVo = userVipVoList.get(0); + return userVipVo; + } + + /** + * 构建vip订单 + * + * @param vipOrderDto + * @param userVipVo + * @return + */ + private VipOrderVo buildVipOrderVo(VipOrderDto vipOrderDto, UserVipVo userVipVo) { + VipOrderVo vipOrderVo = EntityConvertUtil.copy(userVipVo, VipOrderVo.class); + vipOrderVo.setPhone(vipOrderDto.getPhone()); + vipOrderVo.setVipId(vipOrderDto.getVipId()); + vipOrderVo.setPayAmount(userVipVo.getPrice()); +// Date startTime = new Date(); +// vipOrderVo.setStartTime(startTime); +// if(EnumVipType.MONTH_CARD.getTypeCode().equals(vipOrderDto.getType())){ +// //计算月卡(30天)的结束时间 +// vipOrderVo.setEndTime(DateUtils.getDateAfter(startTime, 30)); +// }else if(EnumVipType.SEASON_CARD.getTypeCode().equals(vipOrderDto.getType())){ +// //结算季卡(90天)的结束时间 +// vipOrderVo.setEndTime(DateUtils.getDateAfter(startTime, 90)); +// }else if (EnumVipType.YEAR_CARD.getTypeCode().equals(vipOrderDto.getType())){ +// //计算年卡(365天)的结束时间 +// vipOrderVo.setEndTime(DateUtils.getDateAfter(startTime, 365)); +// }else { +// throw new ServiceException(ResponseEnum.PARAM_ERROR.getCode()); +// } return vipOrderVo; } @Override @Transactional(rollbackFor = Exception.class) public String submitVipOrder(Long userId,VipOrderVo vipOrderVo) { - String orderId = "123"; + //构建订单 + VipOrder vipOrder = buildVipOrder(userId,vipOrderVo); + vipOrderMapper.insert(vipOrder); + String orderId = vipOrder.getOrderId(); //发送消息,如果三十分钟后没有支付,则取消订单 SendStatus sendStatus = orderCancelMqTemplate.syncSend(RocketMqConstant.VIP_ORDER_CANCEL_TOPIC, new GenericMessage<>(orderId), RocketMqConstant.TIMEOUT, RocketMqConstant.CANCEL_ORDER_DELAY_LEVEL).getSendStatus(); if (!Objects.equals(sendStatus,SendStatus.SEND_OK)) { @@ -94,4 +146,20 @@ public class VipOrderServiceImpl implements VipOrderService { } return orderId; } + + + /** + * 构建订单 + * @param userId + * @param vipOrderVo + * @return + */ + private VipOrder buildVipOrder(Long userId, VipOrderVo vipOrderVo) { + VipOrder vipOrder = EntityConvertUtil.copy(vipOrderVo, VipOrder.class); + vipOrder.setOrderStatus(EnumVipOrderStatus.NOT_PROCESS.getStatus()); + vipOrder.setOrderId(OrderUtil.getOrderId("RV",new Date(), EnumUserClientType.getDesc(vipOrderVo.getUserClientType()),String.valueOf(userId))); + vipOrder.setCreateTime(new Date()); + vipOrder.setUpdateTime(new Date()); + return vipOrder; + } } diff --git a/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/vo/VipOrderVo.java b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/vo/VipOrderVo.java new file mode 100644 index 0000000..ba7a745 --- /dev/null +++ b/bnyer-services/bnyer-order/src/main/java/com/bnyer/order/vo/VipOrderVo.java @@ -0,0 +1,60 @@ +package com.bnyer.order.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * @author :WXC + * @Date :2023/03/27 + * @description : + */ +@Getter +@Setter +@NoArgsConstructor +public class VipOrderVo { + + @ApiModelProperty(value="手机号") + private String phone; + + @ApiModelProperty(value="vip表id") + private Long vipId; + + @ApiModelProperty(value = "vip编码") + private String vipCode; + + @ApiModelProperty(value = "vip名称") + private String vipName; + + @ApiModelProperty(value="vip类型状态(0->月卡;1->季卡;2->年卡)") + private String type; + +// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") +// @ApiModelProperty(value="开始时间") +// private Date startTime; +// +// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") +// @ApiModelProperty(value="到期时间") +// private Date endTime; + + @ApiModelProperty(value = "用户客户端类型:10用户-抖音 20用户-快手 30用户-微信 40艺术家-微信") + private Integer userClientType; + + @ApiModelProperty(value="热门描述") + private String hotSignDesc; + + @ApiModelProperty(value="是否到期自动续费(0>否;1->是)") + private String isDelay; + + @ApiModelProperty(value="时长天数") + private Integer days; + + @ApiModelProperty(value="支付金额") + private BigDecimal payAmount; + +} diff --git a/bnyer-services/bnyer-order/src/main/resources/com/bnyer/order/mapper/VipOrderMapper.xml b/bnyer-services/bnyer-order/src/main/resources/com/bnyer/order/mapper/VipOrderMapper.xml new file mode 100644 index 0000000..cf26ea1 --- /dev/null +++ b/bnyer-services/bnyer-order/src/main/resources/com/bnyer/order/mapper/VipOrderMapper.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + id, order_id, phone, user_id, vip_id, vip_code, vip_name, pay_amount, is_delay, `days`, + order_status, close_type, pay_time, cancel_time,user_client_type, remark, create_time, update_time + + diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/controller/TestController.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/controller/TestController.java deleted file mode 100644 index 710a945..0000000 --- a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/controller/TestController.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.bnyer.pay.controller; - -public class TestController { -} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/PayAlipayConfigMapper.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/PayAlipayConfigMapper.java new file mode 100644 index 0000000..796fae1 --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/PayAlipayConfigMapper.java @@ -0,0 +1,13 @@ +package com.bnyer.pay.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.bnyer.common.core.domain.AlipayConfig; +import org.apache.ibatis.annotations.Mapper; + +/** + * @author :WXC + * @description : + */ +@Mapper +public interface PayAlipayConfigMapper extends BaseMapper { +} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/PayPayInfoMapper.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/PayPayInfoMapper.java new file mode 100644 index 0000000..59a62bb --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/PayPayInfoMapper.java @@ -0,0 +1,13 @@ +package com.bnyer.pay.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.bnyer.common.core.domain.PayInfo; +import org.apache.ibatis.annotations.Mapper; + +/** + * @author :WXC + * @description : + */ +@Mapper +public interface PayPayInfoMapper extends BaseMapper { +} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/PayWxpayConfigMapper.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/PayWxpayConfigMapper.java new file mode 100644 index 0000000..10c66a7 --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/PayWxpayConfigMapper.java @@ -0,0 +1,13 @@ +package com.bnyer.pay.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.bnyer.common.core.domain.WxpayConfig; +import org.apache.ibatis.annotations.Mapper; + +/** + * @author :WXC + * @description : + */ +@Mapper +public interface PayWxpayConfigMapper extends BaseMapper { +} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/TestMapper.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/TestMapper.java deleted file mode 100644 index 76a93f7..0000000 --- a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/mapper/TestMapper.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.bnyer.pay.mapper; - -public class TestMapper { -} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/PayAlipayConfigService.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/PayAlipayConfigService.java new file mode 100644 index 0000000..1af8eab --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/PayAlipayConfigService.java @@ -0,0 +1,12 @@ +package com.bnyer.pay.service; + +import com.bnyer.common.core.domain.AlipayConfig; +import com.baomidou.mybatisplus.extension.service.IService; + /** + * @author :WXC + * @description : + */ +public interface PayAlipayConfigService extends IService{ + + +} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/PayPayInfoService.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/PayPayInfoService.java new file mode 100644 index 0000000..1a3d82b --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/PayPayInfoService.java @@ -0,0 +1,12 @@ +package com.bnyer.pay.service; + +import com.bnyer.common.core.domain.PayInfo; +import com.baomidou.mybatisplus.extension.service.IService; + /** + * @author :WXC + * @description : + */ +public interface PayPayInfoService extends IService{ + + +} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/PayWxpayConfigService.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/PayWxpayConfigService.java new file mode 100644 index 0000000..ab730a0 --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/PayWxpayConfigService.java @@ -0,0 +1,12 @@ +package com.bnyer.pay.service; + +import com.bnyer.common.core.domain.WxpayConfig; +import com.baomidou.mybatisplus.extension.service.IService; + /** + * @author :WXC + * @description : + */ +public interface PayWxpayConfigService extends IService{ + + +} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/TestService.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/TestService.java deleted file mode 100644 index 26046f1..0000000 --- a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/TestService.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.bnyer.pay.service; - -public class TestService { -} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayAlipayConfigServiceImpl.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayAlipayConfigServiceImpl.java new file mode 100644 index 0000000..ada47c8 --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayAlipayConfigServiceImpl.java @@ -0,0 +1,15 @@ +package com.bnyer.pay.service.impl; + +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.bnyer.pay.mapper.PayAlipayConfigMapper; +import com.bnyer.common.core.domain.AlipayConfig; +import com.bnyer.pay.service.PayAlipayConfigService; +/** + * @author :WXC + * @description : + */ +@Service +public class PayAlipayConfigServiceImpl extends ServiceImpl implements PayAlipayConfigService{ + +} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayPayInfoServiceImpl.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayPayInfoServiceImpl.java new file mode 100644 index 0000000..8d2e622 --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayPayInfoServiceImpl.java @@ -0,0 +1,15 @@ +package com.bnyer.pay.service.impl; + +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.bnyer.common.core.domain.PayInfo; +import com.bnyer.pay.mapper.PayPayInfoMapper; +import com.bnyer.pay.service.PayPayInfoService; +/** + * @author :WXC + * @description : + */ +@Service +public class PayPayInfoServiceImpl extends ServiceImpl implements PayPayInfoService{ + +} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayWxpayConfigServiceImpl.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayWxpayConfigServiceImpl.java new file mode 100644 index 0000000..7dbf35e --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/PayWxpayConfigServiceImpl.java @@ -0,0 +1,15 @@ +package com.bnyer.pay.service.impl; + +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.bnyer.pay.mapper.PayWxpayConfigMapper; +import com.bnyer.common.core.domain.WxpayConfig; +import com.bnyer.pay.service.PayWxpayConfigService; +/** + * @author :WXC + * @description : + */ +@Service +public class PayWxpayConfigServiceImpl extends ServiceImpl implements PayWxpayConfigService{ + +} diff --git a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/TestServiceImpl.java b/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/TestServiceImpl.java deleted file mode 100644 index 024ad89..0000000 --- a/bnyer-services/bnyer-pay/src/main/java/com/bnyer/pay/service/impl/TestServiceImpl.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.bnyer.pay.service.impl; - -public class TestServiceImpl { -} diff --git a/bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/PayAlipayConfigMapper.xml b/bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/PayAlipayConfigMapper.xml new file mode 100644 index 0000000..34c1ada --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/PayAlipayConfigMapper.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + id, appid, app_private_key, alipay_public_key, `key_type`, backurl, `status`, remark, + create_time, update_time + + diff --git a/bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/PayPayInfoMapper.xml b/bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/PayPayInfoMapper.xml new file mode 100644 index 0000000..7b4c1ea --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/PayPayInfoMapper.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id, pay_id, order_id, pay_status, pay_type, pay_no, appid, goods_subject, goods_desc, + pay_amount, pay_time, scene_code, ip, third_code, third_msg, third_no, remark, create_time, + update_time + + diff --git a/bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/PayWxpayConfigMapper.xml b/bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/PayWxpayConfigMapper.xml new file mode 100644 index 0000000..e6320d5 --- /dev/null +++ b/bnyer-services/bnyer-pay/src/main/resources/com/bnyer/pay/mapper/PayWxpayConfigMapper.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + id, trade_type, appid, mchid, backurl, `key`, `status`, remark, create_time, update_time + +