Ver Fonte

fix: TransferMapper insert加jsonb转换 + 收款方增加ALIPAY_LOGON_ID

alphaH há 3 dias atrás
pai
commit
57873e8208

BIN
frontend/dist.zip


+ 2 - 1
frontend/src/views/module_payment/account/index.vue

@@ -212,7 +212,8 @@
               </el-form-item>
               <el-form-item label="收款方类型" prop="payee_info.identity_type">
                 <el-select v-model="transferForm.payee_info.identity_type" placeholder="请选择收款方类型">
-                  <el-option label="支付宝账户" value="ALIPAY_USER_ID" />
+                  <el-option label="支付宝账户(UID)" value="ALIPAY_USER_ID" />
+                  <el-option label="支付宝账户(手机号/邮箱)" value="ALIPAY_LOGON_ID" />
                   <el-option label="银行卡" value="BANKCARD_ACCOUNT" />
                   <!-- <el-option label="资金专户" value="book" /> -->
                 </el-select>

+ 11 - 0
java/src/main/java/com/payment/platform/module/payment/account/mapper/TransferMapper.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.payment.platform.module.payment.account.entity.TransferEntity;
+import org.apache.ibatis.annotations.Insert;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
@@ -27,6 +28,16 @@ public interface TransferMapper extends BaseMapper<TransferEntity> {
             "  COALESCE(SUM(CASE WHEN created_time >= #{weekAgo} THEN amount ELSE 0 END), 0) AS amount_of_7days," +
             "  COALESCE(SUM(CASE WHEN created_time >= #{today} THEN amount ELSE 0 END), 0)   AS amount_of_today " +
             "FROM pay_transfer ${ew.customSqlSegment}")
+    /** 覆盖基类 insert,payee_info/ext_info 作为 json 列需要显式类型转换 */
+    @Override
+    @Insert("INSERT INTO pay_transfer (id, status, out_biz_no, account_book_id, amount, order_title, " +
+            "payee_info, payee_type, order_no, fund_order_id, error_code, error_msg, remark, " +
+            "ext_info, retry_count, next_retry_at, enterprise_id, tenant_id, created_time, updated_time) " +
+            "VALUES (#{id}, #{status}, #{outBizNo}, #{accountBookId}, #{amount}, #{orderTitle}, " +
+            "#{payeeInfo}::jsonb, #{payeeType}, #{orderNo}, #{fundOrderId}, #{errorCode}, #{errorMsg}, #{remark}, " +
+            "#{extInfo}::jsonb, #{retryCount}, #{nextRetryAt}, #{enterpriseId}, #{tenantId}, #{createdTime}, #{updatedTime})")
+    int insert(TransferEntity entity);
+
     Map<String, BigDecimal> statAmounts(
             @Param("today") OffsetDateTime today,
             @Param("weekAgo") OffsetDateTime weekAgo,

+ 2 - 3
java/src/main/java/com/payment/platform/module/payment/account/service/AccountService.java

@@ -76,13 +76,12 @@ public class AccountService {
         for (AccountVO vo : vos) {
             if (vo.getAccountBookId() != null && !vo.getAccountBookId().isBlank()) {
                 try {
-                    /*var alipayAccounts = alipayTransferService.queryAccounts(enterpriseId);
+                    var alipayAccounts = alipayTransferService.queryAccounts(enterpriseId);
                     for (var m : alipayAccounts) {
                         if (vo.getAccountBookId().equals(m.get("account_book_id"))) {
                             vo.setAvailableAmount((String) m.get("available_amount"));
                         }
-                    }*/
-                    vo.setAvailableAmount("1");
+                    }
                 } catch (Exception ignored) {}
             }
         }