cy před 3 roky
rodič
revize
6099d6792c

+ 7 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/UserWithdrawalCallbackDao.java

@@ -0,0 +1,7 @@
+package com.yonge.cooleshow.biz.dal.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.yonge.cooleshow.biz.dal.entity.UserWithdrawalCallback;
+
+public interface UserWithdrawalCallbackDao extends BaseMapper<UserWithdrawalCallback> {
+}

+ 392 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserWithdrawalCallback.java

@@ -0,0 +1,392 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.yonge.cooleshow.common.entity.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @Description: 提现回调
+ * @Author: cy
+ * @Date: 2022/5/10
+ */
+@ApiModel(value = "user_withdrawal_callback-提现回调表")
+public class UserWithdrawalCallback extends BaseEntity {
+    @TableId(value = "id_", type = IdType.AUTO)
+    @ApiModelProperty(value = "主键id")
+    private Long id;
+
+    @TableField("order_no_")
+    @ApiModelProperty(value = "众薪平台唯一订单号")
+    private String orderNo;
+
+    @TableField("out_member_no_")
+    @ApiModelProperty(value = "商户号")
+    private String outMemberNo;
+
+    @TableField("outer_order_no_")
+    @ApiModelProperty(value = "商户唯一订单号")
+    private String outerOrderNo;
+
+    @TableField("additional_charge_")
+    @ApiModelProperty(value = "个人附加费(单位为:分)")
+    private BigDecimal additionalCharge;
+
+    @TableField("actual_amount_")
+    @ApiModelProperty(value = "实发金额(单位为:分,范围:1~10000000000)")
+    private BigDecimal actualAmount;
+
+    @TableField("company_charge_")
+    @ApiModelProperty(value = "企业附加费(单位为:分)")
+    private BigDecimal companyCharge;
+
+    @TableField("company_service_fee_")
+    @ApiModelProperty(value = "公司服务费汇总=企业个税+企业附加费+企业服务费(单位为:分)")
+    private BigDecimal companyServiceFee;
+
+    @TableField("company_tax_")
+    @ApiModelProperty(value = "企业承担个税(单位为:分)")
+    private BigDecimal companyTax;
+
+    @TableField("service_charge_")
+    @ApiModelProperty(value = "企业服务费(单位为:分)")
+    private BigDecimal serviceCharge;
+
+    @TableField("tax_fee_")
+    @ApiModelProperty(value = "个人承担个税(单位为:分)")
+    private BigDecimal taxFee;
+
+    @TableField("person_service_fee_")
+    @ApiModelProperty(value = "个人服务费汇总=个人个税+个人附加费(单位为:分)")
+    private BigDecimal personServiceFee;
+
+    @TableField("predict_amount_")
+    @ApiModelProperty(value = "应发金额(单位为:分,范围:1~10000000000)")
+    private BigDecimal predictAmount;
+
+    @TableField("salary_type_")
+    @ApiModelProperty(value = "发放类型(0:个人经营所得)")
+    private String salaryType;
+
+    @TableField("status_")
+    @ApiModelProperty(value = "交易状态(0:交易中;1:交易成功;2:交易失败)")
+    private String status;
+
+    @TableField("create_time_")
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+
+    @TableField("end_time_")
+    @ApiModelProperty(value = "完成时间")
+    private Date endTime;
+
+    @TableField("error_code_")
+    @ApiModelProperty(value = "支付失败时返回")
+    private String errorCode;
+
+    @TableField("error_msg_")
+    @ApiModelProperty(value = "支付失败时返回")
+    private String errorMsg;
+
+    @TableField("mobile_")
+    @ApiModelProperty(value = "收款方电话")
+    private String mobile;
+
+    @TableField("certificate_no_")
+    @ApiModelProperty(value = "收款方身份证号")
+    private String certificateNo;
+
+    @TableField("name_")
+    @ApiModelProperty(value = "收款方姓名(银行预留姓名等)")
+    private String name;
+
+    @TableField("card_attribute_")
+    @ApiModelProperty(value = "卡属性:(C:对私)")
+    private String cardAttribute;
+
+    @TableField("card_type_")
+    @ApiModelProperty(value = "卡类型:DC借记卡")
+    private String cardType;
+
+    @TableField("pay_account_")
+    @ApiModelProperty(value = "收款方账号(银行卡号/支付宝账号/open_id)以实际业务为准")
+    private String payAccount;
+
+    @TableField("pay_type_")
+    @ApiModelProperty(value = "支付类型(1:银行卡,2:支付宝,4:微信)以实际业务为准")
+    private String payType;
+
+    @TableField("project_name_")
+    @ApiModelProperty(value = "项目名称")
+    private String projectName;
+
+    @TableField("remark_")
+    @ApiModelProperty(value = "备注(扩展字段)只针对测试环境:只要参数合规都会返回交易成功,如果想要模拟交易失败,该字段值中含有“失败”二字即会失败。")
+    private String remark;
+
+    @TableField("service_")
+    @ApiModelProperty(value = "接口名称: bpotop.zx.pay.order")
+    private String service;
+
+    @TableField("sign_type_")
+    @ApiModelProperty(value = "签名类型:RSA")
+    private String signType;
+
+    @TableField("notify_url_")
+    @ApiModelProperty(value = "回调地址")
+    private String notifyUrl;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getOrderNo() {
+        return orderNo;
+    }
+
+    public void setOrderNo(String orderNo) {
+        this.orderNo = orderNo;
+    }
+
+    public String getOutMemberNo() {
+        return outMemberNo;
+    }
+
+    public void setOutMemberNo(String outMemberNo) {
+        this.outMemberNo = outMemberNo;
+    }
+
+    public String getOuterOrderNo() {
+        return outerOrderNo;
+    }
+
+    public void setOuterOrderNo(String outerOrderNo) {
+        this.outerOrderNo = outerOrderNo;
+    }
+
+    public BigDecimal getAdditionalCharge() {
+        return additionalCharge;
+    }
+
+    public void setAdditionalCharge(BigDecimal additionalCharge) {
+        this.additionalCharge = additionalCharge;
+    }
+
+    public BigDecimal getActualAmount() {
+        return actualAmount;
+    }
+
+    public void setActualAmount(BigDecimal actualAmount) {
+        this.actualAmount = actualAmount;
+    }
+
+    public BigDecimal getCompanyCharge() {
+        return companyCharge;
+    }
+
+    public void setCompanyCharge(BigDecimal companyCharge) {
+        this.companyCharge = companyCharge;
+    }
+
+    public BigDecimal getCompanyServiceFee() {
+        return companyServiceFee;
+    }
+
+    public void setCompanyServiceFee(BigDecimal companyServiceFee) {
+        this.companyServiceFee = companyServiceFee;
+    }
+
+    public BigDecimal getCompanyTax() {
+        return companyTax;
+    }
+
+    public void setCompanyTax(BigDecimal companyTax) {
+        this.companyTax = companyTax;
+    }
+
+    public BigDecimal getServiceCharge() {
+        return serviceCharge;
+    }
+
+    public void setServiceCharge(BigDecimal serviceCharge) {
+        this.serviceCharge = serviceCharge;
+    }
+
+    public BigDecimal getTaxFee() {
+        return taxFee;
+    }
+
+    public void setTaxFee(BigDecimal taxFee) {
+        this.taxFee = taxFee;
+    }
+
+    public BigDecimal getPersonServiceFee() {
+        return personServiceFee;
+    }
+
+    public void setPersonServiceFee(BigDecimal personServiceFee) {
+        this.personServiceFee = personServiceFee;
+    }
+
+    public BigDecimal getPredictAmount() {
+        return predictAmount;
+    }
+
+    public void setPredictAmount(BigDecimal predictAmount) {
+        this.predictAmount = predictAmount;
+    }
+
+    public String getSalaryType() {
+        return salaryType;
+    }
+
+    public void setSalaryType(String salaryType) {
+        this.salaryType = salaryType;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(Date endTime) {
+        this.endTime = endTime;
+    }
+
+    public String getErrorCode() {
+        return errorCode;
+    }
+
+    public void setErrorCode(String errorCode) {
+        this.errorCode = errorCode;
+    }
+
+    public String getErrorMsg() {
+        return errorMsg;
+    }
+
+    public void setErrorMsg(String errorMsg) {
+        this.errorMsg = errorMsg;
+    }
+
+    public String getMobile() {
+        return mobile;
+    }
+
+    public void setMobile(String mobile) {
+        this.mobile = mobile;
+    }
+
+    public String getCertificateNo() {
+        return certificateNo;
+    }
+
+    public void setCertificateNo(String certificateNo) {
+        this.certificateNo = certificateNo;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getCardAttribute() {
+        return cardAttribute;
+    }
+
+    public void setCardAttribute(String cardAttribute) {
+        this.cardAttribute = cardAttribute;
+    }
+
+    public String getCardType() {
+        return cardType;
+    }
+
+    public void setCardType(String cardType) {
+        this.cardType = cardType;
+    }
+
+    public String getPayAccount() {
+        return payAccount;
+    }
+
+    public void setPayAccount(String payAccount) {
+        this.payAccount = payAccount;
+    }
+
+    public String getPayType() {
+        return payType;
+    }
+
+    public void setPayType(String payType) {
+        this.payType = payType;
+    }
+
+    public String getProjectName() {
+        return projectName;
+    }
+
+    public void setProjectName(String projectName) {
+        this.projectName = projectName;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public String getService() {
+        return service;
+    }
+
+    public void setService(String service) {
+        this.service = service;
+    }
+
+    public String getSignType() {
+        return signType;
+    }
+
+    public void setSignType(String signType) {
+        this.signType = signType;
+    }
+
+    public String getNotifyUrl() {
+        return notifyUrl;
+    }
+
+    public void setNotifyUrl(String notifyUrl) {
+        this.notifyUrl = notifyUrl;
+    }
+}

+ 8 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/UserWithdrawalCallbackService.java

@@ -0,0 +1,8 @@
+package com.yonge.cooleshow.biz.dal.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.yonge.cooleshow.biz.dal.entity.UserWithdrawalCallback;
+
+public interface UserWithdrawalCallbackService extends IService<UserWithdrawalCallback> {
+    void insertCallback(UserWithdrawalCallback callback);
+}

+ 0 - 7
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/UserWithdrawalService.java

@@ -68,11 +68,4 @@ public interface UserWithdrawalService extends IService<UserWithdrawal>  {
 	 * @return: com.yonge.cooleshow.common.entity.HttpResponseResult<java.util.List<com.yonge.toolset.utils.easyexcel.ErrMsg>>
 	 */
     void importExcel(List<ExcelDataReaderProperty<UserWithdrawalExport>> dataList, Long userId);
-
-	/**
-	 * @Description: 提现成功回调
-	 * @Author: cy
-	 * @Date: 2022/5/9
-	 */
-	void withdrawSuccess(Map<String, Object> withdrawRecord);
 }

+ 18 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserWithdrawalCallbackServiceImpl.java

@@ -0,0 +1,18 @@
+package com.yonge.cooleshow.biz.dal.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.yonge.cooleshow.biz.dal.dao.UserWithdrawalCallbackDao;
+import com.yonge.cooleshow.biz.dal.entity.UserWithdrawalCallback;
+import com.yonge.cooleshow.biz.dal.service.UserWithdrawalCallbackService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Service;
+
+@Service
+public class UserWithdrawalCallbackServiceImpl extends ServiceImpl<UserWithdrawalCallbackDao, UserWithdrawalCallback> implements UserWithdrawalCallbackService {
+    private final static Logger log = LoggerFactory.getLogger(UserWithdrawalCallbackServiceImpl.class);
+
+    public void insertCallback(UserWithdrawalCallback callback) {
+        baseMapper.insert(callback);
+    }
+}

+ 0 - 10
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserWithdrawalServiceImpl.java

@@ -278,14 +278,4 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
         }
         return subtract;
     }
-
-    /**
-     * @Description: 提现成功回调
-     * @Author: cy
-     * @Date: 2022/5/9
-     */
-    @Override
-    public void withdrawSuccess(Map<String, Object> withdrawRecord) {
-        baseMapper.withdrawSuccess(withdrawRecord);
-    }
 }

