|
|
@ -1,6 +1,26 @@ |
|
|
|
<template> |
|
|
|
<el-dialog :visible.sync="visible" :title="!dataForm.id ? $t('add') : $t('update')" :close-on-click-modal="false" :close-on-press-escape="false"> |
|
|
|
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmitHandle()" :label-width="$i18n.locale === 'en-US' ? '120px' : '80px'"> |
|
|
|
<el-row> |
|
|
|
<el-form-item label="活动头图" |
|
|
|
v-loading="loading" |
|
|
|
prop="headPic"> |
|
|
|
<el-upload class="avatar-uploader" |
|
|
|
:action="uploadUrl" |
|
|
|
:show-file-list="false" |
|
|
|
:on-success="handleAvatarSuccess" |
|
|
|
:on-error="handelError" |
|
|
|
:before-upload="beforeAvatarUpload"> |
|
|
|
<img v-if="dataForm.headPic" |
|
|
|
:src="dataForm.headPic" |
|
|
|
class="avatar"> |
|
|
|
<i v-else |
|
|
|
class="el-icon-plus avatar-uploader-icon"></i> |
|
|
|
<div slot="tip" |
|
|
|
class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div> |
|
|
|
</el-upload> |
|
|
|
</el-form-item> |
|
|
|
</el-row> |
|
|
|
<el-form-item label="所属联盟" prop="unionId"> |
|
|
|
<el-select v-model="dataForm.unionId" filterable placeholder="请选择" style="width: 100%"> |
|
|
|
<el-option v-for="item in options" |
|
|
@ -66,8 +86,10 @@ export default { |
|
|
|
content: '', |
|
|
|
sort: '', |
|
|
|
actTime: [], |
|
|
|
images: [] |
|
|
|
images: [], |
|
|
|
headPic: '' |
|
|
|
}, |
|
|
|
loading: false, |
|
|
|
uploadUrl: '', |
|
|
|
imgSort: 0, |
|
|
|
options: [], |
|
|
@ -88,6 +110,9 @@ export default { |
|
|
|
], |
|
|
|
content: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
], |
|
|
|
headPic: [ |
|
|
|
{ required: true, message: this.$t('validate.required'), trigger: 'blur' } |
|
|
|
] |
|
|
|
} |
|
|
|
} |
|
|
@ -171,6 +196,16 @@ export default { |
|
|
|
message: '精彩瞬间最多只能上传十张照片', |
|
|
|
type: 'warning' |
|
|
|
}) |
|
|
|
}, |
|
|
|
handleAvatarSuccess (res, file) { |
|
|
|
this.loading = false |
|
|
|
this.dataForm.headPic = res.data.url |
|
|
|
}, |
|
|
|
beforeAvatarUpload (file) { |
|
|
|
this.loading = true |
|
|
|
}, |
|
|
|
handelError () { |
|
|
|
this.loading = false |
|
|
|
} |
|
|
|
}, |
|
|
|
activated () { |
|
|
@ -181,3 +216,163 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
|
<style> |
|
|
|
.avatar-uploader .el-upload { |
|
|
|
border: 1px dashed #d9d9d9; |
|
|
|
border-radius: 6px; |
|
|
|
cursor: pointer; |
|
|
|
position: relative; |
|
|
|
overflow: hidden; |
|
|
|
} |
|
|
|
.avatar-uploader .el-upload:hover { |
|
|
|
border-color: #409eff; |
|
|
|
} |
|
|
|
.avatar-uploader-icon { |
|
|
|
font-size: 28px; |
|
|
|
color: #8c939d; |
|
|
|
width: 178px; |
|
|
|
height: 178px; |
|
|
|
line-height: 178px; |
|
|
|
text-align: center; |
|
|
|
} |
|
|
|
.avatar { |
|
|
|
width: 178px; |
|
|
|
height: 178px; |
|
|
|
display: block; |
|
|
|
} |
|
|
|
</style> |
|
|
|
<style lang="scss"> |
|
|
|
.project-handle { |
|
|
|
.el-timeline { |
|
|
|
padding-left: 9px; |
|
|
|
font-size: 13px; |
|
|
|
} |
|
|
|
.el-textarea { |
|
|
|
width: 600px !important; |
|
|
|
} |
|
|
|
.el-input { |
|
|
|
width: 600px !important; |
|
|
|
} |
|
|
|
} |
|
|
|
.el-form-item__label { |
|
|
|
font-weight: bold; |
|
|
|
} |
|
|
|
</style> |
|
|
|
<style lang="scss" scoped> |
|
|
|
.project-handle { |
|
|
|
width: 100%; |
|
|
|
height: calc(100vh - 120px); |
|
|
|
background: #ffffff; |
|
|
|
box-sizing: border-box; |
|
|
|
padding: 10px; |
|
|
|
.project-detail { |
|
|
|
width: 100%; |
|
|
|
height: 49%; |
|
|
|
border: 2px solid #ccc; |
|
|
|
box-sizing: border-box; |
|
|
|
padding: 10px; |
|
|
|
padding-top: 20px; |
|
|
|
float: left; |
|
|
|
margin-bottom: 1%; |
|
|
|
position: relative; |
|
|
|
.project-detail-tip { |
|
|
|
position: absolute; |
|
|
|
top: 0; |
|
|
|
left: 0; |
|
|
|
width: 80px; |
|
|
|
height: 30px; |
|
|
|
line-height: 30px; |
|
|
|
color: #ffffff; |
|
|
|
background: #4ac38b; |
|
|
|
text-align: center; |
|
|
|
} |
|
|
|
.el-form { |
|
|
|
width: 58%; |
|
|
|
height: 100%; |
|
|
|
float: left; |
|
|
|
overflow-y: auto; |
|
|
|
&::-webkit-scrollbar { |
|
|
|
width: 5px; |
|
|
|
height: 1px; |
|
|
|
} |
|
|
|
&::-webkit-scrollbar-thumb { |
|
|
|
border-radius: 5px; |
|
|
|
background: #ccc; |
|
|
|
} |
|
|
|
&::-webkit-scrollbar-track { |
|
|
|
border-radius: 10px; |
|
|
|
background: #fff; |
|
|
|
} |
|
|
|
} |
|
|
|
.container { |
|
|
|
width: 40%; |
|
|
|
height: 100%; |
|
|
|
float: right; |
|
|
|
.location { |
|
|
|
height: 30px; |
|
|
|
line-height: 30px; |
|
|
|
} |
|
|
|
#map { |
|
|
|
width: 100%; |
|
|
|
height: calc(100% - 30px); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.project-progress { |
|
|
|
width: 20%; |
|
|
|
height: 100%; |
|
|
|
float: right; |
|
|
|
border: 2px solid #ccc; |
|
|
|
box-sizing: border-box; |
|
|
|
margin-left: 1%; |
|
|
|
padding-top: 20px; |
|
|
|
overflow-y: auto; |
|
|
|
&::-webkit-scrollbar { |
|
|
|
width: 5px; |
|
|
|
height: 1px; |
|
|
|
} |
|
|
|
&::-webkit-scrollbar-thumb { |
|
|
|
border-radius: 5px; |
|
|
|
background: #aaa; |
|
|
|
} |
|
|
|
&::-webkit-scrollbar-track { |
|
|
|
border-radius: 10px; |
|
|
|
background: #ccc; |
|
|
|
} |
|
|
|
} |
|
|
|
.handle-operation { |
|
|
|
padding-top: 30px; |
|
|
|
box-sizing: border-box; |
|
|
|
width: 100%; |
|
|
|
height: 49%; |
|
|
|
box-sizing: border-box; |
|
|
|
border: 2px solid #ccc; |
|
|
|
float: left; |
|
|
|
position: relative; |
|
|
|
overflow-y: auto; |
|
|
|
&::-webkit-scrollbar { |
|
|
|
width: 5px; |
|
|
|
height: 1px; |
|
|
|
} |
|
|
|
&::-webkit-scrollbar-thumb { |
|
|
|
border-radius: 5px; |
|
|
|
background: #aaa; |
|
|
|
} |
|
|
|
&::-webkit-scrollbar-track { |
|
|
|
border-radius: 10px; |
|
|
|
background: #ccc; |
|
|
|
} |
|
|
|
.handle-operation-tip { |
|
|
|
position: absolute; |
|
|
|
top: 0; |
|
|
|
left: 0; |
|
|
|
width: 80px; |
|
|
|
height: 30px; |
|
|
|
line-height: 30px; |
|
|
|
color: #ffffff; |
|
|
|
background: #ff7600; |
|
|
|
text-align: center; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
</style> |
|
|
|