文档服务地址:http://47.92.0.57:3000/ 周报索引地址:http://47.92.0.57:3000/s/NruNXRYmV

Commit 040c8f33 by wyy

template

parents 6a3a1aee 56c202af
......@@ -12,6 +12,7 @@
},
"dependencies": {
"axios": "^0.19.2",
"default-passive-events": "^2.0.0",
"element-ui": "^2.13.1",
"mathjs": "^7.0.2",
"node-sass": "^4.14.1",
......
......@@ -6,8 +6,13 @@
<p>发布时间:{{task.date|formatDate}}</p>
<el-divider></el-divider>
<pieces-table :task-id="task.id" showProgress>
<template v-slot:option='slotProps'>
<el-button type="primary" size="mini" plain @click='doOption(slotProps.file,slotProps.type)'>审核</el-button>
<template v-slot:option="slotProps">
<el-button
type="primary"
size="mini"
plain
@click="doOption(slotProps.file,slotProps.type)"
>审核</el-button>
</template>
</pieces-table>
</div>
......@@ -15,52 +20,55 @@
</template>
<script>
import PiecesTable from './PiecesTable'
import PiecesTable from "./PiecesTable";
export default {
name: 'check-detail',
name: "check-detail",
components: {
PiecesTable
},
data () {
data() {
return {
task: null,
isCheck: '1'
}
isCheck: "1"
};
},
beforeMount () {
this.task = JSON.parse(decodeURIComponent(this.$route.params.task))
beforeMount() {
this.task = JSON.parse(decodeURIComponent(this.$route.params.task));
},
methods: {
doOption (file, type) {
var params = {file: encodeURIComponent(JSON.stringify(file))}
var self = this
function goto (path) {
self.$router.push({ name: path, params })
doOption(file, type) {
var params = { file: encodeURIComponent(JSON.stringify(file)) };
var self = this;
function goto(path) {
self.$router.push({ name: path, params });
}
switch (type) {
case '文本':
goto('SelectedText')
break
case '图片':
goto('image')
break
case '图层':
goto('layer')
case "文本":
self.$router.push({ name: 'SelectedText', path: '/selected', params: {documentId: documentId} });
break;
case "表格":
self.$router.push({ name: 'Tabled', path: '/tabled', params: {documentId: documentId} });
break;
case "图片":
goto("image");
break;
case "图层":
goto("layer");
}
}
}
}
};
</script>
<style lang="scss" scoped>
@import '../assets/scss/config.scss';
@import '../assets/scss/mixin.scss';
.task-container{
@import "../assets/scss/config.scss";
@import "../assets/scss/mixin.scss";
.task-container {
@include container;
.task-panel{
.task-panel {
@include whiteBoard;
text-align: left;
padding: 30px 20px 30px 20px;
}
}
}
</style>
......@@ -6,8 +6,13 @@
<p>发布时间:{{task.date|formatDate}}</p>
<el-divider></el-divider>
<pieces-table :task-id="task.id" :userId="$store.state.userInfo.userId">
<template v-slot:option='slotProps'>
<el-button type="primary" size="mini" plain @click='doOption(slotProps.file,slotProps.type)'>详情</el-button>
<template v-slot:option="slotProps">
<el-button
type="primary"
size="mini"
plain
@click="doOption(slotProps.file,slotProps.type)"
>详情</el-button>
</template>
</pieces-table>
</div>
......@@ -15,42 +20,45 @@
</template>
<script>
import PiecesTable from './PiecesTable'
import PiecesTable from "./PiecesTable";
export default {
name: 'task',
name: "task",
components: {
PiecesTable
},
data () {
data() {
return {
task: null,
isCheck: '0'
}
isCheck: "0"
};
},
beforeMount () {
this.task = JSON.parse(decodeURIComponent(this.$route.params.task))
beforeMount() {
this.task = JSON.parse(decodeURIComponent(this.$route.params.task));
},
methods: {
doOption (file, type) {
var params = {file: encodeURIComponent(JSON.stringify(file))}
var self = this
function goto (path) {
self.$router.push({ name: path, params })
doOption(file, type) {
var params = { file: encodeURIComponent(JSON.stringify(file)) };
var self = this;
function goto(path) {
self.$router.push({ name: path, params });
}
switch (type) {
case '文本':
goto('SelectedText')
break
case '图片':
goto('image')
break
case '图层':
goto('layer')
case "文本":
self.$router.push({ name: 'SelectedText', path: '/selected', params: {documentId: documentId} });
break;
case "表格":
self.$router.push({ name: 'Tabled', path: '/tabled', params: {documentId: documentId} });
break;
case "图片":
goto("image");
break;
case "图层":
goto("layer");
}
}
}
}
};
</script>
<style lang="scss" scoped>
......
......@@ -6,8 +6,13 @@
<p>发布时间:{{task.date|formatDate}}</p>
<el-divider></el-divider>
<pieces-table :task-id="task.id" :userId="$store.state.userInfo.userId" showProgress>
<template v-slot:option='slotProps'>
<el-button type="primary" size="mini" plain @click='doOption(slotProps.file,slotProps.type)'>标注</el-button>
<template v-slot:option="slotProps">
<el-button
type="primary"
size="mini"
plain
@click="doOption(slotProps.file,slotProps.type)"
>标注</el-button>
</template>
</pieces-table>
</div>
......@@ -15,41 +20,44 @@
</template>
<script>
import PiecesTable from './PiecesTable'
import PiecesTable from "./PiecesTable";
export default {
name: 'on-going-task-detail',
name: "on-going-task-detail",
components: {
PiecesTable
},
data () {
data() {
return {
task: null
}
};
},
beforeMount () {
this.task = JSON.parse(decodeURIComponent(this.$route.params.task))
beforeMount() {
this.task = JSON.parse(decodeURIComponent(this.$route.params.task));
},
methods: {
doOption (file, type) {
var params = {file: encodeURIComponent(JSON.stringify(file))}
var self = this
function goto (path) {
self.$router.push({ name: path, params })
doOption(file, type) {
var params = { file: encodeURIComponent(JSON.stringify(file)) };
var self = this;
function goto(path) {
self.$router.push({ name: path, params });
}
switch (type) {
case '文本':
goto('SelectText')
break
case '图片':
goto('image')
break
case '图层':
goto('layer')
case "文本":
self.$router.push({ name: 'SelectText', path: '/select', params: {documentId: documentId} });
break;
case "表格":
self.$router.push({ name: 'Table', path: '/table', params: {documentId: documentId} });
break;
case "图片":
goto("image");
break;
case "图层":
goto("layer");
}
}
}
}
};
</script>
<style lang="scss" scoped>
......
......@@ -80,15 +80,31 @@ export default {
address: "那是我心中最美的“第三极”——第二次青藏科考青年说"
};
return {
// 文章id
documentId: '',
// 文章内容
content: [],
//实体属性
token: {
entityId: "",
word: "",
begin: 0,
end: 0,
attribute: "",
tokenId: ""
},
// 实体属性列表
tokenList: [],
// 文章列表
textData: [
{
label: "那是我心中最美的“第三极”",
label: this.documentId,
children: [
{
label: "那是我心中最美的“第三极”——第一次青藏科考青年说"
label: this.documentId
},
{
label: "那是我心中最美的“第三极”——第二次青藏科考青年说"
label: "暂无数据"
}
]
}
......@@ -97,24 +113,6 @@ export default {
children: "children",
label: "label"
},
msg: [
'那是我心中最美的“第三极”——第二次青藏科考青年说<br/> \
"<span class="highlights-text">2020-05-06</span><span class="mark">(实体:时间;属性:yyyy-MM-dd)</span>" 11:08 来源:新华网 编辑:矿材网<br/> \
“看到国家自主研发的‘极目一号’浮空器从纳木错科考站升起,她宛若白鲸,越升越高,融入了星海。古老的‘第三极’与前沿的科技,在星空中融为一体,那就是我心中最美的‘第三极’风情。”中国科学院空天信息创新研究院的屈维说。<br/> \
2019年5月23日,中国科学院空天信息创新研究院研制的“极目一号”浮空器在第二次青藏高原综合科学考察研究中,在纳木错升空达到海拔7003米的高度,创造了迄今已知同类型、同量级浮空器驻空高度的世界纪录。<br/> \
第二次青藏高原综合科考从2017年8月全面启动,在之后5到10年内,大批科研工作者将对青藏高原的水、生态、人类活动等环境问题进行考察研究。我国首次青藏高原综合科学考察研究是20世纪70年代,这次综合科考研究积累了大量科学资料,为青藏高原生态保护和社会经济发展提供了科学依据。<br/> \
相对于南极和北极,人们把青藏高原称为世界“第三极”。<br/> \
中国科学家认同“第三极”的称号,除了因为青藏高原和南极、北极有表面上的相似,还因为青藏高原的“一举一动”都对地球的整体环境有着重要影响。<br/> \
“当科考车翻过山头,映入眼帘的便是海拔4700米的纳木错与远处的 "<span class="highlights-text">雪山</span><span class="mark">(实体:山体;属性:岩质)</span>",碧蓝的湖水倒映着树木、"<span class="highlights-text">雪山</span><span class="mark">(实体:山体;属性:岩质)</span>",一相逢便割舍不下。”2018年参加工作的屈维说,能参与第二次青藏科考,能看到“第三极”的多样风情,是他的幸运。<br/> \
作为地球“第三极”的核心区,西藏有着极致的美丽。顶着身体不适,扛着各种仪器,做样方、采标本、打土钻和入户调研是科考队员户外作业最平常的事情。<br/> \
“高原上的天气极不稳定,狂风、冰雹、大雨会在同一天多次造访,我们必须趁着天气略有好转时,见缝插针,尽可能多地赶任务。一日行车数百公里都是‘家常便饭’,调研途中为了‘救出’陷入泥坑的车辆,经常折腾到灰头土脸。”36岁的西藏农牧学院副教授王向涛说。<br/> \
"<span class="highlights-text">2019年7月</span><span class="mark">(实体:时间;属性:yyyy-MM-dd)</span>",第二次青藏科考雅鲁藏布大峡谷水汽通道考察分队在墨脱县的一次“陷车”,至今让科考队员李璐含记忆深刻。当时,墨脱因为多日暴雨和泥石流,已封锁半个月之久,科考队员采集数据的当天仍在下暴雨。傍晚,车子到了一处山体坍塌严重的路段。<br/> \
“当车子陷入泥泞的时候,我心想,今晚或许就要睡在这里了。”李璐含说,“知道我们是科考队后,前后方车辆的司机和路旁维修道路的人都帮我们推车。原本在黑暗中的车子,被车灯和探照灯照亮,使我能看清这些人的面庞,他们用不同的方言喊口号、用力推车的场景让我难忘。”<br/> \
躺在草地上观看云团变幻出各种造型;科考间隙引逗草原上东张西望的鼠兔或旱獭;科考途中和赶着牛群、羊群的牧民依靠手势交流,致以微笑……这些是科考队员在科考途中不多的乐趣。<br/> \
作为第二次青藏科考的参与人员,王向涛多次深入藏北地区考察。“有时候,我随手拍的风景照发到朋友圈,会引来朋友的羡慕。或许这是很多人眼里的‘诗和远方’,但对于我们来说,这一次次‘旅程’不是‘游山玩水’,而是科研工作者的负重前行。”王向涛感慨说。<br/> \
2019年以来,第二次青藏高原综合科学考察研究队在西藏共采集大气、水文、土壤等环境要素样品1.2万余份,采集动植物、微生物样本4.4万余份,收集经济社会发展资料超2200套,在“亚洲水塔”变化与影响及应对等方面取得突破。<br/> \
“我们在西藏进行科学考察,必须了解当地群众生产、生活需求和意愿,为保护好这里的一草一木尽一份绵薄之力。肆虐的风雪阻挡不住前进的路,选择了科考,选择了拥抱这片广袤的土地,就是青春的荣耀。”王向涛说。'
],
commentScore: false,
scoreForm: {
accuracy: "",
......@@ -125,22 +123,50 @@ export default {
tokenList: []
};
},
created() {
this.getParams();
},
methods: {
// 获取文本id
getParams() {
var routerParams = this.$route.params.documentId;
this.documentId = routerParams;
},
handleNodeClick(data) {
console.log(data);
},
getArticle() {
axios.get("/textAnnotation?textid=10").then(function(response) {
console.log(response);
// 获取文本
getContent() {
this.axios({
method: "post",
url: "http://127.0.0.1:9100/uploadDownload/getFileContent",
data: {
documentId: this.documentId
}
}).then(res => {
if (res.return_code == 200) {
console.log("123" + res.result);
content = res.result;
} else {
this.$message({
message: res.return_info,
type: "error"
});
}
});
},
//getArticle() {
// axios.get("/textAnnotation?textid=10").then(function(response) {
// console.log(response);
// });
//},
// 放到边栏的token边栏
getTokenList() {
this.axios({
method: "post",
url: "http://127.0.0.1:9100/textAnnotation/getTokenList",
data: {
documentId: "a55a28d4a25811ea93c354e1ad87433a"
documentId: this.documentId
}
}).then(res => {
if(res.return_code == 200){
......@@ -154,6 +180,7 @@ export default {
}
});
},
// 打分
addScore() {
if (this.scoreForm.accuracy == "" || this.scoreForm.score == "")
this.$message("请输入内容");
......
......@@ -9,6 +9,8 @@ import 'element-ui/lib/theme-chalk/index.css'
import axios from 'axios'
import VueAxios from 'vue-axios'
import * as math from 'mathjs'
// cnpm i default-passive-events -S
import 'default-passive-events'
Vue.prototype.$math = math
......
......@@ -39,8 +39,18 @@ def create_text_slice(task_id, model_id):
else:
return Result(1, "create success", slice.slice_id)
# 创建表格分片 表格分片类型值为1
def create_text_slice(task_id, model_id):
try:
Task.add_slice(task_id)
slice = Slice(task_id=task_id, model_id=model_id, type=0)
slice.save()
except:
return Result(0, "create failed", {})
else:
return Result(1, "create success", slice.slice_id)
# 创建图片分片 图片分片类型值为1
# 创建图片分片 图片分片类型值为2
def create_pic_slice(task_id, description):
try:
Task.add_slice(task_id)
......@@ -52,7 +62,7 @@ def create_pic_slice(task_id, description):
return Result(1, "create success", slice.slice_id)
# 创建图层分片 图层分片类型值为2
# 创建图层分片 图层分片类型值为3
def create_layer_slice(task_id, description):
try:
Task.add_slice(task_id)
......@@ -86,6 +96,9 @@ def find_slice_by_task(task_id):
t = "文本"
template = find[index].model_id
elif find[index].type == '1':
t = "表格"
template = find[index].model_id
elif find[index].type == '2':
t = "图片"
template = find[index].illustration
else:
......@@ -121,6 +134,9 @@ def find_slice_by_task_user(task_id, user_id):
t = "文本"
template = find[index].model_id
elif find[index].type == '1':
t = "表格"
template = find[index].model_id
elif find[index].type == '2':
t = "图片"
template = find[index].illustration
else:
......@@ -178,6 +194,8 @@ def find_slice_annotation_by_task(task_id, type):
if find[index].type == '0':
template = find[index].model_id
elif find[index].type == '1':
template = find[index].model_id
elif find[index].type == '2':
template = find[index].illustration
else:
template = find[index].illustration
......
参加过一次软院心理讲座,但是未录入
有博雅记录的一共4次
总共5次博雅
\ No newline at end of file
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