Compare commits

...

3 Commits

Author SHA1 Message Date
216fcce543 up 2022-03-21 13:39:51 +08:00
7f16a114df 数据审核列表及创新服务需求管理页面路由创建init 2022-03-21 09:50:45 +08:00
04700ca0d1 优化菜单名称过长悬停显示标题 2022-03-18 17:29:50 +08:00
11 changed files with 492 additions and 12 deletions

View File

@ -1,29 +1,38 @@
<script>
export default {
name: 'MenuItem',
name: "MenuItem",
functional: true,
props: {
icon: {
type: String,
default: ''
default: "",
},
title: {
type: String,
default: ''
}
default: "",
},
},
render(h, context) {
const { icon, title } = context.props
const vnodes = []
const { icon, title } = context.props;
const vnodes = [];
if (icon) {
vnodes.push(<svg-icon icon-class={icon}/>)
vnodes.push(<svg-icon icon-class={icon} />);
}
if (title) {
vnodes.push(<span slot='title'>{(title)}</span>)
// vnodes.push(<span slot="title">{title}</span>);
if (title.length > 6) {
vnodes.push(
<span slot="title" title={title}>
{title}
</span>
);
} else {
vnodes.push(<span slot="title">{title}</span>);
}
}
return vnodes
}
}
return vnodes;
},
};
</script>

View File

@ -95,7 +95,7 @@ function handleComponent(src, flag) {
return 'ParentView'
}
}
return src.component
return src.component.length ? src.component : 'ParentView'
}
// 遍历后台传来的路由字符串,转换为组件对象

View File

@ -0,0 +1,3 @@
<template>
<div>details</div>
</template>

View File