+ 10 - 6
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/WithdrawController.java

@@ -1,10 +1,12 @@
 package com.yonge.cooleshow.teacher.controller;
 
 import com.alibaba.fastjson.JSONObject;
-import com.yonge.cooleshow.biz.dal.service.UserWithdrawalService;
+import com.yonge.cooleshow.biz.dal.entity.UserWithdrawalCallback;
+import com.yonge.cooleshow.biz.dal.service.UserWithdrawalCallbackService;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.toolset.thirdparty.lingxinpay.RSA;
 import com.yonge.toolset.thirdparty.lingxinpay.Withdraw;
+import com.yonge.toolset.utils.json.JsonUtil;
 import io.swagger.annotations.Api;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -31,7 +33,7 @@ public class WithdrawController extends BaseController {
     private String privateKey = "MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBANf/X1s2raYQAmY5VY929XqOIRESFlpLzWbltA08EI2i0jnJY3/kcCpo1sCHqkyWpDFGRgM1WYE90ayzEpS6EdZpyJ2/N5JFJzx4wMil5KHLdtQUmVv9si+xuYNOKfJW6Xn6zI/Wh81J1+hMlUY4WigU5Qci7DjdOjg5OD6e5DO3AgMBAAECgYEAor9ENhII3SsK48MneKWFaQZWW+po9ThQV8uT0rUDM/UOuYPIeMDC0vGTfhW6d2K57Haqohg8jGjr51g2E+HvNV+fARaBfCwy00DGcxjI6N8gEInj2AppsGV6a0ZtzGBh3BxGhEFV7x3NmTylDk3WkGnkGDqDNyrBUgK0BzCJEmECQQD+gYckYRevVfrZEHDQHRNzzMUlV9/ljA9x8dt0LoCNbd/wFvs0Ekjhas/2lUBkewEd4Kr0jaFcYzlUO/qihcpNAkEA2UP5W44yLuIo8ttPpdsfkH/8Ax64IywQHrXWq+thH7I91VwY2vomTduw8x0PafZtp8xryF3LixTZwQ7gsYbwEwJAQbb8SB5x2SogPVALcREw5qOm+/92pnTFwCws+BDRzLLkMcAdWNKn0tybmhXrrIY+QZKzUbYIRiywrtlV3AUjuQJBAJbnFnfX4NUdchGT79Mjyd2kdxZ3rK+JOD0MUWkhWFkahMX/bKgTXK1xLIr/ISiY53rHigkl1Gzqc4Aa5EeJkI8CQFlzlBOfoVnq3fPMZCCZcZSm97L12MgHho0AzoNj9sw9YYn9WPM7bw2HT8GUheiU3aiZGCyGGpYuVHMiBGa7l9U=";
 
     @Autowired
-    private UserWithdrawalService userWithdrawalService;
+    private UserWithdrawalCallbackService callbackService;
 
     /**
      * 异步回调接收
@@ -51,21 +53,23 @@ public class WithdrawController extends BaseController {
             String jsonStr = RSA.decryptPri((String) map.get("sign"), privateKey);
             log.info("jsonStr:{}", jsonStr);
 
-//            Map<String, Object> withdrawRecord = JSONObject.parseObject(jsonStr);
-//            userWithdrawalService.withdrawSuccess(withdrawRecord);
+            Map<String, Object> withdrawRecord = JSONObject.parseObject(jsonStr);
+            UserWithdrawalCallback callback = JsonUtil.toJavaObject(withdrawRecord, UserWithdrawalCallback.class);
+            callbackService.insertCallback(callback);
             return jsonStr;
         } catch (Exception e) {
             log.error("解密失败e:{}", e);
             return "failed";
         }
     }
+
     @GetMapping("/test")
-    public String a(){
+    public String a() {
         Withdraw withdraw = new Withdraw();
 
         //输入商户订单号
         String outerOrderNo = UUID.randomUUID().toString().substring(0, 12);
-        System.out.println("商户订单号:"+outerOrderNo);
+        System.out.println("商户订单号:" + outerOrderNo);
         //输入收款人手机号
         String name = "何亮";
         //输入收款人姓名