From 7a0ffb0048adeda9ebfbca1d0b525eb224c173e3 Mon Sep 17 00:00:00 2001 From: gaoluyang <2820782392@qq.com> Date: 星期五, 29 八月 2025 17:00:16 +0800 Subject: [PATCH] 修改组件 --- src/pages/sales/invoiceLedger/detail.vue | 103 ++++++++++++++++----------------------------------- 1 files changed, 33 insertions(+), 70 deletions(-) diff --git a/src/pages/sales/invoiceLedger/detail.vue b/src/pages/sales/invoiceLedger/detail.vue index b7f6fe8..d8913d3 100644 --- a/src/pages/sales/invoiceLedger/detail.vue +++ b/src/pages/sales/invoiceLedger/detail.vue @@ -1,93 +1,56 @@ <template> - <view class="invoice-detail"> + <view class="account-detail"> <!-- 浣跨敤閫氱敤椤甸潰澶撮儴缁勪欢 --> - <PageHeader title="鍙戠エ璇︽儏" @back="goBack" /> - - <!-- 琛ㄥ崟鍐呭 --> - <u-form @submit="submitForm" ref="formRef" label-width="110" input-align="right" error-message-align="right"> - <u-cell-group title="鍩烘湰淇℃伅"> - <u-form-item label="閿�鍞悎鍚屽彿" border-bottom> - <u-input v-model="form.salesContractNo" readonly /> - </u-form-item> - <u-form-item label="瀹㈡埛鍚嶇О" border-bottom> - <u-input v-model="form.customerName" readonly /> - </u-form-item> - <u-form-item label="鍙戠エ鍙�" prop="invoiceNo" required border-bottom> - <u-input v-model="form.invoiceNo" placeholder="璇疯緭鍏�" /> - </u-form-item> - <u-form-item label="鍙戠エ閲戦(鍏�)" prop="invoiceTotal" required border-bottom> - <u-input v-model="form.invoiceTotal" type="number" placeholder="璇疯緭鍏�" /> - </u-form-item> - <u-form-item label="寮�绁ㄤ汉" border-bottom> - <u-input v-model="form.invoicePerson" readonly /> - </u-form-item> - <u-form-item label="寮�绁ㄦ棩鏈�" prop="invoiceDate" required border-bottom> - <u-input v-model="form.invoiceDate" readonly placeholder="璇烽�夋嫨" @click="showInvoiceDatePicker = true" /> - </u-form-item> - </u-cell-group> - - <u-cell-group title="闄勪欢鏉愭枡锛堜粎鏀寔 pdf锛�"> - <u-upload + <PageHeader title="缂栬緫寮�绁ㄥ彴璐�" @back="goBack" /> + + <van-form @submit="submitForm" ref="formRef" label-width="110px" input-align="right" error-message-align="right" scroll-to-error scroll-to-error-position="center"> + <van-cell-group title="鍩烘湰淇℃伅" inset> + <van-field v-model="form.salesContractNo" label="閿�鍞悎鍚屽彿" readonly /> + <van-field v-model="form.customerName" label="瀹㈡埛鍚嶇О" readonly /> + <van-field v-model="form.invoiceNo" label="鍙戠エ鍙�" placeholder="璇疯緭鍏�" required :rules="[{ required: true, message: '璇疯緭鍏ュ彂绁ㄥ彿' }]" /> + <van-field v-model="form.invoiceTotal" label="鍙戠エ閲戦(鍏�)" type="number" placeholder="璇疯緭鍏�" required :rules="[{ required: true, message: '璇疯緭鍏ュ彂绁ㄩ噾棰�' }]" /> + <view class="tip-text" v-if="form.taxInclusiveTotalPrice">鍚堝悓鎬婚锛歿{ formatAmount(form.taxInclusiveTotalPrice) }} 鍏�</view> + <van-field v-model="form.invoicePerson" label="寮�绁ㄤ汉" readonly /> + <van-field v-model="form.invoiceDate" label="寮�绁ㄦ棩鏈�" readonly placeholder="璇烽�夋嫨" @click="showInvoiceDatePicker = true" required :rules="[{ required: true, message: '璇烽�夋嫨寮�绁ㄦ棩鏈�' }]" /> + </van-cell-group> + + <van-cell-group title="闄勪欢鏉愭枡锛堜粎鏀寔 pdf锛�" inset> + <van-uploader accept=".pdf" multiple - :afterRead="afterReadUpload" - :beforeRead="beforeReadPdf" + :after-read="afterReadUpload" + :before-read="beforeReadPdf" > - <u-button class="upload-btn" type="primary"> - <u-icon name="plus" size="14" /> - 涓婁紶鏂囦欢 - </u-button> - </u-upload> + <van-button class="upload-btn" icon="plus" type="primary" block>涓婁紶鏂囦欢</van-button> + </van-uploader> <view class="uploaded-list" v-if="fileList.length"> <view class="uploaded-item" v-for="(f, idx) in fileList" :key="idx"> <text class="file-name">{{ f.name || getFileNameFromUrl(f.url) }}</text> - <u-button size="mini" type="error" plain @click="removeUploaded(idx)">绉婚櫎</u-button> + <van-button size="mini" type="danger" plain @click="removeUploaded(idx)">绉婚櫎</van-button> </view> </view> - </u-cell-group> - - <!-- 鎻愪氦鎸夐挳 --> - <view class="footer-btns"> - <u-button class="cancel-btn" @click="goBack">鍙栨秷</u-button> - <u-button class="save-btn" type="primary" @click="submitForm">淇濆瓨</u-button> - </view> - </u-form> + </van-cell-group> - <!-- 寮�绁ㄦ棩鏈熼�夋嫨鍣� --> - <u-popup v-model="showInvoiceDatePicker" mode="bottom"> - <u-datetime-picker - v-model="invoiceDateValue" + <view class="footer-btns"> + <van-button class="cancel-btn" @click="goBack">鍙栨秷</van-button> + <van-button class="save-btn" native-type="submit" form-type="submit">淇濆瓨</van-button> + </view> + </van-form> + + <van-popup v-model:show="showInvoiceDatePicker" position="bottom"> + <van-date-picker + v-model="currentInvoiceDate" title="閫夋嫨寮�绁ㄦ棩鏈�" @confirm="onInvoiceDateConfirm" @cancel="showInvoiceDatePicker = false" /> - </u-popup> + </van-popup> </view> </template> <script setup> -// 鏇挎崲 Vant 鐨� toast 鏂规硶 -// import { showToast, showLoadingToast, closeToast } from 'vant' - -// 鏇挎崲 toast 鏂规硶 -const showToast = (message) => { - uni.showToast({ - title: message, - icon: 'none' - }) -} - -const showLoadingToast = (message) => { - uni.showLoading({ - title: message || '鍔犺浇涓�...' - }) -} - -const closeToast = () => { - uni.hideLoading() -} - import { ref, onMounted } from 'vue' +import { showToast, showLoadingToast, closeToast } from 'vant' import dayjs from 'dayjs' import useUserStore from '@/store/modules/user' import { getToken } from '@/utils/auth' -- Gitblit v1.9.3