Commit cd6c01a7 authored by xinzhedeai's avatar xinzhedeai

master代码同步、dp字体样式调整

parents fd8d4144 406ede5b
...@@ -5,13 +5,13 @@ export function getData4panel4(data) { // 导师信息 ...@@ -5,13 +5,13 @@ export function getData4panel4(data) { // 导师信息
return request({ return request({
url: 'api/mentor', url: 'api/mentor',
method: 'get', method: 'get',
params:data, params: data,
}) })
} }
export function getData4panel0(data) { // 孵化器概况信息 export function getData4panel0(data) { // 孵化器概况信息
return request({ return request({
url: 'api/incubator/profile?incubatorId='+data.incubatorId, url: 'api/incubator/profile?incubatorId=' + data.incubatorId,
method: 'get', method: 'get',
}) })
} }
...@@ -20,10 +20,43 @@ export function getDialogData4panel0(data) { // 孵化器概况信息 ...@@ -20,10 +20,43 @@ export function getDialogData4panel0(data) { // 孵化器概况信息
return request({ return request({
url: 'api/incubatorRevenue', url: 'api/incubatorRevenue',
method: 'get', method: 'get',
params:data, params: data,
}) })
} }
export function getData4enterprise(data) {
return request({
url: 'api/company/companyName/list',
method: 'get',
params: data
})
}
export function getData4enterpriseDetail(data) {
return request({
url: 'api/company/web/details',
method: 'get',
params: data
})
}
export function getDialogData4panel1_2(data) {
return request({
url: 'api/companyAnnualInfo',
method: 'get',
params: data
})
}
export function getDialogData4panel1_3(data) {
return request({
url: 'api/companyProduct',
method: 'get',
params: data
})
}
export function getData4tech(data) { export function getData4tech(data) {
return request({ return request({
...@@ -64,5 +97,7 @@ export function editUser(data) { ...@@ -64,5 +97,7 @@ export function editUser(data) {
} }
export default { getData4panel0, getDialogData4panel0, getData4panel4, getData4tech, add, edit, del } export default { getData4panel0, getDialogData4panel0, getData4panel4, getData4enterprise,
getData4enterpriseDetail, getDialogData4panel1_2, getDialogData4panel1_3,
getData4tech, add, edit, del }
var Tools = function(){ var Tools = function(){
var isHighTech = function(){
return ~~localStorage.getItem('groupIdByloginType')===2
};
// 日期时间工具 // 日期时间工具
var Dates = function(){ var Dates = function(){
/* /*
...@@ -453,6 +455,7 @@ var Tools = function(){ ...@@ -453,6 +455,7 @@ var Tools = function(){
Dates:Dates(), arrayJsonToJson, Dates:Dates(), arrayJsonToJson,
asyncLoop, checkbox, fileElTobase64, asyncLoop, checkbox, fileElTobase64,
createOnSelect, cuPrint, downloadFile, createOnSelect, cuPrint, downloadFile,
isHighTech,
} }
}; };
......
...@@ -488,7 +488,7 @@ var reqApis = function(){ ...@@ -488,7 +488,7 @@ var reqApis = function(){
name: '孵化器管理', name: '孵化器管理',
Dict: { Dict: {
baseInfo: { baseInfo: {
// "incubatorId": {name:"孵化器名称", must:true, 'type':'select', val:'id', key:'name',}, "incubatorId": {name:"孵化器名称", must:true, 'type':'select', val:'id', key:'name', showYN: Tools.isHighTech()},
"year": { "year": {
name:"年度", must:true, 'type':'date', 'datetype':'year','format':'yyyy' name:"年度", must:true, 'type':'date', 'datetype':'year','format':'yyyy'
}, },
...@@ -539,11 +539,11 @@ var reqApis = function(){ ...@@ -539,11 +539,11 @@ var reqApis = function(){
rightBtn: [ rightBtn: [
], ],
search: [ search: [
// { {
// 'type': 'string', 'name': '孵化器名称', 'word': 'incubatorName', 'mode': 0, 'width': '180px', 'clear': function () { 'type': 'string', 'name': '孵化器名称', 'word': 'incubatorName', 'mode': 0, 'width': '180px', showYN: Tools.isHighTech(), 'clear': function () {
// this.loadData() this.loadData()
// } }
// }, },
{ {
'type': 'date', 'datetype':'year','defaultTime': ['2024'], 'name': '年度', 'word': 'year', 'mode': 0, 'width':'140px', 'type': 'date', 'datetype':'year','defaultTime': ['2024'], 'name': '年度', 'word': 'year', 'mode': 0, 'width':'140px',
'change': function(a, b){ 'change': function(a, b){
...@@ -566,7 +566,7 @@ var reqApis = function(){ ...@@ -566,7 +566,7 @@ var reqApis = function(){
Dict: { Dict: {
baseInfo: { baseInfo: {
"companyName": {name:"企业名称", must:true }, "companyName": {name:"企业名称", must:true },
// "incubatorId": {name:"所属孵化器", must:true, table:0, 'type':'select', key:'name', }, "incubatorId": {name:"所属孵化器", must:true, 'type':'select', key:'name', showYN: Tools.isHighTech()},
"technicalField": {name:"所属技术领域", must:true, 'type':'select', key:'name', }, "technicalField": {name:"所属技术领域", must:true, 'type':'select', key:'name', },
"entryDate": { "entryDate": {
...@@ -664,18 +664,18 @@ var reqApis = function(){ ...@@ -664,18 +664,18 @@ var reqApis = function(){
"softwareCopyrightNumber": { 'type': '', 'name': '软件著作权数(件)', table:0, }, "softwareCopyrightNumber": { 'type': '', 'name': '软件著作权数(件)', table:0, },
"isTechSme": { 'type': 'select', 'name': '是否科技型中小企业', table:0, }, "isTechSme": { 'type': 'select', 'name': '是否科技型中小企业', table:0, },
"techSmeDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, }, "techSmeDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, },
"isHighGrowthInnovative": { 'type': 'select', 'name': '是否创新性中小企业', table:0, },
"highGrowthInnovativeDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7,},
"isHighTech": { 'type': 'select', 'name': '是否高新技术企业', table:0, }, "isHighTech": { 'type': 'select', 'name': '是否高新技术企业', table:0, },
"highTechDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, }, "highTechDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, },
"isAdvancedTechService": { 'type': 'select', 'name': '是否技术先进型服务企业', table:0, }, "isSpecializedSpecialEnterprises": { 'type': 'select', 'name': '是否专精特新企业', table:0, },
"advancedTechServiceDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, }, "specializedSpecialEnterprisesDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, },
"isGazelle": { 'type': 'select', 'name': '是否瞪羚企业', table:0, }, "isGazelle": { 'type': 'select', 'name': '是否瞪羚企业', table:0, },
"gazelleDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, }, "gazelleDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, },
"isLittleGiant": { 'type': 'select', 'name': '是否小巨人企业', table:0, }, "isLittleGiant": { 'type': 'select', 'name': '是否小巨人企业', table:0, },
"littleGiantDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, }, "littleGiantDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, },
"isSpecializedSpecialEnterprises": { 'type': 'select', 'name': '是否专精特新企业', table:0, }, "isHighGrowthInnovative": { 'type': 'select', 'name': '是否创新性中小企业', table:0, },
"specializedSpecialEnterprisesDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, }, "highGrowthInnovativeDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7,},
"isAdvancedTechService": { 'type': 'select', 'name': '是否技术先进型服务企业', table:0, },
"advancedTechServiceDate": { 'type': 'date', 'name': '最新评选日期', table:0, mode:7, },
...@@ -775,7 +775,7 @@ var reqApis = function(){ ...@@ -775,7 +775,7 @@ var reqApis = function(){
} }
}, },
{ {
type: 'primary', icon: 'el-icon-folder-add', name: '导入企业基础信息', 'callback':function(){ type: 'primary', icon: 'el-icon-folder-add', name: '导入企业基础信息', showYN: !Tools.isHighTech(), 'callback':function(){
var m = this; var m = this;
m.uploadView = qf.UI.popWindow({ m.uploadView = qf.UI.popWindow({
cover:true, cover:true,
...@@ -855,7 +855,7 @@ var reqApis = function(){ ...@@ -855,7 +855,7 @@ var reqApis = function(){
} }
}, },
{ {
type: 'primary', icon: 'el-icon-folder-add', name: '导入企业经营信息', 'callback':function(){ type: 'primary', icon: 'el-icon-folder-add', name: '导入企业经营信息', showYN: !Tools.isHighTech(), 'callback':function(){
var m = this; var m = this;
m.uploadView = qf.UI.popWindow({ m.uploadView = qf.UI.popWindow({
cover:true, cover:true,
...@@ -954,6 +954,11 @@ var reqApis = function(){ ...@@ -954,6 +954,11 @@ var reqApis = function(){
this.loadData() this.loadData()
} }
}, },
{
'type': 'string', 'name': '孵化器名称', 'word': 'incubatorName', 'mode': 0, 'width': '180px', showYN: Tools.isHighTech(), 'clear': function () {
this.loadData()
}
},
{ 'type': 'select', 'name': '在孵状态', 'word': 'incubationStatus', 'mode': 1, 'width': '140px' }, { 'type': 'select', 'name': '在孵状态', 'word': 'incubationStatus', 'mode': 1, 'width': '140px' },
{ 'type': 'select', 'name': '企业类型', 'word': 'companyType', 'mode': 1, 'width': '140px' }, { 'type': 'select', 'name': '企业类型', 'word': 'companyType', 'mode': 1, 'width': '140px' },
{ 'type': 'select', 'name': '企业级别', 'word': 'companyLevel', 'mode': 1, 'width': '140px' }, { 'type': 'select', 'name': '企业级别', 'word': 'companyLevel', 'mode': 1, 'width': '140px' },
...@@ -1155,6 +1160,7 @@ var reqApis = function(){ ...@@ -1155,6 +1160,7 @@ var reqApis = function(){
Dict: { Dict: {
baseInfo: { baseInfo: {
"mentorName": {name:"导师姓名", must:true}, "mentorName": {name:"导师姓名", must:true},
"incubatorId": {name:"所属孵化器", must:true, 'type':'select', key:'name', showYN: Tools.isHighTech()},
"education": {name:"学历", must:true }, "education": {name:"学历", must:true },
"graduationSchool": {name:"毕业学校", }, "graduationSchool": {name:"毕业学校", },
"contactPhone": {name:"联系电话", }, "contactPhone": {name:"联系电话", },
...@@ -1184,10 +1190,17 @@ var reqApis = function(){ ...@@ -1184,10 +1190,17 @@ var reqApis = function(){
}, },
selectList: { selectList: {
incubatorId: function () { incubatorId: function () {
return reqPublic('/api/incubator/list', 'get', {}).then(function (res) { var slist = this.selectList;
return res.body || []; return reqPublic('api/company/dic', 'get', {}).then(function (res) {
var body = res.body || {};
for (var key in body) {
var val = body[key];
slist[key] = val
}; return body.incubatorId;
}); });
}, },
}, },
}, },
config: { config: {
...@@ -1223,6 +1236,11 @@ var reqApis = function(){ ...@@ -1223,6 +1236,11 @@ var reqApis = function(){
this.loadData() this.loadData()
} }
}, },
{
'type': 'string', 'name': '孵化器名称', 'word': 'incubatorName', 'mode': 0, 'width': '180px', showYN: Tools.isHighTech(), 'clear': function () {
this.loadData()
}
},
{ 'type': 'daterange', 'defaultTime': ['00:00:00', '23:59:59'], 'name': '日期范围', 'word': 'daterange', 'mode': 0, 'width': '300px', format: 'yyyy-MM-dd' }, { 'type': 'daterange', 'defaultTime': ['00:00:00', '23:59:59'], 'name': '日期范围', 'word': 'daterange', 'mode': 0, 'width': '300px', format: 'yyyy-MM-dd' },
{ {
'type': 'button', 'label': '查询', 'width': '140px', 'icon': 'el-icon-search', 'click': function (e) { 'type': 'button', 'label': '查询', 'width': '140px', 'icon': 'el-icon-search', 'click': function (e) {
......
...@@ -56,7 +56,7 @@ ...@@ -56,7 +56,7 @@
<!--工具栏--> <!--工具栏-->
<div class="head-container" v-if="form.config.search && form.config.search[0]"> <div class="head-container" v-if="form.config.search && form.config.search[0]">
<!-- 搜索 --> <!-- 搜索 -->
<template v-for="(item, index) in form.config.search"> <template v-for="(item, index) in form.config.search" v-if="item.showYN !==false">
<label v-if="item.name && item.showLabel" class="el-form-item-label">{{item.name}}</label> <label v-if="item.name && item.showLabel" class="el-form-item-label">{{item.name}}</label>
<template v-if="item.type==='string'"> <template v-if="item.type==='string'">
<el-input v-model="form.query[item.word]" clearable :placeholder="item.name" :style="'width:'+item.width" @clear="item.clear && item.clear.call(_self.$parent)"/> <el-input v-model="form.query[item.word]" clearable :placeholder="item.name" :style="'width:'+item.width" @clear="item.clear && item.clear.call(_self.$parent)"/>
......
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
<template> <template>
<el-dialog id="printJS-form" class="qyzz-dialog" append-to-body :close-on-click-modal="false" :before-close="cancelForm" :visible.sync="form.visible" :title="form.title" :width="form.config.formWidth || '50%'"> <el-dialog id="printJS-form" class="qyzz-dialog" append-to-body :close-on-click-modal="false" :before-close="cancelForm" :visible.sync="form.visible" :title="form.title" :width="form.config.formWidth || '50%'">
<el-form :model="form.item" :rules="rules" :ref="ref" :inline="true" size="small" :label-width="(form.config.labelWidth || 80) + 'px'"> <el-form :model="form.item" :rules="rules" :ref="ref" :inline="true" size="small" :label-width="(form.config.labelWidth || 80) + 'px'">
<el-form-item v-for="(item, key) in Dict.baseInfo" :prop="item.rule || key" :label="item.name" v-if="item.form !== 0" :style="item.style" :class="{'isHide': item.mode===7, [key]: item.mode===7}" :ref="key"> <el-form-item v-for="(item, key) in Dict.baseInfo" :prop="item.rule || key" :label="item.name" v-if="item.form !== 0 && item.showYN !==false" :style="item.style" :class="{'isHide': item.mode===7, [key]: item.mode===7}" :ref="key">
<template v-if="item.type === 'img'"> <template v-if="item.type === 'img'">
<div class="img-upload"> <div class="img-upload">
<label class="upload-area" for="imgUpload"> <label class="upload-area" for="imgUpload">
......
...@@ -57,7 +57,7 @@ ...@@ -57,7 +57,7 @@
<div class="content cu-table"> <div class="content cu-table">
<!-- :style="'width:'+ (item.fixed ? '400px' : 'auto') +" --> <!-- :style="'width:'+ (item.fixed ? '400px' : 'auto') +" -->
<el-table :data="table.dataList" v-loading="table.loading" border style="width: 100%;" :row-class-name="tableRowClassName"> <el-table :data="table.dataList" v-loading="table.loading" border style="width: 100%;" :row-class-name="tableRowClassName">
<template v-for="(item, key) in Dict.baseInfo" v-if="item.table !== 0"> <template v-for="(item, key) in Dict.baseInfo" v-if="item.table !== 0 && item.showYN !==false" >
<el-table-column v-if="item.type === 'select'" :prop="key" :label="item.name" :fixed="fixed" :width="item.width||'200px'"> <el-table-column v-if="item.type === 'select'" :prop="key" :label="item.name" :fixed="fixed" :width="item.width||'200px'">
<template slot-scope="scope"> <template slot-scope="scope">
<template v-for="sitem in Dict.selectList[key]"> <template v-for="sitem in Dict.selectList[key]">
......
...@@ -107,9 +107,29 @@ import { Highchart } from "@/assets/js/chartTemplates.js"; ...@@ -107,9 +107,29 @@ import { Highchart } from "@/assets/js/chartTemplates.js";
import cuAmap from "@/components/AMap"; import cuAmap from "@/components/AMap";
import request from "@/utils/request"; import request from "@/utils/request";
// function isTechUser(){
// return localStorage.getItem('groupIdByloginType')*1===2 // 是否为科技局用户 // let resizeTimeout;
// window.addEventListener('resize', function() {
// clearTimeout(resizeTimeout);
// resizeTimeout = setTimeout(function() {
// location.reload();
// // 执行响应逻辑
// }, 200); // 200毫秒后执行
// });
// function getPxByRem(remValue){// 传入要转换的 rem 值
// // 获取 html 元素
// const htmlElement = document.documentElement;
// // 获取 html 元素的 font-size
// const fontSize = parseFloat(getComputedStyle(htmlElement).fontSize);
// // 将 rem 转换为 px
// let pxValue = remValue * fontSize;
// return pxValue
// } // }
export default { export default {
data() { data() {
return { return {
...@@ -224,7 +244,7 @@ export default { ...@@ -224,7 +244,7 @@ export default {
}, },
showInfoWindow(marker, item) { showInfoWindow(marker, item) {
const content = `<div class="popupBgImage" style=""> const content = `<div class="popupBgImage" style="">
<h4>详细信息</h4><i id="closeInfoWindowBtn"></i> <h4>详细信息</h4><i id="closeInfoWindowBtn" style="cursor:pointer;"></i>
<dl> <dl>
<dd class="textEllipsis"><font>孵化器名称:</font><span :title="${ <dd class="textEllipsis"><font>孵化器名称:</font><span :title="${
item.incubatorName item.incubatorName
...@@ -286,11 +306,11 @@ export default { ...@@ -286,11 +306,11 @@ export default {
labels: { labels: {
x: -5, x: -5,
style: { style: {
fontSize: "0.17rem", fontSize: "0.14rem",
}, },
formatter: function () { formatter: function () {
return this.value.length > 5 return this.value.length > 5
? this.value.substring(0, 5) + "..." ? this.value.substring(0, 7)
: this.value; : this.value;
}, },
}, },
...@@ -324,6 +344,7 @@ export default { ...@@ -324,6 +344,7 @@ export default {
overflow: "justify", overflow: "justify",
style: { style: {
fontSize: "0.18rem", // 设置 Y 轴标签的字体大小 fontSize: "0.18rem", // 设置 Y 轴标签的字体大小
color: '#00F0FF',
}, },
}, },
}, },
...@@ -568,82 +589,82 @@ export default { ...@@ -568,82 +589,82 @@ export default {
method: "get", method: "get",
}).then((res) => { }).then((res) => {
let list = res.body || []; let list = res.body || [];
list = { // list = {
names: [ // names: [
{ // {
name: "上缴税费", // name: "上缴税费",
key: "num", // key: "num",
}, // },
], // ],
list: [ // list: [
{ // {
date: "2021年", // date: "2021年111",
values: { // values: {
num: 100, // num: 100,
}, // },
}, // },
{ // {
date: "2023年", // date: "2023年",
values: { // values: {
num: 41, // num: 41,
}, // },
}, // },
{ // {
date: "2024年", // date: "2024年",
values: { // values: {
num: 533, // num: 533,
}, // },
}, // },
{ // {
date: "2025年", // date: "2025年",
values: { // values: {
num: 303, // num: 303,
}, // },
}, // },
{ // {
date: "2026年", // date: "2026年",
values: { // values: {
num: 306, // num: 306,
}, // },
}, // },
{ // {
date: "2027年", // date: "2027年",
values: { // values: {
num: 309, // num: 309,
}, // },
}, // },
{ // {
date: "2028年", // date: "2028年",
values: { // values: {
num: 312, // num: 312,
}, // },
}, // },
{ // {
date: "2029年", // date: "2029年",
values: { // values: {
num: 315, // num: 315,
}, // },
}, // },
{ // {
date: "2030年", // date: "2030年",
values: { // values: {
num: 318, // num: 318,
}, // },
}, // },
{ // {
date: "2031年", // date: "2031年",
values: { // values: {
num: 321, // num: 321,
}, // },
}, // },
{ // {
date: "2032年", // date: "2032年",
values: { // values: {
num: 324, // num: 324,
}, // },
}, // },
], // ],
}; // };
var chartData = Highchart.seriesDataFormat(list, { var chartData = Highchart.seriesDataFormat(list, {
datekey: "date", datekey: "date",
dataReverse: true, dataReverse: true,
...@@ -677,7 +698,7 @@ export default { ...@@ -677,7 +698,7 @@ export default {
// tickLength: 0, // 不显示刻度线 // tickLength: 0, // 不显示刻度线
gridLineWidth: 0, // 也可以设置不显示网格线 gridLineWidth: 0, // 也可以设置不显示网格线
title: { title: {
text: "(万元)", text: "万元",
margin: 0, margin: 0,
style: { style: {
color: "#eee", color: "#eee",
...@@ -1367,8 +1388,8 @@ export default { ...@@ -1367,8 +1388,8 @@ export default {
font { font {
font-size: 0.45rem; font-size: 0.45rem;
font-family: diget year; font-family: diget year;
margin-top: 0.15rem; // margin-top: 0.15rem;
line-height: 0.23rem; line-height: 0.33rem;
background-image: -webkit-linear-gradient( background-image: -webkit-linear-gradient(
top, top,
#fff, #fff,
...@@ -1376,7 +1397,7 @@ export default { ...@@ -1376,7 +1397,7 @@ export default {
#ffea98 #ffea98
); );
-webkit-background-clip: text; -webkit-background-clip: text;
// -webkit-text-fill-color: transparent; -webkit-text-fill-color: transparent;
} }
} }
li:nth-child(1) { li:nth-child(1) {
...@@ -1723,7 +1744,7 @@ export default { ...@@ -1723,7 +1744,7 @@ export default {
white-space: nowrap; /* 不换行 */ white-space: nowrap; /* 不换行 */
overflow: hidden; /* 超出隐藏 */ overflow: hidden; /* 超出隐藏 */
text-overflow: ellipsis; /* 添加省略号 */ text-overflow: ellipsis; /* 添加省略号 */
width: 320px; /* 设置宽度 */ width: 3.2rem; /* 设置宽度 */
} }
button { button {
width: 1.5rem; width: 1.5rem;
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
<el-button type="text" style="font-size: 18px;">公司数:{{ table.total }}</el-button> <el-button type="text" style="font-size: 18px;">公司数:{{ table.total }}</el-button>
<el-button <el-button
v-for="(item, key) in form.config.otherBtn" v-for="(item, key) in form.config.otherBtn"
v-show="item.name==='添加企业' || showYN"
size="mini" size="mini"
:type="item.type" :type="item.type"
:icon="item.icon" :icon="item.icon"
...@@ -29,7 +30,7 @@ ...@@ -29,7 +30,7 @@
<!-- <el-button type="primary" size="mini" icon="el-icon-upload" @click="dialogVisible=true">导入企业基础信息</el-button> <!-- <el-button type="primary" size="mini" icon="el-icon-upload" @click="dialogVisible=true">导入企业基础信息</el-button>
<el-button type="primary" size="mini" icon="el-icon-upload">导入企业经营信息</el-button> --> <el-button type="primary" size="mini" icon="el-icon-upload">导入企业经营信息</el-button> -->
</div> </div>
<div> <div v-if="showYN">
<el-button <el-button
v-for="(item, key) in form.config.rightBtn" v-for="(item, key) in form.config.rightBtn"
size="mini" size="mini"
...@@ -179,7 +180,7 @@ import { Tools } from "@/assets/js/common.js"; ...@@ -179,7 +180,7 @@ import { Tools } from "@/assets/js/common.js";
import DateRangePicker from "@/components/DateRangePicker"; import DateRangePicker from "@/components/DateRangePicker";
import TableFilter from "@/components/TableFilter/index2"; import TableFilter from "@/components/TableFilter/index2";
import cuForm from "@/components/cuForm/index2"; import cuForm from "@/components/cuForm/index2";
import cuTable from "@/components/cuTable"; import cuTable from "@/components/cuTable/index2";
export default { export default {
name: "Dashboard", name: "Dashboard",
...@@ -191,6 +192,7 @@ export default { ...@@ -191,6 +192,7 @@ export default {
}, },
data() { data() {
return { return {
showYN: !Tools.isHighTech(),
dialogVisible: false, dialogVisible: false,
uploadError: '', uploadError: '',
hasBasicInfo: false, hasBasicInfo: false,
......
...@@ -52,9 +52,9 @@ ...@@ -52,9 +52,9 @@
import { reqApi, Config } from '@/assets/js/httpApi.js'; import { reqApi, Config } from '@/assets/js/httpApi.js';
import { Tools } from '@/assets/js/common.js'; import { Tools } from '@/assets/js/common.js';
import DateRangePicker from '@/components/DateRangePicker'; import DateRangePicker from '@/components/DateRangePicker';
import TableFilter from '@/components/TableFilter'; import TableFilter from '@/components/TableFilter/index2';
import cuForm from '@/components/cuForm'; import cuForm from '@/components/cuForm/index2';
import cuTable from '@/components/cuTable'; import cuTable from '@/components/cuTable/index2';
export default { export default {
name: 'Dashboard', name: 'Dashboard',
......
...@@ -52,9 +52,9 @@ ...@@ -52,9 +52,9 @@
import { reqApi, Config } from '@/assets/js/httpApi.js'; import { reqApi, Config } from '@/assets/js/httpApi.js';
import { Tools } from '@/assets/js/common.js'; import { Tools } from '@/assets/js/common.js';
import DateRangePicker from '@/components/DateRangePicker'; import DateRangePicker from '@/components/DateRangePicker';
import TableFilter from '@/components/TableFilter'; import TableFilter from '@/components/TableFilter/index2';
import cuForm from '@/components/cuForm'; import cuForm from '@/components/cuForm/index2';
import cuTable from '@/components/cuTable'; import cuTable from '@/components/cuTable/index2';
export default { export default {
name: 'Dashboard', name: 'Dashboard',
......
...@@ -135,56 +135,17 @@ var baseAPI = ...@@ -135,56 +135,17 @@ var baseAPI =
? process.env.VUE_APP_LOCAL_API + "/" ? process.env.VUE_APP_LOCAL_API + "/"
: (VUE_APP_API.ServiceURL || process.env.VUE_APP_LOCAL_API) + "/"; : (VUE_APP_API.ServiceURL || process.env.VUE_APP_LOCAL_API) + "/";
import crudHome from "@/api/system/home"; import crudHome from "@/api/system/home";
import IconSelect from "@/components/IconSelect";
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import { LOAD_CHILDREN_OPTIONS } from "@riophae/vue-treeselect";
import CRUD, { presenter, header, form, crud } from "@crud/crud";
import rrOperation from "@crud/RR.operation";
import crudOperation from "@crud/CRUD.operation";
import udOperation from "@crud/UD.operation";
import DateRangePicker from "@/components/DateRangePicker";
import dic from "@/api/system/dict"; import dic from "@/api/system/dict";
import cuAmap from "@/components/AMap"; import cuAmap from "@/components/AMap";
// crud交由presenter持有
const defaultForm = {
id: null,
title: null,
menuSort: 999,
path: null,
component: null,
componentName: null,
iframe: false,
roles: [],
pid: 0,
icon: null,
cache: false,
hidden: false,
type: 0,
permission: null,
};
export default { export default {
name: "Menu", name: "Home",
components: { components: {
cuAmap, cuAmap,
Treeselect,
IconSelect,
crudOperation,
rrOperation,
udOperation,
DateRangePicker,
},
cruds() {
return CRUD({
title: "菜单",
url: "api/menus",
crudMethod: { ...crudHome },
});
}, },
mixins: [presenter(), header(), form(defaultForm), crud()],
data() { data() {
return { return {
baseAPI: baseAPI, baseAPI: baseAPI,
...@@ -192,6 +153,7 @@ export default { ...@@ -192,6 +153,7 @@ export default {
fileList: [], fileList: [],
cmap: null, cmap: null,
Dict: { selectList: [] }, Dict: { selectList: [] },
companyLevelList: [],
formInline: { formInline: {
address: "", address: "",
contactPerson: "", contactPerson: "",
...@@ -206,17 +168,6 @@ export default { ...@@ -206,17 +168,6 @@ export default {
operatingAgency: "", operatingAgency: "",
totalArea: "", totalArea: "",
}, },
menus: [],
permission: {
add: ["admin", "menu:add"],
edit: ["admin", "menu:edit"],
del: ["admin", "menu:del"],
},
rules: {
title: [{ required: true, message: "请输入标题", trigger: "blur" }],
path: [{ required: true, message: "请输入地址", trigger: "blur" }],
},
}; };
}, },
computed: { computed: {
...@@ -226,10 +177,6 @@ export default { ...@@ -226,10 +177,6 @@ export default {
}, },
mounted() { mounted() {
// this.getData(); // this.getData();
dic.getCompanyDicts().then((res) => {
console.log(res);
this.companyLevelList = res.body.incubatorLevel || [];
});
}, },
methods: { methods: {
handleSuccess(response, file) { handleSuccess(response, file) {
...@@ -291,30 +238,17 @@ export default { ...@@ -291,30 +238,17 @@ export default {
title: "", title: "",
draggable: true, draggable: true,
dragend: function (e) { dragend: function (e) {
// var lnglat = e.lnglat; VUE.getAddrPlus(e, cmap);
// cmap.deGeocode([lnglat.lng, lnglat.lat], function (addr) {
// form.address = addr;
// form.longitude = lnglat.lng;
// form.latitude = lnglat.lat;
// self.$forceUpdate();
// });
VUE.getAddrPlus(e, cmap)
}, },
}); });
} }
VUE.getData(function () {}); VUE.getData();
}, },
click: function (e, cmap) { click: function (e, cmap) {
// 经纬度坐标 // 经纬度坐标
VUE.getAddrPlus(e, cmap); VUE.getAddrPlus(e, cmap);
// var lnglat = e.lnglat;
// cmap.deGeocode([lnglat.lng, lnglat.lat], function (addr) {
// form.address = addr;
// form.longitude = lnglat.lng;
// form.latitude = lnglat.lat;
// });
cmap.marker && cmap.removeMarker(); cmap.marker && cmap.removeMarker();
// 添加标记 // 添加标记
...@@ -323,12 +257,6 @@ export default { ...@@ -323,12 +257,6 @@ export default {
title: "", title: "",
draggable: true, draggable: true,
dragend: function (e) { dragend: function (e) {
// var lnglat = e.lnglat;
// cmap.deGeocode([lnglat.lng, lnglat.lat], function (addr) {
// form.address = addr;
// form.longitude = lnglat.lng;
// form.latitude = lnglat.lat;
// });
VUE.getAddrPlus(e, cmap, form); VUE.getAddrPlus(e, cmap, form);
}, },
}); });
...@@ -349,7 +277,7 @@ export default { ...@@ -349,7 +277,7 @@ export default {
}); });
console.log(); console.log();
// 根据经纬度进行逆地理编码查询 // 根据经纬度进行逆地理编码查询
geocoder.getAddress([longitude, latitude], (status, result) => { geocoder.getAddress([longitude, latitude], (status, result) => {
if (status === "complete" && result.info === "OK") { if (status === "complete" && result.info === "OK") {
if (result.regeocode && result.regeocode.formattedAddress) { if (result.regeocode && result.regeocode.formattedAddress) {
let address = result.regeocode.formattedAddress; let address = result.regeocode.formattedAddress;
...@@ -372,27 +300,30 @@ export default { ...@@ -372,27 +300,30 @@ export default {
crudHome.edit(this.formInline).then((res) => { crudHome.edit(this.formInline).then((res) => {
if (res && res.code === 200) { if (res && res.code === 200) {
this.$message.success("保存成功"); // res.msg this.$message.success("保存成功"); // res.msg
this.getData() this.getData();
} }
}); });
}, },
getData(fn) { getData() {
crudHome.getData().then((res) => { crudHome.getData().then((res) => {
this.formInline = res.body; dic.getCompanyDicts().then((res1) => {
this.formInline.incubatorImage = res.body.incubatorImage; this.companyLevelList = res1.body.incubatorLevel || [];
const lat = this.formInline.latitude;
const lng = this.formInline.longitude; this.formInline = res.body;
// this.$refs.amap.init(amapOptions()); this.formInline.incubatorImage = res.body.incubatorImage;
const center = [lng, lat]; const lat = this.formInline.latitude;
// setTimeout(() => { const lng = this.formInline.longitude;
// 定位中心地址 // this.$refs.amap.init(amapOptions());
this.$refs.amap.setCenter(center); const center = [lng, lat];
console.log("map", this.cmap); // setTimeout(() => {
// 定位marker设置 // 定位中心地址
this.cmap.marker.setPosition(new AMap.LngLat(lng, lat)); this.$refs.amap.setCenter(center);
// }, 3000); console.log("map", this.cmap);
console.log(); // 定位marker设置
fn && fn(); this.cmap.marker.setPosition(new AMap.LngLat(lng, lat));
// }, 3000);
console.log();
});
}); });
}, },
// 选中图标 // 选中图标
......
<template> <template>
<div class="app-container">
<div class="header">
<ul>
<li @click="changeNav(0)" :class="{ active: activeIndex === 0 }">
<div class="title">孵化器概况</div>
</li>
<li @click="changeNav(1)" :class="{ active: activeIndex === 1 }">
<div class="title">在孵企业</div>
</li>
<li @click="changeNav(2)" :class="{ active: activeIndex === 2 }">
<div class="title">毕业企业</div>
</li>
<li @click="changeNav(3)" :class="{ active: activeIndex === 3 }">
<div class="title">中介机构</div>
</li>
<li @click="changeNav(4)" :class="{ active: activeIndex === 4 }">
<div class="title">创业导师</div>
</li>
</ul>
</div>
<div class="bodyer"> </template>
<ul class="panelsWrapper">
<li class="overview tab_panel_0" v-if="activeIndex === 40"> <script>
<h2>{{ data4panel0.incubatorName }}</h2> export default {
<div class="contentWrapper">
<div class="left"> }
<div class="item"> </script>
<div class="_title prefixDiv">
<span class="_left">总收入</span> <style>
<span class="_right" @click="getMore4panel0">查看更多>></span>
</div> </style>
<div class="body"> \ No newline at end of file
<div class="_left">
<ul>
<li>孵化器总收入:{{ data4panel0.totalRevenue }}万元</li>
<li>
综合服务收入:{{ data4panel0.serviceRevenue }}万元
</li>
<li>物业费收入:{{ data4panel0.propertyRevenue }}万元</li>
<li>房租费收入:{{ data4panel0.rentRevenue }}万元</li>
<li>投资收入:{{ data4panel0.investmentRevenue }}万元</li>
<li>政策性收入:{{ data4panel0.policyRevenue }}万元</li>
<li>其他:{{ data4panel0.otherRevenue }}万元</li>
</ul>
</div>
<div class="_right">
<div
ref="pieChart4panel0_1"
style="width: 300px; height: 300px"
class="charts pie"
></div>
</div>
</div>
</div>
<div class="item">
<div class="_title prefixDiv">
<span class="_left">使用面积</span>
</div>
<div class="body">
<div class="_left">
<ul>
<li>孵化器使用总面积:{{ data4panel0.totalArea }}</li>
<li>
用于企业孵化的面积:{{ data4panel0.incubationArea }}
</li>
<li>剩余孵化面积:{{ data4panel0.remainingArea }}</li>
</ul>
</div>
<div class="_right">
<div
ref="pieChart4panel0_2"
style="width: 300px; height: 300px"
class="charts pie"
></div>
</div>
</div>
</div>
</div>
<div class="right">
<div class="item">
<div class="_title prefixDiv">
<span class="_left">简介</span>
</div>
<div class="body">
<div class="_top">
<ul>
<li>运营机构:{{ data4panel0.operatingAgency }}</li>
<li>联 系人:{{ data4panel0.contactPerson }}</li>
<li>联系电话:{{ data4panel0.contactPhone }}</li>
<li>{{}}</li>
</ul>
</div>
<div class="_bottom">
<img
:src="`${baseAPI}file/${data4panel0.incubatorImage}`"
alt=""
/>
</div>
</div>
</div>
</div>
</div>
</li>
<li class="tab_panel_1" v-if="activeIndex === 10">
<div class="_left">
<div class="_title">
<span>在孵企业</span>
<span>280家</span>
</div>
<div class="_list">
<el-input
placeholder="请输入内容"
prefix-icon="el-icon-search"
v-model="searchText"
style="100%"
></el-input>
<ul>
<li v-for="item1 in 10" :key="item1">
威海众智惠新信息科技有限公司
</li>
</ul>
<el-pagination
@current-change="handleCurrentChange4panel1"
@size-change="handleSizeChange4panel1"
:current-page="currentPage4panel1"
:page-size="pageSize4panel1"
:total="totalItems4panel1"
:page-sizes="[10, 20, 30, 40]"
layout="prev, pager, next, sizes"
/>
</div>
</div>
<div class="_right">
<h2>威海众智惠新信息科技有限公司</h2>
<div class="divider"></div>
<div class="_title prefixDiv">
<div class="_left">企业基础信息</div>
<div class="_right">查看企业简介>></div>
</div>
<div class="_body">
<ul>
<li v-for="item in 10" class="prefixPoint">
入驻时间: 2021-10-10
</li>
</ul>
</div>
<div class="_title prefixDiv">
<div class="_left">知识产权</div>
</div>
<div class="_body">
<ul>
<li v-for="item in 10" class="prefixPoint">
入驻时间: 2021-10-10
</li>
</ul>
</div>
<div class="_title prefixDiv">
<div class="_left">创业创新企业情况</div>
</div>
<div class="_body">
<ul>
<li v-for="item in 10" class="prefixPoint">
入驻时间: 2021-10-10
</li>
</ul>
</div>
<div class="_title prefixDiv">
<div class="_left">今年企业经营信息</div>
<div class="_right">查看更多>></div>
</div>
<div class="_body">
<ul>
<li v-for="item in 10" class="prefixPoint">
入驻时间: 2021-10-10
</li>
</ul>
</div>
<!-- -->
<div class="_title prefixDiv">
<div class="_left">企业产品</div>
<div class="_right">查看更多>></div>
</div>
<div class="_body">
<dl>
<dd v-for="item in 10">
<img src="" alt="" />
<h3>环境监测设备</h3>
<p>
内置NB-IoT物联网SIM卡,把数据传
输到晶合云平台或客户私有云平台, 实现数据
</p>
</dd>
</dl>
</div>
</div>
</li>
<li class="tab_panel_4" v-if="activeIndex === 0">
<div class="_title">
<span>创业导师</span>
<el-input
placeholder="请输入姓名搜索"
prefix-icon="el-icon-search"
v-model="searchQuery4panel4"
style="width: 300px;"
></el-input>
</div>
<ul>
<li v-for="item in tableData4panel4" :key="item.id">
<img
:src="`${baseAPI}file/${item.photo}`"
alt=""
/>
<p>姓名:{{ item.mentorName }}</p>
<p>学历:{{ item.education }}</p>
<p>毕业学校:{{ item.graduationSchool }}</p>
<p>联系电话:{{ item.contactPhone }}</p>
<a @click="getMore4panel4(item)">查看简介&gt;</a>
</li>
</ul>
<el-pagination
style="text-align: center; margin-top: 20px;"
@current-change="handleCurrentChange4panel4"
@size-change="handleSizeChange4panel4"
:current-page="currentPage4panel4"
:page-size="pageSize4panel4"
:total="totalCount4panel4"
:page-sizes="[10, 20, 30, 40]"
layout="prev, pager, next, sizes"
></el-pagination>
</li>
</ul>
</div>
<el-dialog
title="孵化器年度收入信息"
:visible.sync="dialogVisible4panel0"
width="1100px"
>
<el-input
placeholder="请输入年度搜索"
prefix-icon="el-icon-search"
v-model="searchQuery4panel0"
style="width: 300px;margin-bottom: 10px;"
@blur="filterData4panel0"
></el-input>
<el-table :data="tableData4panel0" style="width: 100%">
<el-table-column
prop="year"
label="年度"
width="50"
></el-table-column>
<el-table-column
prop="totalRevenue"
label="孵化器总收入(万元)"
></el-table-column>
<el-table-column
prop="serviceRevenue"
label="综合服务收入(万元)"
></el-table-column>
<el-table-column
prop="rentRevenue"
label="房租收入(万元)"
></el-table-column>
<el-table-column
prop="propertyRevenue"
label="物业收入(万元)"
></el-table-column>
<el-table-column
prop="investmentRevenue"
label="投资收入(万元)"
></el-table-column>
<el-table-column
prop="policyRevenue"
label="政策性收入(万元)"
></el-table-column>
<el-table-column
prop="otherRevenue"
label="其他收入(万元)"
></el-table-column>
</el-table>
<el-pagination
@current-change="handleCurrentChange4panel0"
@size-change="handleSizeChange4panel0"
:current-page="currentPage4panel0"
:page-size="pageSize4panel0"
:total="totalCount4panel0"
:page-sizes="[10, 20, 30, 40]"
layout="prev, pager, next, sizes"
></el-pagination>
</el-dialog>
<el-dialog
title="简介信息"
:visible.sync="dialogVisible4panel4"
>
<div v-html="introduction4panel4"></div>
</el-dialog>
</div>
</template>
<script>
var baseAPI =
process.env.NODE_ENV === "development"
? process.env.VUE_APP_LOCAL_API + "/"
: (VUE_APP_API.ServiceURL || process.env.VUE_APP_LOCAL_API) + "/";
import overviewApi from "@/api/system/overview.js";
import * as echarts from "echarts";
export default {
name: "Overview",
components: {},
data() {
return {
// 公共用
baseAPI: baseAPI,
incubatorId: "",
// 顶部切换菜单
activeIndex: 0,
// panel0 孵化器概况
data4panel0: {},
totalCount4panel0: 0, // 总条目数
currentPage4panel0: 0, // 当前页码
pageSize4panel0: 10, // 每页显示的条目数量
dialogVisible4panel0: false,
searchQuery4panel0: '',
tableData4panel0: [],
// panel4 创业导师
totalCount4panel4: 0, // 总条目数
currentPage4panel4: 0, // 当前页码
pageSize4panel4: 10, // 每页显示的条目数量
dialogVisible4panel4: false,
searchQuery4panel4: '',
tableData4panel4: [],
introduction4panel4: '',
};
},
computed: {},
mounted() {
this.incubatorId = this.$route.query.id;
// this.getData4panel0();
this.getData4panel4();
},
methods: {
changeNav(index) {
this.activeIndex = ~~index;
},
/**
* panel0
*/
filterData4panel0() {
this.currentPage4panel0 = 1; // 重置当前分页
this.getDialogData4panel0();
},
getMore4panel0(){
this.dialogVisible4panel0 = true
this.getDialogData4panel0()
},
handleCurrentChange4panel0(newPage) {
// 切换分页
this.currentPage4panel0 = newPage;
// 这里可以添加代码来加载新页的数据
this.getDialogData4panel0()
},
handleSizeChange4panel0(newSize){
this.pageSize4panel0 = newSize;
this.getDialogData4panel0()
},
initChart4panel0_1() {
const chartDom = this.$refs.pieChart4panel0_1;
const myChart = echarts.init(chartDom);
const option = {
tooltip: {
trigger: "item",
},
series: [
{
name: "孵化器总收入",
type: "pie",
radius: "50%",
data: this.data4panel0.revenueChartData || [],
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: "rgba(0, 0, 0, 0.5)",
},
},
},
],
};
myChart.setOption(option);
},
initChart4panel0_2() {
const chartDom = this.$refs.pieChart4panel0_2;
const myChart = echarts.init(chartDom);
const option = {
tooltip: {
trigger: "item",
},
series: [
{
name: "孵化器使用总面积",
type: "pie",
radius: "50%",
data: this.data4panel0.areaChartData || [],
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: "rgba(0, 0, 0, 0.5)",
},
},
},
],
};
myChart.setOption(option);
},
getDialogData4panel0(fn) { // 获取panel0弹窗列表信息
overviewApi
.getDialogData4panel0({
page: this.currentPage4panel0 > 0 ? this.currentPage4panel0-1 : this.currentPage4panel0,
size: this.pageSize4panel0,
incubatorId: this.incubatorId,
year: this.searchQuery4panel0
})
.then((res) => {
this.tableData4panel0 = res.body.list || [];
this.totalCount4panel0 = res.body.total
});
},
getData4panel0(fn) { // 获取panel0页面统计信息
overviewApi
.getData4panel0({
incubatorId: this.incubatorId,
})
.then((res) => {
this.data4panel0 = res.body;
this.initChart4panel0_1();
});
},
/**
* panel4
* @param {*} fn
*/
filterData4panel4() {
this.currentPage4panel4 = 1; // 重置当前分页
this.getData4panel4();
},
getMore4panel4(item){
this.dialogVisible4panel4 = true
this.introduction4panel4 = item.introduction
},
handleCurrentChange4panel4(newPage) {
// 切换分页
this.currentPage4panel4 = newPage;
this.getData4panel4()
},
handleSizeChange4panel4(newSize){
this.pageSize4panel4 = newSize;
this.getData4panel4()
},
getData4panel4(fn) { // 获取panel4导师信息
overviewApi
.getData4panel4({
page: this.currentPage4panel4 > 0 ? this.currentPage4panel4-1 : this.currentPage4panel4,
size: this.pageSize4panel4,
incubatorId: this.incubatorId,
mentorName: this.searchQuery4panel4
})
.then((res) => {
this.tableData4panel4 = res.body.list || [];
this.totalCount4panel4 = res.body.total
});
},
},
};
</script>
<style rel="stylesheet/scss" lang="scss" scoped>
.app-container {
padding: 20px;
background-color: #fff;
font-family: Microsoft YaHei;
}
.page-footer {
display: none !important;
}
.header {
// 菜单标题头
background: #f5f7fa;
ul {
display: flex;
justify-content: start;
border: 1px solid #d8dce5;
background-color: #fff;
li {
width: 238px;
height: 48px;
display: flex;
align-items: center;
list-style: none;
justify-content: center;
cursor: pointer;
&:active,
&.active {
background: #1890ff;
.title {
color: #ffffff;
}
}
.title {
font-size: 16px;
color: #303133;
font-weight: bold;
}
}
}
}
.bodyer {
// panels最外层容器
background-color: #fff;
}
.panelsWrapper {
// panels父容器
background: #f5f6fb;
display: flex;
flex-wrap: wrap;
& > li {
width: 100%;
height: 442px;
background: #ffffff;
position: relative;
}
}
/**公共类 */
.divider {
width: 100%;
height: 1px;
border: 1px dashed #dddee1;
}
.prefixDiv {
position: relative;
&:before {
width: 4px;
height: 16px;
background: #1890ff;
position: absolute;
top: 50%; /* 垂直居中 */
transform: translateY(-50%); /* 精确居中 */
left: 16px;
content: "";
}
}
.prefixPoint {
position: relative;
&:before {
content: "";
width: 6px;
height: 6px;
background: #1890ff;
border-radius: 50%;
position: absolute;
left: 5px;
top: 50%; /* 垂直居中 */
transform: translateY(-50%); /* 精确居中 */
}
}
/** 第五个面板 */
.tab_panel_4 {
._title {
font-size: 16px;
color: #1890ff;
width: 100%;
height: 50px;
background: #e4f2ff;
display: flex;
justify-content: space-between;
align-items: center;
position: relative;
padding-left: 26px;
&:before {
width: 4px;
height: 16px;
background: #1890ff;
position: absolute;
// top: 19px;
top: 50%; /* 垂直居中 */
transform: translateY(-50%); /* 精确居中 */
left: 16px;
content: "";
}
}
ul {
display: flex;
flex-wrap: wrap;
margin-left: 60px;
// margin-top: 20px;
& > li {
position: relative;
width: 260px;
height: 334px;
background: #fff;
border: 1px solid #dddee1;
text-align: center;
padding: 10px;
margin-left: 10px;
margin-right: 40px;
margin-top: 20px;
img {
width: 200px;
height: 200px;
margin: 0 auto;
}
a {
position: absolute;
right: 6px;
bottom: 96px;
font-size: 15px;
color: #1890ff;
}
p {
font-size: 15px;
color: #606266;
padding-left: 18px;
text-align: left;
position: relative;
padding-top: 3px;
padding-bottom: 3px;
&:before {
content: "";
width: 6px;
height: 6px;
background: #1890ff;
border-radius: 50%;
position: absolute;
left: 5px;
top: 50%; /* 垂直居中 */
transform: translateY(-50%); /* 精确居中 */
}
}
}
}
}
.tab_panel_1 {
display: flex;
padding: 10px;
& > ._left {
flex: 1;
margin-right: 20px;
height: 798px !important;
border: 1px solid #dddee1;
padding: 20px;
._title {
display: flex;
width: 100%;
justify-content: space-between;
margin-top: 10px;
margin-bottom: 20px;
span {
&:first-child {
font-size: 19px;
color: #303133;
}
&:last-child {
font-size: 19px;
color: #42b983;
}
}
}
li {
font-size: 15px;
color: #666666;
width: 100%;
height: 38px;
line-height: 38px;
text-align: left;
padding-left: 10px;
cursor: pointer;
&.active,
&:hover {
background: #1890ff;
color: #fff;
}
}
}
& > ._right {
flex: 4;
h2 {
font-weight: 400;
font-size: 27px;
color: #42b983;
text-align: center;
margin-top: 20px;
margin-block: 20px;
}
._title {
width: 100%;
height: 36px;
background: #e4f2ff;
font-size: 16px;
color: #1890ff;
margin-top: 10px;
margin-bottom: 6px;
._left {
float: left;
margin-left: 30px;
margin-top: 6px;
}
._right {
float: right;
margin-right: 30px;
margin-top: 6px;
}
}
ul {
display: flex;
flex-wrap: wrap;
padding-left: 20px;
li {
width: 290px;
font-size: 15px;
color: #606266;
padding: 10px;
padding-left: 20px;
}
}
dl {
display: flex;
flex-wrap: wrap;
padding-left: 20px;
dd {
width: 250px;
height: 274px;
font-size: 15px;
color: #606266;
/* padding: 10px; */
margin-left: 20px;
margin-right: 20px;
border: 1px solid #dddee1;
margin-top: 10px;
img {
width: 250px;
height: 150px;
}
h3 {
font-size: 15px;
color: #606266;
padding-left: 15px;
}
p {
font-size: 13px;
color: #969aa3;
padding-left: 15px;
line-height: 20px;
}
}
}
}
}
.tab_panel_0 {
h2 {
font-weight: 400;
font-size: 27px;
color: #42b983;
text-align: center;
padding-top: 16px;
padding-bottom: 16px;
}
._title {
color: #1890ff;
height: 48px;
background: #e4f2ff;
font-weight: 400;
font-size: 16px;
line-height: 48px;
margin-bottom: 20px;
display: flex;
justify-content: space-between;
padding-left: 26px;
padding-right: 20px;
&>._right{
cursor: pointer;
}
}
.contentWrapper {
border-top: 1px dashed #dddee1;
display: flex;
padding: 16px;
& > div {
flex: 1;
}
.left {
border-right: 1px dashed #dddee1;
padding-left: 20px;
padding-right: 20px;
.body {
display: flex;
._left,
._right {
flex: 1;
}
}
li {
font-size: 15px;
color: #606266;
line-height: 26px;
padding: 4px 42px;
}
}
.right {
padding-left: 20px;
padding-right: 20px;
.body {
display: flex;
flex-direction: column;
}
._top {
li {
font-size: 15px;
color: #606266;
line-height: 26px;
padding: 4px 42px;
}
}
._bottom {
padding-left: 40px;
img {
width: 418px;
height: 272px;
}
}
}
}
}
::v-deep .el-dialog__body .el-table th.el-table__cell{
background-color: #f9ffec;
}
</style>
\ No newline at end of file
...@@ -6,8 +6,8 @@ ...@@ -6,8 +6,8 @@
<div class="title" style="padding-bottom: 8px;">孵化器</div> <div class="title" style="padding-bottom: 8px;">孵化器</div>
<div class="content" style="font-size: 16px;margin-bottom: 4px;">{{data.incubatorAllCount}}</div> <div class="content" style="font-size: 16px;margin-bottom: 4px;">{{data.incubatorAllCount}}</div>
<div style="color: gray; font-size: 14px;"> <div style="color: gray; font-size: 14px;">
<span>国家级: {{data.incubatorAllCount}}</span> <span>国家级: {{data.provinceCount}}</span>
<span>省级: {{data.incubatorAllCount}}</span> <span>省级: {{data.countryCount}}</span>
</div> </div>
</li> </li>
<li> <li>
......
...@@ -78,7 +78,7 @@ ...@@ -78,7 +78,7 @@
align="right" align="right"
> >
<template slot="header"> <template slot="header">
<div style="display:inline-block;float: right;cursor: pointer" @click="init">创建日期<i class="el-icon-refresh" style="margin-left: 40px" /></div> <div style="display:inline-block;float: right;cursor: pointer" @click="init">创建日期<i class="el-icon-refresh" style="margin-left: 26px" /></div>
</template> </template>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.createTime }}</span> <span>{{ scope.row.createTime }}</span>
......
...@@ -126,7 +126,7 @@ ...@@ -126,7 +126,7 @@
<el-option <el-option
v-for="item in roles" v-for="item in roles"
:key="item.name" :key="item.name"
:disabled="level !== 1 && item.level <= level" :disabled="item.level < level"
:label="item.name" :label="item.name"
:value="item.id" :value="item.id"
/> />
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment