Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
fit-finance
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fitness-server
fit-finance
Commits
3d3f2f26
Commit
3d3f2f26
authored
Feb 22, 2024
by
程裕兵
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat:apply
parent
b9adbffd
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
296 additions
and
43 deletions
+296
-43
api/src/main/java/com/jiejing/fitness/finance/api/enums/MerchantTypeEnums.java
+0
-1
api/src/main/java/com/jiejing/fitness/finance/api/merchant/BrandMerchantApi.java
+24
-0
api/src/main/java/com/jiejing/fitness/finance/api/merchant/BrandMerchantApiFallback.java
+24
-0
api/src/main/java/com/jiejing/fitness/finance/api/merchant/request/ApplyBrandMerchantRequest.java
+212
-0
app/src/main/java/com/jiejing/fitness/finance/app/controller/merchant/BrandMerchantController.java
+34
-0
service/src/main/java/com/jiejing/fitness/finance/service/enums/MerchantTypeEnums.java
+0
-40
service/src/main/java/com/jiejing/fitness/finance/service/event/ListenerService.java
+1
-1
service/src/main/java/com/jiejing/fitness/finance/service/merchant/convert/MerchantConvert.java
+1
-1
No files found.
api/src/main/java/com/jiejing/fitness/finance/api/enums/MerchantTypeEnums.java
View file @
3d3f2f26
...
@@ -20,7 +20,6 @@ public enum MerchantTypeEnums {
...
@@ -20,7 +20,6 @@ public enum MerchantTypeEnums {
*/
*/
UNKNOWN
(
""
,
""
),
UNKNOWN
(
""
,
""
),
BRAND
(
"BRAND"
,
"品牌"
),
BRAND
(
"BRAND"
,
"品牌"
),
STUDIO
(
"STUDIO"
,
"场馆"
),
;
;
...
...
api/src/main/java/com/jiejing/fitness/finance/api/merchant/BrandMerchantApi.java
0 → 100644
View file @
3d3f2f26
package
com
.
jiejing
.
fitness
.
finance
.
api
.
merchant
;
import
com.jiejing.common.model.JsonResult
;
import
com.jiejing.fitness.finance.api.merchant.request.ApplyBrandMerchantRequest
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.PostMapping
;
/**
* 品牌商户API
*
* @author chengyubing
* @since 2024/2/22 11:49
*/
@FeignClient
(
name
=
"PAYCENTER"
,
url
=
"http://app-paycenter:7007"
,
fallbackFactory
=
BrandMerchantApi
.
class
)
public
interface
BrandMerchantApi
{
String
TAG
=
"金融-品牌商户管理"
;
@ApiOperation
(
value
=
"品牌入驻商户"
,
tags
=
{
TAG
})
@PostMapping
(
value
=
"/private/brandMerchant/apply"
)
JsonResult
<
Void
>
apply
(
ApplyBrandMerchantRequest
request
);
}
api/src/main/java/com/jiejing/fitness/finance/api/merchant/BrandMerchantApiFallback.java
0 → 100644
View file @
3d3f2f26
package
com
.
jiejing
.
fitness
.
finance
.
api
.
merchant
;
import
com.jiejing.common.model.JsonResult
;
import
com.jiejing.fitness.finance.api.merchant.request.ApplyBrandMerchantRequest
;
import
feign.hystrix.FallbackFactory
;
import
org.springframework.stereotype.Component
;
/**
* @author chengyubing
* @since 2024/2/22 11:49
*/
@Component
public
class
BrandMerchantApiFallback
implements
FallbackFactory
<
BrandMerchantApi
>
{
@Override
public
BrandMerchantApi
create
(
Throwable
throwable
)
{
return
new
BrandMerchantApi
()
{
@Override
public
JsonResult
<
Void
>
apply
(
ApplyBrandMerchantRequest
request
)
{
return
JsonResult
.
rpcError
();
}
};
}
}
api/src/main/java/com/jiejing/fitness/finance/api/merchant/request/ApplyBrandMerchantRequest.java
0 → 100644
View file @
3d3f2f26
package
com
.
jiejing
.
fitness
.
finance
.
api
.
merchant
.
request
;
import
com.jiejing.paycenter.common.enums.merchant.CardTypeEnums
;
import
com.jiejing.paycenter.common.enums.merchant.CertTypeEnums
;
import
com.jiejing.paycenter.common.enums.merchant.CompanyTypeEnums
;
import
com.jiejing.paycenter.common.enums.merchant.ExpireTypeEnums
;
import
com.jiejing.paycenter.common.enums.merchant.ResourceTypeEnums
;
import
com.jiejing.paycenter.common.model.ResourceInfo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.util.Date
;
import
java.util.Map
;
import
javax.validation.Valid
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotNull
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* 品牌申请商户请求
*
* @author chengyubing
* @since 2024/2/20 14:03
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel
(
description
=
"申请品牌商户请求信息"
)
public
class
ApplyBrandMerchantRequest
{
@ApiModelProperty
(
value
=
"场馆ID"
,
required
=
true
)
@NotNull
(
message
=
"场馆ID不能为空"
)
private
Long
studioId
;
@ApiModelProperty
(
value
=
"商户名称"
,
required
=
true
)
@NotBlank
(
message
=
"商户名称不能为空"
)
private
String
merchantName
;
@ApiModelProperty
(
value
=
"商户简称"
,
required
=
true
)
@NotBlank
(
message
=
"商户简称不能为空"
)
private
String
shortName
;
@ApiModelProperty
(
value
=
"企业类型"
,
required
=
true
)
@NotNull
(
message
=
"企业类型不能为空"
)
private
CompanyTypeEnums
companyType
;
@ApiModelProperty
(
value
=
"经营地址:省"
,
required
=
true
)
@NotBlank
(
message
=
"经营地址不能为空"
)
private
String
businessProvince
;
@ApiModelProperty
(
value
=
"经营地址:市"
,
required
=
true
)
@NotBlank
(
message
=
"经营地址不能为空"
)
private
String
businessCity
;
@ApiModelProperty
(
value
=
"经营地址:区"
,
required
=
true
)
@NotBlank
(
message
=
"经营地址不能为空"
)
private
String
businessDistrict
;
@ApiModelProperty
(
value
=
"经营详细地址"
,
required
=
true
)
@NotBlank
(
message
=
"经营地址不能为空"
)
private
String
businessAddress
;
@ApiModelProperty
(
value
=
"营业执照编号"
,
required
=
true
)
@NotBlank
(
message
=
"营业执照编号不能为空"
)
private
String
licenseCode
;
@ApiModelProperty
(
value
=
"营业执照有效期类型"
,
required
=
true
)
@NotNull
(
message
=
"营业执照有效期类型不能为空"
)
private
ExpireTypeEnums
licenseExpireType
;
@ApiModelProperty
(
value
=
"营业执照有效期开始日期"
,
required
=
true
)
@NotNull
(
message
=
"营业执照有效期开始日期不能为空"
)
private
Date
licenseStartDate
;
@ApiModelProperty
(
value
=
"营业执照有效期截止日期"
)
private
Date
licenseEndDate
;
@ApiModelProperty
(
value
=
"营业护照规定的经营范围"
,
required
=
true
)
@NotBlank
(
message
=
"经营范围不能为空"
)
private
String
licenseBusinessScope
;
@ApiModelProperty
(
value
=
"营业执照成立时间"
,
required
=
true
)
@NotNull
(
message
=
"成立时间不能为空"
)
private
Date
licenseFoundDate
;
@ApiModelProperty
(
value
=
"商户注册地址:省"
,
required
=
true
)
@NotBlank
(
message
=
"注册省不能为空"
)
private
String
licenseProvince
;
@ApiModelProperty
(
value
=
"商户注册地址:市"
,
required
=
true
)
@NotBlank
(
message
=
"注册市不能为空"
)
private
String
licenseCity
;
@ApiModelProperty
(
value
=
"商户注册地址:区"
,
required
=
true
)
@NotBlank
(
message
=
"注册区不能为空"
)
private
String
licenseDistrict
;
@ApiModelProperty
(
value
=
"营业执照注册详细地址"
,
required
=
true
)
@NotBlank
(
message
=
"注册地址不能为空"
)
private
String
licenseAddress
;
@ApiModelProperty
(
value
=
"法人姓名"
,
required
=
true
)
@NotBlank
(
message
=
"法人姓名不能为空"
)
private
String
legalName
;
@ApiModelProperty
(
value
=
"法人证件号码"
,
required
=
true
)
@NotBlank
(
message
=
"法人证件号码不能为空"
)
private
String
legalCertNo
;
@ApiModelProperty
(
value
=
"法人证件类型"
,
required
=
true
)
@NotNull
(
message
=
"法人证件类型不能为空"
)
private
CertTypeEnums
legalCertType
;
@ApiModelProperty
(
value
=
"法人证件有效期类型"
,
required
=
true
)
@NotNull
(
message
=
"法人证件有效期类型不能为空"
)
private
ExpireTypeEnums
legalCertExpireType
;
@ApiModelProperty
(
value
=
"法人证件有效期开始日期"
,
required
=
true
)
@NotNull
(
message
=
"法人证件有效期开始日期不能为空"
)
private
Date
legalCertStartDate
;
@ApiModelProperty
(
value
=
"法人证件有效期截止日期"
)
private
Date
legalCertEndDate
;
@ApiModelProperty
(
value
=
"法人手机号"
)
private
String
legalPhone
;
@ApiModelProperty
(
value
=
"法人证件地址:省"
)
private
String
legalProvince
;
@ApiModelProperty
(
value
=
"法人证件地址:市"
)
private
String
legalCity
;
@ApiModelProperty
(
value
=
"法人证件地址:区"
)
private
String
legalDistrict
;
@ApiModelProperty
(
value
=
"法人证件详细地址"
)
private
String
legalAddress
;
@ApiModelProperty
(
value
=
"联系人邮箱"
,
required
=
true
)
@NotBlank
(
message
=
"联系人邮箱不能为空"
)
private
String
contactEmail
;
@ApiModelProperty
(
value
=
"结算卡类型"
,
required
=
true
)
@NotNull
(
message
=
"结算卡类型不能为空"
)
private
CardTypeEnums
bankCardType
;
@ApiModelProperty
(
value
=
"结算卡卡号"
,
required
=
true
)
@NotBlank
(
message
=
"结算卡卡号不能为空"
)
private
String
bankCardNo
;
@ApiModelProperty
(
value
=
"银行卡账户名(对私卡:持卡人姓名;对公卡:营业执照名称)"
,
required
=
true
)
@NotBlank
(
message
=
"结算卡账户名不能为空"
)
private
String
bankCardName
;
@ApiModelProperty
(
value
=
"持卡人手机号"
,
notes
=
"对私卡必填"
)
private
String
bankPhone
;
@ApiModelProperty
(
value
=
"结算卡证件号码(对私卡:持卡人身份证;对公卡:营业执照号)"
,
required
=
true
)
@NotBlank
(
message
=
"结算卡证件号码不能为空"
)
private
String
bankCertNo
;
@ApiModelProperty
(
value
=
"结算卡持卡人证件类型"
,
required
=
true
)
@NotNull
(
message
=
"证件类型不能为空"
)
private
CertTypeEnums
bankCertType
;
@ApiModelProperty
(
value
=
"结算卡证件有效期类型"
,
notes
=
"对私卡必填"
)
private
ExpireTypeEnums
bankCertExpireType
;
@ApiModelProperty
(
value
=
"持卡人证件有效期开始日期"
,
notes
=
"对私卡必填"
)
private
Date
bankCertStartDate
;
@ApiModelProperty
(
value
=
"持卡人证件有效期截止日期"
)
private
Date
bankCertEndDate
;
@ApiModelProperty
(
value
=
"基本存款账户编号|开户许可证核准号"
,
notes
=
"对公卡必填"
)
private
String
bankBaseDepositNo
;
@ApiModelProperty
(
value
=
"银行编码"
,
notes
=
"对公卡必填"
)
private
String
bankCode
;
@ApiModelProperty
(
value
=
"bankName"
,
notes
=
"对公卡必填"
)
private
String
bankName
;
@ApiModelProperty
(
value
=
"支行名称"
,
notes
=
"对公卡必填"
)
private
String
bankBranchName
;
@ApiModelProperty
(
value
=
"支行号"
,
notes
=
"对公卡必填"
)
private
String
bankBranchCode
;
@ApiModelProperty
(
value
=
"结算卡开卡地址:省"
)
private
String
bankCardProvince
;
@ApiModelProperty
(
value
=
"结算卡开卡地址:市"
)
private
String
bankCardCity
;
@ApiModelProperty
(
value
=
"结算卡开卡地址:区"
)
private
String
bankCardDistrict
;
@ApiModelProperty
(
value
=
"结算卡开卡详细地址"
)
private
String
bankCardAddress
;
@ApiModelProperty
(
value
=
"资源信息"
,
required
=
true
)
@NotEmpty
(
message
=
"资源信息不能为空"
)
@Valid
private
Map
<
ResourceTypeEnums
,
ResourceInfo
>
resourceInfo
;
}
app/src/main/java/com/jiejing/fitness/finance/app/controller/merchant/BrandMerchantController.java
0 → 100644
View file @
3d3f2f26
package
com
.
jiejing
.
fitness
.
finance
.
app
.
controller
.
merchant
;
import
com.jiejing.common.model.JsonResult
;
import
com.jiejing.common.utils.convert.BeanUtil
;
import
com.jiejing.fitness.finance.api.merchant.BrandMerchantApi
;
import
com.jiejing.fitness.finance.api.merchant.request.ApplyBrandMerchantRequest
;
import
com.jiejing.fitness.finance.service.merchant.BrandMerchantService
;
import
com.jiejing.fitness.finance.service.merchant.params.ApplyBrandMerchantParams
;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* @author chengyubing
* @since 2024/2/22 11:53
*/
@RestController
public
class
BrandMerchantController
implements
BrandMerchantApi
{
@Resource
private
BrandMerchantService
brandMerchantService
;
@ApiOperation
(
value
=
"品牌入驻商户"
,
tags
=
{
TAG
})
@PostMapping
(
value
=
"/private/brandMerchant/apply"
)
@Override
public
JsonResult
<
Void
>
apply
(
@RequestBody
@Valid
ApplyBrandMerchantRequest
request
)
{
ApplyBrandMerchantParams
params
=
BeanUtil
.
map
(
request
,
ApplyBrandMerchantParams
.
class
);
brandMerchantService
.
apply
(
params
);
return
JsonResult
.
success
();
}
}
service/src/main/java/com/jiejing/fitness/finance/service/enums/MerchantTypeEnums.java
deleted
100644 → 0
View file @
b9adbffd
package
com
.
jiejing
.
fitness
.
finance
.
service
.
enums
;
import
com.baomidou.mybatisplus.annotation.EnumValue
;
import
java.util.Arrays
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
/**
* 商户业务类型
*
* @author raccoon
* @since 2020-11-06 16:44
*/
@Getter
@AllArgsConstructor
public
enum
MerchantTypeEnums
{
/**
* 未知
*/
UNKNOWN
(
""
,
""
),
/**
* 品牌
*/
BRAND
(
"BRAND"
,
"品牌"
),
;
@EnumValue
private
final
String
code
;
private
final
String
desc
;
public
static
MerchantTypeEnums
getByCode
(
String
code
)
{
return
Arrays
.
stream
(
MerchantTypeEnums
.
values
()).
filter
(
e
->
e
.
getCode
().
equals
(
code
)).
findFirst
()
.
orElse
(
UNKNOWN
);
}
}
service/src/main/java/com/jiejing/fitness/finance/service/event/ListenerService.java
View file @
3d3f2f26
...
@@ -3,7 +3,7 @@ package com.jiejing.fitness.finance.service.event;
...
@@ -3,7 +3,7 @@ package com.jiejing.fitness.finance.service.event;
import
static
org
.
springframework
.
integration
.
IntegrationMessageHeaderAccessor
.
DELIVERY_ATTEMPT
;
import
static
org
.
springframework
.
integration
.
IntegrationMessageHeaderAccessor
.
DELIVERY_ATTEMPT
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.jiejing.fitness.finance.
service
.enums.MerchantTypeEnums
;
import
com.jiejing.fitness.finance.
api
.enums.MerchantTypeEnums
;
import
com.jiejing.fitness.finance.service.merchant.BrandMerchantService
;
import
com.jiejing.fitness.finance.service.merchant.BrandMerchantService
;
import
com.jiejing.paycenter.common.event.MerchantEvent
;
import
com.jiejing.paycenter.common.event.MerchantEvent
;
import
com.xiaomai.event.annotation.EventHandler
;
import
com.xiaomai.event.annotation.EventHandler
;
...
...
service/src/main/java/com/jiejing/fitness/finance/service/merchant/convert/MerchantConvert.java
View file @
3d3f2f26
...
@@ -6,9 +6,9 @@ import com.jiejing.common.utils.convert.BeanUtil;
...
@@ -6,9 +6,9 @@ import com.jiejing.common.utils.convert.BeanUtil;
import
com.jiejing.common.utils.crypt.AesUtil
;
import
com.jiejing.common.utils.crypt.AesUtil
;
import
com.jiejing.filecenter.api.resource.vo.ResourceInfoVO
;
import
com.jiejing.filecenter.api.resource.vo.ResourceInfoVO
;
import
com.jiejing.fitness.finance.api.enums.ApplyTypeEnums
;
import
com.jiejing.fitness.finance.api.enums.ApplyTypeEnums
;
import
com.jiejing.fitness.finance.api.enums.MerchantTypeEnums
;
import
com.jiejing.fitness.finance.repository.entity.BrandMerchant
;
import
com.jiejing.fitness.finance.repository.entity.BrandMerchant
;
import
com.jiejing.fitness.finance.repository.entity.BrandMerchantApply
;
import
com.jiejing.fitness.finance.repository.entity.BrandMerchantApply
;
import
com.jiejing.fitness.finance.service.enums.MerchantTypeEnums
;
import
com.jiejing.fitness.finance.service.merchant.params.ApplyBrandMerchantParams
;
import
com.jiejing.fitness.finance.service.merchant.params.ApplyBrandMerchantParams
;
import
com.jiejing.paycenter.api.merchant.request.ApplyMerchantRequest
;
import
com.jiejing.paycenter.api.merchant.request.ApplyMerchantRequest
;
import
com.jiejing.paycenter.api.merchant.request.OpenSingleSubChannelRequest
;
import
com.jiejing.paycenter.api.merchant.request.OpenSingleSubChannelRequest
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment