Browse Source

机制建设标志性成果

master
wbc 15 hours ago
parent
commit
ca943e07bf
  1. 2
      src/views/informationSub/iconic/addAndModify.vue
  2. 60
      src/views/informationSub/iconic/iconic.data.ts
  3. 13
      src/views/informationSub/iconic/index.vue
  4. 2
      src/views/informationSub/mechanism/addAndModify.vue
  5. 13
      src/views/informationSub/mechanism/index.vue
  6. 28
      src/views/informationSub/mechanism/mechanism.data.ts
  7. 23
      src/views/projectBoard/unfinishNode/api.ts
  8. 55
      src/views/projectBoard/unfinishNode/data.ts
  9. 40
      src/views/projectBoard/unfinishNode/index.vue

2
src/views/informationSub/iconic/addAndModify.vue

@ -1,6 +1,6 @@
<template> <template>
<!-- 自定义表单 --> <!-- 自定义表单 -->
<BasicModal v-bind="$attrs" @register="registerModal" title="月度期刊详情" width="1200px" :showOkBtn="false" :showCancelBtn="false"> <BasicModal v-bind="$attrs" @register="registerModal" title="标志性成果详情" width="1200px" :showOkBtn="false" :showCancelBtn="false">
<el-divider content-position="left">资料信息</el-divider> <el-divider content-position="left">资料信息</el-divider>
<BasicForm @register="registerProjectForm" /> <BasicForm @register="registerProjectForm" />

60
src/views/informationSub/iconic/iconic.data.ts

