jin_ji_hu/src/views/enterpriselibrary/index.vue

406 lines
15 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<div class="L-public-main" id="L-size-main">
<div class="L-main">
<header id="L-header">
<el-form :inline="true" :model="formInline" size="small" class="demo-form-inline" ref="queryFrom">
<el-col :span="22">
<el-form-item label="企业名称:" prop="name">
<el-input v-model.trim="formInline.name" placeholder="请输入内容"></el-input>
</el-form-item>
<el-form-item label="统一社会信用代码:" prop="enterUnit">
<el-input v-model.trim="formInline.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
<el-form-item label="经营状态:" prop="policyLevel">
<el-select class="ignoreElement" v-model="formInline.policyLevel" placeholder="请选择">
<!-- <el-option
v-for="dict in dict.type.jjh_project_type"
:key="dict.value"
:label="dict.label"
:value="dict.value">
</el-option> -->
<el-option
label="省级"
value="0">
</el-option>
<el-option
label="市级"
value="1">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button size="mini" @click="resetQuery('queryFrom')">重置</el-button>
<el-button size="mini" type="primary" @click="handleQuery('queryFrom')">查询</el-button>
</el-form-item>
</el-col>
<!-- <el-col :span="2">
<el-button v-if="userType !== '01'" type="primary" class="import-btn" icon="el-icon-plus" size="mini" @click="importBtn">新增发文</el-button>
</el-col> -->
</el-form>
</header>
<section>
<el-table v-loading="loading" :data="tableData" :row-class-name="tableRowClassName" :height="tabHeader" :max-height="tabHeader">
<el-table-column label="企业名称" prop="name" />
<el-table-column label="统一社会信用代码" prop="enterUnit" width="140px" />
<el-table-column label="法定代表人" prop="policyLevel" />
<el-table-column label="经营状态" prop="enterTime" />
<el-table-column label="成立日期" prop="createBy" />
<el-table-column label="注册资本" prop="createTime" />
<el-table-column label="企业类型" prop="createTime" />
<el-table-column label="所属行业" prop="createTime" />
<el-table-column label="组织机构代码" prop="createTime" />
<el-table-column label="参保人数" prop="createTime" />
<el-table-column label="曾用名" prop="createTime" />
<el-table-column label="注册地址" prop="createTime" />
<el-table-column label="注册类型" prop="createTime" />
<el-table-column label="经营范围" prop="createTime" />
<el-table-column label="操作" prop="userId" class-name="table-operation">
<template slot-scope="scope">
<span class="look-info" @click="goInfo(scope.row)">查看详情</span>
<!-- <span class="edit-info" @click="editInfo(scope.row)">编辑</span>
<span class="del-info" @click="delInfo(scope.row)">删除</span> -->
</template>
</el-table-column>
</el-table>
<my-pagination
id="L-pagination"
:total="total"
:page="pagination.current"
:limit="pagination.size"
@pagination="getPagination"
:current-page.sync="pagination.current"
></my-pagination>
</section>
</div>
<!-- :rules="rules" -->
<my-dialog :title="title" @close="importClose" @confirm="confirm" ref="importProject" closeText="关闭" :myclass="true">
<el-form :model="addFrom" size="small" ref="importFrom" label-width="120px" class="newArticle" disabled>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="企业名称:" class="importFormItem" prop="name">
<el-input v-model.trim="addFrom.name" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="统一社会信用代码:" class="importFormItem" prop="policyLevel">
<el-input v-model.trim="addFrom.policyLevel" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="法定代表人:" class="importFormItem" prop="enterUnit">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="经营状态:" class="importFormItem" prop="enterTime">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="成立日期:" class="importFormItem" prop="joinProject">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="注册资本:" class="importFormItem" prop="joinProject">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="企业类型:" class="importFormItem" prop="joinProject">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="所属行业:" class="importFormItem" prop="joinProject">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="组织机构代码:" class="importFormItem" prop="joinProject">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="参保人数:" class="importFormItem" prop="joinProject">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="曾用名:" class="importFormItem" prop="joinProject">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="注册地址:" class="importFormItem" prop="joinProject">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="注册类型:" class="importFormItem" prop="joinProject">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="经营范围:" class="importFormItem" prop="joinProject">
<el-input v-model.trim="addFrom.enterUnit" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</my-dialog>
</div>
</template>
<script>
import myPagination from "@/views/components/Pagination/index.vue"
import myDialog from "@/views/components/myDialog/index.vue"
import { getJPolicyFile, jPolicyFileNew, jPolicyFileChange, jPolicyFileId, jPolicyFileDel } from "@/api/jin_ji_hu/policyDocument"
export default {
components:{myPagination, myDialog},
dicts: ['jjh_project_type'],
data() {
return {
userType: this.$store.state.user.userType,
deptId: this.$store.state.user.deptId,
total:0,
pagination: {
current:1,
size:10,
},
loading:false,
formInline: {
name: '',
enterUnit:"",
policyLevel:"",
},
tableData:[
// {
// projectName:"苏财建[2021]101号 关于下达2021年江苏省级现代服务业发展 专项资金(现代服务业项目)的通知",
// project:"全方位生物大分子药定制研发生产CDMO服务平台",
// unit:"苏财政",
// grade:"市级",
// issueTime:"2023-03-19",
// user:"张珊",
// uploadingTime:"2023-05-11 14:00",
// }
],
tabHeader: undefined,
addFrom: {
name:"",
joinProject:"",
enterUnit:"",
policyLevel:"",
enterTime:"",
},
rules:{
name:[
{ required: true, message: '请填写政策文件名称', trigger: 'blur' }
],
joinProject:[
{ required: true, message: '请填写政策等级', trigger: 'blur' }
],
enterUnit:[
{ required: true, message: '请填写发文单位', trigger: 'blur' }
],
policyLevel:[
{ required: true, message: '请选择发文时间', trigger: 'change' }
],
enterTime:[
{ required: true, message: '请选择关联项目', trigger: 'change' }
],
},
title:"新增发文",
infoVisible:false,
}
},
mounted() {
this.cancalDebounce();
window.addEventListener('resize', this.cancalDebounce);
// this.getList();
},
destroyed() {
window.removeEventListener('resize', this.cancalDebounce);
},
methods:{
// 列表获取
getList(){
this.loading = true;
getJPolicyFile(this.pagination).then(res=>{
this.loading = false;
this.total = res.data.total;
this.tableData = res.data.records;
})
},
// 获取页码
getPagination(pages) {
this.pagination.current = pages.page;
this.pagination.size = pages.limit;
// this.getList();
},
// 查询
handleQuery() {
this.pagination = {
current: 1,
size: 10
}
this.pagination = { ...this.pagination,...this.formInline };
// console.log(this.pagination);
// console.log(this.formInline);
// this.getList();
},
// 重置
resetQuery(formName){
this.$refs[formName].resetFields();
this.pagination = {
current: 1,
size: 10
}
// this.getList();
},
// 修改table背景色
tableRowClassName({row, rowIndex}){
if (rowIndex % 2 !== 0) {
return 'evenNumber-row';
}
return '';
},
// 导入按钮
importBtn(){
this.title = "新增发文";
this.$refs.importProject.open();
},
// 关闭事件触发
importClose(){
this.$nextTick(()=>{
this.$refs.importFrom.resetFields();
this.$refs.importProject.close();
this.addFrom = {
name:"",
joinProject:"",
enterUnit:"",
policyLevel:"",
enterTime:"",
}
})
},
// 关闭详情
infoClose(){
this.addFrom = {}
this.infoVisible = false;
},
// 查看详情
goInfo(row){
this.title = "企业详情"
jPolicyFileId(row.id).then((res=>{
if(res.code == 200) {
this.addFrom = res.data;
this.addFrom.joinProject = this.addFrom.joinProject + ''
this.$refs.importProject.open();
}
}))
},
// 编辑
editInfo(row){
this.title = "修改发文"
jPolicyFileId(row.id).then((res)=>{
if(res.code == 200) {
this.addFrom = res.data;
this.$refs.importProject.open();
}
})
},
// 新增发文
confirm(){
this.$refs.importFrom.validate((valid) => {
if (valid) {
// console.log(this.addFrom);
let id = this.addFrom.id ? this.addFrom.id : null;
if(id) {
jPolicyFileChange(this.addFrom).then((res)=>{
if(res.code == 200) {
this.getList();
this.importClose();
this.$message({
type: "success",
message: "修改成功!",
});
}
})
} else {
jPolicyFileNew(this.addFrom).then((res)=>{
if(res.code == 200) {
this.getList();
this.importClose();
this.$message({
type: "success",
message: "新增成功!",
});
}
})
}
} else {
return false;
}
});
},
// 删除
delInfo(row){
this.$confirm("此操作将永久删除该数据, 是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
jPolicyFileDel({ id: row.id }).then((res) => {
this.getList();
this.$message({
type: "success",
message: "删除成功!",
});
});
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
});
},
// 去往项目库搜索
goToProject(id){
// this.$router.push({
// path: '/project/index',
// params: { projectId: id }
// })
this.$router.push({
name: 'ProjectList',
params: { projectId: id }
})
},
// 屏幕尺寸变化
cancalDebounce(){
const element = document.getElementById('L-size-main'); // 通过元素的 ID 获取元素
const header = document.getElementById('L-header'); // 通过元素的 ID 获取元素
const pagination = document.getElementById('L-pagination'); // 通过元素的 ID 获取元素
const elementHeight = element.offsetHeight;
const headerHeight = header.offsetHeight;
const paginationtHeight = pagination.offsetHeight;
this.tabHeader = elementHeight - headerHeight - paginationtHeight - 140;
}
},
}
</script>