修改人员机构筛选

This commit is contained in:
lcc
2025-07-26 09:18:45 +08:00
parent 09d4b17bbf
commit 1ba5738841
8 changed files with 114 additions and 35 deletions
+10
View File
@@ -109,3 +109,13 @@ export async function importUsers(file) {
}
return Promise.reject(new Error(res.data.message));
}
export async function orgNameList(params) {
const res = await request.get('/organization/user/orgNameList', {
params
});
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+8
View File
@@ -61,3 +61,11 @@ export async function pageCluesEnroll(params) {
}
return Promise.reject(new Error(res.data.message));
}
export async function updateClues(data) {
const res = await request.put('/receiver/clues', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
+2 -1
View File
@@ -391,7 +391,7 @@
},
{
prop: 'couponSelling',
label: '核卖点',
label: '核卖点',
align: 'center',
slot: 'couponSelling'
},
@@ -527,6 +527,7 @@
};
// 更新 key 强制组件重新渲染
this.componentKey = Date.now();
this.reload();
},
showPromotionText(row) {
this.current = row;
@@ -17,6 +17,7 @@
<el-input clearable v-model="where.mobile" placeholder="请输入" />
</el-form-item>
</el-col>
<!--
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
<el-form-item label="机构">
<el-select value="" v-model="where.teamId" clearable>
@@ -29,6 +30,7 @@
</el-select>
</el-form-item>
</el-col>
-->
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
<el-form-item label="城市:">
<regions-select
@@ -39,6 +41,18 @@
/>
</el-form-item>
</el-col>
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
<el-form-item label="机构">
<el-select value="" v-model="where.orgName" clearable filterable>
<el-option
v-for="(item, index) in orgNameList"
:value="item"
:key="index"
:label="item"
/>
</el-select>
</el-form-item>
</el-col>
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
<el-form-item label="中心">
<el-select v-model="where.centerNumber" clearable>
@@ -90,7 +104,11 @@
<script>
import { listOrganizations } from '@/api/organization/manage';
import { groupTypeUsers, centerUsers } from '@/api/organization/user';
import {
groupTypeUsers,
centerUsers,
orgNameList
} from '@/api/organization/user';
import RegionsSelect from '@/components/RegionsSelect/index.vue';
export default {
@@ -104,14 +122,16 @@
teamId: '',
groupType: '',
centerNumber: '',
citys: []
citys: [],
orgName: ''
};
return {
// 表单数据
where: { ...defaultWhere },
teamList: [],
groupList: [],
centerList: []
centerList: [],
orgNameList: []
};
},
computed: {
@@ -122,12 +142,13 @@
},
created() {
this.initData();
this.loadOrgNameList();
},
methods: {
async initData() {
try {
await this.loadOrg();
await this.loadOrgTeam();
// await this.loadOrgTeam();
await Promise.all([
groupTypeUsers()
.then((data) => {
@@ -148,6 +169,15 @@
this.$message.error(e.message);
}
},
loadOrgNameList() {
orgNameList()
.then((data) => {
this.orgNameList = data;
})
.catch((e) => {
this.$message.error(e.message);
});
},
loadOrg() {
return new Promise((resolve, reject) => {
listOrganizations({ pid: 0 })
+55 -25
View File
@@ -9,20 +9,26 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="手机号码">
<el-input v-model="form.mobile" />
<el-form-item label="所在地区">
<regions-select v-model="form.provinceCity" class="ele-fluid" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="手机号码">
<el-input v-model="form.mobile" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="添加微信">
<el-select value="" v-model="form.wxgr">
<el-select value="" v-model="form.wxgr" disabled>
<el-option label="是" value="1"></el-option>
<el-option label="否" value="0"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<!--
<el-col :span="12">
<car-model-selector
type="brandSeries"
@@ -32,18 +38,7 @@
@update:modelValue="handleCarChange"
/>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="所在地区">
<regions-select v-model="form.provinceCity" class="ele-fluid" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="客户归属">
{{ form.cfrom }}
</el-form-item>
</el-col>
-->
</el-row>
<el-row :gutter="20">
<el-col :span="12">
@@ -57,13 +52,26 @@
</el-form-item>
</el-col>
</el-row>
<!--
<el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-button type="success">保存</el-button>
<el-form-item label="客户归属">
{{ form.cfrom }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="ele-form-actions" style="text-align: center">
<el-button
size="mini"
type="primary"
@click="save"
:loading="saveLoading"
>保存</el-button
>
</div>
</el-col>
</el-row>
-->
</el-form>
<!-- 留资记录 -->
<ele-pro-table
@@ -71,6 +79,7 @@
:columns="columns2"
:datasource="datasource2"
cache-key="receiverCustomerEnrollTables"
style="margin-top: 10px"
>
<!-- 表头工具栏 -->
<template v-slot:toolbar>
@@ -142,14 +151,15 @@
getClues,
pageCluesOptLog,
addCluesOptLog,
pageCluesEnroll
pageCluesEnroll,
updateClues
} from '@/api/receiver/clues';
import CarModelSelector from '@/components/CarSelector/index.vue';
// import CarModelSelector from '@/components/CarSelector/index.vue';
import RegionsSelect from '@/components/RegionsSelect/index.vue';
const ROUTE_PATH = '/receiver/clues/detail';
export default {
name: 'receiverCluesDetail',
components: { RegionsSelect, CarModelSelector },
components: { RegionsSelect },
data() {
return {
loading: false,
@@ -238,7 +248,8 @@
}
],
addLogVisible: false,
buyTimeList: []
buyTimeList: [],
saveLoading: false
};
},
created() {},
@@ -293,6 +304,25 @@
.catch((e) => {
this.$message.error(e.message);
});
},
save() {
console.log(this.form);
if (this.saveLoading) {
return false;
}
this.saveLoading = true;
updateClues(this.form)
.then((msg) => {
this.$message.success(msg);
this.query();
this.reload();
})
.catch((e) => {
this.$message.error(e.message);
})
.finally(() => {
this.saveLoading = false;
});
}
},
watch: {
+1 -1
View File
@@ -155,7 +155,7 @@
columns: [
{
prop: 'customer',
label: '编号',
label: '线索',
minWidth: 100,
align: 'center',
showOverflowTooltip: true,
+2 -2
View File
@@ -152,14 +152,14 @@
columns: [
{
prop: 'cid',
label: '编号',
label: '客户',
align: 'center',
showOverflowTooltip: true,
minWidth: 80
},
{
prop: 'mobile',
label: '客户',
label: '手机号',
align: 'center',
showOverflowTooltip: true,
minWidth: 80
@@ -148,14 +148,14 @@
columns: [
{
prop: 'cid',
label: '编号',
label: '客户',
align: 'center',
showOverflowTooltip: true,
minWidth: 80
},
{
prop: 'mobile',
label: '客户',
label: '手机号',
align: 'center',
showOverflowTooltip: true,
minWidth: 80