专家详情页
This commit is contained in:
@ -18,6 +18,16 @@ export const activitysList = (params) => {
|
||||
});
|
||||
};
|
||||
|
||||
export const activityInfo = (id) => {
|
||||
return request({
|
||||
url: "/app/expert/getActivityInfo",
|
||||
method: "GET",
|
||||
params: {
|
||||
id
|
||||
},
|
||||
});
|
||||
};
|
||||
|
||||
// 专家论文列表
|
||||
export const paperList = (params) => {
|
||||
return request({
|
||||
|
@ -4,6 +4,7 @@ const common = {
|
||||
home: "Главная",
|
||||
search: "Поиск",
|
||||
viewDetails: "Просмотреть детали",
|
||||
details: "Подробности",
|
||||
systemPrompt: "Системное сообщение",
|
||||
confirm: "Подтвердить",
|
||||
cancel: "Отмена",
|
||||
|
@ -3,6 +3,7 @@ export const common = {
|
||||
home: "首页",
|
||||
search: "搜索",
|
||||
viewDetails: "查看详情",
|
||||
details: "详情",
|
||||
systemPrompt: "系统提示",
|
||||
confirm: "确定",
|
||||
cancel: "取消",
|
||||
|
@ -30,6 +30,7 @@
|
||||
<el-col :span="24">
|
||||
<!-- <el-checkbox label="0" @change="handleCheck">其他</el-checkbox>-->
|
||||
<el-form-item
|
||||
v-if="false"
|
||||
:label="
|
||||
t('admin.form.category', { type: t('admin.common.demand') })
|
||||
"
|
||||
|
@ -46,9 +46,12 @@ function handleResults(row) {
|
||||
});
|
||||
}
|
||||
|
||||
const handleRelease = () => {
|
||||
const handleDetail = (id) => {
|
||||
router.push({
|
||||
path: "/admin/service/technology-demand-release",
|
||||
query: {
|
||||
id
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
@ -127,16 +130,19 @@ if (route.query.id) {
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="">
|
||||
<template #default="{ row }">
|
||||
<el-button type="text">
|
||||
<el-button size="small" type="text">
|
||||
{{ t("admin.common.delete") }}
|
||||
</el-button>
|
||||
<el-button type="text" @click="handleResults(row)"
|
||||
<el-button size="small" type="text" @click="handleResults(row)"
|
||||
>{{ t("webSearch.viewMatchingResults") }}
|
||||
</el-button>
|
||||
<el-button type="text" @click="handleUpdateStatus(row)"
|
||||
<el-button size="small" type="text" @click="handleUpdateStatus(row)"
|
||||
><!--更新状态-->
|
||||
{{ t("routes.broker.updateStatus") }}
|
||||
</el-button>
|
||||
<el-button size="small" type="text" @click="handleDetail(row.id)">
|
||||
{{ t("common.details") }}
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
@ -243,7 +243,7 @@ import FieldOptions from "@/views/components/FieldOptions";
|
||||
import InputBoxAdd from "@/views/components/InputBoxAdd";
|
||||
import {
|
||||
computed,
|
||||
getCurrentInstance,
|
||||
getCurrentInstance, onActivated,
|
||||
onMounted,
|
||||
reactive,
|
||||
ref,
|
||||
@ -382,29 +382,7 @@ const { queryParams, form, rules } = toRefs(data);
|
||||
|
||||
const {proxy} = getCurrentInstance();
|
||||
const labelWidth = 160;
|
||||
// const isContainOther = ref(false);
|
||||
/*const checkList = reactive([
|
||||
{
|
||||
id: 1,
|
||||
name: "成果推广",
|
||||
nameRu: "Продвижение достижений",
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
name: "关键成果解决",
|
||||
nameRu: "Решение ключевых результатов",
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
name: "对接专家院士",
|
||||
nameRu: "Связь с экспертами и академиками",
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
name: "上市辅导",
|
||||
nameRu: "Помощь в выходе на рынок",
|
||||
},
|
||||
]);*/
|
||||
|
||||
|
||||
const formRef = ref(null);
|
||||
const fieldFormRef = ref(null);
|
||||
@ -435,48 +413,14 @@ const submitForm = async (status) => {
|
||||
} else {
|
||||
console.log("validation failed");
|
||||
}
|
||||
// formRef.value.validate(async (valid) => {
|
||||
// // console.log(valid);
|
||||
// if (valid) {
|
||||
// form.value.amount = form.value.amount - 0;
|
||||
// }
|
||||
// form.value.amount = form.value.amount - 0;
|
||||
// const cityForm = proxy.$refs.cityForm.submitForm(); // 城市
|
||||
// if (valid && cityForm) {
|
||||
// console.log(form.value);
|
||||
// if (form.value.id != undefined) {
|
||||
// // updatePost(form.value).then((response) => {
|
||||
// // proxy.$modal.msgSuccess(t('admin.common.editSuccess'));
|
||||
// // proxy.$router.go(-1);
|
||||
// // });
|
||||
// } else {
|
||||
// // addPost(form.value).then((response) => {
|
||||
// // proxy.$modal.msgSuccess(t('admin.common.addSuccess'));
|
||||
// // proxy.$router.go(-1);
|
||||
// // });
|
||||
// }
|
||||
// }
|
||||
// });
|
||||
};
|
||||
// function addCheck() {
|
||||
// if (!checkInput.value.trim().length) return proxy.$modal.msgError("请输入");
|
||||
// const flag = checkList.some((item) => {
|
||||
// return item.name.trim() == checkInput.value.trim();
|
||||
// });
|
||||
// if (!flag) {
|
||||
// checkList.push({
|
||||
// id: checkList.length + 1,
|
||||
// name: checkInput.value,
|
||||
// });
|
||||
// checkInput.value = "";
|
||||
// }
|
||||
// }
|
||||
|
||||
// 返回技术需求列表
|
||||
const backToList = () => {
|
||||
tab.closeOpenPage({path: "/demand/technology"});
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
onActivated(() => {
|
||||
formRef.value.resetFields();
|
||||
|
||||
if (route.query.id) {
|
||||
@ -488,18 +432,6 @@ onMounted(() => {
|
||||
tab.updatePage(obj);
|
||||
getTechnologyDemand({id: route.query.id}).then((resp) => {
|
||||
form.value = resp.data;
|
||||
|
||||
/*if (!form.value.kinds) {
|
||||
form.value.kinds = resp.data.kind?.split(",") ?? [];
|
||||
form.value.kinds.forEach((el, index) => {
|
||||
if (!checkList.find((item) => item.name == el)) {
|
||||
checkList.push({
|
||||
id: index,
|
||||
name: el,
|
||||
});
|
||||
}
|
||||
});
|
||||
}*/
|
||||
if (!form.value.wants) {
|
||||
form.value.wants = resp.data.want?.split(",") ?? [];
|
||||
}
|
||||
@ -513,6 +445,7 @@ onMounted(() => {
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
:deep(.cooperation-mode) {
|
||||
|
@ -117,6 +117,13 @@
|
||||
@click="cancelPub(row.id)"
|
||||
>{{ t("admin.table.cancelPublish") }}
|
||||
</el-button>
|
||||
<el-button
|
||||
size="small"
|
||||
type="text"
|
||||
icon="View"
|
||||
@click="handleDetail(row.id)"
|
||||
>{{ t("common.viewDetails") }}
|
||||
</el-button>
|
||||
<el-button
|
||||
size="small"
|
||||
type="text"
|
||||
@ -206,6 +213,10 @@ function handleDelete(id) {
|
||||
});
|
||||
}
|
||||
|
||||
const handleDetail = (id) => {
|
||||
router.push(`/demand/releaseTechnology?id=${id}`)
|
||||
}
|
||||
|
||||
function handleShelf(row) {
|
||||
let text =
|
||||
row.shelf_status == 2 ? t("admin.table.putOn") : t("admin.table.putOff");
|
||||
@ -226,7 +237,8 @@ function handleShelf(row) {
|
||||
getList();
|
||||
ElMessage.success(t("admin.common.success", {action: text}));
|
||||
})
|
||||
.catch(() => {});
|
||||
.catch(() => {
|
||||
});
|
||||
}
|
||||
|
||||
function handleResults(row) {
|
||||
@ -257,7 +269,8 @@ const complete = (id) => {
|
||||
})
|
||||
);
|
||||
})
|
||||
.catch(() => {});
|
||||
.catch(() => {
|
||||
});
|
||||
};
|
||||
const cancelPub = (id) => {
|
||||
modal
|
||||
@ -276,7 +289,8 @@ const cancelPub = (id) => {
|
||||
t("admin.common.success", {action: t("admin.table.cancelPublish")})
|
||||
);
|
||||
})
|
||||
.catch(() => {});
|
||||
.catch(() => {
|
||||
});
|
||||
};
|
||||
getList();
|
||||
</script>
|
||||
|
@ -76,7 +76,7 @@
|
||||
<!-- }}-->
|
||||
<!-- </el-button>-->
|
||||
<el-button
|
||||
v-if="queryParams.status != 1"
|
||||
v-if="queryParams.status !== 1"
|
||||
size="small"
|
||||
type="text"
|
||||
icon="Delete"
|
||||
@ -92,6 +92,13 @@
|
||||
@click="handleResults(row)"
|
||||
>{{ t("webSearch.viewMatchingResults") }}
|
||||
</el-button>
|
||||
<el-button
|
||||
size="small"
|
||||
type="text"
|
||||
icon="View"
|
||||
@click="handleDetails(row.id)"
|
||||
>{{ t("common.viewDetails") }}
|
||||
</el-button>
|
||||
<!-- <el-button-->
|
||||
<!-- v-if="queryParams.status == 1"-->
|
||||
<!-- disabled-->
|
||||
@ -228,12 +235,20 @@ const handleShelf = (row) => {
|
||||
getList();
|
||||
ElMessage.success(t("admin.common.success", {action: text}));
|
||||
})
|
||||
.catch(() => {});
|
||||
.catch(() => {
|
||||
});
|
||||
};
|
||||
const handleResults = (row) => {
|
||||
router.push({path: "./results", query: {keyword: row.title}});
|
||||
};
|
||||
|
||||
const handleDetails = (id) => {
|
||||
router.push({
|
||||
path: "/extension/release",
|
||||
query: {
|
||||
id
|
||||
}
|
||||
})
|
||||
}
|
||||
const checkEnterpriseInfo = (id) => {
|
||||
router.push({path: "./business"});
|
||||
};
|
||||
|
@ -96,13 +96,23 @@
|
||||
<template #default="{ row }">
|
||||
<el-tag type="success" v-if="row.status == 1">{{
|
||||
t("common.show")
|
||||
}}</el-tag>
|
||||
}}
|
||||
</el-tag>
|
||||
<el-tag type="danger" v-else-if="row.status == 2">{{
|
||||
t("common.hide")
|
||||
}}</el-tag>
|
||||
}}
|
||||
</el-tag>
|
||||
<el-tag type="info" v-else>{{ t("common.unknown") }}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column v-if="false" :label="t('admin.common.operation')" align="center" prop="status">
|
||||
<template #default="{ row }">
|
||||
<el-button type="text" icon="view" @click="handleDetail(row.id)" size="small">{{
|
||||
t("common.viewDetails")
|
||||
}}
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<pagination
|
||||
@ -112,14 +122,241 @@
|
||||
v-model:limit="queryParams.pageSize"
|
||||
@pagination="getList"
|
||||
/>
|
||||
|
||||
<el-dialog title="活动详情" v-model="showDialog" width="55%" destroy-on-close>
|
||||
<el-form ref="formRef" :model="form" label-width="120px">
|
||||
<el-form-item label="活动名称:" prop="title">
|
||||
<el-input v-model="form.title" placeholder="请输入活动名称"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="联系人:" prop="contact">
|
||||
<el-input v-model="form.contact" placeholder="请输入联系人"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号码:" prop="contactMobile">
|
||||
<el-input
|
||||
v-model="form.contactMobile"
|
||||
placeholder="请输入手机号码"
|
||||
maxlength="11"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="开始时间:" prop="beginTime">
|
||||
<el-date-picker
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
v-model="form.beginTime"
|
||||
type="datetime"
|
||||
placeholder="选择开始时间"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="结束时间:" prop="finishTime">
|
||||
<el-date-picker
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
v-model="form.finishTime"
|
||||
type="datetime"
|
||||
placeholder="选择结束时间"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="截止时间:" prop="joinDeadline">
|
||||
<el-date-picker
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
v-model="form.joinDeadline"
|
||||
type="datetime"
|
||||
placeholder="选择截止时间"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<!-- 国家-->
|
||||
<el-form-item
|
||||
label="国家"
|
||||
prop="country"
|
||||
>
|
||||
<el-select
|
||||
v-model="form.country"
|
||||
placeholder="请选择国家"
|
||||
>
|
||||
<el-option
|
||||
v-for="option in countryOptions"
|
||||
:label="option.value"
|
||||
:value="option.key"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<!-- <CityOptions v-model="form" ref="cityOptionsRef"/>-->
|
||||
<!-- <el-form-item label="地点:" required>
|
||||
<el-row type="flex" justify="space-between" :gutter="10">
|
||||
<el-col :span="8">
|
||||
<el-form-item prop="province">
|
||||
<el-select
|
||||
v-model="form.province"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
:disabled="provinceSelectList.length === 0"
|
||||
@change="provinceChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in provinceSelectList"
|
||||
:key="item.provinceCode"
|
||||
:label="item.provinceName"
|
||||
:value="item.provinceCode"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item prop="city">
|
||||
<el-select
|
||||
v-model="form.city"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
:disabled="citySelectList.length === 0"
|
||||
@change="cityChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in citySelectList"
|
||||
:key="item.cityCode"
|
||||
:label="item.cityName"
|
||||
:value="item.cityCode"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item prop="district">
|
||||
<el-select
|
||||
v-model="form.district"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
:disabled="districtSelectList.length === 0"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in districtSelectList"
|
||||
:key="item.areaCode"
|
||||
:label="item.areaName"
|
||||
:value="item.areaCode"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="详细地址:" prop="address">
|
||||
<el-input v-model="form.address" placeholder="请输入详细地址"/>
|
||||
</el-form-item>
|
||||
<field-options v-model="form" ref="fieldOptionsRef"/>
|
||||
|
||||
<!-- <el-form-item label="活动分类:" required>
|
||||
<el-row type="flex" justify="space-between">
|
||||
<el-col :span="8">
|
||||
<el-form-item prop="industrys">
|
||||
<el-select
|
||||
v-model="form.industrys[0]"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
@change="field1Change"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in field1SelectList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8" style="margin: 0 10px">
|
||||
<el-form-item>
|
||||
<el-select
|
||||
v-model="form.industrys[1]"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
@change="field2Change"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in field2SelectList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item>
|
||||
<el-select
|
||||
v-model="form.industrys[2]"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in field3SelectList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form-item> -->
|
||||
|
||||
<el-form-item label="通知人群:" prop="notifyCrowds">
|
||||
<el-select v-model="form.notifyCrowds" multiple placeholder="请选择">
|
||||
<el-option label="企业" value="1"></el-option>
|
||||
<el-option label="专家" value="2"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="报名人数上限:" prop="maxNumber">
|
||||
<el-input
|
||||
v-model.number="form.maxNumber"
|
||||
placeholder="请输入报名人数"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="宣传图:" prop="image">
|
||||
<ImageUpload v-model="form.image" :isShowTip="false" :limit="1"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="活动简介:" prop="description">
|
||||
<el-input
|
||||
v-model="form.description"
|
||||
placeholder="请输入活动简介"
|
||||
type="textarea"
|
||||
:autosize="{ minRows: 2, maxRows: 4 }"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="活动介绍:" prop="content">
|
||||
<!-- <WangEditor v-model="form.content" minHeight="150px" />-->
|
||||
<el-input
|
||||
v-model="form.content"
|
||||
placeholder="请输入活动介绍"
|
||||
type="textarea"
|
||||
:autosize="{ minRows: 6, maxRows: 8 }"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="报名费用:" prop="amount">
|
||||
<el-input v-model.number="form.amount">
|
||||
<template slot="append">元</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<!-- <el-button type="primary" @click="submitForm">确 定</el-button>-->
|
||||
<!-- <el-button @click="cancel">取 消</el-button>-->
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { activitysList } from "@/api/admin/expert";
|
||||
import {activityInfo, activitysList} from "@/api/admin/expert";
|
||||
import {useI18n} from "vue-i18n";
|
||||
import {reactive, ref, toRefs} from "vue";
|
||||
import {parseTime} from "@/utils/ruoyi";
|
||||
import FieldOptions from "@/views/components/FieldOptions"
|
||||
|
||||
const {t} = useI18n();
|
||||
const dataList = ref([]);
|
||||
@ -127,6 +364,7 @@ const loading = ref(true);
|
||||
const showSearch = ref(true);
|
||||
const total = ref(0);
|
||||
const queryRef = ref();
|
||||
const showDialog = ref(false)
|
||||
const data = reactive({
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
@ -135,9 +373,10 @@ const data = reactive({
|
||||
title: undefined,
|
||||
status: undefined,
|
||||
},
|
||||
form: {}
|
||||
});
|
||||
|
||||
const { queryParams } = toRefs(data);
|
||||
const {queryParams, form} = toRefs(data);
|
||||
|
||||
/** 查询数据列表 */
|
||||
const getList = async () => {
|
||||
@ -162,5 +401,12 @@ function resetQuery() {
|
||||
}
|
||||
}
|
||||
|
||||
const handleDetail = (id) => {
|
||||
activityInfo(id).then(resp => {
|
||||
form.value = resp.data
|
||||
showDialog.value = true
|
||||
})
|
||||
}
|
||||
|
||||
getList();
|
||||
</script>
|
||||
|
@ -50,32 +50,38 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="false"
|
||||
:label="t('admin.common.operation')"
|
||||
class-name="small-padding fixed-width"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<router-link
|
||||
v-if="queryParams.status == 3"
|
||||
v-if="queryParams.status === 3"
|
||||
:to="{ path: './release', query: { id: row.id } }"
|
||||
>
|
||||
<el-button icon="Edit" size="small" type="text"
|
||||
>{{ t("admin.common.edit") }}
|
||||
</el-button>
|
||||
</router-link>
|
||||
|
||||
<el-button
|
||||
v-if="queryParams.status == 1"
|
||||
:icon="row.shelfStatus == 1 ? `Download` : `Upload`"
|
||||
v-if="queryParams.status !== 3"
|
||||
icon="view"
|
||||
size="small"
|
||||
type="text"
|
||||
@click="handleShelf(row)"
|
||||
>{{
|
||||
row.shelfStatus == 1
|
||||
? t("admin.table.putOn")
|
||||
: t("admin.table.putOff")
|
||||
}}
|
||||
@click="handleDetails(row.id)"
|
||||
>{{ t("common.details") }}
|
||||
</el-button>
|
||||
<!-- <el-button-->
|
||||
<!-- v-if="queryParams.status == 1"-->
|
||||
<!-- :icon="row.shelfStatus == 1 ? `Download` : `Upload`"-->
|
||||
<!-- size="small"-->
|
||||
<!-- type="text"-->
|
||||
<!-- @click="handleShelf(row)"-->
|
||||
<!-- >{{-->
|
||||
<!-- row.shelfStatus == 1-->
|
||||
<!-- ? t("admin.table.putOn")-->
|
||||
<!-- : t("admin.table.putOff")-->
|
||||
<!-- }}-->
|
||||
<!-- </el-button>-->
|
||||
<el-button
|
||||
v-if="queryParams.status != 0"
|
||||
icon="Delete"
|
||||
@ -225,6 +231,16 @@ const handleCancelPublish = (id) => {
|
||||
// handleQuery();
|
||||
};
|
||||
|
||||
|
||||
const handleDetails = (id) => {
|
||||
router.push({
|
||||
path: `/technology/release`,
|
||||
query: {
|
||||
id
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function handleResults(row) {
|
||||
router.push({
|
||||
path: "./results",
|
||||
|
@ -134,6 +134,14 @@ getList();
|
||||
height: 100%;
|
||||
padding: 12px;
|
||||
|
||||
:deep(.el-tabs__item) {
|
||||
font-size: 18px;
|
||||
|
||||
&.is-active {
|
||||
color: #0054ff;
|
||||
}
|
||||
}
|
||||
|
||||
.news-list {
|
||||
.news-item {
|
||||
& > a {
|
||||
|
@ -55,6 +55,7 @@ getNews()
|
||||
}
|
||||
|
||||
p.content {
|
||||
text-indent: 2em each-line;
|
||||
font-size: 16px;
|
||||
line-height: 24px;
|
||||
margin: 0;
|
||||
|
@ -9,7 +9,7 @@
|
||||
<div class="head">
|
||||
<el-breadcrumb separator="/">
|
||||
<el-breadcrumb-item>
|
||||
<span class="one">{{ t("admin.findExpert") }}</span>
|
||||
<span class="one">{{ t("webSearch.findExpert") }}</span>
|
||||
</el-breadcrumb-item>
|
||||
<el-breadcrumb-item>
|
||||
<span>{{ t("webSearch.expertDetails") }}</span>
|
||||
@ -133,6 +133,47 @@
|
||||
<!-- <div style="padding: 20px 0">
|
||||
<div class="pointTit">专家视频</div>
|
||||
</div> -->
|
||||
<!-- <template>-->
|
||||
<div style="padding: 20px 0">
|
||||
<div class="pointTit">{{ t("dict.patent") }}</div>
|
||||
</div>
|
||||
<section>
|
||||
<div>
|
||||
<ul class="patent-list">
|
||||
<li v-for="patent in state.expertDetail.patentList??[]" :key="patent.id" class="patent-item">
|
||||
{{ patent.title }}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<!-- </template>-->
|
||||
|
||||
<div style="padding: 20px 0">
|
||||
<div class="pointTit">{{ t("admin.common.achievement") }}</div>
|
||||
</div>
|
||||
<section>
|
||||
<div>
|
||||
<ul class="patent-list">
|
||||
<li v-for="achievement in state.expertDetail.achievementList" :key="achievement.id"
|
||||
class="patent-item">
|
||||
{{ achievement.title }}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<div style="padding: 20px 0">
|
||||
<div class="pointTit">{{ t("admin.common.paper") }}</div>
|
||||
</div>
|
||||
<section>
|
||||
<div>
|
||||
<ul class="patent-list">
|
||||
<li v-for="paper in state.expertDetail.paperList" :key="paper.id"
|
||||
class="patent-item">
|
||||
{{ paper.title }}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
<div v-if="state.expertDetail.id" style="padding: 20px 0">
|
||||
<el-tabs v-model="state.activeName">
|
||||
@ -429,6 +470,9 @@ import { useRoute, useRouter } from "vue-router";
|
||||
import docking from "./components/docking.vue";
|
||||
import {useI18n} from "vue-i18n";
|
||||
import {educationOptions} from "../../../utils/parameter";
|
||||
import {expertPatentList} from "@/api/admin/expert/patent";
|
||||
import {expertAchievementList} from "@/api/admin/expert/achievement";
|
||||
import {paperList} from "@/api/admin/expert/technology";
|
||||
|
||||
const {t, locale} = useI18n();
|
||||
const showDocking = ref(false);
|
||||
@ -518,6 +562,21 @@ function getDataList() {
|
||||
.catch(() => {
|
||||
loading.value = false;
|
||||
});
|
||||
|
||||
expertPatentList(id).then(resp => {
|
||||
state.expertDetail.patentList = resp.rows
|
||||
})
|
||||
|
||||
expertAchievementList({
|
||||
expertId: id
|
||||
}).then(resp => {
|
||||
state.expertDetail.achievementList = resp.rows
|
||||
console.log(state.expertDetail.achievementList)
|
||||
})
|
||||
|
||||
paperList({uid: id}).then(resp => {
|
||||
state.expertDetail.paperList = resp.rows
|
||||
})
|
||||
// companyProduct(id).then(res => {
|
||||
// if (200 == res.code) {
|
||||
// state.companyProduct = res.data.data;
|
||||
@ -588,6 +647,12 @@ function getDataList() {
|
||||
// color: #666666;
|
||||
// margin-bottom: 5px;
|
||||
// }
|
||||
.patent-list {
|
||||
.patent-item {
|
||||
list-style: disc;
|
||||
line-height: 24px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.pointTit {
|
||||
|
Reference in New Issue
Block a user