From 9601915072973553406f549f06aa1cfa93172b92 Mon Sep 17 00:00:00 2001
From: yaowanxin <3588231647@qq.com>
Date: 星期一, 29 十二月 2025 13:30:52 +0800
Subject: [PATCH] 添加客户分类功能,零售客户和进销商客户
---
src/views/basicData/customerFile/index.vue | 94 +++++++++++++++++++++++++++++++---------------
1 files changed, 63 insertions(+), 31 deletions(-)
diff --git a/src/views/basicData/customerFile/index.vue b/src/views/basicData/customerFile/index.vue
index a706616..0f39e25 100644
--- a/src/views/basicData/customerFile/index.vue
+++ b/src/views/basicData/customerFile/index.vue
@@ -5,12 +5,23 @@
<span class="search_title">瀹㈡埛鍚嶇О锛�</span>
<el-input
v-model="searchForm.customerName"
- style="width: 240px"
+ style="width: 240px;margin-right: 10px"
placeholder="璇疯緭鍏�"
@change="handleQuery"
clearable
:prefix-icon="Search"
/>
+ <span class="search_title">瀹㈡埛鍒嗙被锛�</span>
+ <el-select
+ v-model="searchForm.customerType"
+ placeholder="璇烽�夋嫨"
+ style="width: 240px"
+ clearable
+ @change="handleQuery"
+ >
+ <el-option label="闆跺敭瀹㈡埛" value="闆跺敭瀹㈡埛" />
+ <el-option label="杩涢攢鍟嗗鎴�" value="杩涢攢鍟嗗鎴�" />
+ </el-select>
<el-button type="primary" @click="handleQuery" style="margin-left: 10px"
>鎼滅储</el-button
>
@@ -92,25 +103,6 @@
</el-form-item>
</el-col>
</el-row>
- <el-row :gutter="30" v-for="(contact, index) in formYYs.contactList" :key="index">
- <el-col :span="12">
- <el-form-item label="鑱旂郴浜猴細" prop="contactPerson">
- <el-input v-model="contact.contactPerson" placeholder="璇疯緭鍏�" clearable />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鑱旂郴鐢佃瘽锛�" prop="contactPhone">
- <div style="display: flex; align-items: center;width: 100%;">
- <el-input v-model="contact.contactPhone" placeholder="璇疯緭鍏�" clearable />
- <el-button @click="removeContact(index)" type="danger" circle style="margin-left: 5px;">
- <el-icon><Close /></el-icon>
- </el-button>
- </div>
- </el-form-item>
- </el-col>
- </el-row>
- <el-button @click="addNewContact" style="margin-bottom: 10px;">+ 鏂板鑱旂郴浜�</el-button>
-
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="閾惰鍩烘湰鎴凤細" prop="basicBankAccount">
@@ -141,7 +133,33 @@
/>
</el-form-item>
</el-col>
+ <el-col :span="12">
+ <el-form-item label="瀹㈡埛鍒嗙被锛�" prop="customerType">
+ <el-select v-model="form.customerType" placeholder="璇烽�夋嫨" clearable>
+ <el-option label="闆跺敭瀹㈡埛" value="闆跺敭瀹㈡埛" />
+ <el-option label="杩涢攢鍟嗗鎴�" value="杩涢攢鍟嗗鎴�" />
+ </el-select>
+ </el-form-item>
+ </el-col>
</el-row>
+ <el-row :gutter="30" v-for="(contact, index) in formYYs.contactList" :key="index">
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴浜猴細" prop="contactPerson">
+ <el-input v-model="contact.contactPerson" placeholder="璇疯緭鍏�" clearable />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鑱旂郴鐢佃瘽锛�" prop="contactPhone">
+ <div style="display: flex; align-items: center;width: 100%;">
+ <el-input v-model="contact.contactPhone" placeholder="璇疯緭鍏�" clearable />
+ <el-button @click="removeContact(index)" type="danger" circle style="margin-left: 5px;">
+ <el-icon><Close /></el-icon>
+ </el-button>
+ </div>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-button @click="addNewContact" style="margin-bottom: 10px;">+ 鏂板鑱旂郴浜�</el-button>
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="缁存姢浜猴細" prop="maintainer">
@@ -170,7 +188,6 @@
type="date"
placeholder="璇烽�夋嫨"
clearable
- disabled
/>
</el-form-item>
</el-col>
@@ -210,13 +227,13 @@
<template #tip>
<div class="el-upload__tip text-center">
<span>浠呭厑璁稿鍏ls銆亁lsx鏍煎紡鏂囦欢銆�</span>
-<!-- <el-link-->
-<!-- type="primary"-->
-<!-- :underline="false"-->
-<!-- style="font-size: 12px; vertical-align: baseline"-->
-<!-- @click="importTemplate"-->
-<!-- >涓嬭浇妯℃澘</el-link-->
-<!-- >-->
+ <el-link
+ type="primary"
+ :underline="false"
+ style="font-size: 12px; vertical-align: baseline"
+ @click="importTemplate"
+ >涓嬭浇妯℃澘</el-link
+ >
</div>
</template>
</el-upload>
@@ -248,6 +265,11 @@
const userStore = useUserStore();
const tableColumn = ref([
+ {
+ label: "瀹㈡埛鍒嗙被",
+ prop: "customerType",
+ width: 120,
+ },
{
label: "瀹㈡埛鍚嶇О",
prop: "customerName",
@@ -308,9 +330,6 @@
clickFun: (row) => {
openForm("edit", row);
},
- disabled: (row) => {
- return row.maintainer !== userStore.nickName
- }
},
],
},
@@ -340,6 +359,7 @@
const data = reactive({
searchForm: {
customerName: "",
+ customerType: "",
},
form: {
customerName: "",
@@ -353,6 +373,7 @@
basicBankAccount: "",
bankAccount: "",
bankCode: "",
+ customerType: "",
},
rules: {
customerName: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
@@ -370,6 +391,7 @@
basicBankAccount: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
bankAccount: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
bankCode: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }],
+ customerType: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
},
});
const upload = reactive({
@@ -400,8 +422,12 @@
// 鏂囦欢涓婁紶鎴愬姛鏃剁殑鍥炶皟
onSuccess: (response, file, fileList) => {
console.log('涓婁紶鎴愬姛', response, file, fileList);
+ upload.isUploading = false;
if(response.code === 200){
proxy.$modal.msgSuccess("鏂囦欢涓婁紶鎴愬姛");
+ upload.open = false;
+ proxy.$refs["uploadRef"].clearFiles();
+ getList();
}else if(response.code === 500){
proxy.$modal.msgError(response.msg);
}else{
@@ -411,6 +437,7 @@
// 鏂囦欢涓婁紶澶辫触鏃剁殑鍥炶皟
onError: (error, file, fileList) => {
console.error('涓婁紶澶辫触', error, file, fileList);
+ upload.isUploading = false;
proxy.$modal.msgError("鏂囦欢涓婁紶澶辫触");
},
// 鏂囦欢涓婁紶杩涘害鍥炶皟
@@ -456,6 +483,7 @@
};
/** 鎻愪氦涓婁紶鏂囦欢 */
function submitFileForm() {
+ upload.isUploading = true;
proxy.$refs["uploadRef"].submit();
}
/** 瀵煎叆鎸夐挳鎿嶄綔 */
@@ -463,6 +491,10 @@
upload.title = "瀹㈡埛瀵煎叆";
upload.open = true;
}
+/** 涓嬭浇妯℃澘 */
+function importTemplate() {
+ proxy.download("/basic/customer/downloadTemplate", {}, "瀹㈡埛瀵煎叆妯℃澘.xlsx");
+}
// 鎵撳紑寮规
const openForm = (type, row) => {
operationType.value = type;
--
Gitblit v1.9.3