调整框架及订单模块

This commit is contained in:
2025-11-03 17:36:17 +08:00
parent 4f9b9c29a3
commit 323cae015f
67 changed files with 202 additions and 216 deletions

View File

@@ -180,7 +180,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.tashow.cloud</groupId> <groupId>com.tashow.cloud</groupId>
<artifactId>tashow-member-api</artifactId> <artifactId>tashow-user-api</artifactId>
<version>${revision}</version> <version>${revision}</version>
</dependency> </dependency>
<dependency> <dependency>

View File

@@ -16,7 +16,7 @@
<module>tashow-product-api</module> <module>tashow-product-api</module>
<module>tashow-trade-api</module> <module>tashow-trade-api</module>
<module>tashow-pay-api</module> <module>tashow-pay-api</module>
<module>tashow-member-api</module> <module>tashow-user-api</module>
</modules> </modules>
</project> </project>

View File

@@ -1,4 +0,0 @@
/**
* 消息队列的消息
*/
package com.tashow.cloud.memberapi.message;

View File

@@ -8,7 +8,7 @@
<version>${revision}</version> <version>${revision}</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>tashow-member-api</artifactId> <artifactId>tashow-user-api</artifactId>
<packaging>jar</packaging> <packaging>jar</packaging>
<name>${project.artifactId}</name> <name>${project.artifactId}</name>

View File

@@ -1,8 +1,8 @@
package com.tashow.cloud.memberapi.api.address; package com.tashow.cloud.userapi.api.address;
import com.tashow.cloud.common.pojo.CommonResult; import com.tashow.cloud.common.pojo.CommonResult;
import com.tashow.cloud.memberapi.api.address.dto.MemberAddressRespDTO; import com.tashow.cloud.userapi.api.address.dto.MemberAddressRespDTO;
import com.tashow.cloud.memberapi.enums.ApiConstants; import com.tashow.cloud.userapi.enums.ApiConstants;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;

View File

@@ -1,4 +1,4 @@
package com.tashow.cloud.memberapi.api.address.dto; package com.tashow.cloud.userapi.api.address.dto;
import lombok.Data; import lombok.Data;

View File

@@ -1,4 +1,4 @@
/** /**
* member API 定义暴露给其它模块的 API * member API 定义暴露给其它模块的 API
*/ */
package com.tashow.cloud.memberapi.api; package com.tashow.cloud.userapi.api;

View File

