From d9b8d6c13f429a7b4be55ad00ac48a918ab4703b Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期三, 28 一月 2026 17:11:03 +0800
Subject: [PATCH] 新增申请开票代码
---
ui/admin-ui3/src/components/NestedDetailDialog/index.vue | 127 +++++++++++++++++++++++++++++++-----------
1 files changed, 94 insertions(+), 33 deletions(-)
diff --git a/ui/admin-ui3/src/components/NestedDetailDialog/index.vue b/ui/admin-ui3/src/components/NestedDetailDialog/index.vue
index 20e79ad..b0de4e5 100644
--- a/ui/admin-ui3/src/components/NestedDetailDialog/index.vue
+++ b/ui/admin-ui3/src/components/NestedDetailDialog/index.vue
@@ -6,10 +6,10 @@
<el-descriptions title="璐﹀崟淇℃伅" :column="3" border class="mb-5">
<el-descriptions-item label="绯荤粺缂栧彿">{{ billInfo.systemNo }}</el-descriptions-item>
<el-descriptions-item label="璐﹀崟鍚嶇О">{{ billInfo.billName }}</el-descriptions-item>
- <el-descriptions-item :label="type == 'receivable' ? '瀹㈡埛鍚嶇О' : '渚涘簲鍟嗗悕绉�'">
- {{ billInfo.customerName }}
- </el-descriptions-item>
-
+ <el-descriptions-item v-if="type == 'receivable'" label="瀹㈡埛鍚嶇О">{{ billInfo.customerName
+ }}</el-descriptions-item>
+ <el-descriptions-item v-if="type == 'payable'" label="渚涘簲鍟嗗悕绉�">{{ billInfo.supplierName
+ }}</el-descriptions-item>
<el-descriptions-item label="鍗曟嵁鏁伴噺">{{ billInfo.documentCount }}</el-descriptions-item>
<el-descriptions-item label="搴旂粨绠楅噾棰�">
<span class="text-bold">{{ billInfo.totalAmount }}</span>
@@ -63,11 +63,23 @@
</template>
</el-table-column>
<el-table-column prop="documentNo" label="鍗曟嵁缂栧彿" width="160" align="center" />
- <el-table-column prop="customerName" :label="type === 'receivable' ? '瀹㈡埛鍚嶇О' : '渚涘簲鍟嗗悕绉�'"
- min-width="150" align="center" />
- <el-table-column prop="projectName" label="椤圭洰鍚嶇О" align="center" />
- <el-table-column prop="receivableAmount" :label="type === 'receivable' ? '搴旀敹閲戦' : '搴斾粯閲戦'"
+
+ <el-table-column v-if="type == 'receivable'" prop="customerName" label="瀹㈡埛鍚嶇О" min-width="150"
align="center" />
+ <el-table-column v-if="type == 'payable'" prop="supplierName" label="渚涘簲鍟嗗悕绉�" min-width="150"
+ align="center" />
+ <el-table-column prop="projectName" label="椤圭洰鍚嶇О" align="center" />
+ <el-table-column v-if="type == 'receivable'" label="'搴旀敹閲戦" align="center">
+ <template #default="scope">
+ <div v-html="formatAmountStr(scope.row.receivableAmountStr)"></div>
+ </template>
+ </el-table-column>
+ <el-table-column v-if="type == 'payable'" label="搴斾粯閲戦" align="center">
+ <template #default="scope">
+ <div v-html="formatAmountStr(scope.row.payableAmountStr)"></div>
+ </template>
+ </el-table-column>
+
<el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
<template #default="scope">
<el-button type="text" @click="handleExamine(scope.row)">鏌ョ湅
@@ -93,12 +105,15 @@
<script setup lang="ts">
import { ref, reactive } from 'vue';
import { getReceivableBillManagement } from "@/api/cwgl/receivableBillManagement";
-import { listReceivableFeeManagement } from "@/api/cwgl/receivableFeeManagement";
+import { listReceivableFeeManagement, getReceivableFeeManagement } from "@/api/cwgl/receivableFeeManagement";
import useCurrentInstance from "@/utils/useCurrentInstance";
import DetailModal from '@/components/DetailModal/index.vue';
+
import {
- getReceivableFeeManagement,
-} from "@/api/cwgl/receivableFeeManagement";
+ listPayableFeeManagement, getPayableFeeManagement
+} from "@/api/cwgl/payableFeeManagement";
+import { getPayableBillManagement, } from "@/api/cwgl/payableBillManagement";
+
const { proxy } = useCurrentInstance()
const { sys_system, sys_business, sys_receipts, sys_supplier, sys_whether_type, sys_currency } = proxy.useDict(
'sys_system',
@@ -113,6 +128,7 @@
const props = defineProps<{
type: 'receivable' | 'payable'
}>();
+console.log(props.type);
const visible = ref(false);
const loading = ref(false);
@@ -135,14 +151,27 @@
const getDataList = () => {
if (!queryParams.relatedBillNo) return;
loading.value = true;
- listReceivableFeeManagement(queryParams).then(res => {
- if (res.code === 200) {
- mainTableData.value = res.rows || [];
- pageF.total = res.total || 0;
- }
- }).finally(() => {
- loading.value = false;
- });
+ if (props.type === 'receivable') {
+ listReceivableFeeManagement(queryParams).then(res => {
+ if (res.code === 200) {
+ mainTableData.value = res.rows || [];
+ pageF.total = res.total || 0;
+ }
+ }).finally(() => {
+ loading.value = false;
+ });
+ } else {
+ listPayableFeeManagement(queryParams).then(res => {
+ if (res.code === 200) {
+ mainTableData.value = res.rows || [];
+ console.log(mainTableData.value);
+
+ pageF.total = res.total || 0;
+ }
+ }).finally(() => {
+ loading.value = false;
+ });
+ }
};
/** 鎵撳紑寮圭獥涓诲叆鍙� */
@@ -158,24 +187,56 @@
/** 鑾峰彇璐﹀崟椤堕儴璇︽儏淇℃伅 */
const fetchBillDetail = (id: string | number) => {
- getReceivableBillManagement(id).then((response) => {
- if (response.code == 200) {
- billInfo.value = response.data;
- queryParams.relatedBillNo = response.data.systemNo;
- visible.value = true;
- // 璇︽儏鎷垮埌鍚庯紝鍔犺浇琛ㄦ牸
- getDataList();
- }
- });
+ if (props.type === 'receivable') {
+
+ getReceivableBillManagement(id).then((response) => {
+ if (response.code == 200 && response.data) {
+ billInfo.value = response.data;
+ queryParams.relatedBillNo = response.data.systemNo;
+ visible.value = true;
+ // 璇︽儏鎷垮埌鍚庯紝鍔犺浇琛ㄦ牸
+ getDataList();
+ }
+ });
+ } else {
+ getPayableBillManagement(id).then((response) => {
+ if (response.code == 200 && response.data) {
+ billInfo.value = response.data;
+ queryParams.relatedBillNo = response.data.systemNo;
+ visible.value = true;
+ // 璇︽儏鎷垮埌鍚庯紝鍔犺浇琛ㄦ牸
+ getDataList();
+ }
+ });
+ }
};
const detailModalRef = ref(null);
const handleExamine = (row) => {
- getReceivableFeeManagement(row.id).then((res) => {
- if (res.code === 200) {
- detailModalRef.value.open(res.data);
- }
- });
+ if (props.type === 'receivable') {
+ getReceivableFeeManagement(row.id).then((res) => {
+ if (res.code === 200) {
+ detailModalRef.value.open(res.data);
+ }
+ });
+ } else {
+ getPayableFeeManagement(row.id).then((res) => {
+ if (res.code === 200) {
+ detailModalRef.value.open(res.data);
+ }
+ });
+ }
+
+};
+/**
+ * 灏嗛噾棰濆瓧绗︿覆涓殑鈥滃竵鈥濆悗闈㈠姞涓婃崲琛�
+ *
+ */
+const formatAmountStr = (str: string) => {
+ if (!str) return '';
+ // 姝e垯瑙i噴锛氭壘鍒扳�滄腐甯佲�濇垨鈥滀汉姘戝竵鈥濓紝骞跺湪鍏跺悗鍔犱笂鎹㈣绗�
+ // 濡傛灉甯佺杈冨锛屽彲浠ョ粺涓�鍖归厤 "甯� "锛堝甫绌烘牸鐨勫竵锛�
+ return str.replace(/(娓竵|浜烘皯甯�)\s+/g, '$1<br/>');
};
defineExpose({ open });
</script>
--
Gitblit v1.8.0