Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
cms
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
cms
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 {
...
@@ -73,4 +73,6 @@ public class UserAccountVO implements Serializable {
private
Integer
auditStatus
;
private
Integer
auditStatus
;
@ApiModelProperty
(
value
=
"总积分 null表示无积分"
)
@ApiModelProperty
(
value
=
"总积分 null表示无积分"
)
private
Integer
totalPoints
;
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 @@
...
@@ -85,6 +85,20 @@
<version>
2.0.5
</version>
<version>
2.0.5
</version>
</dependency>
</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>
</dependencies>
<build>
<build>
...
...
csm-service/cms-service-user/src/main/java/com/mmc/iuav/user/constant/UserSystemConstant.java
浏览文件 @
5c470fab
...
@@ -37,4 +37,22 @@ public class UserSystemConstant {
...
@@ -37,4 +37,22 @@ public class UserSystemConstant {
@Value
(
"${third-party.qcc.secret-key}"
)
@Value
(
"${third-party.qcc.secret-key}"
)
private
String
qccSecretKey
;
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 {
...
@@ -44,6 +44,8 @@ public class UserAccountDO implements Serializable {
private
Integer
cityCode
;
private
Integer
cityCode
;
private
Integer
districtCode
;
private
Integer
districtCode
;
private
Integer
xzAuthStatus
;
private
Integer
companyAuthStatus
;
private
Integer
companyAuthStatus
;
private
String
companyName
;
private
String
companyName
;
private
Integer
leader
;
private
Integer
leader
;
...
@@ -111,6 +113,7 @@ public class UserAccountDO implements Serializable {
...
@@ -111,6 +113,7 @@ public class UserAccountDO implements Serializable {
.
userRcdVO
(
this
.
userRcdDO
==
null
?
null
:
this
.
userRcdDO
.
buildUserRcdVO
())
.
userRcdVO
(
this
.
userRcdDO
==
null
?
null
:
this
.
userRcdDO
.
buildUserRcdVO
())
.
leader
(
this
.
leader
)
.
leader
(
this
.
leader
)
.
realNameAuthStatus
(
this
.
realNameAuthStatus
)
.
realNameAuthStatus
(
this
.
realNameAuthStatus
)
.
xzAuthStatus
(
this
.
xzAuthStatus
)
.
auditStatus
(
this
.
auditStatus
)
.
auditStatus
(
this
.
auditStatus
)
.
totalPoints
(
this
.
totalPoints
)
.
totalPoints
(
this
.
totalPoints
)
.
build
();
.
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:
...
@@ -69,6 +69,13 @@ third-party:
qcc
:
qcc
:
app-key
:
5015e664848d406ab1ca4b505c3da803
app-key
:
5015e664848d406ab1ca4b505c3da803
secret-key
:
7C4DB8CCECC148175E46392CC0A1B410
secret-key
:
7C4DB8CCECC148175E46392CC0A1B410
xzsz
:
appKey
:
1e8e59e056be41f8a05c090964d7ce37
appSecret
:
ceshihuanjingyanshizhanghao00000
aes
:
0000000000000000
domain
:
https://uat.xzsz.ltd/
position
:
销售推广
taxFundId
:
xxxxxxxxxxxxxxxxxxxxxxx
iuav
:
iuav
:
pay
:
pay
:
...
...
csm-service/cms-service-user/src/main/resources/application-local.yml
浏览文件 @
5c470fab
...
@@ -38,6 +38,13 @@ third-party:
...
@@ -38,6 +38,13 @@ third-party:
qcc
:
qcc
:
app-key
:
5015e664848d406ab1ca4b505c3da803
app-key
:
5015e664848d406ab1ca4b505c3da803
secret-key
:
7C4DB8CCECC148175E46392CC0A1B410
secret-key
:
7C4DB8CCECC148175E46392CC0A1B410
xzsz
:
appKey
:
1e8e59e056be41f8a05c090964d7ce37
appSecret
:
ceshihuanjingyanshizhanghao00000
aes
:
0000000000000000
domain
:
https://uat.xzsz.ltd/
position
:
销售推广
taxFundId
:
xxxxxxxxxxxxxxxxxxxxxxx
iuav
:
iuav
:
pay
:
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
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论