@@ -1,8 +1,8 @@
package com.tashow.cloud.memberapi.api.user; package com.tashow.cloud.userapi.api.user;
import com.tashow.cloud.common.pojo.CommonResult; import com.tashow.cloud.common.pojo.CommonResult;
import com.tashow.cloud.memberapi.api.user.dto.MemberUserRespDTO; import com.tashow.cloud.userapi.api.user.dto.UserMemberRespDTO;
import com.tashow.cloud.memberapi.enums.ApiConstants; import com.tashow.cloud.userapi.enums.ApiConstants;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
@@ -17,9 +17,9 @@ import static com.tashow.cloud.common.util.collection.CollectionUtils.convertMap
* RPC 服务 - 会员用户 * RPC 服务 - 会员用户
*/ */
@FeignClient(name = ApiConstants.NAME) // TODO 芋艿fallbackFactory = @FeignClient(name = ApiConstants.NAME) // TODO 芋艿fallbackFactory =
public interface MemberUserApi { public interface UserMemberApi {
String PREFIX = ApiConstants.PREFIX + "/user"; String PREFIX = ApiConstants.PREFIX + "/member";
/** /**
@@ -28,9 +28,9 @@ public interface MemberUserApi {
* @param ids 用户编号的数组 * @param ids 用户编号的数组
* @return 会员用户 Map * @return 会员用户 Map
*/ */
default Map<Long, MemberUserRespDTO> getUserMap(Collection<Long> ids) { default Map<Long, UserMemberRespDTO> getUserMap(Collection<Long> ids) {
List<MemberUserRespDTO> list = getUserList(ids).getCheckedData(); List<UserMemberRespDTO> list = getUserList(ids).getCheckedData();
return convertMap(list, MemberUserRespDTO::getId); return convertMap(list, UserMemberRespDTO::getId);
} }
/** /**
@@ -39,7 +39,7 @@ public interface MemberUserApi {
* @return * @return
*/ */
@GetMapping(PREFIX + "/get") @GetMapping(PREFIX + "/get")
CommonResult<MemberUserRespDTO> getUser(@RequestParam("id") Long id); CommonResult<UserMemberRespDTO> getUser(@RequestParam("id") Long id);
/** /**
* 获得会员用户信息们 * 获得会员用户信息们
@@ -47,7 +47,7 @@ public interface MemberUserApi {
* @return * @return
*/ */
@GetMapping(PREFIX + "/list") @GetMapping(PREFIX + "/list")
CommonResult<List<MemberUserRespDTO>> getUserList(@RequestParam("ids") Collection<Long> ids); CommonResult<List<UserMemberRespDTO>> getUserList(@RequestParam("ids") Collection<Long> ids);
/** /**
* 基于用户昵称模糊匹配用户列表 * 基于用户昵称模糊匹配用户列表
@@ -55,7 +55,7 @@ public interface MemberUserApi {
* @return * @return
*/ */
@GetMapping(PREFIX + "/list-by-nickname") @GetMapping(PREFIX + "/list-by-nickname")
CommonResult<List<MemberUserRespDTO>> getUserListByNickname(@RequestParam("nickname") String nickname); CommonResult<List<UserMemberRespDTO>> getUserListByNickname(@RequestParam("nickname") String nickname);
/** /**
* 基于手机号精准匹配用户 * 基于手机号精准匹配用户
@@ -63,7 +63,7 @@ public interface MemberUserApi {
* @return * @return
*/ */
@GetMapping(PREFIX + "/get-by-mobile") @GetMapping(PREFIX + "/get-by-mobile")
CommonResult<MemberUserRespDTO> getUserByMobile(@RequestParam("mobile") String mobile); CommonResult<UserMemberRespDTO> getUserByMobile(@RequestParam("mobile") String mobile);
/** /**
* 校验用户是否存在 * 校验用户是否存在

View File

@@ -1,4 +1,4 @@
package com.tashow.cloud.memberapi.api.user.dto; package com.tashow.cloud.userapi.api.user.dto;
import lombok.Data; import lombok.Data;
@@ -8,7 +8,7 @@ import java.time.LocalDateTime;
* RPC 服务 - 用户信息 Response DTO * RPC 服务 - 用户信息 Response DTO
*/ */
@Data @Data
public class MemberUserRespDTO { public class UserMemberRespDTO {
//用户编号 //用户编号
private Long id; private Long id;

View File

@@ -1,4 +1,4 @@
package com.tashow.cloud.memberapi.enums; package com.tashow.cloud.userapi.enums;
import com.tashow.cloud.common.enums.RpcConstants; import com.tashow.cloud.common.enums.RpcConstants;
@@ -15,9 +15,9 @@ public class ApiConstants {
* *
* 注意需要保证和 spring.application.name 保持一致 * 注意需要保证和 spring.application.name 保持一致
*/ */
public static final String NAME = "member-server"; public static final String NAME = "user-server";
public static final String PREFIX = RpcConstants.RPC_API_PREFIX + "/member"; public static final String PREFIX = RpcConstants.RPC_API_PREFIX + "/user";
public static final String VERSION = "1.0.0"; public static final String VERSION = "1.0.0";

View File

@@ -1,4 +1,4 @@
package com.tashow.cloud.memberapi.enums; package com.tashow.cloud.userapi.enums;
/** /**
* Member 字典类型的枚举类 * Member 字典类型的枚举类

View File

@@ -1,4 +1,4 @@
package com.tashow.cloud.memberapi.enums; package com.tashow.cloud.userapi.enums;
import com.tashow.cloud.common.exception.ErrorCode; import com.tashow.cloud.common.exception.ErrorCode;

View File

@@ -1,4 +1,4 @@
package com.tashow.cloud.memberapi.enums; package com.tashow.cloud.userapi.enums;
import cn.hutool.core.util.EnumUtil; import cn.hutool.core.util.EnumUtil;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@@ -1,4 +1,4 @@
package com.tashow.cloud.memberapi.enums.point; package com.tashow.cloud.userapi.enums.point;
import cn.hutool.core.util.EnumUtil; import cn.hutool.core.util.EnumUtil;
import com.tashow.cloud.common.core.ArrayValuable; import com.tashow.cloud.common.core.ArrayValuable;

View File

@@ -0,0 +1,4 @@
/**
* 消息队列的消息
*/
package com.tashow.cloud.userapi.message;

View File

@@ -1,4 +1,4 @@
package com.tashow.cloud.memberapi.message.user; package com.tashow.cloud.userapi.message.user;
import lombok.Data; import lombok.Data;

View File

@@ -1,21 +0,0 @@
package com.tashow.cloud.common.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 文档地址
*
* @author 芋道源码
*/
@Getter
@AllArgsConstructor
public enum DocumentEnum {
REDIS_INSTALL("https://gitee.com/zhijiantianya/ruoyi-vue-pro/issues/I4VCSJ", "Redis 安装文档"),
TENANT("https://doc.iocoder.cn", "SaaS 多租户文档");
private final String url;
private final String memo;
}

View File

@@ -177,6 +177,15 @@ public class LocalDateTimeUtils {
public static Long between(LocalDateTime dateTime) { public static Long between(LocalDateTime dateTime) {
return LocalDateTimeUtil.between(dateTime, LocalDateTime.now(), ChronoUnit.DAYS); return LocalDateTimeUtil.between(dateTime, LocalDateTime.now(), ChronoUnit.DAYS);
} }
/**
* 获取指定日期到现在过了几天,如果指定日期在当前日期之后,获取结果为负
*
* @param dateTime 日期
* @return 相差天数
*/
public static Long betweenWithNow(LocalDateTime dateTime) {
return LocalDateTimeUtil.between(dateTime, LocalDateTime.now(), ChronoUnit.SECONDS);
}
/** /**
* 获取今天的开始时间 * 获取今天的开始时间

View File

@@ -9,7 +9,7 @@ import jakarta.validation.constraints.NotNull;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@ConfigurationProperties(prefix = "yudao.security") @ConfigurationProperties(prefix = "tashow.security")
@Validated @Validated
@Data @Data
public class SecurityProperties { public class SecurityProperties {

View File

@@ -138,7 +138,10 @@ public class WebSecurityConfigurerAdapter {
.requestMatchers(HttpMethod.PATCH, permitAllUrls.get(HttpMethod.PATCH).toArray(new String[0])).permitAll() .requestMatchers(HttpMethod.PATCH, permitAllUrls.get(HttpMethod.PATCH).toArray(new String[0])).permitAll()
// 1.3 基于 tashow.security.permit-all-urls 无需认证 // 1.3 基于 tashow.security.permit-all-urls 无需认证
.requestMatchers(securityProperties.getPermitAllUrls().toArray(new String[0])).permitAll() .requestMatchers(securityProperties.getPermitAllUrls().toArray(new String[0])).permitAll()
) )
//app-api 不在security控制权限
.authorizeHttpRequests(c->c.requestMatchers(webProperties.getAppApi().getPrefix()+"/**").permitAll())
// ②:每个项目的自定义规则 // ②:每个项目的自定义规则
.authorizeHttpRequests(c -> authorizeRequestsCustomizers.forEach(customizer -> customizer.customize(c))) .authorizeHttpRequests(c -> authorizeRequestsCustomizers.forEach(customizer -> customizer.customize(c)))
// ③:兜底规则,必须认证 // ③:兜底规则,必须认证

View File

@@ -1,7 +1,6 @@
package com.tashow.cloud.tenant.core.context; package com.tashow.cloud.tenant.core.context;
import com.alibaba.ttl.TransmittableThreadLocal; import com.alibaba.ttl.TransmittableThreadLocal;
import com.tashow.cloud.common.enums.DocumentEnum;
/** /**
* 多租户上下文 Holder * 多租户上下文 Holder
@@ -37,8 +36,7 @@ public class TenantContextHolder {
public static Long getRequiredTenantId() { public static Long getRequiredTenantId() {
Long tenantId = getTenantId(); Long tenantId = getTenantId();
if (tenantId == null) { if (tenantId == null) {
throw new NullPointerException("TenantContextHolder 不存在租户编号!可参考文档:" throw new NullPointerException("TenantContextHolder 不存在租户编号!");
+ DocumentEnum.TENANT.getUrl());
} }
return tenantId; return tenantId;
} }

View File

@@ -3,7 +3,6 @@ package com.tashow.cloud.web.web.config;
import com.tashow.cloud.common.enums.WebFilterOrderEnum; import com.tashow.cloud.common.enums.WebFilterOrderEnum;
import com.tashow.cloud.infraapi.api.logger.ApiErrorLogApi; import com.tashow.cloud.infraapi.api.logger.ApiErrorLogApi;
import com.tashow.cloud.web.web.core.filter.CacheRequestBodyFilter; import com.tashow.cloud.web.web.core.filter.CacheRequestBodyFilter;
import com.tashow.cloud.web.web.core.filter.DemoFilter;
import com.tashow.cloud.web.web.core.handler.GlobalExceptionHandler; import com.tashow.cloud.web.web.core.handler.GlobalExceptionHandler;
import com.tashow.cloud.web.web.core.handler.GlobalResponseBodyHandler; import com.tashow.cloud.web.web.core.handler.GlobalResponseBodyHandler;
import com.tashow.cloud.web.web.core.util.WebFrameworkUtils; import com.tashow.cloud.web.web.core.util.WebFrameworkUtils;
@@ -12,7 +11,6 @@ import jakarta.servlet.Filter;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.autoconfigure.web.client.RestTemplateAutoConfiguration; import org.springframework.boot.autoconfigure.web.client.RestTemplateAutoConfiguration;
import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.boot.web.client.RestTemplateBuilder; import org.springframework.boot.web.client.RestTemplateBuilder;
@@ -104,15 +102,6 @@ public class WebAutoConfiguration implements WebMvcConfigurer {
return createFilterBean(new CacheRequestBodyFilter(), WebFilterOrderEnum.REQUEST_BODY_CACHE_FILTER); return createFilterBean(new CacheRequestBodyFilter(), WebFilterOrderEnum.REQUEST_BODY_CACHE_FILTER);
} }
/**
* 创建 DemoFilter Bean演示模式
*/
@Bean
@ConditionalOnProperty(value = "yudao.demo", havingValue = "true")
public FilterRegistrationBean<DemoFilter> demoFilter() {
return createFilterBean(new DemoFilter(), WebFilterOrderEnum.DEMO_FILTER);
}
public static <T extends Filter> FilterRegistrationBean<T> createFilterBean(T filter, Integer order) { public static <T extends Filter> FilterRegistrationBean<T> createFilterBean(T filter, Integer order) {
FilterRegistrationBean<T> bean = new FilterRegistrationBean<>(filter); FilterRegistrationBean<T> bean = new FilterRegistrationBean<>(filter);
bean.setOrder(order); bean.setOrder(order);

View File

@@ -1,35 +0,0 @@
package com.tashow.cloud.web.web.core.filter;
import cn.hutool.core.util.StrUtil;
import com.tashow.cloud.common.pojo.CommonResult;
import com.tashow.cloud.common.util.servlet.ServletUtils;
import com.tashow.cloud.web.web.core.util.WebFrameworkUtils;
import jakarta.servlet.FilterChain;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.web.filter.OncePerRequestFilter;
import static com.tashow.cloud.common.exception.enums.GlobalErrorCodeConstants.DEMO_DENY;
/**
* 演示 Filter禁止用户发起写操作避免影响测试数据
*
* @author 芋道源码
*/
public class DemoFilter extends OncePerRequestFilter {
@Override
protected boolean shouldNotFilter(HttpServletRequest request) {
String method = request.getMethod();
return !StrUtil.equalsAnyIgnoreCase(method, "POST", "PUT", "DELETE") // 写操作时,不进行过滤率
|| WebFrameworkUtils.getLoginUserId(request) == null; // 非登录用户时,不进行过滤
}
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain chain) {
// 直接返回 DEMO_DENY 的结果。即,请求不继续
ServletUtils.writeJSON(response, CommonResult.error(DEMO_DENY));
}
}

View File

@@ -22,8 +22,8 @@ import static com.tashow.cloud.web.web.config.WebAutoConfiguration.createFilterB
@AutoConfiguration @AutoConfiguration
@EnableConfigurationProperties(XssProperties.class) @EnableConfigurationProperties(XssProperties.class)
@ConditionalOnProperty(prefix = "yudao.xss", name = "enable", havingValue = "true", matchIfMissing = true) // 设置为 false 禁用 @ConditionalOnProperty(prefix = "tashow.xss", name = "enable", havingValue = "true", matchIfMissing = true) // 设置为 false 禁用
public class YudaoXssAutoConfiguration implements WebMvcConfigurer { public class TashowXssAutoConfiguration implements WebMvcConfigurer {
/** /**
* Xss 清理者 * Xss 清理者

View File

@@ -12,7 +12,7 @@ import java.util.List;
* *
* @author 芋道源码 * @author 芋道源码
*/ */
@ConfigurationProperties(prefix = "yudao.xss") @ConfigurationProperties(prefix = "tashow.xss")
@Validated @Validated
@Data @Data
public class XssProperties { public class XssProperties {

View File

@@ -8,7 +8,7 @@ import com.tashow.cloud.ai.service.dialog.AiDialogService;
import com.tashow.cloud.common.pojo.CommonResult; import com.tashow.cloud.common.pojo.CommonResult;
import com.tashow.cloud.common.pojo.PageParam; import com.tashow.cloud.common.pojo.PageParam;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
import jakarta.annotation.security.PermitAll; import jakarta.validation.Valid;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
@@ -35,8 +35,7 @@ public class DialogController {
* 获取对话消息列表 * 获取对话消息列表
*/ */
@GetMapping("/getDialog") @GetMapping("/getDialog")
@PermitAll public CommonResult<DialogResp> msList(@Valid PageParam pageParam) {
public CommonResult<DialogResp> msList(PageParam pageParam) {
//获取当前登录用户 //获取当前登录用户
Long userId = 1L; Long userId = 1L;
return success(aiDialogService.getDialog(userId,pageParam)); return success(aiDialogService.getDialog(userId,pageParam));
@@ -47,7 +46,6 @@ public class DialogController {
* 翻译 * 翻译
*/ */
@PostMapping("/translate") @PostMapping("/translate")
@PermitAll
public CommonResult<TranslateRespVo> translate(@Validated TranslateReqVo fileReqVo) { public CommonResult<TranslateRespVo> translate(@Validated TranslateReqVo fileReqVo) {
return success(aiDialogService.translate(fileReqVo)); return success(aiDialogService.translate(fileReqVo));
} }

View File

@@ -32,8 +32,6 @@ public class SecurityConfiguration {
.requestMatchers(adminSeverContextPath + "/**").permitAll(); .requestMatchers(adminSeverContextPath + "/**").permitAll();
// 文件读取 // 文件读取
registry.requestMatchers(buildAdminApi("/infra/file/*/get/**")).permitAll(); registry.requestMatchers(buildAdminApi("/infra/file/*/get/**")).permitAll();
// TODO 芋艿:这个每个项目都需要重复配置,得捉摸有没通用的方案
// RPC 服务的安全配置 // RPC 服务的安全配置
registry.requestMatchers(ApiConstants.PREFIX + "/**").permitAll(); registry.requestMatchers(ApiConstants.PREFIX + "/**").permitAll();
} }

View File

@@ -4,7 +4,7 @@ package com.tashow.cloud.pay.controller.admin.transfer.vo;
import com.tashow.cloud.common.util.validation.ValidationUtils; import com.tashow.cloud.common.util.validation.ValidationUtils;
import com.tashow.cloud.common.validation.InEnum; import com.tashow.cloud.common.validation.InEnum;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.transfer.PayTransferTypeEnum; import com.tashow.cloud.sdk.payment.enums.transfer.PayTransferTypeEnum;
import jakarta.validation.Validator; import jakarta.validation.Validator;
import jakarta.validation.constraints.*; import jakarta.validation.constraints.*;
@@ -83,7 +83,7 @@ public class PayTransferCreateReqVO {
PayTransferTypeEnum transferType = typeOf(type); PayTransferTypeEnum transferType = typeOf(type);
switch (transferType) { switch (transferType) {
case ALIPAY_BALANCE: { case ALIPAY_BALANCE: {
return PayTypeEnum.isAlipay(channelCode); return PayOrderTypeEnum.isAlipay(channelCode);
} }
case WX_BALANCE: case WX_BALANCE:
case BANK_CARD: case BANK_CARD:

View File

@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.tashow.cloud.common.enums.CommonStatusEnum; import com.tashow.cloud.common.enums.CommonStatusEnum;
import com.tashow.cloud.pay.dal.dataobject.app.PayAppDO; import com.tashow.cloud.pay.dal.dataobject.app.PayAppDO;
import com.tashow.cloud.sdk.payment.client.PayClientConfig; import com.tashow.cloud.sdk.payment.client.PayClientConfig;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.tenant.core.db.TenantBaseDO; import com.tashow.cloud.tenant.core.db.TenantBaseDO;
import lombok.*; import lombok.*;
@@ -33,7 +33,7 @@ public class PayChannelDO extends TenantBaseDO {
/** /**
* 渠道编码 * 渠道编码
* *
* 枚举 {@link PayTypeEnum} * 枚举 {@link PayOrderTypeEnum}
*/ */
private String code; private String code;
/** /**

View File

@@ -5,7 +5,7 @@ import com.tashow.cloud.mybatis.mybatis.core.dataobject.BaseDO;
import com.tashow.cloud.pay.dal.dataobject.app.PayAppDO; import com.tashow.cloud.pay.dal.dataobject.app.PayAppDO;
import com.tashow.cloud.pay.dal.dataobject.channel.PayChannelDO; import com.tashow.cloud.pay.dal.dataobject.channel.PayChannelDO;
import com.tashow.cloud.payapi.enums.order.PayOrderStatusEnum; import com.tashow.cloud.payapi.enums.order.PayOrderStatusEnum;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import lombok.*; import lombok.*;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@@ -42,7 +42,7 @@ public class PayOrderDO extends BaseDO {
/** /**
* 渠道编码 * 渠道编码
* *
* 枚举 {@link PayTypeEnum} * 枚举 {@link PayOrderTypeEnum}
*/ */
private String channelCode; private String channelCode;

View File

@@ -8,7 +8,7 @@ import com.tashow.cloud.pay.dal.dataobject.app.PayAppDO;
import com.tashow.cloud.pay.dal.dataobject.channel.PayChannelDO; import com.tashow.cloud.pay.dal.dataobject.channel.PayChannelDO;
import com.tashow.cloud.pay.dal.dataobject.order.PayOrderDO; import com.tashow.cloud.pay.dal.dataobject.order.PayOrderDO;
import com.tashow.cloud.payapi.enums.refund.PayRefundStatusEnum; import com.tashow.cloud.payapi.enums.refund.PayRefundStatusEnum;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import lombok.*; import lombok.*;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@@ -60,7 +60,7 @@ public class PayRefundDO extends BaseDO {
/** /**
* 渠道编码 * 渠道编码
* *
* 枚举 {@link PayTypeEnum} * 枚举 {@link PayOrderTypeEnum}
*/ */
private String channelCode; private String channelCode;
/** /**

View File

@@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.tashow.cloud.mybatis.mybatis.core.dataobject.BaseDO; import com.tashow.cloud.mybatis.mybatis.core.dataobject.BaseDO;
import com.tashow.cloud.pay.dal.dataobject.app.PayAppDO; import com.tashow.cloud.pay.dal.dataobject.app.PayAppDO;
import com.tashow.cloud.pay.dal.dataobject.channel.PayChannelDO; import com.tashow.cloud.pay.dal.dataobject.channel.PayChannelDO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.transfer.PayTransferStatusRespEnum; import com.tashow.cloud.sdk.payment.enums.transfer.PayTransferStatusRespEnum;
import lombok.Data; import lombok.Data;
@@ -55,7 +55,7 @@ public class PayTransferDO extends BaseDO {
/** /**
* 转账渠道编码 * 转账渠道编码
* *
* 枚举 {@link PayTypeEnum} * 枚举 {@link PayOrderTypeEnum}
*/ */
private String channelCode; private String channelCode;

View File

@@ -13,7 +13,7 @@ import com.tashow.cloud.sdk.payment.client.PayClient;
import com.tashow.cloud.sdk.payment.client.PayClientConfig; import com.tashow.cloud.sdk.payment.client.PayClientConfig;
import com.tashow.cloud.sdk.payment.client.PayClientFactory; import com.tashow.cloud.sdk.payment.client.PayClientFactory;
import com.tashow.cloud.sdk.payment.client.impl.weixin.WxPubPayClient; import com.tashow.cloud.sdk.payment.client.impl.weixin.WxPubPayClient;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import jakarta.annotation.PostConstruct; import jakarta.annotation.PostConstruct;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
import jakarta.validation.Validator; import jakarta.validation.Validator;
@@ -52,7 +52,7 @@ public class PayChannelServiceImpl implements PayChannelService {
*/ */
@PostConstruct @PostConstruct
public void init() { public void init() {
payClientFactory.registerPayClientClass(PayTypeEnum.WX_PUB, WxPubPayClient.class); payClientFactory.registerPayClientClass(PayOrderTypeEnum.WX_PUB, WxPubPayClient.class);
} }
@Override @Override
@@ -90,7 +90,7 @@ public class PayChannelServiceImpl implements PayChannelService {
*/ */
private PayClientConfig parseConfig(String code, String configStr) { private PayClientConfig parseConfig(String code, String configStr) {
// 解析配置 // 解析配置
Class<? extends PayClientConfig> payClass = PayTypeEnum.getByCode(code).getConfigClass(); Class<? extends PayClientConfig> payClass = PayOrderTypeEnum.getByCode(code).getConfigClass();
if (ObjectUtil.isNull(payClass)) { if (ObjectUtil.isNull(payClass)) {
throw exception(CHANNEL_NOT_FOUND); throw exception(CHANNEL_NOT_FOUND);
} }

View File

@@ -89,7 +89,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.tashow.cloud</groupId> <groupId>com.tashow.cloud</groupId>
<artifactId>tashow-member-api</artifactId> <artifactId>tashow-user-api</artifactId>
</dependency> </dependency>
</dependencies> </dependencies>

View File

@@ -3,7 +3,7 @@ package com.tashow.cloud.trade.controller.admin.aftersale;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import com.tashow.cloud.common.pojo.CommonResult; import com.tashow.cloud.common.pojo.CommonResult;
import com.tashow.cloud.common.pojo.PageResult; import com.tashow.cloud.common.pojo.PageResult;
import com.tashow.cloud.memberapi.api.user.MemberUserApi; import com.tashow.cloud.userapi.api.user.UserMemberApi;
import com.tashow.cloud.payapi.api.notify.dto.PayRefundNotifyReqDTO; import com.tashow.cloud.payapi.api.notify.dto.PayRefundNotifyReqDTO;
import com.tashow.cloud.trade.controller.admin.aftersale.vo.*; import com.tashow.cloud.trade.controller.admin.aftersale.vo.*;
import com.tashow.cloud.trade.convert.aftersale.AfterSaleConvert; import com.tashow.cloud.trade.convert.aftersale.AfterSaleConvert;
@@ -43,7 +43,7 @@ public class AfterSaleController {
@Resource @Resource
private AfterSaleLogService afterSaleLogService; private AfterSaleLogService afterSaleLogService;
@Resource @Resource
private MemberUserApi memberUserApi; private UserMemberApi memberUserApi;
// 获得售后订单分页 // 获得售后订单分页
@GetMapping("/page") @GetMapping("/page")

View File

@@ -3,7 +3,8 @@ package com.tashow.cloud.trade.controller.admin.order;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import com.tashow.cloud.common.pojo.CommonResult; import com.tashow.cloud.common.pojo.CommonResult;
import com.tashow.cloud.common.pojo.PageResult; import com.tashow.cloud.common.pojo.PageResult;
import com.tashow.cloud.memberapi.api.user.MemberUserApi; import com.tashow.cloud.userapi.api.user.UserMemberApi;
import com.tashow.cloud.userapi.api.user.dto.UserMemberRespDTO;
import com.tashow.cloud.productapi.api.product.ProdApi; import com.tashow.cloud.productapi.api.product.ProdApi;
import com.tashow.cloud.productapi.api.product.dto.ProdDO; import com.tashow.cloud.productapi.api.product.dto.ProdDO;
import com.tashow.cloud.trade.controller.admin.order.vo.*; import com.tashow.cloud.trade.controller.admin.order.vo.*;
@@ -23,8 +24,10 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
import java.util.Map;
import static com.tashow.cloud.common.pojo.CommonResult.success; import static com.tashow.cloud.common.pojo.CommonResult.success;
import static com.tashow.cloud.common.util.collection.CollectionUtils.convertList;
import static com.tashow.cloud.common.util.collection.CollectionUtils.convertSet; import static com.tashow.cloud.common.util.collection.CollectionUtils.convertSet;
@@ -45,7 +48,7 @@ public class TradeOrderController {
private TradeOrderLogService tradeOrderLogService; private TradeOrderLogService tradeOrderLogService;
@Resource @Resource
private MemberUserApi memberUserApi; private UserMemberApi memberUserApi;
@Resource @Resource
private ProdApi prodApi; private ProdApi prodApi;
@@ -67,8 +70,10 @@ public class TradeOrderController {
// 查询订单项 // 查询订单项
List<TradeOrderItemDO> orderItems = tradeOrderQueryService.getOrderItemListByOrderId( List<TradeOrderItemDO> orderItems = tradeOrderQueryService.getOrderItemListByOrderId(
convertSet(pageResult.getList(), TradeOrderDO::getId)); convertSet(pageResult.getList(), TradeOrderDO::getId));
//查询用户信息
Map<Long, UserMemberRespDTO> userMap = memberUserApi.getUserMap(convertList(pageResult.getList(), TradeOrderDO::getUserId));
// 最终组合 // 最终组合
return success(TradeOrderConvert.INSTANCE.convertPage(pageResult, orderItems)); return success(TradeOrderConvert.INSTANCE.convertPage(pageResult, orderItems,userMap));
} }
/** /**

View File

@@ -5,7 +5,6 @@ package com.tashow.cloud.trade.controller.admin.order.vo;
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.tashow.cloud.common.enums.TerminalEnum; import com.tashow.cloud.common.enums.TerminalEnum;
import com.tashow.cloud.common.util.json.databind.StringLocalDateTimeSerializer; import com.tashow.cloud.common.util.json.databind.StringLocalDateTimeSerializer;
import com.tashow.cloud.common.validation.InEnum;
import com.tashow.cloud.tradeapi.enums.order.TradeOrderStatusEnum; import com.tashow.cloud.tradeapi.enums.order.TradeOrderStatusEnum;
import com.tashow.cloud.tradeapi.enums.order.TradeOrderTypeEnum; import com.tashow.cloud.tradeapi.enums.order.TradeOrderTypeEnum;
import lombok.Data; import lombok.Data;
@@ -34,13 +33,11 @@ public class TradeOrderBaseVO {
* 订单来源 * 订单来源
* {@link TerminalEnum#getTerminal()} * {@link TerminalEnum#getTerminal()}
*/ */
@InEnum(TerminalEnum.class)
private Integer orderTerminal; private Integer orderTerminal;
/** /**
* 订单状态 * 订单状态
* {@link TradeOrderStatusEnum#getStatus()} * {@link TradeOrderStatusEnum#getStatus()}
*/ */
@InEnum(TradeOrderStatusEnum.class)
private Integer orderStatus; private Integer orderStatus;
// 用户编号 // 用户编号

View File

@@ -18,12 +18,18 @@ public class TradeOrderPageRespVO extends TradeOrderBaseVO {
private String shopName; private String shopName;
//店铺log //店铺log
private String shopLogo; private String shopLogo;
//支付剩余时间 //支付剩余时间 单位秒
private String payLastTime; private Long payLastTime;
//客服备注 //财务状态
private String merchantRemark; private Integer financeStatus;
//取消备注 //售后状态
private String cancelRemark; private Integer afterSaleStatus;
//订单类目
private String orderCategoryName;
//用户备注
private String userRemark;
//支付方式
private Integer payType;
@Data @Data
@@ -38,7 +44,7 @@ public class TradeOrderPageRespVO extends TradeOrderBaseVO {
private Integer count; private Integer count;
// 订单总价 // 订单总价
private Integer price; private Integer price;
// 订单总价 // 订单优惠金额
private Integer discountPrice; private Integer discountPrice;
//到手价 //到手价
private Integer handedPrice; private Integer handedPrice;

View File

@@ -1,7 +1,7 @@
package com.tashow.cloud.trade.convert.aftersale; package com.tashow.cloud.trade.convert.aftersale;
import com.tashow.cloud.common.pojo.PageResult; import com.tashow.cloud.common.pojo.PageResult;
import com.tashow.cloud.memberapi.api.user.dto.MemberUserRespDTO; import com.tashow.cloud.userapi.api.user.dto.UserMemberRespDTO;
import com.tashow.cloud.payapi.api.refund.dto.PayRefundCreateReqDTO; import com.tashow.cloud.payapi.api.refund.dto.PayRefundCreateReqDTO;
import com.tashow.cloud.trade.controller.admin.aftersale.vo.AfterSaleDetailRespVO; import com.tashow.cloud.trade.controller.admin.aftersale.vo.AfterSaleDetailRespVO;
import com.tashow.cloud.trade.controller.admin.aftersale.vo.AfterSaleRespPageItemVO; import com.tashow.cloud.trade.controller.admin.aftersale.vo.AfterSaleRespPageItemVO;
@@ -47,12 +47,12 @@ public interface AfterSaleConvert {
}) })
PayRefundCreateReqDTO convert(String userIp, AfterSaleDO afterSale, TradeOrderProperties orderProperties); PayRefundCreateReqDTO convert(String userIp, AfterSaleDO afterSale, TradeOrderProperties orderProperties);
MemberUserRespVO convert(MemberUserRespDTO bean); MemberUserRespVO convert(UserMemberRespDTO bean);
PageResult<AfterSaleRespPageItemVO> convertPage(PageResult<AfterSaleDO> page); PageResult<AfterSaleRespPageItemVO> convertPage(PageResult<AfterSaleDO> page);
default PageResult<AfterSaleRespPageItemVO> convertPage(PageResult<AfterSaleDO> pageResult, default PageResult<AfterSaleRespPageItemVO> convertPage(PageResult<AfterSaleDO> pageResult,
Map<Long, MemberUserRespDTO> memberUsers) { Map<Long, UserMemberRespDTO> memberUsers) {
PageResult<AfterSaleRespPageItemVO> voPageResult = convertPage(pageResult); PageResult<AfterSaleRespPageItemVO> voPageResult = convertPage(pageResult);
// 处理会员 // 处理会员
voPageResult.getList().forEach(afterSale -> afterSale.setUser( voPageResult.getList().forEach(afterSale -> afterSale.setUser(
@@ -65,7 +65,7 @@ public interface AfterSaleConvert {
PageResult<AppAfterSaleRespVO> convertPage02(PageResult<AfterSaleDO> page); PageResult<AppAfterSaleRespVO> convertPage02(PageResult<AfterSaleDO> page);
default AfterSaleDetailRespVO convert(AfterSaleDO afterSale, TradeOrderDO order, TradeOrderItemDO orderItem, default AfterSaleDetailRespVO convert(AfterSaleDO afterSale, TradeOrderDO order, TradeOrderItemDO orderItem,
MemberUserRespDTO user, List<AfterSaleLogDO> logs) { UserMemberRespDTO user, List<AfterSaleLogDO> logs) {
AfterSaleDetailRespVO respVO = convert02(afterSale); AfterSaleDetailRespVO respVO = convert02(afterSale);
// 处理用户信息 // 处理用户信息
respVO.setUser(convert(user)); respVO.setUser(convert(user));

View File

@@ -9,8 +9,8 @@ import com.tashow.cloud.common.util.date.LocalDateTimeUtils;
import com.tashow.cloud.common.util.ip.AreaUtils; import com.tashow.cloud.common.util.ip.AreaUtils;
import com.tashow.cloud.common.util.string.StrUtils; import com.tashow.cloud.common.util.string.StrUtils;
import com.tashow.cloud.excel.dict.core.DictFrameworkUtils; import com.tashow.cloud.excel.dict.core.DictFrameworkUtils;
import com.tashow.cloud.memberapi.api.address.dto.MemberAddressRespDTO; import com.tashow.cloud.userapi.api.address.dto.MemberAddressRespDTO;
import com.tashow.cloud.memberapi.api.user.dto.MemberUserRespDTO; import com.tashow.cloud.userapi.api.user.dto.UserMemberRespDTO;
import com.tashow.cloud.payapi.api.order.dto.PayOrderCreateReqDTO; import com.tashow.cloud.payapi.api.order.dto.PayOrderCreateReqDTO;
import com.tashow.cloud.payapi.enums.DictTypeConstants; import com.tashow.cloud.payapi.enums.DictTypeConstants;
import com.tashow.cloud.productapi.api.product.dto.ProdDO; import com.tashow.cloud.productapi.api.product.dto.ProdDO;
@@ -55,15 +55,26 @@ public interface TradeOrderConvert {
TradeOrderConvert INSTANCE = Mappers.getMapper(TradeOrderConvert.class); TradeOrderConvert INSTANCE = Mappers.getMapper(TradeOrderConvert.class);
//region 分页结果 //region 分页结果
default PageResult<TradeOrderPageRespVO> convertPage(PageResult<TradeOrderDO> pageResult, List<TradeOrderItemDO> orderItems) { default PageResult<TradeOrderPageRespVO> convertPage(PageResult<TradeOrderDO> pageResult, List<TradeOrderItemDO> orderItems,Map<Long, UserMemberRespDTO> userMap) {
Map<Long, List<TradeOrderItemDO>> orderItemMap = convertMultiMap(orderItems, TradeOrderItemDO::getOrderId); Map<Long, List<TradeOrderItemDO>> orderItemMap = convertMultiMap(orderItems, TradeOrderItemDO::getOrderId);
// 转化 List // 转化 List
List<TradeOrderPageRespVO> orderVOs = CollectionUtils.convertList(pageResult.getList(), order -> { List<TradeOrderPageRespVO> orderVOs = CollectionUtils.convertList(pageResult.getList(), order -> {
TradeOrderPageRespVO orderPageRespVO = convertOrder(order,userMap.get(order.getUserId()));
List<TradeOrderPageRespVO.Item> items = new ArrayList<>();
List<TradeOrderItemDO> itemDO = orderItemMap.get(order.getId()); List<TradeOrderItemDO> itemDO = orderItemMap.get(order.getId());
TradeOrderPageRespVO orderPageRespVO = convert(order, itemDO); for (TradeOrderItemDO tradeOrderItemDO : itemDO) {
orderPageRespVO.getItems().stream().forEach(item -> { TradeOrderPageRespVO.Item item = convertItem(tradeOrderItemDO);
item.setHandedPrice(item.getPrice() - item.getDiscountPrice()); item.setHandedPrice(tradeOrderItemDO.getPrice() - tradeOrderItemDO.getDiscountPrice());
}); orderPageRespVO.setShopName(tradeOrderItemDO.getShopName());
orderPageRespVO.setShopLogo(tradeOrderItemDO.getShopLogo());
orderPageRespVO.setOrderCategoryName(tradeOrderItemDO.getOrderCategoryName());
//支付剩余时间 单位miao
orderPageRespVO.setPayLastTime(LocalDateTimeUtils.betweenWithNow(order.getPayTime()));
items.add(item);
}
orderPageRespVO.setItems(items);
return orderPageRespVO; return orderPageRespVO;
}); });
return new PageResult<>(orderVOs, pageResult.getTotal()); return new PageResult<>(orderVOs, pageResult.getTotal());
@@ -72,9 +83,13 @@ public interface TradeOrderConvert {
@Mappings({ @Mappings({
@Mapping(source = "order.id", target = "id"), @Mapping(source = "order.id", target = "id"),
@Mapping(source = "order.userId", target = "userId"), @Mapping(source = "order.userId", target = "userId"),
@Mapping(source = "order.merchantRemark", target = "merchantRemark"), @Mapping(source = "order.createTime", target = "createTime"),
@Mapping(source = "user.nickname", target = "userNickName"),
@Mapping(source = "user.avatar", target = "userAvatar"),
}) })
TradeOrderPageRespVO convert(TradeOrderDO order, List<TradeOrderItemDO> items); TradeOrderPageRespVO convertOrder(TradeOrderDO order,UserMemberRespDTO user);
TradeOrderPageRespVO.Item convertItem(TradeOrderItemDO item);
//endregion //endregion
//region 订单详情 //region 订单详情
@@ -174,7 +189,7 @@ public interface TradeOrderConvert {
return createReqDTO; return createReqDTO;
} }
MemberUserRespVO convert(MemberUserRespDTO bean); MemberUserRespVO convert(UserMemberRespDTO bean);
default PageResult<AppTradeOrderPageItemRespVO> convertPage02(PageResult<TradeOrderDO> pageResult, default PageResult<AppTradeOrderPageItemRespVO> convertPage02(PageResult<TradeOrderDO> pageResult,
List<TradeOrderItemDO> orderItems) { List<TradeOrderItemDO> orderItems) {
@@ -274,7 +289,7 @@ public interface TradeOrderConvert {
default BrokerageAddReqBO convert(MemberUserRespDTO user, TradeOrderItemDO item, default BrokerageAddReqBO convert(UserMemberRespDTO user, TradeOrderItemDO item,
ProductSpuRespDTO spu, ProductSkuRespDTO sku) { ProductSpuRespDTO spu, ProductSkuRespDTO sku) {
BrokerageAddReqBO bo = new BrokerageAddReqBO().setBizId(String.valueOf(item.getId())).setSourceUserId(item.getUserId()) BrokerageAddReqBO bo = new BrokerageAddReqBO().setBizId(String.valueOf(item.getId())).setSourceUserId(item.getUserId())
.setBasePrice(item.getPayPrice()) .setBasePrice(item.getPayPrice())

View File

@@ -68,6 +68,10 @@ public class TradeOrderItemDO extends BaseDO {
* 店铺名称 * 店铺名称
*/ */
private String shopName; private String shopName;
/**
* 店铺logo
*/
private String shopLogo;
/** /**
* 订单类目id * 订单类目id
*/ */

View File

@@ -1,7 +1,7 @@
package com.tashow.cloud.trade.framework.rpc.config; package com.tashow.cloud.trade.framework.rpc.config;
import com.tashow.cloud.memberapi.api.address.MemberAddressApi; import com.tashow.cloud.userapi.api.address.MemberAddressApi;
import com.tashow.cloud.memberapi.api.user.MemberUserApi; import com.tashow.cloud.userapi.api.user.UserMemberApi;
import com.tashow.cloud.payapi.api.order.PayOrderApi; import com.tashow.cloud.payapi.api.order.PayOrderApi;
import com.tashow.cloud.payapi.api.refund.PayRefundApi; import com.tashow.cloud.payapi.api.refund.PayRefundApi;
import com.tashow.cloud.payapi.api.transfer.PayTransferApi; import com.tashow.cloud.payapi.api.transfer.PayTransferApi;
@@ -16,7 +16,7 @@ import org.springframework.context.annotation.Configuration;
@Configuration(proxyBeanMethods = false) @Configuration(proxyBeanMethods = false)
@EnableFeignClients(clients = { @EnableFeignClients(clients = {
MemberUserApi.class, MemberAddressApi.class, UserMemberApi.class, MemberAddressApi.class,
ProdApi.class, ProdApi.class,
PayOrderApi.class, PayRefundApi.class, PayTransferApi.class, PayWalletApi.class, PayOrderApi.class, PayRefundApi.class, PayTransferApi.class, PayWalletApi.class,
AdminUserApi.class, NotifyMessageSendApi.class, SocialClientApi.class, SocialUserApi.class AdminUserApi.class, NotifyMessageSendApi.class, SocialClientApi.class, SocialUserApi.class

View File

@@ -11,8 +11,8 @@ import cn.hutool.extra.spring.SpringUtil;
import com.tashow.cloud.common.enums.UserTypeEnum; import com.tashow.cloud.common.enums.UserTypeEnum;
import com.tashow.cloud.common.util.json.JsonUtils; import com.tashow.cloud.common.util.json.JsonUtils;
import com.tashow.cloud.common.util.number.MoneyUtils; import com.tashow.cloud.common.util.number.MoneyUtils;
import com.tashow.cloud.memberapi.api.address.MemberAddressApi; import com.tashow.cloud.userapi.api.address.MemberAddressApi;
import com.tashow.cloud.memberapi.api.address.dto.MemberAddressRespDTO; import com.tashow.cloud.userapi.api.address.dto.MemberAddressRespDTO;
import com.tashow.cloud.payapi.api.order.PayOrderApi; import com.tashow.cloud.payapi.api.order.PayOrderApi;
import com.tashow.cloud.payapi.api.order.dto.PayOrderCreateReqDTO; import com.tashow.cloud.payapi.api.order.dto.PayOrderCreateReqDTO;
import com.tashow.cloud.payapi.api.refund.PayRefundApi; import com.tashow.cloud.payapi.api.refund.PayRefundApi;

View File

@@ -30,7 +30,7 @@
<!-- 依赖服务 --> <!-- 依赖服务 -->
<dependency> <dependency>
<groupId>com.tashow.cloud</groupId> <groupId>com.tashow.cloud</groupId>
<artifactId>tashow-member-api</artifactId> <artifactId>tashow-user-api</artifactId>
<version>${revision}</version> <version>${revision}</version>
</dependency> </dependency>
<dependency> <dependency>

View File

@@ -0,0 +1 @@
package com.tashow.cloud.user.api;

View File

@@ -1,8 +1,8 @@
package com.tashow.cloud.user.user; package com.tashow.cloud.user.api.user;
import com.tashow.cloud.common.pojo.CommonResult; import com.tashow.cloud.common.pojo.CommonResult;
import com.tashow.cloud.memberapi.api.user.MemberUserApi; import com.tashow.cloud.userapi.api.user.UserMemberApi;
import com.tashow.cloud.memberapi.api.user.dto.MemberUserRespDTO; import com.tashow.cloud.userapi.api.user.dto.UserMemberRespDTO;
import com.tashow.cloud.user.convert.user.MemberUserConvert; import com.tashow.cloud.user.convert.user.MemberUserConvert;
import com.tashow.cloud.user.dal.dataobject.user.UserLoginDO; import com.tashow.cloud.user.dal.dataobject.user.UserLoginDO;
import com.tashow.cloud.user.service.user.UserLoginService; import com.tashow.cloud.user.service.user.UserLoginService;
@@ -15,7 +15,7 @@ import java.util.List;
import static com.tashow.cloud.common.exception.util.ServiceExceptionUtil.exception; import static com.tashow.cloud.common.exception.util.ServiceExceptionUtil.exception;
import static com.tashow.cloud.common.pojo.CommonResult.success; import static com.tashow.cloud.common.pojo.CommonResult.success;
import static com.tashow.cloud.memberapi.enums.ErrorCodeConstants.USER_MOBILE_NOT_EXISTS; import static com.tashow.cloud.userapi.enums.ErrorCodeConstants.USER_MOBILE_NOT_EXISTS;
/** /**
* 会员用户的 API 实现类 * 会员用户的 API 实现类
@@ -24,29 +24,29 @@ import static com.tashow.cloud.memberapi.enums.ErrorCodeConstants.USER_MOBILE_NO
*/ */
@RestController // 提供 RESTful API 接口 Feign 调用 @RestController // 提供 RESTful API 接口 Feign 调用
@Validated @Validated
public class MemberUserApiImpl implements MemberUserApi { public class UserMemberApiImpl implements UserMemberApi {
@Resource @Resource
private UserLoginService userService; private UserLoginService userService;
@Override @Override
public CommonResult<MemberUserRespDTO> getUser(Long id) { public CommonResult<UserMemberRespDTO> getUser(Long id) {
UserLoginDO user = userService.getUser(id); UserLoginDO user = userService.getUser(id);
return success(MemberUserConvert.INSTANCE.convert2(user)); return success(MemberUserConvert.INSTANCE.convert2(user));
} }
@Override @Override
public CommonResult<List<MemberUserRespDTO>> getUserList(Collection<Long> ids) { public CommonResult<List<UserMemberRespDTO>> getUserList(Collection<Long> ids) {
return success(MemberUserConvert.INSTANCE.convertList2(userService.getUserList(ids))); return success(MemberUserConvert.INSTANCE.convertList2(userService.getUserList(ids)));
} }
@Override @Override
public CommonResult<List<MemberUserRespDTO>> getUserListByNickname(String nickname) { public CommonResult<List<UserMemberRespDTO>> getUserListByNickname(String nickname) {
return success(MemberUserConvert.INSTANCE.convertList2(userService.getUserListByNickname(nickname))); return success(MemberUserConvert.INSTANCE.convertList2(userService.getUserListByNickname(nickname)));
} }
@Override @Override
public CommonResult<MemberUserRespDTO> getUserByMobile(String mobile) { public CommonResult<UserMemberRespDTO> getUserByMobile(String mobile) {
return success(MemberUserConvert.INSTANCE.convert2(userService.getUserByMobile(mobile))); return success(MemberUserConvert.INSTANCE.convert2(userService.getUserByMobile(mobile)));
} }

View File

@@ -20,7 +20,7 @@ import static com.tashow.cloud.common.pojo.CommonResult.success;
// 管理后台 - 会员用户 // 管理后台 - 会员用户
@RestController @RestController
@RequestMapping("/member/user") @RequestMapping("/user/member")
@Validated @Validated
public class UserLoginController { public class UserLoginController {

View File

@@ -18,10 +18,10 @@ import static com.tashow.cloud.security.security.core.util.SecurityFrameworkUtil
// 用户 APP - 用户个人中心 // 用户 APP - 用户个人中心
@RestController @RestController
@RequestMapping("/member/user") @RequestMapping("/user/member")
@Validated @Validated
@Slf4j @Slf4j
public class AppMemberUserController { public class AppUserMemberController {
@Resource @Resource
private UserLoginService userService; private UserLoginService userService;

View File

@@ -1,7 +1,7 @@
package com.tashow.cloud.user.convert.user; package com.tashow.cloud.user.convert.user;
import com.tashow.cloud.common.pojo.PageResult; import com.tashow.cloud.common.pojo.PageResult;
import com.tashow.cloud.memberapi.api.user.dto.MemberUserRespDTO; import com.tashow.cloud.userapi.api.user.dto.UserMemberRespDTO;
import com.tashow.cloud.user.controller.admin.user.vo.UserLoginRespVO; import com.tashow.cloud.user.controller.admin.user.vo.UserLoginRespVO;
import com.tashow.cloud.user.controller.admin.user.vo.MemberUserUpdateReqVO; import com.tashow.cloud.user.controller.admin.user.vo.MemberUserUpdateReqVO;
import com.tashow.cloud.user.controller.app.user.vo.AppMemberUserInfoRespVO; import com.tashow.cloud.user.controller.app.user.vo.AppMemberUserInfoRespVO;
@@ -25,10 +25,9 @@ public interface MemberUserConvert {
@Mappings({ @Mappings({
@Mapping(source = "bean.id", target = "id"), @Mapping(source = "bean.id", target = "id"),
}) })
UserMemberRespDTO convert2(UserLoginDO bean);
MemberUserRespDTO convert2(UserLoginDO bean); List<UserMemberRespDTO> convertList2(List<UserLoginDO> list);
List<MemberUserRespDTO> convertList2(List<UserLoginDO> list);
UserLoginDO convert(MemberUserUpdateReqVO bean); UserLoginDO convert(MemberUserUpdateReqVO bean);

View File

@@ -1,6 +1,6 @@
package com.tashow.cloud.user.framework.security.config; package com.tashow.cloud.user.framework.security.config;
import com.tashow.cloud.memberapi.enums.ApiConstants; import com.tashow.cloud.userapi.enums.ApiConstants;
import com.tashow.cloud.security.security.config.AuthorizeRequestsCustomizer; import com.tashow.cloud.security.security.config.AuthorizeRequestsCustomizer;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;

View File

@@ -35,8 +35,8 @@ import java.util.Objects;
import static com.tashow.cloud.common.exception.util.ServiceExceptionUtil.exception; import static com.tashow.cloud.common.exception.util.ServiceExceptionUtil.exception;
import static com.tashow.cloud.common.util.servlet.ServletUtils.getClientIP; import static com.tashow.cloud.common.util.servlet.ServletUtils.getClientIP;
import static com.tashow.cloud.memberapi.enums.ErrorCodeConstants.AUTH_MOBILE_USED; import static com.tashow.cloud.userapi.enums.ErrorCodeConstants.AUTH_MOBILE_USED;
import static com.tashow.cloud.memberapi.enums.ErrorCodeConstants.AUTH_SOCIAL_USER_NOT_FOUND; import static com.tashow.cloud.userapi.enums.ErrorCodeConstants.AUTH_SOCIAL_USER_NOT_FOUND;
import static com.tashow.cloud.systemapi.enums.ErrorCodeConstants.*; import static com.tashow.cloud.systemapi.enums.ErrorCodeConstants.*;
import static com.tashow.cloud.web.web.core.util.WebFrameworkUtils.getTerminal; import static com.tashow.cloud.web.web.core.util.WebFrameworkUtils.getTerminal;

View File

@@ -39,7 +39,7 @@ import java.util.List;
import static com.tashow.cloud.common.exception.util.ServiceExceptionUtil.exception; import static com.tashow.cloud.common.exception.util.ServiceExceptionUtil.exception;
import static com.tashow.cloud.common.util.servlet.ServletUtils.getClientIP; import static com.tashow.cloud.common.util.servlet.ServletUtils.getClientIP;
import static com.tashow.cloud.memberapi.enums.ErrorCodeConstants.USER_MOBILE_USED; import static com.tashow.cloud.userapi.enums.ErrorCodeConstants.USER_MOBILE_USED;
import static com.tashow.cloud.systemapi.enums.ErrorCodeConstants.USER_MOBILE_NOT_EXISTS; import static com.tashow.cloud.systemapi.enums.ErrorCodeConstants.USER_MOBILE_NOT_EXISTS;
import static com.tashow.cloud.systemapi.enums.ErrorCodeConstants.USER_NOT_EXISTS; import static com.tashow.cloud.systemapi.enums.ErrorCodeConstants.USER_NOT_EXISTS;

View File

@@ -1,7 +1,7 @@
package com.tashow.cloud.sdk.payment.client; package com.tashow.cloud.sdk.payment.client;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
/** /**
* 支付客户端的工厂接口 * 支付客户端的工厂接口
@@ -33,6 +33,6 @@ public interface PayClientFactory {
* @param channel 支付渠道的编码的枚举 * @param channel 支付渠道的编码的枚举
* @param payClientClass 支付客户端 class * @param payClientClass 支付客户端 class
*/ */
void registerPayClientClass(PayTypeEnum channel, Class<?> payClientClass); void registerPayClientClass(PayOrderTypeEnum channel, Class<?> payClientClass);
} }

View File

@@ -7,14 +7,14 @@ import com.tashow.cloud.sdk.payment.client.PayClientConfig;
import com.tashow.cloud.sdk.payment.client.PayClientFactory; import com.tashow.cloud.sdk.payment.client.PayClientFactory;
import com.tashow.cloud.sdk.payment.client.impl.alipay.*; import com.tashow.cloud.sdk.payment.client.impl.alipay.*;
import com.tashow.cloud.sdk.payment.client.impl.weixin.*; import com.tashow.cloud.sdk.payment.client.impl.weixin.*;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.Map; import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap; import java.util.concurrent.ConcurrentMap;
import static com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum.*; import static com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum.*;
/** /**
@@ -35,7 +35,7 @@ public class PayClientFactoryImpl implements PayClientFactory {
/** /**
* 支付客户端 Class Map * 支付客户端 Class Map
*/ */
private final Map<PayTypeEnum, Class<?>> clientClass = new ConcurrentHashMap<>(); private final Map<PayOrderTypeEnum, Class<?>> clientClass = new ConcurrentHashMap<>();
public PayClientFactoryImpl() { public PayClientFactoryImpl() {
// 微信支付客户端 // 微信支付客户端
@@ -56,7 +56,7 @@ public class PayClientFactoryImpl implements PayClientFactory {
} }
@Override @Override
public void registerPayClientClass(PayTypeEnum channel, Class<?> payClientClass) { public void registerPayClientClass(PayOrderTypeEnum channel, Class<?> payClientClass) {
clientClass.put(channel, payClientClass); clientClass.put(channel, payClientClass);
} }
@@ -87,7 +87,7 @@ public class PayClientFactoryImpl implements PayClientFactory {
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
private <Config extends PayClientConfig> AbstractPayClient<Config> createPayClient(Long channelId, String channelCode, private <Config extends PayClientConfig> AbstractPayClient<Config> createPayClient(Long channelId, String channelCode,
Config config) { Config config) {
PayTypeEnum channelEnum = PayTypeEnum.getByCode(channelCode); PayOrderTypeEnum channelEnum = PayOrderTypeEnum.getByCode(channelCode);
Assert.notNull(channelEnum, String.format("支付渠道(%s) 为空", channelCode)); Assert.notNull(channelEnum, String.format("支付渠道(%s) 为空", channelCode));
Class<?> payClientClass = clientClass.get(channelEnum); Class<?> payClientClass = clientClass.get(channelEnum);
Assert.notNull(payClientClass, String.format("支付渠道(%s) Class 为空", channelCode)); Assert.notNull(payClientClass, String.format("支付渠道(%s) Class 为空", channelCode));

View File

@@ -6,7 +6,7 @@ import com.alipay.api.request.AlipayTradeAppPayRequest;
import com.alipay.api.response.AlipayTradeAppPayResponse; import com.alipay.api.response.AlipayTradeAppPayResponse;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -23,7 +23,7 @@ import lombok.extern.slf4j.Slf4j;
public class AlipayAppPayClient extends AbstractAlipayPayClient { public class AlipayAppPayClient extends AbstractAlipayPayClient {
public AlipayAppPayClient(Long channelId, AlipayPayClientConfig config) { public AlipayAppPayClient(Long channelId, AlipayPayClientConfig config) {
super(channelId, PayTypeEnum.ALIPAY_APP.getCode(), config); super(channelId, PayOrderTypeEnum.ALIPAY_APP.getCode(), config);
} }
@Override @Override

View File

@@ -9,7 +9,7 @@ import com.alipay.api.request.AlipayTradePayRequest;
import com.alipay.api.response.AlipayTradePayResponse; import com.alipay.api.response.AlipayTradePayResponse;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -32,7 +32,7 @@ import static com.tashow.cloud.sdk.payment.client.impl.alipay.AlipayPayClientCon
public class AlipayBarPayClient extends AbstractAlipayPayClient { public class AlipayBarPayClient extends AbstractAlipayPayClient {
public AlipayBarPayClient(Long channelId, AlipayPayClientConfig config) { public AlipayBarPayClient(Long channelId, AlipayPayClientConfig config) {
super(channelId, PayTypeEnum.ALIPAY_BAR.getCode(), config); super(channelId, PayOrderTypeEnum.ALIPAY_BAR.getCode(), config);
} }
@Override @Override

View File

@@ -8,7 +8,7 @@ import com.alipay.api.request.AlipayTradePagePayRequest;
import com.alipay.api.response.AlipayTradePagePayResponse; import com.alipay.api.response.AlipayTradePagePayResponse;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -25,7 +25,7 @@ import java.util.Objects;
public class AlipayPcPayClient extends AbstractAlipayPayClient { public class AlipayPcPayClient extends AbstractAlipayPayClient {
public AlipayPcPayClient(Long channelId, AlipayPayClientConfig config) { public AlipayPcPayClient(Long channelId, AlipayPayClientConfig config) {
super(channelId, PayTypeEnum.ALIPAY_PC.getCode(), config); super(channelId, PayOrderTypeEnum.ALIPAY_PC.getCode(), config);
} }
@Override @Override

View File

@@ -6,7 +6,7 @@ import com.alipay.api.request.AlipayTradePrecreateRequest;
import com.alipay.api.response.AlipayTradePrecreateResponse; import com.alipay.api.response.AlipayTradePrecreateResponse;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -26,7 +26,7 @@ import static com.tashow.cloud.sdk.payment.client.impl.alipay.AlipayPayClientCon
public class AlipayQrPayClient extends AbstractAlipayPayClient { public class AlipayQrPayClient extends AbstractAlipayPayClient {
public AlipayQrPayClient(Long channelId, AlipayPayClientConfig config) { public AlipayQrPayClient(Long channelId, AlipayPayClientConfig config) {
super(channelId, PayTypeEnum.ALIPAY_QR.getCode(), config); super(channelId, PayOrderTypeEnum.ALIPAY_QR.getCode(), config);
} }
@Override @Override

View File

@@ -7,7 +7,7 @@ import com.alipay.api.request.AlipayTradeWapPayRequest;
import com.alipay.api.response.AlipayTradeWapPayResponse; import com.alipay.api.response.AlipayTradeWapPayResponse;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -22,7 +22,7 @@ import lombok.extern.slf4j.Slf4j;
public class AlipayWapPayClient extends AbstractAlipayPayClient { public class AlipayWapPayClient extends AbstractAlipayPayClient {
public AlipayWapPayClient(Long channelId, AlipayPayClientConfig config) { public AlipayWapPayClient(Long channelId, AlipayPayClientConfig config) {
super(channelId, PayTypeEnum.ALIPAY_WAP.getCode(), config); super(channelId, PayOrderTypeEnum.ALIPAY_WAP.getCode(), config);
} }
@Override @Override

View File

@@ -9,7 +9,7 @@ import com.github.binarywang.wxpay.constant.WxPayConstants;
import com.github.binarywang.wxpay.exception.WxPayException; import com.github.binarywang.wxpay.exception.WxPayException;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -29,7 +29,7 @@ import static com.tashow.cloud.common.util.json.JsonUtils.toJsonString;
public class WxAppPayClient extends AbstractWxPayClient { public class WxAppPayClient extends AbstractWxPayClient {
public WxAppPayClient(Long channelId, WxPayClientConfig config) { public WxAppPayClient(Long channelId, WxPayClientConfig config) {
super(channelId, PayTypeEnum.WX_APP.getCode(), config); super(channelId, PayOrderTypeEnum.WX_APP.getCode(), config);
} }
@Override @Override

View File

@@ -10,7 +10,7 @@ import com.github.binarywang.wxpay.exception.WxPayException;
import com.tashow.cloud.common.util.date.LocalDateTimeUtils; import com.tashow.cloud.common.util.date.LocalDateTimeUtils;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -38,7 +38,7 @@ public class WxBarPayClient extends AbstractWxPayClient {
private static final Duration AUTH_CODE_EXPIRE = Duration.ofMinutes(3); private static final Duration AUTH_CODE_EXPIRE = Duration.ofMinutes(3);
public WxBarPayClient(Long channelId, WxPayClientConfig config) { public WxBarPayClient(Long channelId, WxPayClientConfig config) {
super(channelId, PayTypeEnum.WX_BAR.getCode(), config); super(channelId, PayOrderTypeEnum.WX_BAR.getCode(), config);
} }
@Override @Override

View File

@@ -1,6 +1,6 @@
package com.tashow.cloud.sdk.payment.client.impl.weixin; package com.tashow.cloud.sdk.payment.client.impl.weixin;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
/** /**
@@ -16,7 +16,7 @@ import lombok.extern.slf4j.Slf4j;
public class WxLitePayClient extends WxPubPayClient { public class WxLitePayClient extends WxPubPayClient {
public WxLitePayClient(Long channelId, WxPayClientConfig config) { public WxLitePayClient(Long channelId, WxPayClientConfig config) {
super(channelId, PayTypeEnum.WX_LITE.getCode(), config); super(channelId, PayOrderTypeEnum.WX_LITE.getCode(), config);
} }
} }

View File

@@ -8,7 +8,7 @@ import com.github.binarywang.wxpay.constant.WxPayConstants;
import com.github.binarywang.wxpay.exception.WxPayException; import com.github.binarywang.wxpay.exception.WxPayException;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -23,7 +23,7 @@ import lombok.extern.slf4j.Slf4j;
public class WxNativePayClient extends AbstractWxPayClient { public class WxNativePayClient extends AbstractWxPayClient {
public WxNativePayClient(Long channelId, WxPayClientConfig config) { public WxNativePayClient(Long channelId, WxPayClientConfig config) {
super(channelId, PayTypeEnum.WX_NATIVE.getCode(), config); super(channelId, PayOrderTypeEnum.WX_NATIVE.getCode(), config);
} }
@Override @Override

View File

@@ -11,7 +11,7 @@ import com.github.binarywang.wxpay.constant.WxPayConstants;
import com.github.binarywang.wxpay.exception.WxPayException; import com.github.binarywang.wxpay.exception.WxPayException;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -30,7 +30,7 @@ import static com.tashow.cloud.common.util.json.JsonUtils.toJsonString;
public class WxPubPayClient extends AbstractWxPayClient { public class WxPubPayClient extends AbstractWxPayClient {
public WxPubPayClient(Long channelId, WxPayClientConfig config) { public WxPubPayClient(Long channelId, WxPayClientConfig config) {
super(channelId, PayTypeEnum.WX_PUB.getCode(), config); super(channelId, PayOrderTypeEnum.WX_PUB.getCode(), config);
} }
protected WxPubPayClient(Long channelId, String channelCode, WxPayClientConfig config) { protected WxPubPayClient(Long channelId, String channelCode, WxPayClientConfig config) {

View File

@@ -8,7 +8,7 @@ import com.github.binarywang.wxpay.constant.WxPayConstants;
import com.github.binarywang.wxpay.exception.WxPayException; import com.github.binarywang.wxpay.exception.WxPayException;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderRespDTO;
import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO; import com.tashow.cloud.sdk.payment.dto.order.PayOrderUnifiedReqDTO;
import com.tashow.cloud.sdk.payment.enums.channel.PayTypeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderTypeEnum;
import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum; import com.tashow.cloud.sdk.payment.enums.order.PayOrderDisplayModeEnum;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -23,7 +23,7 @@ import lombok.extern.slf4j.Slf4j;
public class WxWapPayClient extends AbstractWxPayClient { public class WxWapPayClient extends AbstractWxPayClient {
public WxWapPayClient(Long channelId, WxPayClientConfig config) { public WxWapPayClient(Long channelId, WxPayClientConfig config) {
super(channelId, PayTypeEnum.WX_WAP.getCode(), config); super(channelId, PayOrderTypeEnum.WX_WAP.getCode(), config);
} }
protected WxWapPayClient(Long channelId, String channelCode, WxPayClientConfig config) { protected WxWapPayClient(Long channelId, String channelCode, WxPayClientConfig config) {

View File

@@ -0,0 +1,20 @@
package com.tashow.cloud.sdk.payment.enums.order;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 支付渠道
*/
@Getter
@AllArgsConstructor
public enum PayOrderChannelEnum {
ONLINE(1, "线上支付"),
UNDERLINE(10, "线下支付"),
;
private final Integer status;
private final String name;
}

View File

@@ -1,4 +1,4 @@
package com.tashow.cloud.sdk.payment.enums.channel; package com.tashow.cloud.sdk.payment.enums.order;
import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.ArrayUtil;
import com.tashow.cloud.sdk.payment.client.PayClientConfig; import com.tashow.cloud.sdk.payment.client.PayClientConfig;
@@ -14,7 +14,7 @@ import lombok.Getter;
*/ */
@Getter @Getter
@AllArgsConstructor @AllArgsConstructor
public enum PayTypeEnum { public enum PayOrderTypeEnum {
WX_PUB("wx_pub", "微信 JSAPI 支付", WxPayClientConfig.class), // 公众号网页 WX_PUB("wx_pub", "微信 JSAPI 支付", WxPayClientConfig.class), // 公众号网页
WX_LITE("wx_lite", "微信小程序支付", WxPayClientConfig.class), WX_LITE("wx_lite", "微信小程序支付", WxPayClientConfig.class),
@@ -60,7 +60,7 @@ public enum PayTypeEnum {
*/ */
public static final String CLOUDPAY = "CLOUDPAY"; public static final String CLOUDPAY = "CLOUDPAY";
public static PayTypeEnum getByCode(String code) { public static PayOrderTypeEnum getByCode(String code) {
return ArrayUtil.firstMatch(o -> o.getCode().equals(code), values()); return ArrayUtil.firstMatch(o -> o.getCode().equals(code), values());
} }