专家成果编辑操作
This commit is contained in:
10
src/api/admin/expert/activity.js
Normal file
10
src/api/admin/expert/activity.js
Normal file
@ -0,0 +1,10 @@
|
||||
import request from '@/utils/request';
|
||||
|
||||
// 专家 - 活动列表
|
||||
export function activityList(data) {
|
||||
return request({
|
||||
url: '/enterprise/v1/activity/joins',
|
||||
method:'post',
|
||||
data
|
||||
});
|
||||
}
|
@ -28,7 +28,7 @@ import './permission' // permission control
|
||||
|
||||
import { useDict } from '@/utils/dict'
|
||||
import { parseTime, resetForm, addDateRange, handleTree, selectDictLabel } from '@/utils/ruoyi'
|
||||
import { modeOptions, educationOptions, enterpriseOptions ,maturityOptions,leadOptions,patentOptions} from '@/utils/parameter'
|
||||
import { modeOptions, educationOptions, enterpriseOptions ,maturityOptions,leadOptions,patentOptions,cooperationOptions} from '@/utils/parameter'
|
||||
|
||||
// 分页组件
|
||||
import Pagination from '@/components/Pagination'
|
||||
@ -65,6 +65,7 @@ app.config.globalProperties.enterpriseOptions = enterpriseOptions
|
||||
app.config.globalProperties.maturityOptions = maturityOptions
|
||||
app.config.globalProperties.leadOptions = leadOptions
|
||||
app.config.globalProperties.patentOptions = patentOptions
|
||||
app.config.globalProperties.cooperationOptions = cooperationOptions
|
||||
app.config.globalProperties.md5 = md5;
|
||||
|
||||
// 全局组件挂载
|
||||
|
@ -55,4 +55,15 @@ export const patentOptions = [
|
||||
{ key: 2, value: '外观设计' },
|
||||
{ key: 3, value: '实用新型' },
|
||||
]
|
||||
|
||||
// 合作模式
|
||||
export const cooperationOptions = [
|
||||
{ key: 101, value: '技术转让' },
|
||||
{ key: 102, value: '技术许可' },
|
||||
{ key: 103, value: '技术入股' },
|
||||
{ key: 104, value: '合作开发' },
|
||||
{ key: 105, value: '融资' },
|
||||
{ key: 106, value: '公司' },
|
||||
{ key: 107, value: '代理加盟' },
|
||||
{ key: 108, value: '市场推广' },
|
||||
{ key: 109, value: '其他' },
|
||||
]
|
||||
|
@ -6,9 +6,9 @@
|
||||
v-show="showSearch"
|
||||
:inline="true"
|
||||
>
|
||||
<el-form-item label="活动名称" prop="researchName">
|
||||
<el-form-item label="活动名称" prop="title">
|
||||
<el-input
|
||||
v-model="queryParams.researchName"
|
||||
v-model="queryParams.title"
|
||||
placeholder="请输入活动名称"
|
||||
clearable
|
||||
size="small"
|
||||
@ -16,11 +16,12 @@
|
||||
@keyup.enter="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="活动状态" prop="type">
|
||||
<el-select v-model="queryParams.type" placeholder="请选择">
|
||||
<el-option label="未开始" value="1"></el-option>
|
||||
<el-option label="进行中" value="2"></el-option>
|
||||
<el-option label="已结束" value="3"></el-option>
|
||||
<el-form-item label="活动状态" prop="status">
|
||||
<el-select v-model="queryParams.status" placeholder="请选择">
|
||||
<!-- 1:未开始,2:进行中,3:随便 -->
|
||||
<el-option label="未开始" :value="1"></el-option>
|
||||
<el-option label="进行中" :value="2"></el-option>
|
||||
<el-option label="已结束" :value="3"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
@ -38,7 +39,7 @@
|
||||
<el-table-column label="数据编号" prop="researchId" />
|
||||
<el-table-column
|
||||
label="活动名称"
|
||||
prop="researchName"
|
||||
prop="title"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
@ -68,9 +69,11 @@
|
||||
</el-table-column>
|
||||
<el-table-column label="状态" align="center" prop="status">
|
||||
<template #default="scope">
|
||||
<el-tag type="info">未开始</el-tag>
|
||||
<el-tag type="success">进行中</el-tag>
|
||||
<el-tag type="danger">已结束</el-tag>
|
||||
<el-tag type="info" v-if="scope.row.status == 1">未开始</el-tag>
|
||||
<el-tag type="success" v-else-if="scope.row.status == 2">
|
||||
进行中
|
||||
</el-tag>
|
||||
<el-tag type="danger" v-else>已结束</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@ -78,8 +81,8 @@
|
||||
<pagination
|
||||
v-show="total > 0"
|
||||
:total="total"
|
||||
v-model:page="queryParams.pageNum"
|
||||
v-model:limit="queryParams.pageSize"
|
||||
v-model:page="queryParams.page_num"
|
||||
v-model:limit="queryParams.page_size"
|
||||
@pagination="getList"
|
||||
/>
|
||||
|
||||
@ -129,23 +132,7 @@
|
||||
<script setup>
|
||||
import CityOptions from "@/views/identity/components/CityOptions";
|
||||
import FieldSingle from "@/views/identity/components/FieldSingle";
|
||||
import {
|
||||
addRole,
|
||||
changeRoleStatus,
|
||||
dataScope,
|
||||
delRole,
|
||||
getRole,
|
||||
listRole,
|
||||
updateRole,
|
||||
} from "@/api/system/role";
|
||||
import {
|
||||
roleMenuTreeselect,
|
||||
treeselect as menuTreeselect,
|
||||
} from "@/api/system/menu";
|
||||
import {
|
||||
treeselect as deptTreeselect,
|
||||
roleDeptTreeselect,
|
||||
} from "@/api/system/dept";
|
||||
import { activityList } from "@/api/admin/expert/activity";
|
||||
|
||||
const router = useRouter();
|
||||
const { proxy } = getCurrentInstance();
|
||||
@ -164,10 +151,10 @@ const formData = reactive({
|
||||
const data = reactive({
|
||||
form: {},
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
researchName: undefined,
|
||||
type: undefined,
|
||||
page_num: 1,
|
||||
page_size: 10,
|
||||
title: undefined,
|
||||
status: undefined,
|
||||
},
|
||||
rules: {
|
||||
name: [{ required: true, message: "活动名称不能为空", trigger: "blur" }],
|
||||
@ -183,20 +170,15 @@ const { queryParams, form, rules } = toRefs(data);
|
||||
/** 查询数据列表 */
|
||||
function getList() {
|
||||
loading.value = true;
|
||||
dataList.value = [1];
|
||||
total.value = 15;
|
||||
activityList(queryParams.value).then((response) => {
|
||||
dataList.value = response.data.data;
|
||||
total.value = response.data.count;
|
||||
loading.value = false;
|
||||
// listRole(queryParams.value).then(
|
||||
// (response) => {
|
||||
// dataList.value = response.rows;
|
||||
// total.value = response.total;
|
||||
// loading.value = false;
|
||||
// }
|
||||
// );
|
||||
});
|
||||
}
|
||||
/** 搜索按钮操作 */
|
||||
function handleQuery() {
|
||||
queryParams.value.pageNum = 1;
|
||||
queryParams.value.page_num = 1;
|
||||
getList();
|
||||
}
|
||||
/** 重置按钮操作 */
|
||||
@ -204,19 +186,6 @@ function resetQuery() {
|
||||
proxy.resetForm("queryRef");
|
||||
handleQuery();
|
||||
}
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(row) {
|
||||
proxy.$modal
|
||||
.confirm('是否确认删除数据编号为"' + row.id + '"的数据项?')
|
||||
.then(function () {
|
||||
return delRole(researchIds);
|
||||
})
|
||||
.then(() => {
|
||||
getList();
|
||||
proxy.$modal.msgSuccess("删除成功");
|
||||
})
|
||||
.catch(() => {});
|
||||
}
|
||||
|
||||
/** 重置新增的表单以及其他数据 */
|
||||
function reset() {
|
||||
|
@ -62,14 +62,6 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<!-- <CityOptions v-model="modelValue" :labelWidth="labelWidth" ref="cityForm" />
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="详细地址:">
|
||||
<el-input v-model="modelValue.address"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row> -->
|
||||
|
||||
<FieldOptions
|
||||
v-model="modelValue"
|
||||
@ -83,7 +75,7 @@
|
||||
title="应用客户"
|
||||
placeholder="请输入应用客户"
|
||||
fieldKey="customer"
|
||||
ref="directionsForm"
|
||||
ref="customerForm"
|
||||
/>
|
||||
|
||||
<el-row>
|
||||
@ -92,7 +84,7 @@
|
||||
<el-select
|
||||
v-model="modelValue.maturity"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
placeholder="请选择成果成熟度"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in maturityOptions"
|
||||
@ -111,7 +103,7 @@
|
||||
<el-select
|
||||
v-model="modelValue.lead_standard"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
placeholder="请选择成果领先性"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in leadOptions"
|
||||
@ -126,12 +118,19 @@
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="合作模式:" prop="lead_standard">
|
||||
<el-form-item label="合作模式:">
|
||||
<el-select
|
||||
v-model="modelValue.province"
|
||||
v-model="modelValue.cooperation_mode"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
placeholder="请选择合作模式"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in cooperationOptions"
|
||||
:key="item.key"
|
||||
:label="item.value"
|
||||
:value="item.key"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -153,28 +152,24 @@
|
||||
title="关键词"
|
||||
placeholder="请输入关键词"
|
||||
fieldKey="keywords"
|
||||
ref="directionsForm"
|
||||
ref="keywordsForm"
|
||||
/>
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="成果简介:" prop="introduce">
|
||||
<Editor
|
||||
v-model="modelValue.introduce"
|
||||
:minHeight="150"
|
||||
ref="introduceRef"
|
||||
<el-form-item label="成果简介:" prop="description">
|
||||
<el-input
|
||||
v-model="modelValue.description"
|
||||
type="textarea"
|
||||
:autosize="{ minRows: 2, maxRows: 8 }"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-if="modelValue.mode == 1">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="成果来源:" prop="introduce">
|
||||
<Editor
|
||||
v-model="modelValue.introduce"
|
||||
:minHeight="150"
|
||||
ref="introduceRef"
|
||||
/>
|
||||
<el-form-item label="成果来源:">
|
||||
<Editor v-model="modelValue.introduce" :minHeight="150" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -194,7 +189,7 @@
|
||||
</p>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="成熟度证明材料:" prop="file">
|
||||
<el-form-item label="成熟度证明材料:">
|
||||
<FileUpload
|
||||
v-model="modelValue.file"
|
||||
:limit="1"
|
||||
@ -234,52 +229,14 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
rules: {
|
||||
product: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||
title: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||
kind: [{ required: true, message: "请选择", trigger: "change" }],
|
||||
code: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||
mobile: [
|
||||
{ required: true, message: "请输入", trigger: "blur" },
|
||||
{
|
||||
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
|
||||
message: "请输入正确的手机号码",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
research_id: [{ required: true, message: "请选择", trigger: "change" }],
|
||||
maturity: [{ required: true, message: "请选择", trigger: "change" }],
|
||||
tenant_id: [
|
||||
{
|
||||
required: true,
|
||||
message: "请选择",
|
||||
trigger: ["blur", "change"],
|
||||
},
|
||||
],
|
||||
school: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||
education: [{ required: true, message: "请选择", trigger: "change" }],
|
||||
major: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||
job: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||
title: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||
work_at: [
|
||||
{
|
||||
required: true,
|
||||
message: "从业时间不能为空",
|
||||
trigger: ["change", "blur"],
|
||||
},
|
||||
],
|
||||
lead_standard: [
|
||||
{
|
||||
required: true,
|
||||
message: "请上传",
|
||||
trigger: ["blur", "change"],
|
||||
},
|
||||
{ required: true, message: "请选择", trigger: "change" },
|
||||
],
|
||||
introduce: [
|
||||
{
|
||||
required: true,
|
||||
message: "请输入",
|
||||
trigger: ["change", "blur"],
|
||||
},
|
||||
description: [{ required: true, message: "请输入", trigger: "blur" }],
|
||||
image: [
|
||||
{ required: true, message: "请上传", trigger: ["change", "blur"] },
|
||||
],
|
||||
},
|
||||
};
|
||||
@ -288,10 +245,10 @@ export default {
|
||||
submitForm() {
|
||||
let flag = false;
|
||||
this.$refs["formRef"].validate((valid) => {
|
||||
const cityForm = this.$refs.cityForm.submitForm(); // 城市
|
||||
const fieldForm = this.$refs.fieldForm.submitForm();
|
||||
const directionsForm = this.$refs.directionsForm.submitForm();
|
||||
if (valid && cityForm && fieldForm && directionsForm) {
|
||||
const customerForm = this.$refs.customerForm.submitForm();
|
||||
const keywordsForm = this.$refs.keywordsForm.submitForm();
|
||||
if (valid && fieldForm && customerForm && keywordsForm) {
|
||||
flag = !flag;
|
||||
}
|
||||
});
|
||||
|
@ -76,8 +76,8 @@
|
||||
<pagination
|
||||
v-show="total > 0"
|
||||
:total="total"
|
||||
v-model:page="queryParams.pageNum"
|
||||
v-model:limit="queryParams.pageSize"
|
||||
v-model:page="queryParams.page_num"
|
||||
v-model:limit="queryParams.page_size"
|
||||
@pagination="getList"
|
||||
/>
|
||||
</div>
|
||||
@ -144,7 +144,7 @@ function getList() {
|
||||
}
|
||||
/** 搜索按钮操作 */
|
||||
function handleQuery() {
|
||||
queryParams.value.pageNum = 1;
|
||||
queryParams.value.page_num = 1;
|
||||
getList();
|
||||
}
|
||||
/** 重置按钮操作 */
|
||||
|
@ -20,16 +20,26 @@ import ReleaseForm from "../components/ReleaseForm";
|
||||
const { proxy } = getCurrentInstance();
|
||||
const labelWidth = 140;
|
||||
const form = reactive({
|
||||
id: undefined,
|
||||
mode: 1,
|
||||
});
|
||||
const route = useRoute();
|
||||
const { id } = route.query;
|
||||
if (id) {
|
||||
// 编辑操作
|
||||
form.id = id;
|
||||
// achievementDetail({ id }).then((res) => {
|
||||
// console.log(res);
|
||||
// });
|
||||
}
|
||||
|
||||
function submitForm(is_submit) {
|
||||
form["is_submit"] = is_submit;
|
||||
if (proxy.$refs.releaseForm.submitForm()) {
|
||||
console.log(form);
|
||||
// achievementAdd(form).then((res) => {
|
||||
// proxy.$modal.msgSuccess("新增成功");
|
||||
// proxy.$router.go(-1);
|
||||
// });
|
||||
achievementAdd(form).then((res) => {
|
||||
proxy.$modal.msgSuccess("新增成功");
|
||||
proxy.$router.go(-1);
|
||||
});
|
||||
} else {
|
||||
console.log("校验未通过");
|
||||
}
|
||||
|
@ -219,6 +219,7 @@ getCookie();
|
||||
|
||||
.login-form {
|
||||
width: 516px;
|
||||
min-width: 455px;
|
||||
height: 517px;
|
||||
background: #ffffff;
|
||||
box-sizing: border-box;
|
||||
|
Reference in New Issue
Block a user