提交 5c470fab 作者: zhenjie

小猪结算-电子签约

上级 018cee99
...@@ -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;
} }
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;
}
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;
}
...@@ -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>
......
...@@ -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;
} }
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";
}
}
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);
}
...@@ -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();
......
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;
}
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);
}
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();
}
}
...@@ -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:
......
...@@ -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:
......
<?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 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论