siteOptions
This commit is contained in:
@ -12,7 +12,8 @@ const useDataStore = defineStore("data", {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
actions: {
|
actions: {
|
||||||
async setSiteList(list) {
|
async setSiteList() {
|
||||||
|
console.log(this.siteList);
|
||||||
if (this.siteList.length !== 0) {
|
if (this.siteList.length !== 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -3,13 +3,13 @@
|
|||||||
:model-value="modelValue"
|
:model-value="modelValue"
|
||||||
placeholder="请选择,支持搜索"
|
placeholder="请选择,支持搜索"
|
||||||
size="default"
|
size="default"
|
||||||
:loading="dataStore.siteList.length === 0"
|
:loading="siteList.length == 0"
|
||||||
@change="valueChanged"
|
@change="valueChanged"
|
||||||
filterable
|
filterable
|
||||||
clearable
|
clearable
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in dataStore.siteList"
|
v-for="item in siteList"
|
||||||
:key="item.id"
|
:key="item.id"
|
||||||
:label="item.name"
|
:label="item.name"
|
||||||
:value="item.id"
|
:value="item.id"
|
||||||
@ -17,32 +17,22 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</template>
|
</template>
|
||||||
<script setup name="SiteOptions">
|
<script setup name="SiteOptions">
|
||||||
import useDataStore from "@/store/modules/data";
|
import { toRefs } from "vue";
|
||||||
import { ref, toRefs } from "vue";
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
modelValue: {
|
modelValue: {
|
||||||
type: [Number, String],
|
type: [Number, String],
|
||||||
},
|
},
|
||||||
|
siteList: {
|
||||||
|
type: Array,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
});
|
});
|
||||||
const { modelValue } = toRefs(props);
|
const { modelValue, siteList } = toRefs(props);
|
||||||
const dataStore = useDataStore();
|
|
||||||
dataStore.setSiteList();
|
|
||||||
// const siteList = ref([]);
|
|
||||||
|
|
||||||
const emit = defineEmits(["update:modelValue"]);
|
const emit = defineEmits(["update:modelValue"]);
|
||||||
|
|
||||||
// // 获取站点列表
|
|
||||||
// const getSiteList = async () => {
|
|
||||||
// const { rows } = await tenantSelect();
|
|
||||||
// siteList.value = rows;
|
|
||||||
// dataStore.setSiteList(rows);
|
|
||||||
// };
|
|
||||||
|
|
||||||
const valueChanged = (val) => {
|
const valueChanged = (val) => {
|
||||||
console.log("changed");
|
console.log("changed");
|
||||||
emit("update:modelValue", val);
|
emit("update:modelValue", val);
|
||||||
};
|
};
|
||||||
|
|
||||||
// getSiteList();
|
|
||||||
dataStore.setSiteList();
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
@submit.native.prevent
|
@submit.native.prevent
|
||||||
>
|
>
|
||||||
<el-form-item label="所属站点" prop="tenantId">
|
<el-form-item label="所属站点" prop="tenantId">
|
||||||
<SiteOptions v-model="queryParams.tenantId" />
|
<SiteOptions v-model="queryParams.tenantId" :site-list="siteList" />
|
||||||
<!-- <el-select
|
<!-- <el-select
|
||||||
v-model="queryParams.tenantId"
|
v-model="queryParams.tenantId"
|
||||||
placeholder="请选择,支持搜索"
|
placeholder="请选择,支持搜索"
|
||||||
@ -62,7 +62,7 @@
|
|||||||
<el-table-column prop="title" label="导航名称"></el-table-column>
|
<el-table-column prop="title" label="导航名称"></el-table-column>
|
||||||
<el-table-column prop="area" label="站点" align="center">
|
<el-table-column prop="area" label="站点" align="center">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
{{ dataStore.getSiteName(row.tenantId) }}
|
{{ siteList.find((el) => el.id === row.tenantId)?.name ?? "无" }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="更新时间" align="center">
|
<el-table-column label="更新时间" align="center">
|
||||||
@ -112,20 +112,7 @@
|
|||||||
>
|
>
|
||||||
<el-form ref="formRef" :model="form" :rules="rules" label-width="100px">
|
<el-form ref="formRef" :model="form" :rules="rules" label-width="100px">
|
||||||
<el-form-item label="所属站点:" prop="tenantId">
|
<el-form-item label="所属站点:" prop="tenantId">
|
||||||
<SiteOptions v-model="form.tenantId" />
|
<SiteOptions v-model="form.tenantId" :site-list="siteList" />
|
||||||
<!-- <el-select
|
|
||||||
v-model="form.tenantId"
|
|
||||||
placeholder="请选择,支持搜索"
|
|
||||||
size="default"
|
|
||||||
filterable
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in siteList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
|
||||||
</el-select> -->
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="上级导航" prop="parentId">
|
<el-form-item label="上级导航" prop="parentId">
|
||||||
<TreeSelect
|
<TreeSelect
|
||||||
@ -167,9 +154,7 @@ import { tenantSelect } from "@/api/subPlatform/tenant";
|
|||||||
import { ElMessage, ElMessageBox } from "element-plus";
|
import { ElMessage, ElMessageBox } from "element-plus";
|
||||||
import WangEditor from "@/components/WangEditor/index.vue";
|
import WangEditor from "@/components/WangEditor/index.vue";
|
||||||
import SiteOptions from "@/views/components/SiteOptions";
|
import SiteOptions from "@/views/components/SiteOptions";
|
||||||
import useDataStore from "@/store/modules/data";
|
|
||||||
const dataStore = useDataStore();
|
|
||||||
dataStore.setSiteList();
|
|
||||||
const queryFormRef = ref(null);
|
const queryFormRef = ref(null);
|
||||||
const dataList = ref([]);
|
const dataList = ref([]);
|
||||||
const loading = ref(true);
|
const loading = ref(true);
|
||||||
@ -181,6 +166,7 @@ const title = ref("");
|
|||||||
const menuOptions = ref([]);
|
const menuOptions = ref([]);
|
||||||
const isExpandAll = ref(false);
|
const isExpandAll = ref(false);
|
||||||
const refreshTable = ref(true);
|
const refreshTable = ref(true);
|
||||||
|
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
// 查询参数
|
// 查询参数
|
||||||
queryParams: {
|
queryParams: {
|
||||||
@ -221,8 +207,8 @@ const getList = async () => {
|
|||||||
|
|
||||||
// 获取站点列表
|
// 获取站点列表
|
||||||
const getSiteList = async () => {
|
const getSiteList = async () => {
|
||||||
const resp = await tenantSelect();
|
const { rows } = await tenantSelect();
|
||||||
siteList.value = resp.rows;
|
siteList.value = rows;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** 转换导航数据结构 */
|
/** 转换导航数据结构 */
|
||||||
@ -236,6 +222,7 @@ const normalizer = (node) => {
|
|||||||
children: node.children,
|
children: node.children,
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
/** 查询导航下拉树结构 */
|
/** 查询导航下拉树结构 */
|
||||||
const getTreeselect = (options) => {
|
const getTreeselect = (options) => {
|
||||||
const arr = cloneDeep(options);
|
const arr = cloneDeep(options);
|
||||||
@ -248,11 +235,13 @@ const getTreeselect = (options) => {
|
|||||||
menu.children = arr;
|
menu.children = arr;
|
||||||
menuOptions.value.push(menu);
|
menuOptions.value.push(menu);
|
||||||
};
|
};
|
||||||
|
|
||||||
// 取消按钮
|
// 取消按钮
|
||||||
const cancel = () => {
|
const cancel = () => {
|
||||||
showEditDialog.value = false;
|
showEditDialog.value = false;
|
||||||
reset();
|
reset();
|
||||||
};
|
};
|
||||||
|
|
||||||
// 表单重置
|
// 表单重置
|
||||||
const reset = () => {
|
const reset = () => {
|
||||||
form.value = {
|
form.value = {
|
||||||
@ -265,10 +254,12 @@ const reset = () => {
|
|||||||
formRef.value.resetFields();
|
formRef.value.resetFields();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** 搜索按钮操作 */
|
/** 搜索按钮操作 */
|
||||||
const handleQuery = () => {
|
const handleQuery = () => {
|
||||||
getList();
|
getList();
|
||||||
};
|
};
|
||||||
|
|
||||||
/** 重置按钮操作 */
|
/** 重置按钮操作 */
|
||||||
const resetQuery = () => {
|
const resetQuery = () => {
|
||||||
if (queryFormRef.value) {
|
if (queryFormRef.value) {
|
||||||
@ -276,6 +267,7 @@ const resetQuery = () => {
|
|||||||
}
|
}
|
||||||
handleQuery();
|
handleQuery();
|
||||||
};
|
};
|
||||||
|
|
||||||
/** 新增按钮操作 */
|
/** 新增按钮操作 */
|
||||||
const handleAdd = (row) => {
|
const handleAdd = (row) => {
|
||||||
reset();
|
reset();
|
||||||
@ -287,6 +279,7 @@ const handleAdd = (row) => {
|
|||||||
showEditDialog.value = true;
|
showEditDialog.value = true;
|
||||||
title.value = "添加导航";
|
title.value = "添加导航";
|
||||||
};
|
};
|
||||||
|
|
||||||
/** 修改按钮操作 */
|
/** 修改按钮操作 */
|
||||||
const handleUpdate = async (row) => {
|
const handleUpdate = async (row) => {
|
||||||
reset();
|
reset();
|
||||||
@ -295,6 +288,7 @@ const handleUpdate = async (row) => {
|
|||||||
showEditDialog.value = true;
|
showEditDialog.value = true;
|
||||||
title.value = "修改导航";
|
title.value = "修改导航";
|
||||||
};
|
};
|
||||||
|
|
||||||
/** 提交按钮 */
|
/** 提交按钮 */
|
||||||
const submitForm = async () => {
|
const submitForm = async () => {
|
||||||
await formRef.value.validate();
|
await formRef.value.validate();
|
||||||
|
@ -17,20 +17,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="所属站点" prop="tenantId">
|
<el-form-item label="所属站点" prop="tenantId">
|
||||||
<el-select
|
<SiteOptions v-model="form.tenantId" :site-list="siteList" />
|
||||||
v-model="queryParams.tenantId"
|
|
||||||
placeholder="请选择,支持搜索"
|
|
||||||
size="default"
|
|
||||||
filterable
|
|
||||||
clearable
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in siteList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="联系人" prop="contact">
|
<el-form-item label="联系人" prop="contact">
|
||||||
<el-input
|
<el-input
|
||||||
@ -140,7 +127,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="站点" align="center">
|
<el-table-column label="站点" align="center">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
{{ siteList.find((el) => el.id === row.tenantId)?.name || "无" }}
|
{{ siteList.find((el) => el.id === row.tenantId)?.name ?? "无" }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="联系人" prop="contact" align="center" />
|
<el-table-column label="联系人" prop="contact" align="center" />
|
||||||
@ -185,20 +172,7 @@
|
|||||||
<el-dialog :title="title" v-model="showEditDialog" width="35%">
|
<el-dialog :title="title" v-model="showEditDialog" width="35%">
|
||||||
<el-form ref="formRef" :model="form" :rules="rules" label-width="120px">
|
<el-form ref="formRef" :model="form" :rules="rules" label-width="120px">
|
||||||
<el-form-item label="所属站点" prop="tenantId">
|
<el-form-item label="所属站点" prop="tenantId">
|
||||||
<el-select
|
<SiteOptions v-model="form.tenantId" :site-list="siteList" />
|
||||||
v-model="form.tenantId"
|
|
||||||
placeholder="请选择,支持搜索"
|
|
||||||
size="default"
|
|
||||||
filterable
|
|
||||||
clearable
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in siteList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="活动名称:" prop="title">
|
<el-form-item label="活动名称:" prop="title">
|
||||||
<el-input v-model="form.title" placeholder="请输入活动名称" />
|
<el-input v-model="form.title" placeholder="请输入活动名称" />
|
||||||
@ -392,7 +366,6 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="活动介绍:" prop="content">
|
<el-form-item label="活动介绍:" prop="content">
|
||||||
<WangEditor v-model="form.content" minHeight="150px" />
|
<WangEditor v-model="form.content" minHeight="150px" />
|
||||||
<!-- <Editor v-model="form.content" :minHeight="150" /> -->
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="报名费用:" prop="amount">
|
<el-form-item label="报名费用:" prop="amount">
|
||||||
<el-input v-model.number="form.amount">
|
<el-input v-model.number="form.amount">
|
||||||
@ -430,7 +403,8 @@ import { reactive, toRefs } from "vue";
|
|||||||
// import { constants } from "buffer";
|
// import { constants } from "buffer";
|
||||||
import { ElMessage, ElMessageBox } from "element-plus";
|
import { ElMessage, ElMessageBox } from "element-plus";
|
||||||
import WangEditor from "@/components/WangEditor/index.vue";
|
import WangEditor from "@/components/WangEditor/index.vue";
|
||||||
// import FieldOptions from "@/views/components/FieldOptions";
|
import SiteOptions from "@/views/components/SiteOptions";
|
||||||
|
|
||||||
const dataList = ref([]);
|
const dataList = ref([]);
|
||||||
const loading = ref(true);
|
const loading = ref(true);
|
||||||
const total = ref(0);
|
const total = ref(0);
|
||||||
@ -607,40 +581,6 @@ const cityChange = () => {
|
|||||||
districtSelectList.value = [];
|
districtSelectList.value = [];
|
||||||
form.value.city && getAreaListByCityId(form.value.city);
|
form.value.city && getAreaListByCityId(form.value.city);
|
||||||
};
|
};
|
||||||
// const getProvinceByParent = (id) => {
|
|
||||||
// return new Promise((resolve, reject) => {
|
|
||||||
// areaList({ code: id })
|
|
||||||
// .then(({ code, msg, data }) => {
|
|
||||||
// if (code == 200) {
|
|
||||||
// resolve(data);
|
|
||||||
// } else {
|
|
||||||
// ElMessage.error(msg);
|
|
||||||
// reject({ msg, code });
|
|
||||||
// }
|
|
||||||
// })
|
|
||||||
// .catch((error) => {
|
|
||||||
// reject(error);
|
|
||||||
// });
|
|
||||||
// });
|
|
||||||
// };
|
|
||||||
// const provinceCodeChange = async (id) => {
|
|
||||||
// delete form.value.city;
|
|
||||||
// delete form.value.district;
|
|
||||||
// if (!id) {
|
|
||||||
// citySelectList.value = [];
|
|
||||||
// districtSelectList.value = [];
|
|
||||||
// return false;
|
|
||||||
// }
|
|
||||||
// citySelectList.value = await getProvinceByParent(id);
|
|
||||||
// };
|
|
||||||
// const cityCodeChange = async (id) => {
|
|
||||||
// delete form.value.district;
|
|
||||||
// if (!id) {
|
|
||||||
// districtSelectList.value = [];
|
|
||||||
// return false;
|
|
||||||
// }
|
|
||||||
// districtSelectList.value = await getProvinceByParent(id);
|
|
||||||
// };
|
|
||||||
|
|
||||||
const getFieldByParent = (id) => {
|
const getFieldByParent = (id) => {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
@ -680,29 +620,7 @@ const field2Change = async (id) => {
|
|||||||
const handleUpdate = async (row) => {
|
const handleUpdate = async (row) => {
|
||||||
reset();
|
reset();
|
||||||
const resp = await activityDetail(row.id);
|
const resp = await activityDetail(row.id);
|
||||||
// resp.data.beginTime = resp.data.beginTime;
|
|
||||||
// resp.data.finishTime = resp.data.finishTime;
|
|
||||||
// resp.data.joinDeadline = resp.data.joinDeadline;
|
|
||||||
const formData = resp.data;
|
const formData = resp.data;
|
||||||
|
|
||||||
// provinceCodeChange(resp.data.province);
|
|
||||||
// cityCodeChange(resp.data.city);
|
|
||||||
// let arr = [];
|
|
||||||
// for (const key in identityList.value) {
|
|
||||||
// if (Object.hasOwnProperty.call(identityList.value, key)) {
|
|
||||||
// if (((key - 0) & formData.notifyCrowd) > 0) {
|
|
||||||
// arr.push(key);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// formData.industrys = formData.industrys[0].split("-");
|
|
||||||
// if (formData.industrys.length == 2) {
|
|
||||||
// field1Change(formData.industrys[0]);
|
|
||||||
// } else if (formData.industrys.length == 3) {
|
|
||||||
// field1Change(formData.industrys[0]);
|
|
||||||
// field2Change(formData.industrys[1]);
|
|
||||||
// }
|
|
||||||
// formData.notifyCrowd = arr;
|
|
||||||
form.value = formData;
|
form.value = formData;
|
||||||
showEditDialog.value = true;
|
showEditDialog.value = true;
|
||||||
title.value = "修改";
|
title.value = "修改";
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
@submit.native.prevent
|
@submit.native.prevent
|
||||||
>
|
>
|
||||||
<el-form-item label="所属站点" prop="tenantId">
|
<el-form-item label="所属站点" prop="tenantId">
|
||||||
<SiteOptions v-model="queryParams.tenantId" />
|
<SiteOptions v-model="queryParams.tenantId" :site-list="siteList" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
@ -47,8 +47,7 @@
|
|||||||
<el-table-column label="导航名称" prop="title" width="120" />
|
<el-table-column label="导航名称" prop="title" width="120" />
|
||||||
<el-table-column label="所属站点" align="center">
|
<el-table-column label="所属站点" align="center">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
{{ dataStore.getSiteName(row.tenantId) }}
|
{{ siteList.find((el) => el.id === row.tenantId)?.name ?? "无" }}
|
||||||
<!-- {{ siteList.find((el) => el.id === row.tenantId)?.name || "无" }} -->
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="创建时间" align="center">
|
<el-table-column label="创建时间" align="center">
|
||||||
@ -92,7 +91,7 @@
|
|||||||
<el-dialog :title="title" v-model="showEditDialog" width="500px">
|
<el-dialog :title="title" v-model="showEditDialog" width="500px">
|
||||||
<el-form ref="formRef" :model="form" :rules="rules" label-width="100px">
|
<el-form ref="formRef" :model="form" :rules="rules" label-width="100px">
|
||||||
<el-form-item label="所属站点" prop="tenantId">
|
<el-form-item label="所属站点" prop="tenantId">
|
||||||
<SiteOptions v-model="form.tenantId" />
|
<SiteOptions v-model="form.tenantId" :site-list="siteList" />
|
||||||
<!-- <el-select
|
<!-- <el-select
|
||||||
v-model="form.tenantId"
|
v-model="form.tenantId"
|
||||||
placeholder="请选择,支持搜索"
|
placeholder="请选择,支持搜索"
|
||||||
@ -130,16 +129,14 @@ import { cloneDeep } from "lodash";
|
|||||||
import { ElMessage, ElMessageBox } from "element-plus";
|
import { ElMessage, ElMessageBox } from "element-plus";
|
||||||
import { tenantSelect } from "@/api/subPlatform/tenant";
|
import { tenantSelect } from "@/api/subPlatform/tenant";
|
||||||
import SiteOptions from "@/views/components/SiteOptions";
|
import SiteOptions from "@/views/components/SiteOptions";
|
||||||
import useDataStore from "@/store/modules/data";
|
|
||||||
const dataStore = useDataStore();
|
|
||||||
dataStore.setSiteList();
|
|
||||||
const queryFormRef = ref(null);
|
const queryFormRef = ref(null);
|
||||||
const dataList = ref([]);
|
const dataList = ref([]);
|
||||||
const loading = ref(true);
|
const loading = ref(true);
|
||||||
const total = ref(0);
|
const total = ref(0);
|
||||||
const showEditDialog = ref(false);
|
const showEditDialog = ref(false);
|
||||||
const formRef = ref(null);
|
const formRef = ref(null);
|
||||||
// const siteList = ref([]); // 站点列表
|
const siteList = ref([]); // 站点列表
|
||||||
const showSearch = ref(true);
|
const showSearch = ref(true);
|
||||||
const title = ref("");
|
const title = ref("");
|
||||||
|
|
||||||
@ -176,6 +173,8 @@ const handleQuery = () => {
|
|||||||
queryParams.value.pageNum = 1;
|
queryParams.value.pageNum = 1;
|
||||||
getList();
|
getList();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 获取数据列表
|
||||||
const getList = async () => {
|
const getList = async () => {
|
||||||
loading.value = true;
|
loading.value = true;
|
||||||
const resp = await navigationList(queryParams.value);
|
const resp = await navigationList(queryParams.value);
|
||||||
@ -185,17 +184,11 @@ const getList = async () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// 获取站点列表
|
// 获取站点列表
|
||||||
// const getSiteList = async () => {
|
const getSiteList = async () => {
|
||||||
// const resp = await tenantSelect();
|
const { rows } = await tenantSelect();
|
||||||
// siteList.value = resp.rows;
|
siteList.value = rows;
|
||||||
// };
|
};
|
||||||
|
|
||||||
// const getSiteName = (tenantId) => {
|
|
||||||
// const item = siteList.value.find((el) => {
|
|
||||||
// return el.id === tenantId;
|
|
||||||
// });
|
|
||||||
// return item ? item.name : "无";
|
|
||||||
// };
|
|
||||||
// 取消按钮
|
// 取消按钮
|
||||||
const cancel = () => {
|
const cancel = () => {
|
||||||
showEditDialog.value = false;
|
showEditDialog.value = false;
|
||||||
@ -213,17 +206,23 @@ const reset = () => {
|
|||||||
formRef.value.resetFields();
|
formRef.value.resetFields();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 处理添加
|
||||||
const handleAdd = () => {
|
const handleAdd = () => {
|
||||||
reset();
|
reset();
|
||||||
showEditDialog.value = true;
|
showEditDialog.value = true;
|
||||||
title.value = "新增";
|
title.value = "新增";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 处理更新
|
||||||
const handleUpdate = (row) => {
|
const handleUpdate = (row) => {
|
||||||
reset();
|
reset();
|
||||||
form.value = cloneDeep(row);
|
form.value = cloneDeep(row);
|
||||||
showEditDialog.value = true;
|
showEditDialog.value = true;
|
||||||
title.value = "修改";
|
title.value = "修改";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 提交表单
|
||||||
const submitForm = async () => {
|
const submitForm = async () => {
|
||||||
await formRef.value.validate();
|
await formRef.value.validate();
|
||||||
if (form.value.id != undefined) {
|
if (form.value.id != undefined) {
|
||||||
@ -238,6 +237,7 @@ const submitForm = async () => {
|
|||||||
getList();
|
getList();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
const handleDelete = (row) => {
|
const handleDelete = (row) => {
|
||||||
ElMessageBox.confirm(`是否确认删除名为${row.title}的数据项?`)
|
ElMessageBox.confirm(`是否确认删除名为${row.title}的数据项?`)
|
||||||
@ -248,6 +248,7 @@ const handleDelete = (row) => {
|
|||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
};
|
};
|
||||||
|
|
||||||
getList();
|
getList();
|
||||||
// getSiteList();
|
getSiteList();
|
||||||
</script>
|
</script>
|
||||||
|
@ -8,22 +8,7 @@
|
|||||||
@submit.native.prevent
|
@submit.native.prevent
|
||||||
>
|
>
|
||||||
<el-form-item label="导航名称:" prop="categoryId">
|
<el-form-item label="导航名称:" prop="categoryId">
|
||||||
<SiteOptions v-model="queryParams.tenantId" />
|
<SiteOptions v-model="queryParams.tenantId" :site-list="siteList" />
|
||||||
<!-- <el-select
|
|
||||||
v-model="queryParams.categoryId"
|
|
||||||
placeholder="请选择"
|
|
||||||
size="default"
|
|
||||||
style="width: 240px"
|
|
||||||
clearable
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in categoryList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.title"
|
|
||||||
:value="item.id"
|
|
||||||
>
|
|
||||||
</el-option>
|
|
||||||
</el-select> -->
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button
|
<el-button
|
||||||
@ -66,8 +51,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="所属站点" align="center">
|
<el-table-column label="所属站点" align="center">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<!-- {{ siteList.find((el) => el.id === row.tenantId)?.name || "无" }} -->
|
{{ siteList.find((el) => el.id === row.tenantId)?.name ?? "无" }}
|
||||||
{{ dataStore.getSiteName(row.tenantId) }}
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="创建时间" align="center">
|
<el-table-column label="创建时间" align="center">
|
||||||
@ -114,20 +98,7 @@
|
|||||||
>
|
>
|
||||||
<el-form ref="formRef" :model="form" :rules="rules" label-width="100px">
|
<el-form ref="formRef" :model="form" :rules="rules" label-width="100px">
|
||||||
<el-form-item label="所属站点" prop="tenantId">
|
<el-form-item label="所属站点" prop="tenantId">
|
||||||
<SiteOptions v-model="form.tenantId" />
|
<SiteOptions v-model="form.tenantId" :site-list="siteList" />
|
||||||
<!-- <el-select
|
|
||||||
v-model="form.tenantId"
|
|
||||||
placeholder="请选择,支持搜索"
|
|
||||||
size="default"
|
|
||||||
filterable
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in siteList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
|
||||||
</el-select> -->
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="归属导航:" prop="categoryId">
|
<el-form-item label="归属导航:" prop="categoryId">
|
||||||
<el-select v-model="form.categoryId" placeholder="请选择">
|
<el-select v-model="form.categoryId" placeholder="请选择">
|
||||||
@ -171,14 +142,12 @@ import {
|
|||||||
serviceDelete,
|
serviceDelete,
|
||||||
navigationList,
|
navigationList,
|
||||||
} from "@/api/website/innovate";
|
} from "@/api/website/innovate";
|
||||||
|
import { tenantSelect } from "@/api/subPlatform/tenant";
|
||||||
import WangEditor from "@/components/WangEditor/index.vue";
|
import WangEditor from "@/components/WangEditor/index.vue";
|
||||||
import { ElMessage, ElMessageBox } from "element-plus";
|
import { ElMessage, ElMessageBox } from "element-plus";
|
||||||
import { reactive, ref } from "vue";
|
import { reactive, ref } from "vue";
|
||||||
import SiteOptions from "@/views/components/SiteOptions";
|
import SiteOptions from "@/views/components/SiteOptions";
|
||||||
import useDataStore from "@/store/modules/data";
|
|
||||||
const dataStore = useDataStore();
|
|
||||||
dataStore.setSiteList();
|
|
||||||
const loading = ref(true); // 是否正在加载
|
const loading = ref(true); // 是否正在加载
|
||||||
const showSearch = ref(true); // 是否显示搜索栏
|
const showSearch = ref(true); // 是否显示搜索栏
|
||||||
const categoryList = ref([]); //导航列表
|
const categoryList = ref([]); //导航列表
|
||||||
@ -186,6 +155,7 @@ const queryFormRef = ref(null);
|
|||||||
const formRef = ref(null);
|
const formRef = ref(null);
|
||||||
const total = ref(0);
|
const total = ref(0);
|
||||||
const dataList = ref([]);
|
const dataList = ref([]);
|
||||||
|
const siteList = ref([]);
|
||||||
|
|
||||||
// 弹出层标题
|
// 弹出层标题
|
||||||
const title = ref("");
|
const title = ref("");
|
||||||
@ -198,6 +168,7 @@ const data = reactive({
|
|||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
},
|
},
|
||||||
|
|
||||||
// 表单参数
|
// 表单参数
|
||||||
form: {},
|
form: {},
|
||||||
rules: {
|
rules: {
|
||||||
@ -218,6 +189,7 @@ const data = reactive({
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
const { queryParams, form, rules } = toRefs(data);
|
const { queryParams, form, rules } = toRefs(data);
|
||||||
|
|
||||||
const resetQuery = () => {
|
const resetQuery = () => {
|
||||||
@ -254,6 +226,11 @@ const getcategoryList = async () => {
|
|||||||
categoryList.value = resp.rows;
|
categoryList.value = resp.rows;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 获取站点列表
|
||||||
|
const getSiteList = async () => {
|
||||||
|
const { rows } = await tenantSelect();
|
||||||
|
siteList.value = rows;
|
||||||
|
};
|
||||||
// 取消按钮
|
// 取消按钮
|
||||||
const cancel = () => {
|
const cancel = () => {
|
||||||
showEditDialog.value = false;
|
showEditDialog.value = false;
|
||||||
@ -318,5 +295,6 @@ const handleDelete = (row) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
getList();
|
getList();
|
||||||
|
getSiteList();
|
||||||
getcategoryList();
|
getcategoryList();
|
||||||
</script>
|
</script>
|
||||||
|
@ -36,20 +36,7 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="所属站点" prop="tenantId">
|
<el-form-item label="所属站点" prop="tenantId">
|
||||||
<!-- <el-select
|
<SiteOptions v-model="queryParams.tenantId" :site-list="siteList" />
|
||||||
v-model="queryParams.tenantId"
|
|
||||||
placeholder="请选择,支持搜索"
|
|
||||||
size="default"
|
|
||||||
filterable
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in siteList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
|
||||||
</el-select> -->
|
|
||||||
<SiteOptions v-model="queryParams.tenantId" />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button
|
<el-button
|
||||||
@ -98,7 +85,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="所属站点" align="center">
|
<el-table-column label="所属站点" align="center">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
{{ dataStore.getSiteName(row.tenantId) }}
|
{{ siteList.find((el) => el.id === row.tenantId)?.name ?? "无" }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
@ -151,7 +138,7 @@
|
|||||||
<el-input v-model="form.title" placeholder="请输入数据名称" />
|
<el-input v-model="form.title" placeholder="请输入数据名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="所属站点:" prop="tenantId">
|
<el-form-item label="所属站点:" prop="tenantId">
|
||||||
<SiteOptions v-model="form.tenantId" />
|
<SiteOptions v-model="form.tenantId" :site-list="siteList" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="归属导航:" prop="mode">
|
<el-form-item label="归属导航:" prop="mode">
|
||||||
<el-select v-model="form.mode" placeholder="请选择">
|
<el-select v-model="form.mode" placeholder="请选择">
|
||||||
@ -202,18 +189,16 @@ import {
|
|||||||
serviceEdit,
|
serviceEdit,
|
||||||
serviceDelete,
|
serviceDelete,
|
||||||
} from "@/api/website/solution";
|
} from "@/api/website/solution";
|
||||||
// import { tenantSelect } from "@/api/subPlatform/tenant";
|
import { tenantSelect } from "@/api/subPlatform/tenant";
|
||||||
import { ElMessage, ElMessageBox } from "element-plus";
|
import { ElMessage, ElMessageBox } from "element-plus";
|
||||||
import { cloneDeep } from "lodash";
|
import { cloneDeep } from "lodash";
|
||||||
import SiteOptions from "@/views/components/SiteOptions";
|
import SiteOptions from "@/views/components/SiteOptions";
|
||||||
import useDataStore from "@/store/modules/data";
|
|
||||||
const dataStore = useDataStore();
|
|
||||||
dataStore.setSiteList();
|
|
||||||
const dataList = ref([]);
|
const dataList = ref([]);
|
||||||
// TODO:isSuper
|
// TODO:isSuper
|
||||||
// const is_super = this.$store.getters.is_super;
|
// const is_super = this.$store.getters.is_super;
|
||||||
const loading = ref(true);
|
const loading = ref(true);
|
||||||
// const siteList = ref([]); // 站点列表
|
const siteList = ref([]); // 站点列表
|
||||||
const showSearch = ref(true);
|
const showSearch = ref(true);
|
||||||
const showEditDialog = ref(false); // 是否显示新增、修改弹窗
|
const showEditDialog = ref(false); // 是否显示新增、修改弹窗
|
||||||
const title = ref(""); // 弹窗标题
|
const title = ref(""); // 弹窗标题
|
||||||
@ -284,10 +269,12 @@ const resetQuery = () => {
|
|||||||
}
|
}
|
||||||
handleQuery();
|
handleQuery();
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleQuery = () => {
|
const handleQuery = () => {
|
||||||
queryParams.value.pageNum = 1;
|
queryParams.value.pageNum = 1;
|
||||||
getList();
|
getList();
|
||||||
};
|
};
|
||||||
|
|
||||||
// 获取服务列表
|
// 获取服务列表
|
||||||
const getList = async () => {
|
const getList = async () => {
|
||||||
loading.value = true;
|
loading.value = true;
|
||||||
@ -297,11 +284,11 @@ const getList = async () => {
|
|||||||
loading.value = false;
|
loading.value = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
// const getSiteList = async () => {
|
// 获取站点列表
|
||||||
// const resp = await tenantSelect();
|
const getSiteList = async () => {
|
||||||
// siteList.value = resp.rows;
|
const { rows } = await tenantSelect();
|
||||||
// };
|
siteList.value = rows;
|
||||||
|
};
|
||||||
// 取消按钮
|
// 取消按钮
|
||||||
const cancel = () => {
|
const cancel = () => {
|
||||||
showEditDialog.value = false;
|
showEditDialog.value = false;
|
||||||
@ -327,13 +314,14 @@ const handleAdd = () => {
|
|||||||
showEditDialog.value = true;
|
showEditDialog.value = true;
|
||||||
title.value = "新增";
|
title.value = "新增";
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleUpdate = async (row) => {
|
const handleUpdate = async (row) => {
|
||||||
// await getSiteList();
|
|
||||||
reset();
|
reset();
|
||||||
form.value = cloneDeep(row);
|
form.value = cloneDeep(row);
|
||||||
showEditDialog.value = true;
|
showEditDialog.value = true;
|
||||||
title.value = "修改";
|
title.value = "修改";
|
||||||
};
|
};
|
||||||
|
|
||||||
const submitForm = async () => {
|
const submitForm = async () => {
|
||||||
await formRef.value.validate();
|
await formRef.value.validate();
|
||||||
if (form.value.id != undefined) {
|
if (form.value.id != undefined) {
|
||||||
@ -350,6 +338,7 @@ const submitForm = async () => {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
const handleDelete = (row) => {
|
const handleDelete = (row) => {
|
||||||
ElMessageBox.confirm(`是否确认删除名为${row.title}的数据项?`)
|
ElMessageBox.confirm(`是否确认删除名为${row.title}的数据项?`)
|
||||||
@ -360,6 +349,7 @@ const handleDelete = (row) => {
|
|||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => {});
|
||||||
};
|
};
|
||||||
|
|
||||||
getList();
|
getList();
|
||||||
// getSiteList();
|
getSiteList();
|
||||||
</script>
|
</script>
|
||||||
|
@ -19,20 +19,7 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="所属站点" prop="tenantId">
|
<el-form-item label="所属站点" prop="tenantId">
|
||||||
<SiteOptions v-model="queryParams.tenantId" />
|
<SiteOptions v-model="queryParams.tenantId" :siteList="siteList" />
|
||||||
<!-- <el-select
|
|
||||||
v-model="queryParams.tenantId"
|
|
||||||
placeholder="请选择,支持搜索"
|
|
||||||
size="small"
|
|
||||||
filterable
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in siteList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
|
||||||
</el-select> -->
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button
|
<el-button
|
||||||
@ -81,10 +68,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="所属站点" align="center">
|
<el-table-column label="所属站点" align="center">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<!-- {{
|
{{ siteList.find((el) => el.id === row.tenantId)?.name ?? "无" }}
|
||||||
siteList.find((el) => el.id === row.tenantId)?.name || "无"
|
|
||||||
}} -->
|
|
||||||
{{ dataStore.getSiteName(row.tenantId) }}
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
@ -147,20 +131,7 @@
|
|||||||
<ImageUpload v-model="form.image" :isShowTip="false" :limit="1" />
|
<ImageUpload v-model="form.image" :isShowTip="false" :limit="1" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="所属站点:" prop="tenantId">
|
<el-form-item label="所属站点:" prop="tenantId">
|
||||||
<SiteOptions v-model="form.tenantId" />
|
<SiteOptions v-model="form.tenantId" :siteList="siteList" />
|
||||||
<!-- <el-select
|
|
||||||
v-model="form.tenantId"
|
|
||||||
placeholder="请选择,支持搜索"
|
|
||||||
size="small"
|
|
||||||
filterable
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in siteList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
|
||||||
</el-select> -->
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="所属服务:" prop="kindId">
|
<el-form-item label="所属服务:" prop="kindId">
|
||||||
<el-cascader
|
<el-cascader
|
||||||
@ -179,7 +150,6 @@
|
|||||||
destroy-on-close
|
destroy-on-close
|
||||||
minHeight="150px"
|
minHeight="150px"
|
||||||
></WangEditor>
|
></WangEditor>
|
||||||
<!-- <Editor v-model="form.content" :minHeight="150" /> -->
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
@ -202,12 +172,8 @@ import {
|
|||||||
serviceCaseKindSelect,
|
serviceCaseKindSelect,
|
||||||
} from "@/api/website/solution";
|
} from "@/api/website/solution";
|
||||||
import WangEditor from "@/components/WangEditor/index.vue";
|
import WangEditor from "@/components/WangEditor/index.vue";
|
||||||
import useDataStore from "@/store/modules/data";
|
|
||||||
import SiteOptions from "@/views/components/SiteOptions";
|
import SiteOptions from "@/views/components/SiteOptions";
|
||||||
// import SiteOptions from "../../../components/SiteOptions/index.vue";
|
|
||||||
const dataStore = useDataStore();
|
|
||||||
dataStore.setSiteList();
|
|
||||||
// import SiteOptions from "@/components/SiteOptions";
|
|
||||||
const dataList = ref([]);
|
const dataList = ref([]);
|
||||||
const loading = ref(true);
|
const loading = ref(true);
|
||||||
const total = ref(0);
|
const total = ref(0);
|
||||||
@ -280,10 +246,10 @@ const getList = async () => {
|
|||||||
loading.value = false;
|
loading.value = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
// const getSiteList = async () => {
|
const getSiteList = async () => {
|
||||||
// const resp = await tenantSelect();
|
const { rows } = await tenantSelect();
|
||||||
// siteList.value = resp.rows;
|
siteList.value = rows;
|
||||||
// };
|
};
|
||||||
|
|
||||||
const getCaseKindList = async () => {
|
const getCaseKindList = async () => {
|
||||||
const resp = await serviceCaseKindSelect();
|
const resp = await serviceCaseKindSelect();
|
||||||
@ -360,6 +326,6 @@ const handleDelete = (row) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
getList();
|
getList();
|
||||||
// getSiteList();
|
getSiteList();
|
||||||
getCaseKindList();
|
getCaseKindList();
|
||||||
</script>
|
</script>
|
||||||
|
Reference in New Issue
Block a user