Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
cms-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
cms-ci-test
Commits
5c470fab
提交
5c470fab
authored
8月 21, 2023
作者:
zhenjie
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
小猪结算-电子签约
上级
018cee99
显示空白字符变更
内嵌
并排
正在显示
15 个修改的文件
包含
570 行增加
和
0 行删除
+570
-0
UserAccountVO.java
...c/main/java/com/mmc/iuav/user/model/vo/UserAccountVO.java
+2
-0
XzAuthVO.java
...el/src/main/java/com/mmc/iuav/user/model/vo/XzAuthVO.java
+26
-0
XzWithdrawalVO.java
.../main/java/com/mmc/iuav/user/model/vo/XzWithdrawalVO.java
+22
-0
pom.xml
csm-service/cms-service-user/pom.xml
+14
-0
UserSystemConstant.java
...n/java/com/mmc/iuav/user/constant/UserSystemConstant.java
+18
-0
XzController.java
.../java/com/mmc/iuav/user/controller/xzsz/XzController.java
+174
-0
XzDao.java
...-user/src/main/java/com/mmc/iuav/user/dao/xzsz/XzDao.java
+17
-0
UserAccountDO.java
...src/main/java/com/mmc/iuav/user/entity/UserAccountDO.java
+3
-0
XzAuthDO.java
...user/src/main/java/com/mmc/iuav/user/entity/XzAuthDO.java
+31
-0
XzService.java
...c/main/java/com/mmc/iuav/user/service/xzsz/XzService.java
+33
-0
XzServiceImpl.java
...va/com/mmc/iuav/user/service/xzsz/impl/XzServiceImpl.java
+197
-0
application-dev.yml
...e/cms-service-user/src/main/resources/application-dev.yml
+7
-0
application-local.yml
...cms-service-user/src/main/resources/application-local.yml
+7
-0
piggy-settlement-sdk-1.7.0.jar
...ser/src/main/resources/lib/piggy-settlement-sdk-1.7.0.jar
+0
-0
XzDao.xml
...cms-service-user/src/main/resources/mapper/xzsz/XzDao.xml
+19
-0
没有找到文件。
cms-common/cms-common-model/src/main/java/com/mmc/iuav/user/model/vo/UserAccountVO.java
浏览文件 @
5c470fab
...
...
@@ -73,4 +73,6 @@ public class UserAccountVO implements Serializable {
private
Integer
auditStatus
;
@ApiModelProperty
(
value
=
"总积分 null表示无积分"
)
private
Integer
totalPoints
;
@ApiModelProperty
(
value
=
"小猪算账电签状态:0否,1是"
)
private
Integer
xzAuthStatus
;
}
cms-common/cms-common-model/src/main/java/com/mmc/iuav/user/model/vo/XzAuthVO.java
0 → 100644
浏览文件 @
5c470fab
package
com
.
mmc
.
iuav
.
user
.
model
.
vo
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @author: zj
* @Date: 2023/8/21 13:40
*/
@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
XzAuthVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
6009105206194794410L
;
private
String
username
;
private
String
idCardNo
;
private
String
mobile
;
private
String
bankAccount
;
private
String
idCardImageFront
;
private
String
idCardImageBack
;
}
cms-common/cms-common-model/src/main/java/com/mmc/iuav/user/model/vo/XzWithdrawalVO.java
0 → 100644
浏览文件 @
5c470fab
package
com
.
mmc
.
iuav
.
user
.
model
.
vo
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @author: zj
* @Date: 2023/8/21 20:14
*/
@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
XzWithdrawalVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
8758847907824399671L
;
private
String
payAccount
;
private
Double
payAmount
;
}
csm-service/cms-service-user/pom.xml
浏览文件 @
5c470fab
...
...
@@ -85,6 +85,20 @@
<version>
2.0.5
</version>
</dependency>
<dependency>
<groupId>
com.mmc.iuav.cms
</groupId>
<artifactId>
piggy-settlement
</artifactId>
<version>
1.0.0
</version>
<scope>
system
</scope>
<systemPath>
${basedir}/src/main/resources/lib/piggy-settlement-sdk-1.7.0.jar
</systemPath>
</dependency>
<dependency>
<groupId>
cn.hutool
</groupId>
<artifactId>
hutool-all
</artifactId>
<version>
5.3.5
</version>
</dependency>
</dependencies>
<build>
...
...
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/constant/UserSystemConstant.java
浏览文件 @
5c470fab
...
...
@@ -37,4 +37,22 @@ public class UserSystemConstant {
@Value
(
"${third-party.qcc.secret-key}"
)
private
String
qccSecretKey
;
@Value
(
"${third-party.xzsz.appKey}"
)
private
String
xzAppKey
;
@Value
(
"${third-party.xzsz.appSecret}"
)
private
String
xzAppSecret
;
@Value
(
"${third-party.xzsz.aes}"
)
private
String
xzAes
;
@Value
(
"${third-party.xzsz.domain}"
)
private
String
xzDomain
;
@Value
(
"${third-party.xzsz.position}"
)
private
String
xzPosition
;
@Value
(
"${third-party.xzsz.taxFundId}"
)
private
String
taxFundId
;
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/controller/xzsz/XzController.java
0 → 100644
浏览文件 @
5c470fab
package
com
.
mmc
.
iuav
.
user
.
controller
.
xzsz
;
import
cn.hutool.json.JSONObject
;
import
com.mmc.iuav.response.ResultBody
;
import
com.mmc.iuav.user.constant.UserSystemConstant
;
import
com.mmc.iuav.user.controller.BaseController
;
import
com.mmc.iuav.user.model.vo.XzAuthVO
;
import
com.mmc.iuav.user.model.vo.XzWithdrawalVO
;
import
com.mmc.iuav.user.service.xzsz.XzService
;
import
com.piggy.settlement.sdk.client.v2.bankreceipt.PiggyBankReceiptClient
;
import
com.piggy.settlement.sdk.client.v2.singlewithdraw.PiggySingleWithdrawalApiV2Client
;
import
com.piggy.settlement.sdk.util.v2.PiggyOpenBasicsAesUtil
;
import
com.piggy.settlement.sdk.vo.v2.bankreceipt.PiggyBankReceiptVo
;
import
com.piggy.settlement.sdk.vo.v2.singlewithdraw.PiggySingleWithdrawV2Vo
;
import
com.piggy.settlement.sdk.vo.v2.singlewithdraw.PiggySingleWithdrawalQueryV2Vo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiResponse
;
import
io.swagger.annotations.ApiResponses
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
/**
* @author: zj
* @Date: 2023/8/20 14:01
*/
@Slf4j
@Api
(
tags
=
"小猪算账api"
)
@RequestMapping
(
"/xz/"
)
@RestController
public
class
XzController
extends
BaseController
{
@Autowired
private
XzService
xzService
;
@Autowired
private
UserSystemConstant
userSystemConstant
;
@ApiOperation
(
value
=
"税源地公司信息查询-V2"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"getTaxFundList"
)
public
ResultBody
getTaxFundList
()
{
return
xzService
.
getTaxFundList
();
}
@ApiOperation
(
value
=
"资金池汇总余额查询-V2"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"getCashPooling"
)
public
ResultBody
getCashPooling
()
{
return
xzService
.
getCashPooling
();
}
@ApiOperation
(
value
=
"查询税源地可用资金-V2"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"getUsableCashPooling"
)
public
ResultBody
getUsableCashPooling
()
{
return
xzService
.
xzService
();
}
@ApiOperation
(
value
=
"签约状态查询"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"getContractScope"
)
public
ResultBody
getContractScope
(
@RequestBody
XzAuthVO
xzAuthVO
)
{
return
ResultBody
.
success
(
xzService
.
getContractScope
(
xzAuthVO
));
}
@ApiOperation
(
value
=
"发起合同签署"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"hasKeyByUrl"
)
public
ResultBody
hasKeyByUrl
(
@RequestBody
XzAuthVO
xzAuthVO
,
HttpServletRequest
request
)
{
return
ResultBody
.
success
(
xzService
.
hasKeyByUrl
(
xzAuthVO
,
this
.
getUserLoginInfoFromRedis
(
request
)));
}
@ApiOperation
(
value
=
"查询签署结果"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"getSignedResult"
)
public
ResultBody
getSignedResult
(
@RequestBody
XzAuthVO
xzAuthVO
)
{
return
ResultBody
.
success
(
xzService
.
getSignedResult
(
xzAuthVO
));
}
@ApiOperation
(
value
=
"在线浏览合同"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"viewContract"
)
public
ResultBody
viewContract
(
@RequestParam
String
documentId
)
{
return
ResultBody
.
success
(
xzService
.
viewContract
(
documentId
));
}
@ApiOperation
(
value
=
"刷脸数据删除"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"clearTestFace"
)
public
ResultBody
clearTestFace
(
@RequestParam
String
name
,
@RequestParam
String
idCard
)
{
return
xzService
.
clearTestFace
(
name
,
idCard
);
}
@ApiOperation
(
value
=
"特殊单笔提现上报"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"singleSubmitLimit"
)
public
ResultBody
singleSubmitLimit
()
{
PiggySingleWithdrawalApiV2Client
v2Client
=
PiggySingleWithdrawalApiV2Client
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
v2Client
.
singleSubmitLimit
(
PiggySingleWithdrawV2Vo
.
builder
()
.
appKey
(
userSystemConstant
.
getXzAppKey
())
.
bizAESContent
(
PiggyOpenBasicsAesUtil
.
produceAesData
(
userSystemConstant
.
getXzAppKey
(),
"0000000000000000"
,
PiggySingleWithdrawV2Vo
.
SingleWithdrawV2Vo
.
builder
()
.
notifyUrl
(
"http://uat.com"
)
.
taxFundId
(
"xxxxxxxxxxxxxxxxxxxxxxx"
)
.
month
(
"2021-03"
)
.
outerTradeNo
(
"TEST-123154631531345435"
)
.
empNum
(
"007"
)
.
empName
(
"张三"
)
.
empPhone
(
"13888886666"
)
.
licenseType
(
"ID_CARD"
)
.
licenseId
(
"110000200010102424"
)
.
settleType
(
"alipay"
)
.
payAccount
(
"13888886666@alipy.com"
)
.
positionName
(
"销售推广"
)
.
payAmount
(
0.01
)
.
bankRemo
(
"提现测试"
)
.
build
()))
.
build
());
System
.
out
.
println
(
jsonObject
.
toString
());
return
ResultBody
.
success
();
}
@ApiOperation
(
value
=
"单笔提现上报"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"singleSubmit"
)
public
ResultBody
singleSubmit
(
@RequestBody
XzWithdrawalVO
xzWithdrawalVO
,
HttpServletRequest
request
)
{
return
xzService
.
singleSubmit
(
xzWithdrawalVO
,
this
.
getUserLoginInfoFromRedis
(
request
));
}
@ApiOperation
(
value
=
"查询提现结果"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"querySingleTrade"
)
public
ResultBody
querySingleTrade
()
{
PiggySingleWithdrawalApiV2Client
v2Client
=
PiggySingleWithdrawalApiV2Client
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
v2Client
.
querySingleTrade
(
PiggySingleWithdrawalQueryV2Vo
.
builder
()
.
appKey
(
userSystemConstant
.
getXzAppKey
())
.
outerTradeNo
(
"TEST-123154631531345435"
)
.
build
());
System
.
out
.
println
(
jsonObject
.
toString
());
return
ResultBody
.
success
();
}
@ApiOperation
(
value
=
"查询单笔交易回单"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"querySingleReceipt"
)
public
ResultBody
querySingleReceipt
()
{
PiggyBankReceiptClient
piggyBankReceiptClient
=
PiggyBankReceiptClient
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
piggyBankReceiptClient
.
getSingleReceipt
(
PiggyBankReceiptVo
.
builder
()
.
appKey
(
userSystemConstant
.
getXzAppKey
())
.
frontLogNo
(
"xxx"
)
.
build
());
System
.
out
.
println
(
jsonObject
.
toString
());
return
ResultBody
.
success
();
}
@ApiOperation
(
value
=
"签署结果回调"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"xzAuthNotify"
)
public
String
xzAuthNotify
(
@RequestBody
JSONObject
notify
)
{
return
xzService
.
xzAuthNotify
(
notify
);
}
@ApiOperation
(
value
=
"回调通知(单笔)"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"xzWithdrawNotify"
)
public
String
xzWithdrawNotify
(
@RequestBody
JSONObject
notify
)
{
log
.
info
(
"获取到的推送结果:{}"
,
notify
.
toString
());
return
"success"
;
}
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/dao/xzsz/XzDao.java
0 → 100644
浏览文件 @
5c470fab
package
com
.
mmc
.
iuav
.
user
.
dao
.
xzsz
;
import
com.mmc.iuav.user.entity.XzAuthDO
;
import
org.apache.ibatis.annotations.Mapper
;
/**
* @author: zj
* @Date: 2023/8/21 16:24
*/
@Mapper
public
interface
XzDao
{
void
addAuth
(
XzAuthDO
authDO
);
XzAuthDO
getXzAuthByUserAccountId
(
Integer
userAccountId
);
void
updateAuthStatus
(
Integer
userAccountId
);
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/entity/UserAccountDO.java
浏览文件 @
5c470fab
...
...
@@ -44,6 +44,8 @@ public class UserAccountDO implements Serializable {
private
Integer
cityCode
;
private
Integer
districtCode
;
private
Integer
xzAuthStatus
;
private
Integer
companyAuthStatus
;
private
String
companyName
;
private
Integer
leader
;
...
...
@@ -111,6 +113,7 @@ public class UserAccountDO implements Serializable {
.
userRcdVO
(
this
.
userRcdDO
==
null
?
null
:
this
.
userRcdDO
.
buildUserRcdVO
())
.
leader
(
this
.
leader
)
.
realNameAuthStatus
(
this
.
realNameAuthStatus
)
.
xzAuthStatus
(
this
.
xzAuthStatus
)
.
auditStatus
(
this
.
auditStatus
)
.
totalPoints
(
this
.
totalPoints
)
.
build
();
...
...
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/entity/XzAuthDO.java
0 → 100644
浏览文件 @
5c470fab
package
com
.
mmc
.
iuav
.
user
.
entity
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @author: zj
* @Date: 2023/8/21 15:50
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
XzAuthDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
48590767645438311L
;
private
Integer
id
;
private
Integer
userAccountId
;
private
String
name
;
private
String
idCardNo
;
private
String
mobile
;
private
String
bankAccount
;
private
String
subsidiary_name
;
private
String
document_id
;
private
String
customParams
;
private
String
contract_url
;
private
Integer
deleted
;
private
Date
create_time
;
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/service/xzsz/XzService.java
0 → 100644
浏览文件 @
5c470fab
package
com
.
mmc
.
iuav
.
user
.
service
.
xzsz
;
import
cn.hutool.json.JSONObject
;
import
com.mmc.iuav.response.ResultBody
;
import
com.mmc.iuav.user.model.dto.LoginSuccessDTO
;
import
com.mmc.iuav.user.model.vo.XzAuthVO
;
import
com.mmc.iuav.user.model.vo.XzWithdrawalVO
;
/**
* @author: zj
* @Date: 2023/8/21 9:52
*/
public
interface
XzService
{
ResultBody
getTaxFundList
();
ResultBody
getCashPooling
();
ResultBody
xzService
();
JSONObject
getContractScope
(
XzAuthVO
xzAuthVO
);
String
hasKeyByUrl
(
XzAuthVO
xzAuthVO
,
LoginSuccessDTO
loginSuccessDTO
);
String
xzAuthNotify
(
JSONObject
notify
);
String
getSignedResult
(
XzAuthVO
xzAuthVO
);
String
viewContract
(
String
documentId
);
ResultBody
clearTestFace
(
String
name
,
String
idCard
);
ResultBody
singleSubmit
(
XzWithdrawalVO
xzWithdrawalVO
,
LoginSuccessDTO
loginSuccessDTO
);
}
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/service/xzsz/impl/XzServiceImpl.java
0 → 100644
浏览文件 @
5c470fab
package
com
.
mmc
.
iuav
.
user
.
service
.
xzsz
.
impl
;
import
cn.hutool.json.JSONObject
;
import
com.mmc.iuav.http.HttpsRequestUtil
;
import
com.mmc.iuav.response.ResultBody
;
import
com.mmc.iuav.user.constant.UserSystemConstant
;
import
com.mmc.iuav.user.dao.xzsz.XzDao
;
import
com.mmc.iuav.user.entity.XzAuthDO
;
import
com.mmc.iuav.user.model.dto.LoginSuccessDTO
;
import
com.mmc.iuav.user.model.vo.XzAuthVO
;
import
com.mmc.iuav.user.model.vo.XzWithdrawalVO
;
import
com.mmc.iuav.user.service.xzsz.XzService
;
import
com.piggy.settlement.sdk.client.sign.PiggySignApiClient
;
import
com.piggy.settlement.sdk.client.v2.basics.PiggyOpenBasicsClient
;
import
com.piggy.settlement.sdk.client.v2.singlewithdraw.PiggySingleWithdrawalApiV2Client
;
import
com.piggy.settlement.sdk.util.v2.PiggyOpenBasicsAesUtil
;
import
com.piggy.settlement.sdk.vo.sign.PiggySignResultVo
;
import
com.piggy.settlement.sdk.vo.sign.PiggySignVo
;
import
com.piggy.settlement.sdk.vo.v2.basics.PiggyBasicsVo
;
import
com.piggy.settlement.sdk.vo.v2.singlewithdraw.PiggySingleWithdrawV2Vo
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* @author: zj
* @Date: 2023/8/21 9:52
*/
@Service
@Slf4j
public
class
XzServiceImpl
implements
XzService
{
@Autowired
private
UserSystemConstant
userSystemConstant
;
@Autowired
private
XzDao
xzDao
;
@Override
public
ResultBody
getTaxFundList
()
{
PiggyOpenBasicsClient
piggyOpenBasicsClient
=
PiggyOpenBasicsClient
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
piggyOpenBasicsClient
.
getTaxFundList
(
PiggyBasicsVo
.
builder
()
.
appKey
(
userSystemConstant
.
getXzAppKey
())
.
build
());
return
ResultBody
.
success
(
jsonObject
.
get
(
"data"
));
}
@Override
public
ResultBody
getCashPooling
()
{
PiggyOpenBasicsClient
piggyOpenBasicsClient
=
PiggyOpenBasicsClient
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
piggyOpenBasicsClient
.
getCashPooling
(
PiggyBasicsVo
.
builder
()
.
appKey
(
userSystemConstant
.
getXzAppKey
())
.
build
());
System
.
out
.
println
(
jsonObject
.
toString
());
return
ResultBody
.
success
(
jsonObject
.
get
(
"data"
));
}
@Override
public
ResultBody
xzService
()
{
PiggyOpenBasicsClient
piggyOpenBasicsClient
=
PiggyOpenBasicsClient
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
piggyOpenBasicsClient
.
getTaxFundCashPooling
(
PiggyBasicsVo
.
builder
()
.
appKey
(
userSystemConstant
.
getXzAppKey
())
.
taxFundID
(
"8ae605f565884a1f9a5e91d5a661ce58"
)
.
build
());
System
.
out
.
println
(
jsonObject
.
toString
());
return
ResultBody
.
success
(
jsonObject
.
get
(
"data"
));
}
@Override
public
JSONObject
getContractScope
(
XzAuthVO
xzAuthVO
)
{
PiggySignApiClient
piggySignApiClient
=
PiggySignApiClient
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
piggySignApiClient
.
getSignStatus
(
PiggySignResultVo
.
builder
()
.
appKey
(
userSystemConstant
.
getXzAppKey
())
.
idCardNo
(
xzAuthVO
.
getIdCardNo
())
.
userName
(
xzAuthVO
.
getUsername
())
.
position
(
userSystemConstant
.
getXzPosition
())
.
build
());
System
.
out
.
println
(
jsonObject
.
toString
());
return
jsonObject
;
}
@Override
public
String
hasKeyByUrl
(
XzAuthVO
xzAuthVO
,
LoginSuccessDTO
loginSuccessDTO
)
{
// TODO 查询是否已认证
JSONObject
contractScope
=
this
.
getContractScope
(
xzAuthVO
);
if
(
contractScope
.
get
(
"data"
)
!=
null
)
{
xzDao
.
updateAuthStatus
(
loginSuccessDTO
.
getUserAccountId
());
// TODO 添加认证结果
return
"合同签署完毕"
;
}
else
{
Map
<
String
,
Integer
>
userInfo
=
new
HashMap
<
String
,
Integer
>();
userInfo
.
put
(
"userAccountId"
,
loginSuccessDTO
.
getUserAccountId
());
PiggySignApiClient
piggySignApiClient
=
PiggySignApiClient
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
piggySignApiClient
.
getSignUrl
(
PiggySignVo
.
builder
()
.
appKey
(
userSystemConstant
.
getXzAppKey
())
.
customParams
(
com
.
alibaba
.
fastjson2
.
JSONObject
.
toJSONString
(
userInfo
))
.
idCardNo
(
xzAuthVO
.
getIdCardNo
())
.
infoSource
(
"1"
)
.
jumpPage
(
"https://wwww.baidu.com"
)
.
mobile
(
xzAuthVO
.
getMobile
())
.
notifyUrl
(
"https://www.iuav.shop/xz/xzAuthNotify"
)
.
position
(
userSystemConstant
.
getXzPosition
())
.
userName
(
xzAuthVO
.
getUsername
())
.
build
());
// TODO 发送模板消息
return
jsonObject
.
get
(
"data"
).
toString
();
}
}
@Transactional
@Override
public
String
xzAuthNotify
(
JSONObject
notify
)
{
log
.
info
(
"获取到的推送结果:{}"
,
notify
.
toString
());
// 认证成功,修改认证状态
if
(
notify
.
get
(
"code"
).
equals
(
"0"
))
{
XzAuthDO
authDO
=
notify
.
get
(
"data"
,
XzAuthDO
.
class
);
Integer
userAccountId
=
(
Integer
)
com
.
alibaba
.
fastjson2
.
JSONObject
.
parseObject
(
authDO
.
getCustomParams
()).
get
(
"userAccountId"
);
if
(
userAccountId
!=
null
)
{
XzAuthDO
xzAuthDO
=
xzDao
.
getXzAuthByUserAccountId
(
userAccountId
);
if
(
xzAuthDO
!=
null
)
{
authDO
.
setUserAccountId
(
userAccountId
);
xzDao
.
addAuth
(
authDO
);
xzDao
.
updateAuthStatus
(
userAccountId
);
return
"success"
;
}
}
}
return
null
;
}
@Override
public
String
getSignedResult
(
XzAuthVO
xzAuthVO
)
{
PiggySignApiClient
piggySignApiClient
=
PiggySignApiClient
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
piggySignApiClient
.
getSignResult
(
PiggySignResultVo
.
builder
()
.
appKey
(
userSystemConstant
.
getXzAppKey
())
.
idCardNo
(
xzAuthVO
.
getIdCardNo
())
.
userName
(
xzAuthVO
.
getUsername
())
.
build
());
System
.
out
.
println
(
jsonObject
.
toString
());
return
jsonObject
.
toString
();
}
@Override
public
String
viewContract
(
String
documentId
)
{
PiggySignApiClient
piggySignApiClient
=
PiggySignApiClient
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
piggySignApiClient
.
viewContract
(
documentId
);
System
.
out
.
println
(
jsonObject
.
toString
());
return
jsonObject
.
toString
();
}
@Override
public
ResultBody
clearTestFace
(
String
name
,
String
idCard
)
{
Map
<
String
,
String
>
map
=
new
HashMap
<
String
,
String
>();
map
.
put
(
"name"
,
name
);
map
.
put
(
"idCard"
,
idCard
);
String
s
=
HttpsRequestUtil
.
httpsGet
(
"https://uat.xzsz.ltd/contract/sign/clearTestPerson"
,
map
);
return
ResultBody
.
success
(
s
);
}
@Override
public
ResultBody
singleSubmit
(
XzWithdrawalVO
xzWithdrawalVO
,
LoginSuccessDTO
loginSuccessDTO
)
{
XzAuthDO
xzAuthDO
=
xzDao
.
getXzAuthByUserAccountId
(
loginSuccessDTO
.
getUserAccountId
());
if
(
xzAuthDO
==
null
)
{
return
ResultBody
.
error
(
"未认证"
);
}
// 判断自己可以提现的余额
ResultBody
resultBody
=
this
.
xzService
();
// 判断可提现金额
PiggySingleWithdrawalApiV2Client
v2Client
=
PiggySingleWithdrawalApiV2Client
.
getInstanse
(
userSystemConstant
.
getXzAppSecret
(),
userSystemConstant
.
getXzDomain
());
JSONObject
jsonObject
=
v2Client
.
singleSubmit
(
PiggySingleWithdrawV2Vo
.
builder
()
.
appKey
(
userSystemConstant
.
getXzAppKey
())
.
bizAESContent
(
PiggyOpenBasicsAesUtil
.
produceAesData
(
userSystemConstant
.
getXzAppKey
(),
"0000000000000000"
,
PiggySingleWithdrawV2Vo
.
SingleWithdrawV2Vo
.
builder
()
.
notifyUrl
(
"http://www.iuav.shop/xz/xzWithdrawNotify"
)
.
taxFundId
(
userSystemConstant
.
getTaxFundId
())
.
month
(
"2021-08"
)
.
outerTradeNo
(
"TEST-123154631531345435"
)
.
empNum
(
"userAccountId_"
+
loginSuccessDTO
.
getUserAccountId
())
.
empName
(
xzAuthDO
.
getName
())
.
empPhone
(
xzAuthDO
.
getMobile
())
.
licenseType
(
"ID_CARD"
)
.
licenseId
(
xzAuthDO
.
getIdCardNo
())
.
settleType
(
"bankcard"
)
.
payAccount
(
xzWithdrawalVO
.
getPayAccount
())
.
positionName
(
userSystemConstant
.
getXzPosition
())
.
payAmount
(
xzWithdrawalVO
.
getPayAmount
())
.
bankRemo
(
"云享飞提现"
)
.
remarks
(
"云享飞提现"
)
.
build
()))
.
build
());
System
.
out
.
println
(
jsonObject
.
toString
());
return
ResultBody
.
success
();
}
}
csm-service/cms-service-user/src/main/resources/application-dev.yml
浏览文件 @
5c470fab
...
...
@@ -69,6 +69,13 @@ third-party:
qcc
:
app-key
:
5015e664848d406ab1ca4b505c3da803
secret-key
:
7C4DB8CCECC148175E46392CC0A1B410
xzsz
:
appKey
:
1e8e59e056be41f8a05c090964d7ce37
appSecret
:
ceshihuanjingyanshizhanghao00000
aes
:
0000000000000000
domain
:
https://uat.xzsz.ltd/
position
:
销售推广
taxFundId
:
xxxxxxxxxxxxxxxxxxxxxxx
iuav
:
pay
:
...
...
csm-service/cms-service-user/src/main/resources/application-local.yml
浏览文件 @
5c470fab
...
...
@@ -38,6 +38,13 @@ third-party:
qcc
:
app-key
:
5015e664848d406ab1ca4b505c3da803
secret-key
:
7C4DB8CCECC148175E46392CC0A1B410
xzsz
:
appKey
:
1e8e59e056be41f8a05c090964d7ce37
appSecret
:
ceshihuanjingyanshizhanghao00000
aes
:
0000000000000000
domain
:
https://uat.xzsz.ltd/
position
:
销售推广
taxFundId
:
xxxxxxxxxxxxxxxxxxxxxxx
iuav
:
pay
:
...
...
csm-service/cms-service-user/src/main/resources/lib/piggy-settlement-sdk-1.7.0.jar
0 → 100644
浏览文件 @
5c470fab
File added
csm-service/cms-service-user/src/main/resources/mapper/xzsz/XzDao.xml
0 → 100644
浏览文件 @
5c470fab
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.iuav.user.dao.xzsz.XzDao"
>
<insert
id=
"addAuth"
parameterType=
"com.mmc.iuav.user.entity.XzAuthDO"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into xz_auth(user_account_id, `name`, id_card_no, mobile, bank_account, subsidiary_name, document_id, custom_params, contract_url, create_time)
values (#{userAccountId}, #{name}, #{idCardNo}, #{mobile}, #{bankAccount}, #{subsidiary_name}, #{document_id}, #{customParams}, #{contract_url}, NOW())
</insert>
<update
id=
"updateAuthStatus"
>
update user_account set xz_auth_status = 1 where id = #{userAccountId}
</update>
<select
id=
"getXzAuthByUserAccountId"
resultType=
"com.mmc.iuav.user.entity.XzAuthDO"
>
select id, user_account_id, `name`, id_card_no, mobile, bank_account, subsidiary_name, document_id, custom_params, contract_url, create_time
from xz_auth where user_account_id = #{userAccountId} and is_deleted = 0
</select>
</mapper>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论