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

Commit 346345b5 by 李景熙

add navheader

parent def0405c
......@@ -75,6 +75,10 @@ module.exports = {
limit: 10000,
name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
}
},
{
test: /\.scss$/,
loaders: ['style', 'css', 'sass']
}
]
},
......@@ -89,11 +93,5 @@ module.exports = {
net: 'empty',
tls: 'empty',
child_process: 'empty'
},
plugins: [
new webpack.ProvidePlugin({
$: "jquery",
jQuery: "jquery"
})
]
}
}
{
"name": "daplatform",
"version": "1.0.0",
"description": "A Vue.js project",
"author": "BerlinDorin <876656787@qq.com>",
"private": true,
"scripts": {
"dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
"start": "npm run dev",
"lint": "eslint --ext .js,.vue src",
"build": "node build/build.js"
},
"dependencies": {
"element-ui": "^2.13.1",
"vue": "^2.5.2",
"vue-router": "^3.0.1"
},
"devDependencies": {
"autoprefixer": "^7.1.2",
"babel-core": "^6.22.1",
"babel-eslint": "^8.2.1",
"babel-helper-vue-jsx-merge-props": "^2.0.3",
"babel-loader": "^7.1.1",
"babel-plugin-syntax-jsx": "^6.18.0",
"babel-plugin-transform-runtime": "^6.22.0",
"babel-plugin-transform-vue-jsx": "^3.5.0",
"babel-preset-env": "^1.3.2",
"babel-preset-stage-2": "^6.22.0",
"chalk": "^2.0.1",
"copy-webpack-plugin": "^4.0.1",
"css-loader": "^0.28.0",
"eslint": "^4.15.0",
"eslint-config-standard": "^10.2.1",
"eslint-friendly-formatter": "^3.0.0",
"eslint-loader": "^1.7.1",
"eslint-plugin-import": "^2.7.0",
"eslint-plugin-node": "^5.2.0",
"eslint-plugin-promise": "^3.4.0",
"eslint-plugin-standard": "^3.0.1",
"eslint-plugin-vue": "^4.0.0",
"extract-text-webpack-plugin": "^3.0.0",
"file-loader": "^1.1.4",
"friendly-errors-webpack-plugin": "^1.6.1",
"html-webpack-plugin": "^2.30.1",
"node-notifier": "^5.1.2",
"node-sass": "^4.14.1",
"optimize-css-assets-webpack-plugin": "^3.2.0",
"ora": "^1.2.0",
"portfinder": "^1.0.13",
"postcss-import": "^11.0.0",
"postcss-loader": "^2.0.8",
"postcss-url": "^7.2.1",
"rimraf": "^2.6.0",
"sass-loader": "^7.3.1",
"semver": "^5.3.0",
"shelljs": "^0.7.6",
"uglifyjs-webpack-plugin": "^1.1.1",
"url-loader": "^0.5.8",
"vue-loader": "^13.3.0",
"vue-style-loader": "^3.0.1",
"vue-template-compiler": "^2.5.2",
"webpack": "^3.6.0",
"webpack-bundle-analyzer": "^2.9.0",
"webpack-dev-server": "^2.9.1",
"webpack-merge": "^4.1.0"
},
"engines": {
"node": ">= 6.0.0",
"npm": ">= 3.0.0"
},
"browserslist": [
"> 1%",
"last 2 versions",
"not ie <= 8"
]
}
......@@ -43,6 +43,7 @@
"friendly-errors-webpack-plugin": "^1.6.1",
"html-webpack-plugin": "^2.30.1",
"node-notifier": "^5.1.2",
"node-sass": "^4.14.1",
"optimize-css-assets-webpack-plugin": "^3.2.0",
"ora": "^1.2.0",
"portfinder": "^1.0.13",
......@@ -50,6 +51,7 @@
"postcss-loader": "^2.0.8",
"postcss-url": "^7.2.1",
"rimraf": "^2.6.0",
"sass-loader": "^7.3.1",
"semver": "^5.3.0",
"shelljs": "^0.7.6",
"uglifyjs-webpack-plugin": "^1.1.1",
......
......@@ -9,14 +9,16 @@ export default {
name: 'App'
}
</script>
<style>
<style lang='scss'>
body{
margin: 0;
}
#app {
font-family: 'Avenir', Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
margin-top: 60px;
margin:0;
}
</style>
<template>
<el-container>
<el-header>已完成任务</el-header>
<el-container>
<el-main>
<el-table
:data="tableData"
height="570"
border
style="width: 100%">
<el-table-column
prop="taskId"
label="任务ID"
width="180">
</el-table-column>
<el-table-column
prop="author"
label="发布者ID"
width="180">
</el-table-column>
<el-table-column
prop="splitNum"
label="分片数量"
width="180">
</el-table-column>
<el-table-column
prop="date"
label="发布时间"
width="180">
<template slot-scope="scope">
<i class="el-icon-time"></i>
<span style="margin-left: 10px">{{ scope.row.date }}</span>
</template>
</el-table-column>
<el-table-column
prop="name"
label="任务名称"
>
</el-table-column>
<el-table-column
prop="status"
label="任务状态"
width="180"
>
</el-table-column>
<el-table-column
fixed="right"
label="操作"
width="180">
<template slot-scope="scope">
<el-button @click="handleClick(scope.row)" type="text" size="small">查看</el-button>
<el-button type="text" size="small">导出</el-button>
</template>
</el-table-column>
</el-table>
</el-main>
</el-container>
<el-footer>Footer</el-footer>
</el-container>
</template>
<script>
export default {
data() {
return {
tableData: [{
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '单物体语义分割',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '人脸质量判断',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '图片属性标注',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '图片属性标注',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '图片属性标注',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '图片属性标注',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '图片属性标注',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '图片属性标注',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '图片属性标注',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '图片属性标注',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '图片属性标注',
status: '已完成'
}, {
taskId:'1',
author:'小明',
splitNum:'3',
date: '2016-05-03',
name: '图片属性标注',
status: '已完成'
}]
}
}
}
</script>
<style>
.el-header, .el-footer {
background-color: #B3C0D1;
color: #333;
text-align: center;
line-height: 60px;
}
.el-aside {
background-color: #D3DCE6;
color: #333;
text-align: center;
line-height: 200px;
}
.el-main {
background-color: #E9EEF3;
color: #333;
text-align: center;
line-height: 36px;
}
body > .el-container {
margin-bottom: 40px;
}
.el-container:nth-child(5) .el-aside,
.el-container:nth-child(6) .el-aside {
line-height: 260px;
}
.el-container:nth-child(7) .el-aside {
line-height: 320px;
}
</style>
\ No newline at end of file
<template>
<div class="hello">
<h1>{{ msg }}</h1>
<h2>Essential Links</h2>
<ul>
<li>
<a
href="https://vuejs.org"
target="_blank"
>
Core Docs
</a>
</li>
<li>
<a
href="https://forum.vuejs.org"
target="_blank"
>
Forum
</a>
</li>
<li>
<a
href="https://chat.vuejs.org"
target="_blank"
>
Community Chat
</a>
</li>
<li>
<a
href="https://twitter.com/vuejs"
target="_blank"
>
Twitter
</a>
</li>
<br>
<li>
<a
href="http://vuejs-templates.github.io/webpack/"
target="_blank"
>
Docs for This Template
</a>
</li>
</ul>
<h2>Ecosystem</h2>
<ul>
<li>
<a
href="http://router.vuejs.org/"
target="_blank"
>
vue-router
</a>
</li>
<li>
<a
href="http://vuex.vuejs.org/"
target="_blank"
>
vuex
</a>
</li>
<li>
<a
href="http://vue-loader.vuejs.org/"
target="_blank"
>
vue-loader
</a>
</li>
<li>
<a
href="https://github.com/vuejs/awesome-vue"
target="_blank"
>
awesome-vue
</a>
</li>
</ul>
<el-radio-group v-model="radio">
<el-radio :label="3">备选项</el-radio>
<el-radio :label="6">备选项</el-radio>
<el-radio :label="9">备选项</el-radio>
</el-radio-group>
</div>
</template>
<script>
export default {
name: 'HelloWorld',
data () {
return {
msg: 'Welcome to Your Vue.js App', radio: 3
}
}
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
h1, h2 {
font-weight: normal;
}
ul {
list-style-type: none;
padding: 0;
}
li {
display: inline-block;
margin: 0 10px;
}
a {
color: #42b983;
}
</style>
......@@ -2,45 +2,30 @@
<div class="login-container">
<div class="login-background-text">DAPlatform</div>
<div class="login-panel">
<ul class="nav-justified">
<li role="presentation" :class="{active: mode =='login'}">
<a @click="mode='login'">登录</a>
</li>
<li role="presentation" :class="{active: mode =='register'}">
<a @click="mode='register'">注册</a>
</li>
</ul>
<div v-if="mode=='login'" class="login-input-group">
<div class="input-group">
<span>用户名:</span>
<input type="text" class="form-control" placeholder="输入用户名" aria-describedby="basic-addon1">
</div>
<div class="input-group">
<span>密码:</span>
<input type="text" class="form-control" placeholder="输入密码" aria-describedby="basic-addon1">
</div>
<div class="btn-group btn-group-lg" role="group" aria-label="...">
<button type="button" class="btn btn-default" @click="login()">登录</button>
</div>
<el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect"
active-text-color="#409EFF">
<el-menu-item index="1">登录</el-menu-item>
<el-menu-item index="2">注册</el-menu-item>
</el-menu>
<div class="input-item">
用户名:
<el-input class="input" v-model="input" placeholder="请输入用户名"></el-input>
</div>
<div class="input-item">
密码:
<el-input class="input" v-model="input" placeholder="请输入密码"></el-input>
</div>
<div class="input-item" v-if="activeIndex == '2'">
确认密码:
<el-input class="input" v-model="input" placeholder="请确认密码"></el-input>
</div>
<div v-else class="register-input-group">
<div class="input-group">
<span>用户名:</span>
<input type="text" class="form-control" placeholder="输入用户名" aria-describedby="basic-addon1">
</div>
<div class="input-group">
<span>密码:</span>
<input type="text" class="form-control" placeholder="输入密码" aria-describedby="basic-addon1">
</div>
<div class="input-group">
<span>邮箱:</span>
<input type="text" class="form-control" placeholder="确认密码" aria-describedby="basic-addon1">
</div>
<div class="btn-group btn-group-lg" role="group" aria-label="...">
<button type="button" class="btn btn-default">注册</button>
</div>
<div class="input-item" v-if="activeIndex == '2'">
邮箱:
<el-input class="input" v-model="input" placeholder="请输入邮箱"></el-input>
</div>
<el-button v-if="activeIndex == '1'" class="btn" type="primary" @click="login">登录</el-button>
<el-button v-else class="btn" type="primary" @click="register">注册</el-button>
</div>
</div>
</template>
......@@ -50,83 +35,66 @@ export default {
name: 'Login',
data () {
return {
mode: 'login'
activeIndex: '1'
}
},
methods: {
handleSelect (key, keyPath) {
this.activeIndex = key
},
login () {
console.log('login')
this.$router.push('/taskhall').catch(data => {})
this.$router.push('/index').catch(data => {})
},
register(){
this.$router.push('/index').catch(data => {})
}
}
}
</script>
<!-- Add 'scoped' attribute to limit CSS to this component only -->
<style scoped>
<style scoped lang='scss'>
.login-container {
position: relative;
width: 100%;
min-height: 100vh;
background-color: rgb(119, 243, 202);
background-color: #409EFF;
overflow: hidden;
.login-background-text {
position: absolute;
color: white;
font-size: 150px;
top: 30vh;
left: 5vw;
text-shadow: 30px 30px 0px rgba(255, 255, 255, 0.4);
}
.login-panel {
float: right;
width: 400px;
margin-right: 10vw;
margin-top: 20vh;
margin-bottom: 10vh;
padding-top: 20px;
background-color: white;
border-radius: 10px;
box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
// transition: height 1s;
}
}
.login-background-text {
position: absolute;
color: white;
font-size: 150px;
top: 30vh;
left: 5vw;
text-shadow: 30px 30px 0px rgba(255, 255, 255, 0.4);
}
.login-panel {
position: relative;
float: right;
width: 400px;
height: 450px;
margin-right: 10vw;
margin-top: 20vh;
margin-bottom: 10vh;
padding-top: 20px;
background-color: white;
border-radius: 10px;
box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
}
.active a{
color: rgb(97, 211, 173);
}
a {
font-weight: bold;
font-size: 1.3em;
cursor: pointer;
color: black;
}
.input-group{
/* border: solid; */
width: 100%;
.input-item{
display: flex;
justify-content: space-between;
align-items: center;
padding-left: 30px;
padding-right: 30px;
margin-top: 40px;
}
.input-group span{
font-size: 1.em;
}
.input-group input{
width: 70%;
height: 50px;
}
.btn-group{
position: absolute;
bottom: 40px;
right: 25px;
justify-content: space-between;
align-items: center;
margin-top: 30px;
.input{
width: 70%;
}
}
.btn-group button{
width: 350px;
background-color: rgb(97, 211, 173);
color: white;
border: none;
.btn{
width: 80%;
margin-top: 20px;
margin-bottom: 20px;
}
</style>
<template>
<div class="nav-header-container">
<div class="nav-header">
<div class="nav-header-logo">DAPlatform</div>
<div class="nav-header-navigator">
<router-link :to="{name: 'taskhall'}">任务大厅</router-link>
<router-link :to="{name: 'index'}">其它</router-link>
</div>
<div class="nav-header-userInfo">
<span class="glyphicon glyphicon-user" aria-hidden="true"></span>
<router-link :to="{name: 'login'}">登录</router-link>
</div>
</div>
<el-menu
:default-active="activeIndex"
class="el-menu-demo"
mode="horizontal"
@select="handleSelect"
background-color="#409EFF"
text-color="#fff"
active-text-color="#fff"
router="true">
<el-menu-item index="/taskhall">任务大厅</el-menu-item>
<el-menu-item index="2">我的任务</el-menu-item>
<el-menu-item index="3">发布任务</el-menu-item>
<el-menu-item index="/completed">已完成任务</el-menu-item>
<el-menu-item index="5">待审核任务</el-menu-item>
<el-menu-item index="6">我的发布</el-menu-item>
<el-menu-item index="/userhome">个人中心</el-menu-item>
<el-menu-item class="logout-btn" index="/">退出登录</el-menu-item>
</el-menu>
</div>
</template>
......@@ -19,53 +26,22 @@ export default {
name: 'nav-header',
data () {
return {
activeIndex: '/taskhall'
}
},
methods: {
}
}
</script>
<!-- Add 'scoped' attribute to limit CSS to this component only -->
<style scoped>
<style scoped lang='scss'>
.nav-header-container{
width: 100vw;
background-color: rgb(97, 211, 173);
}
.nav-header{
width: 90vw;
min-width: 800px;
height: 50px;
margin-left: auto;
margin-right: auto;
}
.nav-header-logo{
/* border: solid; */
float: left;
color: white;
font-size: 25px;
font-weight: bold;
line-height: 50px;
margin-right: 50px;
}
.nav-header-navigator{
float: left;
}
.nav-header-navigator a{
display: inline-block;
color: white;
font-weight: bold;
line-height: 50px;
width: 6em;
}
.nav-header-navigator a:hover{
background-color: rgb(64, 167, 132);
}
.nav-header-userInfo{
padding-left: 10%;
padding-right: 10%;
background-color: #409EFF;
.logout-btn{
float: right;
color: white;
line-height: 50px;
}
.nav-header-userInfo a{
color: white;
margin-left: 10px;
}
}
</style>
......@@ -90,7 +90,7 @@ export default {
.task-list ul{
display: flex;
padding: 0;
border-bottom: 1px solid rgb(97, 211, 173);
border-bottom: 1px solid #409EFF;
margin-bottom: 0;
}
.task-list ul li{
......@@ -107,11 +107,11 @@ export default {
}
.tab-active{
border-radius: 5px 5px 0 0;
background-color: rgb(97, 211, 173);
background-color: #409EFF;
color: white;
}
.tasks-body{
border: 1px solid rgb(97, 211, 173);
border: 1px solid #409EFF;
border-top: none;
padding-top: 20px;
/* width: 100%; */
......@@ -125,10 +125,10 @@ export default {
margin-bottom: 20px;
}
.task-type-btn{
background-color: rgb(97, 211, 173);
background-color: #409EFF;
}
.btn-success{
background-color: rgb(97, 211, 173);
background-color: #409EFF;
border: none;
}
.task-item{
......@@ -139,7 +139,7 @@ export default {
align-items: center;
}
.task-item-state{
color:rgb(97, 211, 173);
color:#409EFF;
font-weight: bold;
margin-left: 30px;
}
......@@ -159,10 +159,10 @@ export default {
height: 500px;
}
.panel-success{
border-color: rgb(97, 211, 173);
border-color: #409EFF;
}
.panel-heading{
background-color: rgb(97, 211, 173);
border-color: rgb(97, 211, 173);
background-color: #409EFF;
border-color: #409EFF;
}
</style>
<template>
<div class="main">
<div class="title">
个人主页
<el-container>
<el-header>个人界面</el-header>
<el-container>
<el-aside width="300px">
<div>
<img src ="../assets/logo.png">
</div>
<div class="information">
<div class="avatar">
头像
<img>
</div>
<div class="others">
<ul>
<li>用户名</li>
<li>邮箱</li>
<li>积分</li>
</ul>
</div>
</div>
<div class="task">
<ul>
<li>单物体语义分割</li>
<li>人脸质量判断</li>
<li>图片属性标注</li>
<li>任务4</li>
<li>任务5</li>
</ul>
</div>
</div>
</el-aside>
<el-main>
<el-row>
<el-col :span="6"><div class="grid-content bg-purple">用户名</div></el-col>
<el-col :span="18"><div class="grid-content bg-purple-light">小明</div></el-col>
</el-row>
<el-row>
<el-col :span="6"><div class="grid-content bg-purple">用户ID</div></el-col>
<el-col :span="18"><div class="grid-content bg-purple-light">4</div></el-col>
</el-row>
<el-row>
<el-col :span="6"><div class="grid-content bg-purple">邮箱</div></el-col>
<el-col :span="18"><div class="grid-content bg-purple-light">xxx@buaa.edu.cn</div></el-col>
</el-row>
<el-row>
<el-col :span="6"><div class="grid-content bg-purple">类型</div></el-col>
<el-col :span="18"><div class="grid-content bg-purple-light">任务发布者</div></el-col>
</el-row>
<el-row>
<el-col :span="6"><div class="grid-content bg-purple">密码</div></el-col>
<el-col :span="18"><div class="grid-content bg-purple-light"> <el-button type="danger" plain>修改密码</el-button></div></el-col>
</el-row>
<el-row>
<el-col :span="24"><div class="grid-line bg-purple-dark" height:2px></div></el-col>
</el-row>
<el-row>
<el-col :span="8"><div class="grid-content bg-purple">类型</div></el-col>
<el-col :span="8"><div class="grid-content bg-purple-light">积分</div></el-col>
<el-col :span="8"><div class="grid-content bg-purple">准确率</div></el-col>
</el-row>
<el-row>
<el-col :span="8"><div class="grid-content bg-purple">图象</div></el-col>
<el-col :span="8"><div class="grid-content bg-purple-light">233</div></el-col>
<el-col :span="8"><div class="grid-content bg-purple">66%</div></el-col>
</el-row>
<el-row>
<el-col :span="8"><div class="grid-content bg-purple">文本</div></el-col>
<el-col :span="8"><div class="grid-content bg-purple-light">323</div></el-col>
<el-col :span="8"><div class="grid-content bg-purple">77%</div></el-col>
</el-row>
<el-row>
<el-col :span="8"><div class="grid-content bg-purple">发布</div></el-col>
<el-col :span="8"><div class="grid-content bg-purple-light">333</div></el-col>
<el-col :span="8"><div class="grid-content bg-purple">\</div></el-col>
</el-row>
</el-main>
</el-container>
<el-footer>Footer</el-footer>
</el-container>
</template>
<style type="text/css">
/* *{
padding: 0;
margin: 0;
}*/
.title{
width: 900px;
height: 120px;
margin-left: 150px;
margin-bottom: 20px;
margin-top: 20px;
font-size: 75px;
color:black;
background-color: #c0c0c0;
<style>
.el-header, .el-footer {
background-color: #B3C0D1;
color: #333;
text-align: center;
line-height: 60px;
}
.information{
width: 900px;
height: 200px;
margin-left: 150px;
margin-bottom: 20px;
.el-aside {
background-color: #D3DCE6;
color: #333;
text-align: center;
line-height: 200px;
}
.avatar{
.el-aside img{
margin-top: 50px;
width: 200px;
float:left;
height: 200px;
}
.others{
width: 650px;
float:right;
margin-left: 10px;
.el-main {
background-color: #E9EEF3;
color: #333;
text-align: center;
line-height: 40px;
}
.task{
margin-left: 150px;
width: 900px;
height: 1200px;
body > .el-container {
margin-bottom: 40px;
}
.main{
background-color: #f5f5f5;
width:1200px;
height: 1200px;
margin: 20px auto;
.el-container:nth-child(5) .el-aside,
.el-container:nth-child(6) .el-aside {
line-height: 260px;
}
.avatar img{
height: 200px;
width: 200px;
.el-container:nth-child(7) .el-aside {
line-height: 320px;
}
.el-row {
margin-bottom: 20px;
&:last-child {
margin-bottom: 0;
}
}
.el-col {
border-radius: 4px;
}
.bg-purple-dark {
background: #99a9bf;
}
.bg-purple {
background: #d3dce6;
}
.bg-purple-light {
background: #e5e9f2;
}
.avatar, .others{
background-color: #f5f5f5;
height:200px;
.grid-content {
border-radius: 4px;
height: 40px;
}
.others li{
font-weight: bold;
list-style: none;
hegiht:50px;
margin-bottom: 5px;
margin-top: 5px;
background-color: white;
line-height: 50px;
cursor: pointer;
float: center;
.grid-line {
border-radius: 4px;
height: 6px;
}
.task li{
font-weight: bold;
list-style: none;
hegiht:50px;
margin-bottom: 5px;
margin-top: 5px;
background-color: white;
line-height: 50px;
cursor: pointer;
float: center;
.row-bg {
padding: 10px 0;
background-color: #f9fafc;
}
</style>
<script type="text/javascript">
</script>
</style>
\ No newline at end of file
<template>
<div class="userbody">
<div class="side-bar">
</div>
<div class="main">
<div class="article" style="width: 75%;text-align: left;border-top:5px solid #343434;">
<div style="height: 100%;width: 100%;padding: 20px 30px">
<div class="userheadcontent" style="margin-bottom: 30px">
<div style="position: relative;width: 90px;height: 90px;margin-right: 15px;margin-left: 5px">
<img id="userImg" style="position: absolute;height: 120px" src="../assets/logo.png">
</div>
<div class="userheadleft">
<div class="title">{{'英语标注求助'}}</div>
<div class="status">发布用户名:{{'李宗国'}}</div>
<div class="status">发表时间:{{'2020年5月9号'}}</div>
<div class="status">所属单位:{{'北京航空航天大学'}}</div>
</div>
</div>
<div class="usercontent">
<div class="userleft">
<div class="userposttext" style = "width: 100px;">分片情况如下:</div>
<div class="userheadright">
<div class="headtext" @click="biaozhu" id="guanzhuButton1" >{{'+添加任务'}}</div>
</div>
<div style="width: 100%;height: 1px;background: darkgray"></div>
<div class="userintro1">{{'.'}}</div>
<div class="userintro">{{'人脸关键点标注,对人脸范围内的关键点进行标注和微调,每个点有准确的位置,用于精密的表情变化和人脸关键点识别。随着AI技术的发展,人脸关键点也越来越精细(数量多),对标注员的基本功和标注团队审核能力的要求也越来越高。标注质量的好坏,对人工智能人脸模型的算法精确度有很大作用,如果人脸关键点标注不好,那么人脸识别算法就无法很好地进行人脸识别,影响实际应用!'}}</div>
<div class="userheadright">
<div class="headtext" @click="biaozhu" id="guanzhuButton2" >{{'+添加任务'}}</div>
</div>
<div style="width: 100%;height: 1px;background: darkgray"></div>
<div class="userintro1">{{'.'}}</div>
<div style="position: relative;width: 90px;overflow: hidden;height: 90px;margin-right: 15px;margin-left: 5px">
<img id="userImg1" style="position: absolute;height: 90px" src="../assets/1.jpg">
</div>
<div class="userheadright">
<div class="headtext" @click="biaozhu" id="guanzhuButton3" >{{'+添加任务'}}</div>
</div>
<div style="width: 100%;height: 1px;background: darkgray"></div>
<div class="userintro1">{{'.'}}</div>
<div class="userintro">{{'人脸关键点检测方法大致分为三种:基于模型的ASM(Active Shape Model)和AAM(Active Appearnce Model)基于级联形状回归CPR(Cascaded pose regression)基于深度学习的方法专业的人工智能数据服务商,提供数据采集与数据标注服务'}}</div>
</div>
</div>
</div>
</div>
</div>
<div>
<div>
</div>
</div>
</div>
</template>
<script>
export default {
name: 'execute',
methods: {
biaozhu () {
console.log('1')
this.$router.push({path: '/Signup'})
}
}
}
</script>
<style scoped>
.userheadcontent{
display: flex;
}
.userheadleft{
flex: 1;
height: 100%;
margin-right: 10px;
}
.userheadright{
/*display: flex;*/
width: 30%;
height: 100%;
text-align:center;
float: right;
vertical-align: middle;
}
.usercontent{
display: flex;
}
.userintro{
font-size: 14px;
margin-top: 30px;
margin-bottom: 15px;
line-height: 25px;
}
.userintro1{
font-size: 0px;
margin-top: 0px;
margin-bottom: 15px;
line-height: 25px;
}
.userleft{
flex: 1;
height: 100%;
margin-right: 20px;
}
.headtext{
outline:none;
font-family: "Yu Gothic UI";
font-size: 15px;
height: 35px;
width:100px;
border-radius: 30px;
background: rgba(0,0,0,0);
text-align: center;
vertical-align:middle;
line-height: 35px;
color: #343434;
border: 1px solid #343434;
transition: background-color 0.2s ease,border-width 0.2s ease,border-radius 0.2s ease;
}
.headtext:hover{
background: #a6dadd;
color: white;
border: 1px solid #a6dadd;
}
.headtext:active{
border-radius: 35px;
background: #343434;
color: white;
border: 1px solid #343434;
}
.userposttext{
color: #343434;
font-size: 15px;
font-weight: bold;
border-bottom: black solid 3px;
}
.userbody {
background:#f1f1f1;
/*line-height: 1.7;*/
height: 100%;
width: 100%;
}
a {
text-decoration: none;
}
a, body {
color: #9fc6dc;
}
.side-bar {
float: left;
width: 20%;
height: 100%;
position: fixed;
}
.side-bar > * {
padding: 10px 15px;
}
.side-bar .nav a,
.side-bar .tag-list a {
display: block;
padding: 5px;
color: #888;
-webkit-transition: color 200ms;
-o-transition: color 200ms;
transition: color 200ms;
}
.side-bar .nav a:hover,
.side-bar .tag-list a:hover {
color: #9fc6dc;
}
.side-bar .nav a {
font-weight: 700;
}
.main {
float: right;
width: 80%;
color: #454545;
}
.article-list .item .title,
.article .title {
color: #454545;
font-size: 26px;
font-weight: 700;
margin-bottom: 30px;
}
.article-list .item .status,
.article .status {
font-size: 13px;
color: #ccc;
}
.article-list .item > *,
.article > * {
margin: 10px 0;
}
.file input {
position: absolute;
font-size: 100px;
right: 0;
top: 0;
opacity: 0;
}
</style>
<template>
<div id = "missionDetail">
<el-container>
<el-header>
</el-header>
<el-main>
<el-row :gutter="20" >
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="待审核的任务" name="first">未完成的任务<p></p>
<el-row :gutter="24" style="border-bottom: 1px solid;border-bottom-color: #8c939d;padding-bottom: 5px">
<el-col span="4" >
<li>任务名:待审核任务:1</li>
<li>当前分数:1</li>
<li>发布者:xxx</li>
</el-col>
<el-col span="8" offset="">
任务简介:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
</el-col>
<el-col span="2" offset="4">
<el-input v-model="input" placeholder="输入得分"></el-input>
<el-button>点击打分</el-button></el-col>
</el-row>
<el-form>
<span>图片标注:</span>
<el-row :gutter="20" style="border-bottom: 1px solid;border-bottom-color: #8c939d;padding-bottom: 5px">
<el-col span="6" offset="1">
<el-row :gutter="6">图1:</el-row>
<el-row :gutter="6"><el-tag>属性1</el-tag></el-row>
</el-col>
<el-col span="6" offset="1">
<el-row :gutter="6">图2:</el-row>
<el-row :gutter="6"><el-tag>属性2</el-tag></el-row>
</el-col>
<el-col span="6" offset="1">
<el-row :gutter="6">图3:</el-row>
<el-row :gutter="6"><el-tag>属性3</el-tag></el-row>
</el-col>
</el-row>
<span>文字标注:</span>
<el-row :gutter="20" style="border-bottom: 1px solid;border-bottom-color: #8c939d;padding-bottom: 5px">
<el-col span="6" offset="1">
<el-row :gutter="6">文字1:</el-row>
<el-row :gutter="6"><el-tag>属性1</el-tag></el-row>
</el-col>
<el-col span="6" offset="1">
<el-row :gutter="6">文字2:</el-row>
<el-row :gutter="6"><el-tag>属性2</el-tag></el-row>
</el-col>
<el-col span="6" offset="1">
<el-row :gutter="6">文字3:</el-row>
<el-row :gutter="6"><el-tag>属性3</el-tag></el-row>
</el-col>
</el-row>
</el-form>
<el-button>提交</el-button>
</el-tab-pane>
<el-tab-pane label="已完成的任务" name="second">已完成的任务
<el-row :gutter="20" style="border-bottom: 1px solid;border-bottom-color: #8c939d;padding-bottom: 5px">
<el-col span="4" >
<li>任务名:已完成任务:1</li>
<li>当前分数:1</li>
<li>发布者:xxx</li>
</el-col>
<el-col span="8" >
任务简介:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
</el-col>
<el-col span="2" offset="4">
<el-button>导出任务</el-button></el-col>
</el-row>
<span>图片标注:</span>
<el-row :gutter="20" style="border-bottom: 1px solid;border-bottom-color: #8c939d;padding-bottom: 5px">
<el-col span="6" offset="1">
<el-row :gutter="6">图1:</el-row>
<el-row :gutter="6"><el-tag>属性1</el-tag></el-row>
</el-col>
<el-col span="6" offset="1">
<el-row :gutter="6">图2:</el-row>
<el-row :gutter="6"><el-tag>属性2</el-tag></el-row>
</el-col>
<el-col span="6" offset="1">
<el-row :gutter="6">图3:</el-row>
<el-row :gutter="6"><el-tag>属性3</el-tag></el-row>
</el-col>
</el-row>
<span>文字标注:</span>
<el-row :gutter="20" style="border-bottom: 1px solid;border-bottom-color: #8c939d;padding-bottom: 5px">
<el-col span="6" offset="1">
<el-row :gutter="6">文字1:</el-row>
<el-row :gutter="6"><el-tag>属性1</el-tag></el-row>
</el-col>
<el-col span="6" offset="1">
<el-row :gutter="6">文字2:</el-row>
<el-row :gutter="6"><el-tag>属性2</el-tag></el-row>
</el-col>
<el-col span="6" offset="1">
<el-row :gutter="6">文字3:</el-row>
<el-row :gutter="6"><el-tag>属性3</el-tag></el-row>
</el-col>
</el-row>
</el-tab-pane>
</el-tabs>
</el-row>
</el-main>
<el-footer>
</el-footer>
</el-container>
</div>
</template>
<script>
export default {
name: 'missionDetail'
}
</script>
<style>
#missionDetail {
}
.el-header , .el-footer{
color: black;
background-color: black;
width: 100%;
height: 200px;
}
.el-main{
min-height: 400px;
}
.el-row{
margin-bottom: 20px;
}
</style>
<script>
export default {
data() {
return {
activeName: 'first'
};
},
methods: {
handleClick(tab, event) {
console.log(tab, event);
}
}
};
</script>
<template>
<div id="release">
<el-header></el-header>
<el-main>
<el-form>
<!-- 添加图片分片-->
<el-row :gutter="20">
<el-col span="10">
<el-upload
class="upload-demo"
action="https://jsonplaceholder.typicode.com/posts/"
:on-preview="handlePreview"
:on-remove="handleRemove"
:file-list="fileList"
list-type="picture">
<el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
</el-upload>
</el-col>
<el-col span="10">
<el-upload
class="upload-demo"
ref="upload"
action="https://jsonplaceholder.typicode.com/posts/"
:on-preview="handlePreview"
:on-remove="handleRemove"
:file-list="fileList"
:auto-upload="false">
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<el-button style="margin-left: 10px;" size="small" type="success" @click="submitUpload">上传</el-button>
<div slot="tip" class="el-upload__tip">只能上传文本文件</div>
</el-upload>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col span="10">
<el-input v-model="input" placeholder="图片模板"></el-input>
</el-col>
<el-col span="10">
<el-input v-model="input" placeholder="文字模板"></el-input>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col span="8">
<el-input v-model="input" placeholder="输入任务名称">
</el-input>
</el-col>
<el-col span="5">
<el-button type="primary" @click="onSubmit">创建任务</el-button>
</el-col>
</el-row>
</el-form>
</el-main>
<el-footer></el-footer>
</div>
</template>
<style>
#release {
}
.el-header , .el-footer{
color: black;
background-color: black;
width: 100%;
height: 200px;
}
.el-main{
min-height: 400px;
}
.el-row{
margin-bottom: 20px;
}
</style>
<script>
export default {
name: 'release'
}
</script>
<script>
export default {
data() {
return {
fileList: [{name: 'food.jpeg', url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100' }, {name: 'food2.jpeg', url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100'}]
};
},
methods: {
handleRemove(file, fileList) {
console.log(file, fileList);
},
handlePreview(file) {
console.log(file);
}
}
}
</script>
<template>
<div class="taskhall">
<div class="taskhall-left">
<div class="task-list">
<div class="task-item">
<span class="task-item-title">用户名</span>
</div>
<div class="task-item">
<span class="task-item-title">邮箱号</span>
</div>
<div class="task-item">
<span class="task-item-title">积分</span>
</div>
<ul>
<li><a :class="{'tab-active': activeName == '已发布任务'}" @click="activeName='已发布任务'">已发布任务</a></li>
<li><a :class="{'tab-active': activeName == '待审核任务'}" @click="activeName='待审核任务'">待审核任务</a></li>
<li><a :class="{'tab-active': activeName == '已完成任务'}" @click="activeName='已完成任务'">已完成任务</a></li>
</ul>
<div class="tasks-body">
<div class="task-filter">
<div class="task-filter-item">
<!-- 任务类型: -->
</div>
</div>
<div class="tasks">
<div class="task-item">
<span class="task-item-title">单物体语义分割</span>
<button type="button" class="btn btn-success">进入任务</button>
</div>
<div class="task-item">
<span class="task-item-title">人脸质量判断</span>
<button type="button" class="btn btn-success">进入任务</button>
</div>
<div class="task-item">
<span class="task-item-title">图片属性标注</span>
<button type="button" class="btn btn-success">进入任务</button>
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
name: 'releasepersonal',
data () {
return {
activeName: '已发布任务'
}
},
methods: {
handleClick (tab, event) {
console.log(tab, event)
}
}
}
</script>
<!-- Add 'scoped' attribute to limit CSS to this component only -->
<style scoped>
.taskhall{
width: 90vw;
min-width: 800px;
/* border: solid; */
margin-left: auto;
margin-right: auto;
margin-top: 40px;
display: flex;
}
.taskhall-left{
/* border: solid; */
width: 70%;
height: 500px;
}
.task-list{
width: 95%;
height: 100%;
}
.task-list ul{
display: flex;
padding: 0;
border-bottom: 1px solid rgb(97, 211, 173);
margin-bottom: 0;
}
.task-list ul li{
display: inline-block;
padding:0px;
}
.task-list ul li a{
display: inline-block;
width: 100%;
padding: 15px;
height: 100%;
color: black;
cursor: pointer;
}
.tab-active{
border-radius: 5px 5px 0 0;
background-color: rgb(97, 211, 173);
color: white;
}
.tasks-body{
border: 1px solid rgb(97, 211, 173);
border-top: none;
padding-top: 20px;
/* width: 100%; */
/* height: 500px; */
}
.task-filter{
text-align: left;
}
.task-filter-item{
margin-left: 30px;
margin-bottom: 20px;
}
.task-type-btn{
background-color: rgb(97, 211, 173);
}
.btn-success{
background-color: rgb(97, 211, 173);
border: none;
}
.task-item{
position: relative;
display: flex;
height: 80px;
border-top: 1px solid rgb(231, 231, 231);
align-items: center;
}
.task-item-state{
color:rgb(97, 211, 173);
font-weight: bold;
margin-left: 30px;
}
.task-item-title{
font-size: 20px;
font-weight: bold;
margin-left: 40px;
}
.task-item button{
position: absolute;
right: 20px;
/* line-height: 50px; */
}
.taskhall-right{
/* border: solid; */
width: 30%;
height: 500px;
}
.panel-success{
border-color: rgb(97, 211, 173);
}
.panel-heading{
background-color: rgb(97, 211, 173);
border-color: rgb(97, 211, 173);
}
</style>
import Vue from 'vue'
import Router from 'vue-router'
import release from '@/components/release'
import HelloWorld from '../components/HelloWorld'
import MissionDetail from '../components/missionDetail(1)'
import execute from '../components/execute'
import Login from '@/components/Login'
import Index from '@/components/Index'
import releasepersonal from '../components/releasepersonal'
import Login from '../components/Login'
import userhome from '../components/UserHome'
import TaskHall from '../components/Taskhall'
import Index from '../components/Index'
import completed from '../components/CompletedTask'
Vue.use(Router)
export default new Router({
routes: [
{
path: '/release',
name: 'Release',
component: release
},
{
path: '/',
name: 'HelloWorld',
component: HelloWorld
},
{
path: '/missiondetail',
name: 'missiondetail',
component: MissionDetail
},
{
path: '/execute',
name: 'execute',
component: execute
},
{
path: '/index',
name: 'index',
component: Index,
children: [
{
path: 'taskhall',
path: '/taskhall',
name: 'taskhall',
component: () => import('../components/TaskHall.vue')
component: TaskHall
},
{
path: '/userhome',
name: 'userhome',
component: userhome
},
{
path: '/completed',
name: 'completed',
component: completed
}
]
},
{
path: '/login',
path: '/',
name: 'login',
component: Login
},
{
path: '/userinfo',
name: 'userinfo',
component: releasepersonal
},
{
path: '/userhome',
name: 'userhome',
component: userhome
}
]
})
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