|
@@ -1,5 +1,22 @@
|
|
|
<template>
|
|
|
<div class="center_content">
|
|
|
+ <!-- <div
|
|
|
+ style="
|
|
|
+ display: flex;
|
|
|
+ flex-direction: row;
|
|
|
+ flex-wrap: nowrap;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+ "
|
|
|
+ >
|
|
|
+ <div></div>
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ style="background: rgb(112, 135, 228); width: 100px; margin-right: 3%"
|
|
|
+ @click="goTo('/addRace')"
|
|
|
+ >案例设计</el-button
|
|
|
+ >
|
|
|
+ </div> -->
|
|
|
<div class="myAnliBox" v-if="anliBox.length > 0">
|
|
|
<div class="anLi" v-for="(an, anIndex) in anliBox" :key="anIndex">
|
|
|
<div class="anliTop">
|
|
@@ -13,11 +30,14 @@
|
|
|
<div class="anliMiddle">
|
|
|
<div class="anliBox">
|
|
|
<div class="anliImg">
|
|
|
- <img :src="
|
|
|
- JSON.parse(an.info).cover && JSON.parse(an.info).cover.length
|
|
|
- ? JSON.parse(an.info).cover[0].url
|
|
|
- : noBanner
|
|
|
- " alt="" />
|
|
|
+ <img
|
|
|
+ :src="
|
|
|
+ JSON.parse(an.info).cover && JSON.parse(an.info).cover.length
|
|
|
+ ? JSON.parse(an.info).cover[0].url
|
|
|
+ : noBanner
|
|
|
+ "
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
</div>
|
|
|
<div class="anliNav">
|
|
|
<div>项目名称:{{ JSON.parse(an.info).title }}</div>
|
|
@@ -31,18 +51,34 @@
|
|
|
<img src="../../../../assets/people.png" alt />
|
|
|
</div>
|
|
|
<div class="person">
|
|
|
- {{ an.info ? JSON.parse(an.info).tableData.length : 0 }}人
|
|
|
+ {{
|
|
|
+ an.info
|
|
|
+ ? JSON.parse(an.info).autor.length +
|
|
|
+ JSON.parse(an.info).tableData.length
|
|
|
+ : 0
|
|
|
+ }}人
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="autorBox" v-if="JSON.parse(an.info).autor.length">
|
|
|
<div>联系人:</div>
|
|
|
- <div class="Autor" v-for="(a, aIndex) in JSON.parse(an.info).autor" :key="aIndex">
|
|
|
+ <div
|
|
|
+ class="Autor"
|
|
|
+ v-for="(a, aIndex) in JSON.parse(an.info).autor"
|
|
|
+ :key="aIndex"
|
|
|
+ >
|
|
|
{{ a.sn }}
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="autorBox" v-if="JSON.parse(an.info).tableData.length">
|
|
|
+ <div
|
|
|
+ class="autorBox"
|
|
|
+ v-if="JSON.parse(an.info).tableData.length"
|
|
|
+ >
|
|
|
<div>协作者:</div>
|
|
|
- <div class="Autor" v-for="(a, aIndex) in JSON.parse(an.info).tableData" :key="aIndex">
|
|
|
+ <div
|
|
|
+ class="Autor"
|
|
|
+ v-for="(a, aIndex) in JSON.parse(an.info).tableData"
|
|
|
+ :key="aIndex"
|
|
|
+ >
|
|
|
{{ a.sn }}
|
|
|
</div>
|
|
|
</div>
|
|
@@ -65,7 +101,11 @@
|
|
|
编辑
|
|
|
</div>
|
|
|
<div class="rightButton" @click="deleteAnli(an.id)">删除</div>
|
|
|
- <div class="rightButton" style="background: #225ac7" @click="lookDetail(an.id)">
|
|
|
+ <div
|
|
|
+ class="rightButton"
|
|
|
+ style="background: #225ac7"
|
|
|
+ @click="lookDetail(an.id)"
|
|
|
+ >
|
|
|
查看详情
|
|
|
</div>
|
|
|
</div>
|
|
@@ -127,7 +167,7 @@ export default {
|
|
|
console.error(err);
|
|
|
});
|
|
|
})
|
|
|
- .catch(() => { });
|
|
|
+ .catch(() => {});
|
|
|
},
|
|
|
deleteAnli(id) {
|
|
|
this.$confirm("确定删除此案例吗?", "提示", {
|
|
@@ -152,7 +192,7 @@ export default {
|
|
|
console.error(err);
|
|
|
});
|
|
|
})
|
|
|
- .catch(() => { });
|
|
|
+ .catch(() => {});
|
|
|
},
|
|
|
exportAnli(res) {
|
|
|
console.log(res);
|
|
@@ -192,7 +232,9 @@ export default {
|
|
|
var _div = document.createElement("div");
|
|
|
for (var i = 0; i < overview[oArray[k].j].data.length; i++) {
|
|
|
var _div2 = document.createElement("div");
|
|
|
- _div2.innerHTML = ` <a href="JavaScript:void(0)" onclick="downloadFile2('${overview[oArray[k].j].data[i].url}')">${overview[oArray[k].j].data[i].name}</a>`;
|
|
|
+ _div2.innerHTML = ` <a href="JavaScript:void(0)" onclick="downloadFile2('${
|
|
|
+ overview[oArray[k].j].data[i].url
|
|
|
+ }')">${overview[oArray[k].j].data[i].name}</a>`;
|
|
|
_div.appendChild(_div2);
|
|
|
}
|
|
|
_overview += `<div>${_div.innerHTML}</div>`;
|
|
@@ -221,8 +263,9 @@ export default {
|
|
|
var _div = document.createElement("div");
|
|
|
for (var c = 0; c < _act[z][pAarray[i].j].data.length; c++) {
|
|
|
var _div2 = document.createElement("div");
|
|
|
- _div2.innerHTML = ` <a href="JavaScript:void(0)" onclick="downloadFile2('${_act[z][pAarray[i].j].data[c].url}')">${_act[z][pAarray[i].j].data[c].name
|
|
|
- }</a>`;
|
|
|
+ _div2.innerHTML = ` <a href="JavaScript:void(0)" onclick="downloadFile2('${
|
|
|
+ _act[z][pAarray[i].j].data[c].url
|
|
|
+ }')">${_act[z][pAarray[i].j].data[c].name}</a>`;
|
|
|
_div.appendChild(_div2);
|
|
|
}
|
|
|
_process += `<div>${_div.innerHTML}</div>`;
|
|
@@ -284,9 +327,10 @@ export default {
|
|
|
// 将html文件中需要用到的数据挂载到store上
|
|
|
this.$store.commit("update", ["report", a]);
|
|
|
console.log(this.$store.state.report);
|
|
|
- const content = "<!DOCTYPE html>\n <html lang=\"en\">\n <head>\n <meta charset=\"UTF-8\">\n <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>报告</title>\n </head> \n <body>"+
|
|
|
- this.$store.state.report+
|
|
|
- '</body>\n \x3Cscript>\n function downloadFile2(url) {\n let _url = "";\n _url = url;\n const x = new XMLHttpRequest();\n x.open("GET", _url, true);\n x.responseType = "blob";\n x.onload = function (e) {\n let content = x.response;\n let elink = document.createElement("a");\n elink.download = decodeURI(\n _url.split("https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/")[1]\n );\n elink.style.display = "none";\n let blob = new Blob([content]);\n elink.href = URL.createObjectURL(blob);\n document.body.appendChild(elink);\n elink.click();\n document.body.removeChild(elink);\n };\n x.send();\n }\n \x3C/script>\n </html>';
|
|
|
+ const content =
|
|
|
+ '<!DOCTYPE html>\n <html lang="en">\n <head>\n <meta charset="UTF-8">\n <meta http-equiv="X-UA-Compatible" content="IE=edge">\n <meta name="viewport" content="width=device-width, initial-scale=1.0">\n <title>报告</title>\n </head> \n <body>' +
|
|
|
+ this.$store.state.report +
|
|
|
+ '</body>\n \x3Cscript>\n function downloadFile2(url) {\n let _url = "";\n _url = url;\n const x = new XMLHttpRequest();\n x.open("GET", _url, true);\n x.responseType = "blob";\n x.onload = function (e) {\n let content = x.response;\n let elink = document.createElement("a");\n elink.download = decodeURI(\n _url.split("https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/")[1]\n );\n elink.style.display = "none";\n let blob = new Blob([content]);\n elink.href = URL.createObjectURL(blob);\n document.body.appendChild(elink);\n elink.click();\n document.body.removeChild(elink);\n };\n x.send();\n }\n \x3C/script>\n </html>';
|
|
|
// debugger
|
|
|
// 生成报告
|
|
|
const link = document.createElement("a");
|
|
@@ -368,7 +412,7 @@ export default {
|
|
|
padding: 20px 0 10px 30px;
|
|
|
}
|
|
|
|
|
|
-.anliTopLeft>div:nth-child(2) {
|
|
|
+.anliTopLeft > div:nth-child(2) {
|
|
|
padding-left: 20px;
|
|
|
}
|
|
|
|
|
@@ -386,7 +430,7 @@ export default {
|
|
|
min-width: 200px;
|
|
|
}
|
|
|
|
|
|
-.anliImg>img {
|
|
|
+.anliImg > img {
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
object-fit: contain;
|
|
@@ -406,7 +450,7 @@ export default {
|
|
|
height: 16px;
|
|
|
}
|
|
|
|
|
|
-.man>img {
|
|
|
+.man > img {
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
}
|
|
@@ -423,12 +467,12 @@ export default {
|
|
|
width: 100%;
|
|
|
}
|
|
|
|
|
|
-.anliNav>div:nth-child(1) {
|
|
|
+.anliNav > div:nth-child(1) {
|
|
|
font-size: 20px;
|
|
|
/* font-weight: bold; */
|
|
|
}
|
|
|
|
|
|
-.anliNav>div:nth-child(2) {
|
|
|
+.anliNav > div:nth-child(2) {
|
|
|
/* font-weight: bold; */
|
|
|
margin: 10px 0 10px 0;
|
|
|
}
|
|
@@ -481,7 +525,7 @@ export default {
|
|
|
margin: 20px auto;
|
|
|
}
|
|
|
|
|
|
-.noAnliBox>img {
|
|
|
+.noAnliBox > img {
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
}
|