增加销售同时增加用户

This commit is contained in:
zhonghua1
2025-12-20 20:52:09 +08:00
parent 74ff0a53e1
commit 25d82b8906
4 changed files with 359 additions and 66 deletions

View File

@@ -166,6 +166,29 @@
<el-form-item label="登录账号" prop="loginAccount">
<el-input v-model="salesForm.loginAccount" placeholder="请输入登录账号" />
</el-form-item>
<el-form-item label="登录密码" prop="password">
<el-input
v-model="salesForm.password"
type="password"
placeholder="请输入登录密码"
show-password
/>
</el-form-item>
<el-form-item label="租户" prop="tenantCode">
<el-select
v-model="salesForm.tenantCode"
placeholder="请选择租户"
style="width: 100%"
filterable
>
<el-option
v-for="item in tenantOptions"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item label="所属项目" prop="projectId">
<el-select
v-model="salesForm.projectId"
@@ -224,6 +247,7 @@
import { getSalesList, getSalesById, addSales, updateSales, deleteSales, batchDeleteSales } from '@/api/sales'
import { getDealershipList } from '@/api/dealership'
import { getProjectList } from '@/api/project'
import { getAllTenantList } from '@/api/tenant'
export default {
name: 'Sales',
@@ -249,6 +273,8 @@ export default {
storeOptions: [],
// 项目选项
projectOptions: [],
// 租户选项
tenantOptions: [],
// 添加/编辑对话框相关
dialogVisible: false,
dialogTitle: '',
@@ -257,6 +283,8 @@ export default {
id: undefined,
salesName: '',
loginAccount: '',
password: '',
tenantCode: '',
dealershipId: '',
role: '',
status: '1'
@@ -274,6 +302,7 @@ export default {
this.getList()
this.getStoreOptions()
this.getProjectOptions()
this.getTenantOptions()
},
methods: {
// 获取列表数据
@@ -385,6 +414,26 @@ export default {
]
})
},
// 获取租户选项
getTenantOptions() {
getAllTenantList().then(response => {
console.log('获取租户列表响应:', response)
if (response && response.code === 20000) {
// 处理响应数据可能是数组或包含data字段的对象
const tenantList = Array.isArray(response.data) ? response.data : (response.data?.data || [])
this.tenantOptions = tenantList.map(item => ({
value: item.tenantCode, // 使用租户编码作为值
label: `${item.tenantName} ${item.tenantCode}` // 显示格式:租户名称 租户编码
}))
} else {
this.$message.error(response?.message || '获取租户列表失败')
}
}).catch(error => {
console.error('获取租户列表失败:', error)
this.$message.error('获取租户列表失败,请稍后重试')
})
},
// 查询
handleQuery() {
this.queryParams.pageNum = 1
@@ -571,6 +620,8 @@ export default {
id: undefined,
salesName: '',
loginAccount: '',
password: '',
tenantCode: '',
dealershipId: '',
role: '',
status: '1'
@@ -583,8 +634,16 @@ export default {
console.log('提交表单:', this.salesForm)
this.$refs.salesForm.validate(valid => {
if (valid) {
// 构建提交数据将租户编码赋值给租户id
const submitData = { ...this.salesForm }
if (submitData.tenantCode) {
submitData.tenantId = submitData.tenantCode // 将租户编码赋值给租户id
}
// 移除 tenantCode 字段,只传递 tenantId
delete submitData.tenantCode
const submitFunc = this.isEdit ? updateSales : addSales
submitFunc(this.salesForm).then(response => {
submitFunc(submitData).then(response => {
console.log('提交表单响应:', response) // 调试日志
if (response && response.code === 20000) {