diff --git a/.gitea/workflows/deploy.yaml b/.gitea/workflows/deploy.yaml
index f9c5cd2..ed338ce 100644
--- a/.gitea/workflows/deploy.yaml
+++ b/.gitea/workflows/deploy.yaml
@@ -3,10 +3,12 @@ name: 构建并部署前端到测试环境
on:
push:
branches:
- - main
+ - iteration/august
- dev
- test
- - iteration/august
+ # 如果不再需要 main 分支触发构建,可以把下面这行删掉;
+ # 如果只是想保留构建(不部署),可以留着,反正部署条件已经只认 iteration/august
+ - main
env:
REGISTRY: registry.boss160.cn
@@ -22,43 +24,37 @@ jobs:
run: |
export PATH="$HOME/.nix-profile/bin:/usr/local/bin:/usr/bin:/bin:$PATH"
export GIT_SSL_NO_VERIFY=1
-
git clone https://git.boss160.cn/luo/one-pipe-system.git .
git checkout ${{ github.sha }}
- name: 设置镜像标签
id: tag
run: |
- if [ "${{ github.ref }}" = "refs/heads/main" ]; then
+ if [ "${{ github.ref }}" = "refs/heads/iteration/august" ]; then
echo "tag=latest" >> $GITHUB_OUTPUT
elif [ "${{ github.ref }}" = "refs/heads/dev" ]; then
echo "tag=dev" >> $GITHUB_OUTPUT
elif [ "${{ github.ref }}" = "refs/heads/test" ]; then
echo "tag=test" >> $GITHUB_OUTPUT
- elif [ "${{ github.ref }}" = "refs/heads/iteration/august" ]; then
- echo "tag=test" >> $GITHUB_OUTPUT
else
echo "tag=unknown" >> $GITHUB_OUTPUT
fi
- name: 登录 Docker Registry
run: |
- echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login "${{ env.REGISTRY }}" \
- --username "${{ secrets.REGISTRY_USERNAME }}" \
- --password-stdin
+ echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login "${{ env.REGISTRY }}" --username "${{ secrets.REGISTRY_USERNAME }}" --password-stdin
- name: 构建前端镜像
run: |
docker build -t ${{ env.IMAGE_NAME }}:${{ steps.tag.outputs.tag }} .
- docker tag ${{ env.IMAGE_NAME }}:${{ steps.tag.outputs.tag }} \
- ${{ env.IMAGE_NAME }}:${{ github.sha }}
+ docker tag ${{ env.IMAGE_NAME }}:${{ steps.tag.outputs.tag }} ${{ env.IMAGE_NAME }}:${{ github.sha }}
- name: 推送镜像到 Registry
run: |
docker push ${{ env.IMAGE_NAME }}:${{ steps.tag.outputs.tag }}
docker push ${{ env.IMAGE_NAME }}:${{ github.sha }}
- - name: 部署到测试环境(iteration/august)
+ - name: 部署到本地(仅 iteration/august 分支)
if: github.ref == 'refs/heads/iteration/august'
run: |
# 确保部署目录存在
@@ -86,32 +82,6 @@ jobs:
echo "部署完成!"
docker compose -f docker-compose.prod.yml ps
- - name: 部署到生产环境(main)
- if: github.ref == 'refs/heads/main'
- run: |
- mkdir -p ${{ env.DEPLOY_DIR }}
-
- echo "当前工作目录: $(pwd)"
- echo "当前目录内容:"
- ls -la
-
- echo "更新部署配置文件..."
- cp -v docker-compose.prod.yml ${{ env.DEPLOY_DIR }}/
-
- cd ${{ env.DEPLOY_DIR }}
-
- echo "拉取最新镜像..."
- docker compose -f docker-compose.prod.yml pull
-
- echo "重启服务..."
- docker compose -f docker-compose.prod.yml up -d
-
- echo "等待服务启动..."
- sleep 5
-
- echo "部署完成!"
- docker compose -f docker-compose.prod.yml ps
-
- name: 构建结果通知
if: always()
run: |
@@ -120,4 +90,4 @@ jobs:
echo "镜像标签: ${{ github.sha }}"
else
echo "构建失败"
- fi
\ No newline at end of file
+ fi
diff --git a/src/components/business/CreateRefundDialog.vue b/src/components/business/CreateRefundDialog.vue
index 24b7de7..a681f27 100644
--- a/src/components/business/CreateRefundDialog.vue
+++ b/src/components/business/CreateRefundDialog.vue
@@ -55,10 +55,18 @@
-
+
-
+
@@ -295,13 +303,7 @@
requested_refund_amount: yuanToFen(formData.requested_refund_amount) ?? 0
}
if (formData.method === RefundMethod.CUSTOMER_ACCOUNT) {
- data.customer_account_info = {
- account_name: formData.customer_account_name.trim(),
- account_number: formData.customer_account_number.trim(),
- ...(formData.customer_bank_name.trim()
- ? { bank_name: formData.customer_bank_name.trim() }
- : {})
- }
+ data.customer_account_info = `${formData.customer_account_name.trim()} ${formData.customer_account_number.trim()}${formData.customer_bank_name.trim() ? ` ${formData.customer_bank_name.trim()}` : ''}`
data.refund_voucher_key = formData.refund_voucher_key
} else if (formData.refund_voucher_key.length) {
data.refund_voucher_key = formData.refund_voucher_key
diff --git a/src/types/api/refund.ts b/src/types/api/refund.ts
index a4b2362..cab95f6 100644
--- a/src/types/api/refund.ts
+++ b/src/types/api/refund.ts
@@ -80,7 +80,7 @@ export interface RefundAttemptItem {
refund_amount?: number | null // 退款金额(分)
frozen_actual_received_amount?: number | null // 冻结实收金额(分)
refund_reason?: string | null // 退款原因
- customer_account_info?: Record | null // 客户收款信息
+ customer_account_info?: string | null // 客户收款信息,如 "张三 1111111111
customer_voucher_key?: string[] | string | null // 客户凭证键
channel_refund_request_no?: string | null // 渠道退款申请号
submitted_by_account_id?: number | null // 提交人账号ID
@@ -109,7 +109,7 @@ export interface Refund {
method?: RefundMethod | null // 退款方式
method_name?: string | null // 退款方式名称
frozen_actual_received_amount?: number | null // 冻结实收金额(分)
- customer_account_info?: Record | null // 客户收款信息
+ customer_account_info?: string | null // 客户收款信息,如 "张三 1111111111
channel_refund_status?: ChannelRefundStatus | null // 渠道退款状态
channel_refund_status_name?: string | null // 渠道退款状态名称
channel_refund_no?: string | null // 渠道退款单号
@@ -182,7 +182,7 @@ export interface CreateRefundRequest {
requested_refund_amount: number // 申请退款金额(分)
package_usage_id: number // 关联套餐使用记录 ID,无关联记录时传 0
refund_reason: string
- customer_account_info?: Record | null // 客户收款信息(customer_account 方式必填)
+ customer_account_info?: string | null // 客户收款信息,如 "张三 1111111111(customer_account 方式必填)
refund_voucher_key?: string[] | null // 退款凭证(customer_account 方式必填至少 1 个)
}
@@ -191,7 +191,7 @@ export interface ResubmitRefundRequest {
method?: RefundMethod | null // 退款方式(不传沿用原值)
requested_refund_amount?: number
refund_reason?: string
- customer_account_info?: Record | null // 客户收款信息(不传沿用原值)
+ customer_account_info?: string | null // 客户收款信息,如 "张三 1111111111(不传沿用原值)
refund_voucher_key?: string[] | null
attachments?: RefundAttachment[]
}
diff --git a/src/views/finance/refund/detail.vue b/src/views/finance/refund/detail.vue
index 12cbc44..c26045a 100644
--- a/src/views/finance/refund/detail.vue
+++ b/src/views/finance/refund/detail.vue
@@ -25,10 +25,18 @@
>
通过
-
+
拒绝
-
+
退回
@@ -111,11 +119,7 @@
/>
-
+
@@ -125,8 +129,8 @@
:rows="3"
maxlength="1000"
show-word-limit
- placeholder="请输入退款原因"
- />
+ placeholder="请输入退款原因"
+ />
@@ -393,8 +395,7 @@
const resubmitFormRef = ref()
const requireResubmitCustomerAccount =
- (message: string) =>
- (_rule: unknown, value: string, callback: (error?: Error) => void) => {
+ (message: string) => (_rule: unknown, value: string, callback: (error?: Error) => void) => {
if (resubmitForm.method === RefundMethod.CUSTOMER_ACCOUNT && !value?.trim()) {
callback(new Error(message))
} else {
@@ -876,13 +877,7 @@
data.method = resubmitForm.method
}
if (resubmitForm.method === RefundMethod.CUSTOMER_ACCOUNT) {
- data.customer_account_info = {
- account_name: resubmitForm.customer_account_name.trim(),
- account_number: resubmitForm.customer_account_number.trim(),
- ...(resubmitForm.customer_bank_name.trim()
- ? { bank_name: resubmitForm.customer_bank_name.trim() }
- : {})
- }
+ data.customer_account_info = `${resubmitForm.customer_account_name.trim()} ${resubmitForm.customer_account_number.trim()}${resubmitForm.customer_bank_name.trim() ? ` ${resubmitForm.customer_bank_name.trim()}` : ''}`
data.refund_voucher_key = resubmitForm.refund_voucher_key
} else if (resubmitForm.refund_voucher_key.length) {
data.refund_voucher_key = resubmitForm.refund_voucher_key
@@ -1068,7 +1063,6 @@
refundVoucherFileKeys.value = voucherKeys
}
-