@ -2,7 +2,7 @@ import { FormSchema } from '@/components/Form';
import { BasicColumn } from '@/components/Table'; import { BasicColumn } from '@/components/Table';
export const iconiccolumns: BasicColumn[] = [ export const iconicColumns: BasicColumn[] = [
{ {
title: '文件名称', title: '文件名称',
width: 250, width: 250,
@ -12,7 +12,7 @@ export const iconiccolumns: BasicColumn[] = [
{ {
title: '文件类别', title: '文件类别',
width: 150, width: 150,
dataIndex: 'periods', dataIndex: 'type',
}, },
{ {
title: '发布日期', title: '发布日期',
@ -23,8 +23,32 @@ export const iconiccolumns: BasicColumn[] = [
export const searchFormSchema: FormSchema[] = [ export const searchFormSchema: FormSchema[] = [
{ {
label: '文件类别', label: '文件类别',
field: 'periods', field: 'type',
component: 'Input', component: 'Select',
componentProps: {
options: [
{
label: '宣传报道',
value: '宣传报道',
},
{
label: '荣誉奖项',
value: '荣誉奖项',
},
{
label: '专利和软著',
value: '专利和软著',
},
{
label: '试点工作',
value: '试点工作',
},
{
label: '课题研究',
value: '课题研究',
},
],
},
colProps: { span: 5 }, colProps: { span: 5 },
}, },
{ {
@ -47,9 +71,33 @@ export const iconicformSchemas: FormSchema[] = [
{ {
label: '文件类别', label: '文件类别',
field: 'periods', field: 'type',
required: true, required: true,
component: 'Input', component: 'Select',
componentProps: {
options: [
{
label: '宣传报道',
value: '宣传报道',
},
{
label: '荣誉奖项',
value: '荣誉奖项',
},
{
label: '专利和软著',
value: '专利和软著',
},
{
label: '试点工作',
value: '试点工作',
},
{
label: '课题研究',
value: '课题研究',
},
],
},
colProps: { span: 6 }, colProps: { span: 6 },
}, { }, {

13
src/views/informationSub/iconic/index.vue

@ -18,21 +18,18 @@
<script lang="ts" name="system-user" setup> <script lang="ts" name="system-user" setup>
//ts //ts
import { ref } from 'vue';
import { ActionItem, BasicTable, TableAction, useTable } from '@/components/Table'; import { ActionItem, BasicTable, TableAction, useTable } from '@/components/Table';
import { useModal } from '@/components/Modal'; import { useModal } from '@/components/Modal';
import { downloadResource } from "../../../api/common/api" import { downloadResource } from "../../../api/common/api"
import { isShowByRoles } from '@/views/projectLib/projectInfo/projectInfo.api'; import { isShowByRoles } from '@/views/projectLib/projectInfo/projectInfo.api';
import { iconicColumns, searchFormSchema } from './iconic.data';
import { iconiccolumns, searchFormSchema } from './iconic.data';
import addAndModify from "./addAndModify.vue" import addAndModify from "./addAndModify.vue"
import { periodicallabPageList, batchdownloadPeriodicallabFiles, deletePeriodicallab } from './iconic.api'; import { periodicallabPageList, batchdownloadPeriodicallabFiles, deletePeriodicallab } from './iconic.api';
import { fi } from 'element-plus/es/locale';
const [registerSubmitProjectArchive, { openModal }] = useModal(); const [registerSubmitProjectArchive, { openModal }] = useModal();
const [registerTable, { reload, getForm }] = useTable({ const [registerTable, { reload, getForm }] = useTable({
title: '月度期刊信息', title: '标志性成果',
api: periodicallabPageList, api: periodicallabPageList,
columns: iconiccolumns, columns: iconicColumns,
useSearchForm: true, useSearchForm: true,
actionColumn: { actionColumn: {
width: 140, width: 140,
@ -84,10 +81,6 @@ function handleAdd() {
function handleModify(record) { function handleModify(record) {
openModal(true, { id: record.id }) openModal(true, { id: record.id })
}
function handleSubmit(record) {
} }
function handledown(record) { function handledown(record) {
let param = { let param = {

2
src/views/informationSub/mechanism/addAndModify.vue

@ -1,6 +1,6 @@
<template> <template>
<!-- 自定义表单 --> <!-- 自定义表单 -->
<BasicModal v-bind="$attrs" @register="registerModal" title="月度期刊详情" width="1200px" :showOkBtn="false" :showCancelBtn="false"> <BasicModal v-bind="$attrs" @register="registerModal" title="机制建设详情" width="1200px" :showOkBtn="false" :showCancelBtn="false">
<el-divider content-position="left">资料信息</el-divider> <el-divider content-position="left">资料信息</el-divider>
<BasicForm @register="registerProjectForm" /> <BasicForm @register="registerProjectForm" />

13
src/views/informationSub/mechanism/index.vue

@ -18,21 +18,18 @@
<script lang="ts" name="system-user" setup> <script lang="ts" name="system-user" setup>
//ts //ts
import { ref } from 'vue';
import { ActionItem, BasicTable, TableAction, useTable } from '@/components/Table'; import { ActionItem, BasicTable, TableAction, useTable } from '@/components/Table';
import { useModal } from '@/components/Modal'; import { useModal } from '@/components/Modal';
import { downloadResource } from "../../../api/common/api" import { downloadResource } from "../../../api/common/api"
import { isShowByRoles } from '@/views/projectLib/projectInfo/projectInfo.api'; import { isShowByRoles } from '@/views/projectLib/projectInfo/projectInfo.api';
import { mechanismColumns, searchFormSchema } from './mechanism.data';
import { mechanismcolumns, searchFormSchema } from './mechanism.data';
import addAndModify from "./addAndModify.vue" import addAndModify from "./addAndModify.vue"
import { periodicallabPageList, batchdownloadPeriodicallabFiles, deletePeriodicallab } from './mechanism.api'; import { periodicallabPageList, batchdownloadPeriodicallabFiles, deletePeriodicallab } from './mechanism.api';
import { fi } from 'element-plus/es/locale';
const [registerSubmitProjectArchive, { openModal }] = useModal(); const [registerSubmitProjectArchive, { openModal }] = useModal();
const [registerTable, { reload, getForm }] = useTable({ const [registerTable, { reload, getForm }] = useTable({
title: '月度期刊信息', title: '机制建设',
api: periodicallabPageList, api: periodicallabPageList,
columns: mechanismcolumns, columns: mechanismColumns,
useSearchForm: true, useSearchForm: true,
actionColumn: { actionColumn: {
width: 140, width: 140,
@ -84,10 +81,6 @@ function handleAdd() {
function handleModify(record) { function handleModify(record) {
openModal(true, { id: record.id }) openModal(true, { id: record.id })
}
function handleSubmit(record) {
} }
function handledown(record) { function handledown(record) {
let param = { let param = {

28
src/views/informationSub/mechanism/mechanism.data.ts

@ -2,7 +2,7 @@ import { FormSchema } from '@/components/Form';
import { BasicColumn } from '@/components/Table'; import { BasicColumn } from '@/components/Table';
export const mechanismcolumns: BasicColumn[] = [ export const mechanismColumns: BasicColumn[] = [
{ {
title: '文件名称', title: '文件名称',
width: 250, width: 250,
@ -12,7 +12,7 @@ export const mechanismcolumns: BasicColumn[] = [
{ {
title: '文件类别', title: '文件类别',
width: 150, width: 150,
dataIndex: 'periods', dataIndex: 'type',
}, },
{ {
title: '发布日期', title: '发布日期',
@ -23,8 +23,16 @@ export const mechanismcolumns: BasicColumn[] = [
export const searchFormSchema: FormSchema[] = [ export const searchFormSchema: FormSchema[] = [
{ {
label: '文件类别', label: '文件类别',
field: 'periods', field: 'type',
component: 'Input', component: 'Select',
componentProps: {
options: [
{
label: '配套工作制度',
value: '配套工作制度',
},
],
},
colProps: { span: 5 }, colProps: { span: 5 },
}, },
{ {
@ -47,9 +55,17 @@ export const mechanismformSchemas: FormSchema[] = [
{ {
label: '文件类别', label: '文件类别',
field: 'periods', field: 'type',
required: true, required: true,
component: 'Input', component: 'Select',
componentProps: {
options: [
{
label: '配套工作制度',
value: '配套工作制度',
},
],
},
colProps: { span: 6 }, colProps: { span: 6 },
}, { }, {

23
src/views/projectBoard/unfinishNode/api.ts

@ -0,0 +1,23 @@
import { defHttp } from '@/utils/http/axios';
import { downloadFile } from "../../../api/common/api"
export enum Api {
periodicallabPageList = '/huzhouPeriodicallab/periodicallabPageList',
addPeriodicallab="/huzhouPeriodicallab/addPeriodicallab",
modifyPeriodicallab = '/huzhouPeriodicallab/modifyPeriodicallab',
getperiodicallabById="/huzhouPeriodicallab/getperiodicallabById",
deletePeriodicallab = '/huzhouPeriodicallab/deletePeriodicallab',
batchdownloadPeriodicallabFiles="/huzhouPeriodicallab/batchdownloadPeriodicallabFiles",
}
export const periodicallabPageList = (params) => defHttp.get({ url: Api.periodicallabPageList, params })
export const getperiodicallabById = (params) => defHttp.get({ url: Api.getperiodicallabById, params })
export const batchdownloadPeriodicallabFiles = (params) => downloadFile(Api.batchdownloadPeriodicallabFiles,"批量导出.zip",params)
export const addPeriodicallab = (params?) =>defHttp.post({ url: Api.addPeriodicallab,headers:{ "Content-Type": "multipart/form-data" }, params })
export const modifyPeriodicallab = (params?) =>defHttp.post({ url: Api.modifyPeriodicallab,headers:{ "Content-Type": "multipart/form-data" }, params })
export const deletePeriodicallab = (params?) =>defHttp.post({ url: Api.deletePeriodicallab, params })

55
src/views/projectBoard/unfinishNode/data.ts

@ -0,0 +1,55 @@
import { FormSchema } from '@/components/Form';
import { BasicColumn } from '@/components/Table';
export const columns: BasicColumn[] = [
{
title: '任务名称',
width: 250,
dataIndex: 'taskName',
},
{
title: '指导处',
width: 150,
dataIndex: 'guide',
},
{
title: '任务进度(%)',
width: 200,
dataIndex: 'taskProgress',
},
{
title: '上级资金执行率(%)',
width: 250,
dataIndex: 'higherFundsRate',
},
{
title: '项目名称',
width: 150,
dataIndex: 'projectName',
},
{
title: '建设单位',
width: 200,
dataIndex: 'buildUnit',
},
{
title: '项目所处阶段',
width: 250,
dataIndex: 'projectStage',
},
{
title: '项目整体进度(%)',
width: 150,
dataIndex: 'projectProgress',
},
{
title: '上级资金执行(%)',
width: 200,
dataIndex: 'higherFunds',
},
];

40
src/views/projectBoard/unfinishNode/index.vue

@ -0,0 +1,40 @@
<template>
<div>
<!--引用表格-->
<BasicTable @register="registerTable">
<template #tableTitle>
<el-button type="primary" round @click="handleBatchdownload"> 批量导出</el-button>
</template>
</BasicTable>
</div>
</template>
<script lang="ts" name="system-user" setup>
//ts
import { BasicTable, useTable } from '@/components/Table';
import { columns } from './data';
import { periodicallabPageList, batchdownloadPeriodicallabFiles } from './api';
const [registerTable, { reload, getForm }] = useTable({
title: '项目节点未完成数',
api: periodicallabPageList,
columns: columns,
useSearchForm: false,
showIndexColumn: false,
//
});
function handleBatchdownload() {
let { getFieldsValue } = getForm()
let fromData = getFieldsValue()
batchdownloadPeriodicallabFiles(fromData)
reload()
}
</script>
<style scoped></style>
Loading…
Cancel
Save