@ -0,0 +1,134 @@
<template>
<div class="app-container">
<el-form
v-if="is_super"
:model="queryParams"
ref="queryForm"
:inline="true"
label-width="85px"
@submit.prevent
>
<el-form-item label="所属站点" prop="tenant_id">
<SiteOptions v-model="queryParams" />
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="待审核" name="1"></el-tab-pane>
<el-tab-pane label="已驳回" name="3"></el-tab-pane>
<el-tab-pane label="已通过" name="2"></el-tab-pane>
</el-tabs>
<el-table v-loading="loading" :data="dataList" ref="tableRef">
<el-table-column label="数据编号" align="center" prop="id" />
<el-table-column label="成果名称" align="center" prop="name" />
<el-table-column label="成果领域" align="center" prop="research_name" />
<el-table-column label="所属专家" align="center" prop="laboratory_name" />
<el-table-column label="研究机构" align="center" prop="area" />
<el-table-column
v-if="activeName == 2"
label="浏览量"
align="center"
prop="area"
/>
<el-table-column
v-if="activeName == 2"
label="收藏量"
align="center"
prop="area"
/>
<el-table-column label="站点" align="center" prop="address" />
<el-table-column label="申请时间" align="center" prop="address" />
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleEdit(scope.row.id)"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-plus"
@click="handleClaim(scope.row.id)"
>认领专利</el-button
>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.page_num"
:limit.sync="queryParams.page_size"
@pagination="getList"
/>
</div>
</template>
<script>
export default {
data() {
return {
is_super: this.$store.getters.is_super,
// 遮罩层
loading: true,
// 总条数
total: 0,
// 实验室表格数据
dataList: null,
// 查询参数
queryParams: {
page_num: 1,
page_size: 10,
activeName: "1",
},
activeName: "1",
};
},
methods: {
/** 查询机构列表 */
getList() {
this.loading = true;
this.dataList = [1];
this.total = 15;
this.loading = false;
// expertList(this.queryParams).then((response) => {
// this.dataList = response.data.data;
// this.total = response.data.count;
// this.loading = false;
// });
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.page_num = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
handleClick() {
this.$nextTick(() => {
this.$refs["tableRef"].doLayout();
});
},
},
created() {
this.getList();
},
};
</script>

View File

@ -0,0 +1,3 @@
<template>
<div>Enterprise dataAudit/demand/index</div>
</template>

View File

@ -0,0 +1,3 @@
<template>
<div>dataAudit/product/index</div>
</template>

View File

@ -1,6 +1,7 @@
<template>
<div class="app-container">
<el-form
v-show="showSearch"
:model="queryParams"
ref="queryForm"
:inline="true"

View File

@ -0,0 +1,318 @@
<template>
<div class="app-container">
<el-form
:model="queryParams"
ref="queryForm"
v-show="showSearch"
:inline="true"
@submit.native.prevent
>
<el-form-item label="论文题目" prop="title">
<el-input
v-model="queryParams.title"
placeholder="请输入论文题目"
clearable
size="small"
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
>新增</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="dataList">
<el-table-column label="数据编号" prop="id" align="center" />
<el-table-column label="论文题目" prop="title" align="center" />
<el-table-column label="刊物" prop="apply_code" align="center" />
<el-table-column label="作者" prop="apply_code" align="center" />
<el-table-column label="关键词" prop="apply_code" align="center" />
<el-table-column label="出版日期" prop="apply_name" align="center" />
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
>编辑</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.page_num"
:limit.sync="queryParams.page_size"
@pagination="getList"
/>
<!-- 添加或修改对话框 -->
<el-dialog :title="title" :visible.sync="open" width="700px">
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="论文题目:" prop="apply_name">
<el-input v-model="form.apply_name" placeholder="请输入论文题目" />
</el-form-item>
<el-form-item label="刊物:" prop="apply_address">
<el-input v-model="form.apply_address" placeholder="请输入刊物" />
</el-form-item>
<el-form-item label="作者:" prop="inventor">
<el-input
v-model="form.inventor"
placeholder="请输入作者(多个请以 , 分割)"
/>
</el-form-item>
<el-row>
<el-col :span="24">
<el-form-item label="出版日期:" prop="apply_at">
<el-date-picker
value-format="yyyyMMdd"
v-model.trim="form.apply_at"
type="date"
placeholder="请选择出版日期"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<InputBoxAdd
:labelWidth="100"
v-model="form"
title="关键词"
placeholder="请输入关键词"
fieldKey="key_words"
ref="keyWordsForm"
/>
<el-form-item label="摘要:" prop="description">
<el-input
v-model.number="form.description"
placeholder="请输入摘要"
type="textarea"
:autosize="{ minRows: 4, maxRows: 8 }"
/>
</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>
import {
patentList,
patentAdd,
patentDetail,
patentEdit,
patentDelete,
patentShelf,
} from "@/api/dataList/patent";
import InputBoxAdd from "@/views/components/InputBoxAdd";
export default {
components: {
InputBoxAdd,
},
data() {
return {
loading: true,
showSearch: true,
queryParams: {
title: undefined,
page_num: 1,
page_size: 10,
},
total: 0,
dataList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 表单参数
form: {},
rules: {
apply_name: [
{ required: true, message: "申请人不能为空", trigger: "blur" },
],
apply_address: [
{ required: true, message: "申请人地址不能为空", trigger: "blur" },
],
open_code: [
{ required: true, message: "公开号不能为空", trigger: "blur" },
],
open_at: [
{ required: true, message: "公开日不能为空", trigger: "blur" },
],
inventor: [
{ required: true, message: "发明人不能为空", trigger: "blur" },
],
title: [
{ required: true, message: "论文题目不能为空", trigger: "blur" },
],
apply_code: [
{ required: true, message: "申请号不能为空", trigger: "blur" },
],
apply_at: [
{ required: true, message: "申请日期不能为空", trigger: "blur" },
],
kind: [
{ required: true, message: "请选择论文类型", trigger: "change" },
],
ipc_code: [
{ required: true, message: "IPC分类号不能为空", trigger: "blur" },
],
description: [
{ required: true, message: "摘要不能为空", trigger: "blur" },
],
principal_claim: [
{ required: true, message: "主权项不能为空", trigger: "blur" },
],
},
openDialog: false,
claimLoading: false,
claimQueryParams: {
apply_name: "",
inventor: "",
page_num: 1,
page_size: 100,
},
claimList: [],
ids: [],
formClaim: {},
};
},
methods: {
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
handleQuery() {
this.queryParams.page_num = 1;
this.getList();
},
getList() {
this.loading = true;
patentList(this.queryParams).then((res) => {
// this.dataList = res.data.data;
// this.total = res.data.count;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
apply_name: undefined,
apply_address: undefined,
inventor: undefined,
title: undefined,
apply_code: undefined,
open_code: undefined,
open_at: undefined,
apply_at: undefined,
kind: undefined,
ipc_code: undefined,
description: undefined,
// shelf_status: 1,
principal_claim: undefined,
};
this.resetForm("form");
},
handleAdd() {
this.reset();
this.open = true;
this.title = "新增论文";
},
handleUpdate(row) {
this.reset();
patentDetail({ id: row.id }).then((res) => {
this.form = res.data;
this.open = true;
this.title = "修改论文";
});
},
submitForm() {
this.$refs["form"].validate((valid) => {
if (valid) {
this.form.inventor = this.form.inventor.replace(//g, ",");
this.form.apply_name = this.form.apply_name.replace(//g, ",");
if (this.form.id != undefined) {
patentEdit(this.form).then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
patentAdd(this.form).then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
this.$modal
.confirm('是否确认删除编号为"' + row.id + '"的数据项?')
.then(function () {
return patentDelete({ id: row.id });
})
.then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
},
},
created() {
this.getList();
},
};
</script>

View File

@ -0,0 +1,3 @@
<template>
<div>Demand列表</div>
</template>

View File

@ -0,0 +1,3 @@
<template>
<div>enterprise</div>
</template>

View File

@ -0,0 +1,3 @@
<template>
<div>expert</div>
</template>