This commit is contained in:
quantulr
2023-11-29 17:22:34 +08:00
parent f0bf63e43f
commit 034b27fcbe
4 changed files with 160 additions and 148 deletions

View File

@ -1,21 +1,21 @@
<template> <template>
<el-badge <!-- <el-badge-->
v-if="!item.hidden" <!-- v-if="!item.hidden"-->
:hidden=" <!-- :hidden="-->
![ <!-- ![-->
`/approval/list`, <!-- `/approval/list`,-->
`/approval/dataList/approval`, <!-- `/approval/dataList/approval`,-->
`/auditing/achievement`, <!-- `/auditing/achievement`,-->
`/auditing/demand`, <!-- `/auditing/demand`,-->
`/auditing/serviceDemand`, <!-- `/auditing/serviceDemand`,-->
`/auditing/Enterpriseproducts`, <!-- `/auditing/Enterpriseproducts`,-->
`/approval/data-list/laboratory`, <!-- `/approval/data-list/laboratory`,-->
].includes(basePath) <!-- ].includes(basePath)-->
" <!-- "-->
:value="getCount(basePath)" <!-- :value="getCount(basePath)"-->
class="count-badge" <!-- class="count-badge"-->
> <!-- >-->
<div> <div v-if="!item.hidden">
<template <template
v-if=" v-if="
hasOneShowingChild(item.children, item) && hasOneShowingChild(item.children, item) &&
@ -44,7 +44,7 @@
:title="hasTitle(onlyOneChild.meta.title)" :title="hasTitle(onlyOneChild.meta.title)"
class="menu-title" class="menu-title"
>{{ >{{
["/auditing/serviceDemand"].includes(basePath) /* ["/auditing/serviceDemand"].includes(basePath)
? `${onlyOneChild.meta.title} (${userStore.serviceDemandTotal})` ? `${onlyOneChild.meta.title} (${userStore.serviceDemandTotal})`
: ["/auditing/achievement"].includes(basePath) : ["/auditing/achievement"].includes(basePath)
? `${onlyOneChild.meta.title} (${userStore.achievementTotal})` ? `${onlyOneChild.meta.title} (${userStore.achievementTotal})`
@ -52,7 +52,8 @@
? `${onlyOneChild.meta.title} (${userStore.technologyTotal})` ? `${onlyOneChild.meta.title} (${userStore.technologyTotal})`
: ["/auditing/Enterpriseproducts"].includes(basePath) : ["/auditing/Enterpriseproducts"].includes(basePath)
? `${onlyOneChild.meta.title} (${userStore.productTotal})` ? `${onlyOneChild.meta.title} (${userStore.productTotal})`
: onlyOneChild.meta.title :*/
onlyOneChild.meta.title
}}</span }}</span
></template ></template
> >
@ -67,7 +68,7 @@
popper-append-to-body popper-append-to-body
> >
<template v-if="item.meta" #title> <template v-if="item.meta" #title>
<svg-icon :icon-class="item.meta && item.meta.icon" /> <svg-icon :icon-class="item.meta && item.meta.icon"/>
<span :title="hasTitle(item.meta.title)" class="menu-title">{{ <span :title="hasTitle(item.meta.title)" class="menu-title">{{
item.meta.title item.meta.title
}}</span> }}</span>
@ -83,13 +84,13 @@
/> />
</el-sub-menu> </el-sub-menu>
</div> </div>
</el-badge> <!-- </el-badge>-->
</template> </template>
<script setup> <script setup>
import { isExternal } from "@/utils/validate"; import {isExternal} from "@/utils/validate";
import AppLink from "./Link"; import AppLink from "./Link";
import { getNormalPath } from "@/utils/ruoyi"; import {getNormalPath} from "@/utils/ruoyi";
import useUserStore from "@/store/modules/user"; import useUserStore from "@/store/modules/user";
const props = defineProps({ const props = defineProps({
@ -153,7 +154,7 @@ function hasOneShowingChild(children = [], parent) {
// Show parent if there are no child router to display // Show parent if there are no child router to display
if (showingChildren.length === 0) { if (showingChildren.length === 0) {
onlyOneChild.value = { ...parent, path: "", noShowingChildren: true }; onlyOneChild.value = {...parent, path: "", noShowingChildren: true};
return true; return true;
} }

View File

@ -9,7 +9,7 @@
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item :label="imageName" prop="image"> <el-form-item :label="imageName" prop="image">
<ImageUpload v-model="modelValue.image" :fileSize="2" :limit="1" /> <ImageUpload v-model="modelValue.image" :fileSize="2" :limit="1"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -204,10 +204,11 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="最高学历:" prop="education"> <el-form-item label="最高学历:" prop="education">
<el-select v-model="modelValue.education" placeholder="请选择"> <el-select v-model="modelValue.education" placeholder="请选择">
<el-option label="博士" value="博士"></el-option> <!-- <el-option label="博士" value="博士"></el-option>
<el-option label="硕士" value="硕士"></el-option> <el-option label="硕士" value="硕士"></el-option>
<el-option label="本科" value="本科"></el-option> <el-option label="本科" value="本科"></el-option>
<el-option label="专科" value="专科"></el-option> <el-option label="专科" value="专科"></el-option>-->
<el-option v-for="option in educationOptions" :key="option.key" :value="option.key" :label="option.text"/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -325,7 +326,7 @@
:autosize="{ minRows: 2, maxRows: 6 }" :autosize="{ minRows: 2, maxRows: 6 }"
/> --> /> -->
<!-- v-else --> <!-- v-else -->
<WangEditor v-model="modelValue.introduce" minHeight="150px" /> <WangEditor v-model="modelValue.introduce" minHeight="150px"/>
<!-- <Editor <!-- <Editor
v-else v-else
v-model="modelValue.introduce" v-model="modelValue.introduce"
@ -344,18 +345,18 @@ import CityOptions from "@/views/components/CityOptions";
import InputBoxAdd from "@/views/components/InputBoxAdd"; import InputBoxAdd from "@/views/components/InputBoxAdd";
// import { researchSelect } from "@/api/dataList/research"; // import { researchSelect } from "@/api/dataList/research";
// import { laboratorySelect } from "@/api/dataList/laboratory"; // import { laboratorySelect } from "@/api/dataList/laboratory";
import { tenantSelect } from "@/api/subPlatform/tenant"; import {tenantSelect} from "@/api/subPlatform/tenant";
import { enterpriseOptions } from "@/utils/parameter"; import {educationOptions, enterpriseOptions} from "@/utils/parameter";
import { reactive, ref, toRefs } from "vue"; import {reactive, ref, toRefs} from "vue";
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 FieldOptions from "@/views/components/FieldOptions"; import FieldOptions from "@/views/components/FieldOptions";
import { casLaboratoryList } from "@/api/dataList/laboratory"; import {casLaboratoryList} from "@/api/dataList/laboratory";
import InfiniteSelect from "@/components/InfiniteSelect"; import InfiniteSelect from "@/components/InfiniteSelect";
import { researchList } from "@/api/dataList/research"; import {researchList} from "@/api/dataList/research";
const props = defineProps({ const props = defineProps({
modelValue: { type: Object }, modelValue: {type: Object},
isAdd: { isAdd: {
type: Boolean, type: Boolean,
default: true, default: true,
@ -373,7 +374,7 @@ const props = defineProps({
default: 120, default: 120,
}, },
}); });
const { formType, modelValue, labelWidth, showTitle, isAdd } = toRefs(props); const {formType, modelValue, labelWidth, showTitle, isAdd} = toRefs(props);
const cityFormRef = ref(null); const cityFormRef = ref(null);
const formRef = ref(null); const formRef = ref(null);
const keywordsFormRef = ref(null); const keywordsFormRef = ref(null);
@ -385,10 +386,10 @@ const options = ref([]);
const siteList = ref([]); const siteList = ref([]);
const data = reactive({ const data = reactive({
rules: { rules: {
product: [{ required: true, message: "请输入", trigger: "blur" }], product: [{required: true, message: "请输入", trigger: "blur"}],
name: [{ required: true, message: "请输入", trigger: "blur" }], name: [{required: true, message: "请输入", trigger: "blur"}],
kind: [{ required: true, message: "请选择", trigger: "change" }], kind: [{required: true, message: "请选择", trigger: "change"}],
code: [{ required: true, message: "请输入", trigger: "blur" }], code: [{required: true, message: "请输入", trigger: "blur"}],
// mobile: [ // mobile: [
// { required: true, message: "请输入", trigger: "blur" }, // { required: true, message: "请输入", trigger: "blur" },
// { // {
@ -397,7 +398,7 @@ const data = reactive({
// trigger: "blur", // trigger: "blur",
// }, // },
// ], // ],
researchId: [{ message: "请选择", trigger: "change" }], researchId: [{message: "请选择", trigger: "change"}],
tenantId: [ tenantId: [
{ {
required: true, required: true,
@ -405,12 +406,12 @@ const data = reactive({
trigger: ["blur", "change"], trigger: ["blur", "change"],
}, },
], ],
school: [{ required: true, message: "请输入", trigger: "blur" }], school: [{required: true, message: "请输入", trigger: "blur"}],
organization: [{ required: true, message: "请输入", trigger: "blur" }], organization: [{required: true, message: "请输入", trigger: "blur"}],
education: [{ message: "请选择", trigger: "change" }], education: [{message: "请选择", trigger: "change"}],
// major: [{ required: true, message: "请输入", trigger: "blur" }], // major: [{ required: true, message: "请输入", trigger: "blur" }],
// job: [{ required: true, message: "请输入", trigger: "blur" }], // job: [{ required: true, message: "请输入", trigger: "blur" }],
title: [{ required: true, message: "请输入", trigger: "blur" }], title: [{required: true, message: "请输入", trigger: "blur"}],
workTime: [ workTime: [
{ {
required: true, required: true,
@ -425,10 +426,10 @@ const data = reactive({
trigger: ["blur", "change"], trigger: ["blur", "change"],
}, },
], ],
introduce: [{ required: true, message: "请输入", trigger: "blur" }], introduce: [{required: true, message: "请输入", trigger: "blur"}],
}, },
}); });
const { rules } = toRefs(data); const {rules} = toRefs(data);
const introduceName = computed(() => { const introduceName = computed(() => {
if (formType.value === 1) { if (formType.value === 1) {
return "个人简介:"; return "个人简介:";
@ -490,9 +491,9 @@ const getSiteList = async () => {
}; };
const loadLabOptions = (query) => const loadLabOptions = (query) =>
casLaboratoryList({ ...query, examineStatus: "1" }).then((resp) => resp.rows); casLaboratoryList({...query, examineStatus: "1"}).then((resp) => resp.rows);
const loadResearchOptions = (query) => const loadResearchOptions = (query) =>
researchList({ ...query, examineStatus: "1" }).then((resp) => resp.rows); researchList({...query, examineStatus: "1"}).then((resp) => resp.rows);
getSiteList(); getSiteList();
defineExpose({ defineExpose({
validateForm, validateForm,

View File

@ -75,7 +75,11 @@
<div>{{ row.industryStr }}</div> <div>{{ row.industryStr }}</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="学历" prop="education" /> <el-table-column align="center" label="学历" prop="education">
<template #default="{row}">
{{ educationOptions.find((el) => el.key === row.education)?.text ?? "无" }}
</template>
</el-table-column>
<!-- <el-table-column label="备注" align="center" prop="introduce" /> --> <!-- <el-table-column label="备注" align="center" prop="introduce" /> -->
<!-- <el-table-column label="站点" align="center"> <!-- <el-table-column label="站点" align="center">
<template #default="{ row }"> <template #default="{ row }">
@ -274,6 +278,7 @@ import { blobValidate } from "@/utils/ruoyi";
import { ElLoading, ElMessage, ElMessageBox } from "element-plus"; import { ElLoading, ElMessage, ElMessageBox } from "element-plus";
import dayjs from "dayjs"; import dayjs from "dayjs";
import request from "@/utils/request"; import request from "@/utils/request";
import {educationOptions} from "../../../utils/parameter";
const router = useRouter(); const router = useRouter();
// const siteList = ref([]); // const siteList = ref([]);

View File

@ -44,7 +44,11 @@
<div>{{ row.industryStr }}</div> <div>{{ row.industryStr }}</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="学历" prop="education" /> <el-table-column align="center" label="学历" prop="education">
<template #default="{row}">
{{ educationOptions.find((el) => el.key === row.education)?.text ?? "无" }}
</template>
</el-table-column>
<el-table-column align="center" label="个人备注" show-overflow-tooltip> <el-table-column align="center" label="个人备注" show-overflow-tooltip>
<template #default="{ row }"> <template #default="{ row }">
<div v-html="row.introduce"></div> <div v-html="row.introduce"></div>
@ -86,6 +90,7 @@ import useUserStore from "@/store/modules/user";
import DictTag from "@/components/DictTag/index.vue"; import DictTag from "@/components/DictTag/index.vue";
import { auditStatusDict } from "@/constant/dict"; import { auditStatusDict } from "@/constant/dict";
import { reactive, ref, toRefs } from "vue"; import { reactive, ref, toRefs } from "vue";
import {educationOptions} from "../../../utils/parameter";
const router = useRouter(); const router = useRouter();
const data = reactive({ const data = reactive({