Commit 3d298940 by liudx

联调专利词云图

parent 78226d7f
No preview for this file type
......@@ -22,7 +22,7 @@ export default {
},
height: {
type: String,
default: "100%",
default: "130%",
},
dataArr:{
type:Array,
......
......@@ -71,7 +71,10 @@
></overview>
</a-tab-pane>
<a-tab-pane key="技术合作" tab="技术合作">
<cooperation :jointData="jointData" :patentPurchaseData="patentPurchaseData"></cooperation>
<cooperation
:jointData="jointData"
:patentPurchaseData="patentPurchaseData"
></cooperation>
</a-tab-pane>
<a-tab-pane key="科创能力评价" tab="科创能力评价">
<technology></technology>
......@@ -101,7 +104,7 @@
</a-form-item>
</a-form>
</a-modal>
<div style="width: 70%;visibility: hidden;overflow:hidden;height: 20px;">
<div style="width: 70%; visibility: hidden; overflow: hidden; height: 20px">
<EchartsCon
:id="'applyTrend1'"
:option="option1"
......@@ -209,7 +212,7 @@ export default {
baseinfo: {},
structureData: {},
jointData: {},
patentPurchaseData:{}
patentPurchaseData: {},
};
},
components: {
......@@ -287,11 +290,12 @@ export default {
//专利购买
patentPurchase({ id: id }).then((res) => {
if (res.code == 0) {
this.patentPurchaseData = res.data;
this.patentPurchaseData.max_name_purchase = this.patentPurchaseData.max_name;
this.patentPurchaseData.max_value_purchase = this.patentPurchaseData.max_value;
this.getOptions2()
this.patentPurchaseData.max_name_purchase =
this.patentPurchaseData.max_name;
this.patentPurchaseData.max_value_purchase =
this.patentPurchaseData.max_value;
this.getOptions2();
} else {
message.error(res.msg);
}
......@@ -671,7 +675,7 @@ export default {
};
},
//获取联合申请数据
getOptions1() {
getOptions1() {
let points = [
{
name: this.baseinfo.company_name,
......@@ -698,7 +702,7 @@ export default {
index % 2 == 1
? 300 * Math.ceil(index / 2)
: -300 * Math.ceil(index / 2),
y:80*(10-index)
y: 80 * (10 - index),
});
}
......@@ -772,8 +776,7 @@ export default {
},
splitLine: {
show: true,
lineStyle: {
},
lineStyle: {},
},
},
yAxis: {
......
......@@ -11,14 +11,14 @@
<div class="patent_title">{{ title }}</div>
</div>
<div class="btn_group">
<span @click="openModal"
<span style="cursor: pointer;" @click="openModal"
><img src="@/static/patent/icon-dc.png" alt="" />导出</span
>
<span v-if="follow"
<span style="cursor: pointer;" v-if="follow"
><img src="@/static/patent/icon-gz.png" alt="" />关注</span
>
<span v-else
<span style="cursor: pointer;" v-else
><img src="@/static/patent/icon-gz-select.png" alt="" />关注</span
>
</div>
......@@ -41,7 +41,12 @@
<!-- 技术领域 -->
<div class="patent_con1" id="techAera">
<h2 class="title">技术领域</h2>
<EchartsCloud :id="'tech'" :dataArr="techArr"></EchartsCloud>
<EchartsCloud
:id="'tech'"
:dataArr="techArr"
v-if="techArr.length > 0"
></EchartsCloud>
<a-empty v-else />
</div>
<!-- 应用领域 -->
<!-- <div class="patent_con1" id="appArea">
......@@ -230,7 +235,8 @@
mode="multiple"
placeholder="请选择"
style="width: 300px"
></a-select><a-button type="primary">搜索</a-button>
></a-select
><a-button type="primary">搜索</a-button>
<div class="result">
推荐
<span style="color: #4079ff; font-weight: bold">{{ count }}</span
......@@ -305,6 +311,7 @@ import PizZip from "pizzip";
import JSZipUtils from "jszip-utils";
import { saveAs } from "file-saver";
import ImageModule from "docxtemplater-image-module-free";
import { message } from "ant-design-vue";
function base64DataURLToArrayBuffer(dataURL) {
const base64Regex = /^data:image\/(png|jpg|svg|svg\+xml);base64,/;
if (!base64Regex.test(dataURL)) {
......@@ -347,52 +354,8 @@ export default {
{ label: "专精特新小巨人", value: "专精特新小巨人" },
{ label: "上市挂牌企业", value: "上市挂牌企业" },
],
techArr: [
{
name: "支架搬运车",
value: 30,
},
{
name: "人工智能领域",
value: 80,
},
{
name: "广泛应用",
value: 70,
},
{
name: "驾驶室",
value: 301,
},
],
list: [
{
name: "山西科达自控股份有限公司",
status: "存续(在营、开业、在册)",
type: "高新技术企业",
legalRepresentative: "郭晓明",
registrationTime: "2023-6-1",
money: "222941.42万人民币",
industry: "批发和零售业>批发业",
address: "北京市海淀区西二旗产业园百度大厦28号",
info: "一种基于人工智能的雷达视频数据融合方法",
range:
"提供智能化科技服务,智能仓储,装直径单桩人工智能单钩硬件销售;机械设备研发",
},
{
name: "山西科达自控股份有限公司",
status: "存续(在营、开业、在册)",
type: "高新技术企业",
legalRepresentative: "郭晓明",
registrationTime: "2023-6-1",
money: "222941.42万人民币",
industry: "批发和零售业>批发业",
address: "北京市海淀区西二旗产业园百度大厦28号",
info: "一种基于人工智能的雷达视频数据融合方法",
range:
"提供智能化科技服务,智能仓储,装直径单桩人工智能单钩硬件销售;机械设备研发",
},
],
techArr: [],
list: [],
};
},
components: {
......@@ -400,7 +363,7 @@ export default {
DownOutlined,
},
methods: {
handleAnchorClick(e,link){
handleAnchorClick(e, link) {
e.preventDefault();
},
openModal() {
......@@ -411,9 +374,18 @@ export default {
},
init(id) {
patentDetail({ id: id }).then((res) => {
console.log(res);
if (res.code == 0) {
this.details = res.data;
let word_cloud = res.data.word_cloud;
this.techArr = [];
for (let key in word_cloud) {
this.techArr.push({
name: key,
value: word_cloud[key],
});
}
}else{
message.error(res.msg)
}
});
},
......@@ -431,12 +403,12 @@ export default {
month = month > 9 ? month : "0" + month;
day = day < 10 ? "0" + day : day;
var today = year + "年" + month + "月" + day + "日";
var chartDom1 = document.getElementById("techAera");
var chartDom1 = document.getElementById("tech");
let myChart1 = null;
myChart1 = echarts.init(chartDom1);
// // 第一个echrts
//技术领域云图
myChart1.setOption({
series: [
{
......@@ -492,7 +464,7 @@ export default {
if (tagValue.size && tagValue.data) {
return tagValue.size;
}
return [630, 500];
return [600, 200];
};
// 创建一个JSZip实例,内容为模板的内容
const zip = new PizZip(content);
......@@ -536,6 +508,7 @@ export default {
// that.blobToBase64(out);
// 将目标文件对象保存为目标类型的文件,并命名
saveAs(out, `专利成果转移转化智能推荐报告.docx`);
this.visible = false
});
}, 1000);
},
......@@ -658,14 +631,14 @@ export default {
background: #ffffff;
border-radius: 8px 8px 8px 8px;
opacity: 1;
padding: 40px 30px;
padding: 30px 30px;
margin: 15px 0;
.title {
color: #1c1c28;
font-size: 18px;
font-family: Microsoft YaHei UI-Bold, Microsoft YaHei UI;
font-weight: bold;
margin-bottom: 0;
line-height: 28px;
}
.desc {
......
......@@ -3,8 +3,29 @@
<header>太原理工大学专利成果转化智能推荐系统</header>
<div class="center"></div>
<div class="bottom">
<div class="bottom_title">专利发展趋势图</div>
<EchartsCon :id="'patent_trend'" :options="option5"></EchartsCon>
<div class="bottom_echart">
<div class="bottom_title">
<span>专利发展趋势图</span>
<div class="bottom_title_btn">
<span>申请量</span><span>公布量</span><span>授权量</span>
<a-select
ref="select"
v-model:value="value1"
style="width: 120px"
@focus="focus"
@change="handleChange"
>
<a-select-option value="jack">Jack</a-select-option>
<a-select-option value="lucy">Lucy</a-select-option>
<a-select-option value="disabled" disabled
>Disabled</a-select-option
>
<a-select-option value="Yiminghe">yiminghe</a-select-option>
</a-select>
</div>
</div>
<EchartsCon :id="'patent_trend'" :options="option5"></EchartsCon>
</div>
</div>
</div>
</template>
......@@ -40,7 +61,7 @@ export default {
background-image: url("../../static/screen/bg-all.png");
background-size: 100%;
width: 100%;
height: 885px;
// height: 885px;
header {
background-image: url("../../static/screen/bg-top-logo.png");
height: 97px;
......@@ -54,15 +75,44 @@ export default {
line-height: 97px;
opacity: 0.89;
text-shadow: 0px 4px 1px rgba(19, 80, 143, 0.66);
.center {
height: 70%;
}
.bottom {
height: 30%;
}
.center {
height: 70%;
}
.bottom {
height: 275px;
display: flex;
.bottom_echart {
width: 50%;
.bottom_title {
background-image: url("../../static/screen/title-long.png");
background-size: 100%;
background: url("../../static/screen/title-long.png") no-repeat;
background-size: 100% 100%;
font-size: 20px;
height: 39px;
width: 100%;
font-family: "jiangcheng";
font-weight: normal;
font-style: italic;
color: #f6f9fe;
text-shadow: 0px 2px 8px rgba(5, 28, 55, 0.42);
padding-left: 30px;
padding-top: 6px;
.bottom_title_btn {
float: right;
font-size: 14px;
font-family: "jiangcheng";
font-weight: normal;
color: #bbcdef;
opacity: 0.8;
span {
padding: 5px 15px;
}
:deep(.ant-select:not(.ant-select-customize-input) .ant-select-selector){
background-color: #2D58B8;
color: #99B1DD;
}
}
}
}
}
......
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