From 89fd2cf7202c321512c2ea699a3a220a7138ed44 Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期四, 09 四月 2026 10:40:52 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/cwxt_master' into cwxt_master
---
ui/admin-ui3/src/components/bankCardCate/index.vue | 140 +++++++++++++++++++++++++++++++++++-----------
1 files changed, 107 insertions(+), 33 deletions(-)
diff --git a/ui/admin-ui3/src/components/bankCardCate/index.vue b/ui/admin-ui3/src/components/bankCardCate/index.vue
index c0ff190..237186f 100644
--- a/ui/admin-ui3/src/components/bankCardCate/index.vue
+++ b/ui/admin-ui3/src/components/bankCardCate/index.vue
@@ -6,14 +6,37 @@
<el-form ref="formRef" :model="form" :rules="formRules" label-width="140px" size="default"
class="form-container">
<!-- 鍏宠仈瀹㈡埛锛堝甫鎼滅储鍥炬爣锛� -->
- <el-form-item label="鍏宠仈瀹㈡埛" prop="customerName">
- <el-input v-model="form.customerName" placeholder="璇烽�夋嫨鍏宠仈瀹㈡埛" readonly suffix-icon="Search"
- @click="openCustomerSelectDialog" class="search-input" />
+ <el-form-item label="鍏宠仈瀹㈡埛" v-if="ishowBank" prop="customerName">
+ <!-- <el-input v-model="form.customerName" placeholder="璇烽�夋嫨鍏宠仈瀹㈡埛" readonly suffix-icon="Search"
+ @click="openCustomerSelectDialog" class="search-input" /> -->
+ <el-input v-model="form.customerName" placeholder="璇烽�夋嫨鍏宠仈瀹㈡埛" readonly class="search-input"
+ @click="openCustomerSelectDialog">
+ <template #suffix>
+ <el-icon class="el-input__icon" style="cursor: pointer;" @click="openCustomerSelectDialog">
+ <Search />
+ </el-icon>
+ </template>
+ </el-input>
+ </el-form-item>
+
+ <el-form-item label="鍏宠仈涓讳綋" v-if="!ishowBank" prop="customerName">
+ <el-input v-model="form.customerName" placeholder="璇烽�夋嫨鍏宠仈涓讳綋" readonly class="search-input"
+ @click="subjectPerationSelectDialog">
+ <template #suffix>
+ <el-icon class="el-input__icon" style="cursor: pointer;" @click="subjectPerationSelectDialog">
+ <Search />
+ </el-icon>
+ </template>
+ </el-input>
</el-form-item>
<!-- 鎶ご鍏徃 -->
- <el-form-item label="璐﹀彿缂栧彿" prop="accountNo">
+ <el-form-item label="璐﹀彿缂栧彿" v-if="ishowBank" prop="accountNo">
<el-input v-model="form.accountNo" placeholder="璇疯緭鍏ヨ处鍙风紪鍙�" />
+ </el-form-item>
+
+ <el-form-item label="閾惰璐﹀彿" v-if="!ishowBank" prop="accountNo">
+ <el-input v-model="form.accountNo" placeholder="璇疯緭鍏ラ摱琛岃处鍙�" />
</el-form-item>
<!-- 缁熶竴绀句細淇$敤浠g爜 -->
@@ -21,7 +44,7 @@
<el-input v-model="form.accountName" placeholder="璇疯緭鍏ユ埛鍚�" maxlength="18" />
</el-form-item>
- <!-- 寮�鎴烽摱琛屽悕绉� -->
+ <!-- 寮�鎴烽摱琛屽悕绉� -->
<el-form-item label="閾惰鍚嶇О" prop="bankName">
<el-input v-model="form.bankName" placeholder="璇疯緭鍏ュ紑鎴烽摱琛屽悕绉�" />
</el-form-item>
@@ -30,33 +53,39 @@
<el-input v-model="form.branchName" placeholder="璇疯緭鍏ユ敮琛屽悕绉�" />
</el-form-item>
- <el-form-item label="璐﹀彿绫诲瀷" prop="accountType">
+ <el-form-item label="璐﹀彿绫诲瀷" v-if="ishowBank" prop="accountType">
<el-select v-model="form.accountType" placeholder="璇烽�夎处鍙风被鍨�" clearable>
<el-option v-for="dict in sys_invoice_type" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select>
</el-form-item>
- <el-form-item label="甯佺" prop="currency">
- <el-select v-model="form.currency" placeholder="璇烽�夊竵绉�" clearable>
- <el-option v-for="dict in sys_currency" :key="dict.value" :label="dict.label"
+ <el-form-item label="璐﹀彿绫诲瀷" v-if="!ishowBank" prop="accountType">
+ <el-select v-model="form.accountType" placeholder="璇烽�夎处鍙风被鍨�" clearable>
+ <el-option v-for="dict in sys_internal_type" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select>
</el-form-item>
+ <el-form-item label="甯佺" prop="currency">
+ <el-select v-model="form.currency" placeholder="璇烽�夊竵绉�" clearable>
+ <el-option v-for="dict in sys_currency" :key="dict.value" :label="dict.label" :value="dict.value" />
+ </el-select>
+ </el-form-item>
- <el-form-item label="璐︽埛鐘舵��" prop="status">
+
+ <el-form-item label="璐︽埛鐘舵��" prop="status">
<el-select v-model="form.status" placeholder="璇烽�夎处鎴风姸鎬�" clearable>
<el-option v-for="dict in sys_bank_type" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select>
</el-form-item>
-
-
-
+
+
+
</el-form>
<!-- 搴曢儴鎸夐挳 -->
@@ -69,12 +98,10 @@
</el-dialog>
<!-- 鍏宠仈瀹㈡埛閫夋嫨寮圭獥 -->
- <CustomerSelectDialog
- :visible="isCustomerSelectVisibleIshow"
- :default-selected-id="form.customerId"
- @confirm="handleCustomerSelect"
- @close="isCustomerSelectVisibleIshow = false"
- />
+ <CustomerSelectDialog :visible="isCustomerSelectVisibleIshow" :default-selected-id="form.customerId"
+ @confirm="handleCustomerSelect" @close="isCustomerSelectVisibleIshow = false" />
+ <subjectPeration :visible="subjectPerationShow" :default-selected-id="form.customerId"
+ @confirm="subjectPerationSelect" @close="subjectPerationShow = false" />
</template>
<script setup lang="ts">
@@ -83,11 +110,21 @@
import { ElMessage } from 'element-plus';
// 寮曞叆瀹㈡埛閫夋嫨寮圭獥缁勪欢
import CustomerSelectDialog from '../CustomerSelectDialog/index';
+import subjectPeration from '../subjectPeration/index';
+
import useCurrentInstance from "@/utils/useCurrentInstance";
const { proxy } = useCurrentInstance();
-const { sys_invoice_type,sys_currency,sys_bank_type } = proxy.useDict('sys_invoice_type','sys_currency','sys_bank_type');
+const { sys_invoice_type, sys_currency, sys_bank_type,sys_internal_type } = proxy.useDict('sys_invoice_type', 'sys_currency', 'sys_bank_type',
+ 'sys_internal_type'
+);
+const props = defineProps({
+ ishowBank: {
+ type: Boolean,
+ default: true
+ },
+});
// 瀹氫箟琛ㄥ崟鏁版嵁绫诲瀷锛堟柊澧瀋ustomerId瀛楁锛岄伩鍏嶈祴鍊兼椂鎶ラ敊锛�
interface InvoiceForm {
customerId?: string | number; // 鏂板锛氬鎴稩D锛堢敤浜庡洖鏄鹃�変腑锛�
@@ -120,12 +157,12 @@
accountType: '',
bankName: '',
branchName: '',
- id:'',
+ id: '',
invoiceOperatingLicenseAddress: '',
invoiceOperatingLicensePhone: '',
invoiceOperatingLicenseEmail: '',
- currency:'',
- status:'',
+ currency: '',
+ status: '',
});
// 琛ㄥ崟鏍¢獙瑙勫垯
@@ -158,14 +195,14 @@
// 鎵撳紑寮圭獥锛堜緵鐖剁粍浠惰皟鐢紝淇鍥炴樉閫昏緫锛�
const openDialog = (data?: Partial<InvoiceForm>) => {
dialogVisible.value = true;
-
+
// 鍏堥噸缃〃鍗曪紝閬垮厤鏃ф暟鎹畫鐣�
nextTick(() => {
formRef.value?.resetFields();
-
+
// 鏈夊洖鏄炬暟鎹椂锛岄�愪釜璧嬪�硷紙鏍稿績淇锛氶伩鍏嶆暣浣撹祴鍊糵orm = data锛�
if (data && Object.keys(data).length > 0) {
- // 閬嶅巻data鐨勬墍鏈夊瓧娈碉紝璧嬪�煎埌form锛堜粎瑕嗙洊瀵瑰簲瀛楁锛�
+ // 閬嶅巻data鐨勬墍鏈夊瓧娈碉紝璧嬪�煎埌form锛堜粎瑕嗙洊瀵瑰簲瀛楁锛�
Object.assign(form, data);
// 娓呯┖琛ㄥ崟鏍¢獙鐘舵��
formRef.value?.clearValidate();
@@ -179,12 +216,12 @@
accountType: '',
bankName: '',
branchName: '',
- id:'',
+ id: '',
invoiceOperatingLicenseAddress: '',
invoiceOperatingLicensePhone: '',
invoiceOperatingLicenseEmail: '',
- currency:'',
- status:''
+ currency: '',
+ status: ''
});
}
});
@@ -201,7 +238,16 @@
form.customerId = selectedCustomer.id; // 鐜板湪瀛楁宸插0鏄庯紝璧嬪�兼湁鏁�
isCustomerSelectVisibleIshow.value = false;
};
+const subjectPerationShow = ref(false);
+const subjectPerationSelectDialog = () => {
+ subjectPerationShow.value = true;
+};
+const subjectPerationSelect = (selectedCustomer) => {
+ form.customerName = selectedCustomer.customerFullName;
+ form.customerId = selectedCustomer.id; // 鐜板湪瀛楁宸插0鏄庯紝璧嬪�兼湁鏁�
+ isCustomerSelectVisibleIshow.value = false;
+};
// 鎻愪氦琛ㄥ崟锛堜慨澶嶆牎楠岄�昏緫 + 鍏抽棴寮圭獥锛�
const handleSubmit = async () => {
if (!formRef.value) return;
@@ -241,13 +287,41 @@
<style scoped lang="scss">
.form-container {
padding: 10px 0;
- :deep(.el-form-item) { margin-bottom: 18px; }
+
+ :deep(.el-form-item) {
+ margin-bottom: 18px;
+ }
}
.search-input {
- :deep(.el-input__inner) { cursor: pointer; background-color: #f8f9fa; }
- :deep(.el-icon-search) { color: #409eff; }
+ :deep(.el-input__inner) {
+ cursor: pointer;
+ background-color: #f8f9fa;
+ }
+
+ :deep(.el-icon-search) {
+ color: #409eff;
+ }
}
-.dialog-footer { text-align: right; }
+.dialog-footer {
+ text-align: right;
+}
+/* */
+/* 浣跨敤 :deep() 绌块�忕粍浠舵牱寮� */
+:deep(.search-input .el-input__wrapper) {
+ background-color: #ffffff !important; /* 寮哄埗鑳屾櫙涓虹櫧鑹� */
+ box-shadow: 0 0 0 1px var(--el-input-border-color, #dcdfe6) inset; /* 淇濇寔杈规 */
+}
+
+/* 閽堝 readonly 鐘舵�佷笅鐨勭壒瀹氬鐞嗭紙濡傛灉闇�瑕佹洿绮剧‘鎺у埗锛� */
+:deep(.search-input .el-input__inner[readonly]) {
+ background-color: #ffffff !important;
+ cursor: pointer; /* 鏃㈢劧鏄偣鍑诲脊鍑猴紝寤鸿榧犳爣鎵嬪娍璁句负 pointer */
+}
+
+/* 濡傛灉浣犺繕鎯冲幓鎺夐紶鏍囨粦杩囨椂鐨勭伆鑹叉劅锛堝鏋滄湁鐨勮瘽锛� */
+:deep(.search-input .el-input__wrapper:hover) {
+ background-color: #ffffff !important;
+}
</style>
\ No newline at end of file
--
Gitblit v1.8.0