|
|
@@ -122,17 +122,30 @@
|
|
|
</el-tab-pane>
|
|
|
</el-tabs>
|
|
|
|
|
|
- <el-button type="primary" size='mini' class="input-task-btn" @click="showInputTaskModal = true">导入任务</el-button>
|
|
|
+ <el-button type="primary" size='mini' class="input-task-btn" @click="showImportTaskModal = true">导入任务</el-button>
|
|
|
<el-dialog
|
|
|
- title="提示"
|
|
|
- :visible.sync="showInputTaskModal"
|
|
|
+ title="上传任务资源包"
|
|
|
+ :visible.sync="showImportTaskModal"
|
|
|
width="500"
|
|
|
- >s
|
|
|
- <span>这是一段信息</span>
|
|
|
+ >
|
|
|
+ <el-upload
|
|
|
+ drag
|
|
|
+ class="upload-demo"
|
|
|
+ action=""
|
|
|
+ :limit="1"
|
|
|
+ :before-upload="beforeFileUpload"
|
|
|
+ :http-request="uploadRequireDoc"
|
|
|
+ :file-list="taskJson"
|
|
|
+ multiple
|
|
|
+ >
|
|
|
+ <i class="el-icon-upload"></i>
|
|
|
+ <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
|
|
|
+ <div class="el-upload__tip" slot="tip">只能上传Json文件,且不超过100MB</div>
|
|
|
+ </el-upload>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="showInputTaskModal = false">取 消</el-button>
|
|
|
- <el-button type="primary" @click="showInputTaskModal = false">确 定</el-button>
|
|
|
- </span>
|
|
|
+ <el-button @click="showImportTaskModal = false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="showImportTaskModal = false">确 定</el-button>
|
|
|
+ </span>
|
|
|
</el-dialog>
|
|
|
|
|
|
</div>
|
|
|
@@ -163,7 +176,7 @@ export default {
|
|
|
data() {
|
|
|
return {
|
|
|
statisticData: {},
|
|
|
- showInputTaskModal:false,
|
|
|
+ showImportTaskModal:false,
|
|
|
loading: false,
|
|
|
unFinishedTaskList: [],
|
|
|
finishedTaskList: [],
|
|
|
@@ -192,12 +205,12 @@ export default {
|
|
|
},
|
|
|
isLogin: false,
|
|
|
showCreateData: false,
|
|
|
- showAcceptData: false
|
|
|
+ showAcceptData: false,
|
|
|
+ taskJson:[]
|
|
|
}
|
|
|
},
|
|
|
mounted() {
|
|
|
this.$nextTick(() => {
|
|
|
- console.log('nexttick')
|
|
|
this.init();
|
|
|
this.checkCreateProjectAuth();
|
|
|
this.checkAcceptTaskAuth()
|
|
|
@@ -247,6 +260,36 @@ export default {
|
|
|
notify('error', '加载失败,请稍后重试')
|
|
|
})
|
|
|
},
|
|
|
+
|
|
|
+ beforeFileUpload(file) {
|
|
|
+ const isJSON = file.type === 'application/json'
|
|
|
+ if (!isJSON) {
|
|
|
+ this.$message.error('上传文件只能是 JSON 格式!')
|
|
|
+ }
|
|
|
+ if( file.size > 100 * 1024 * 1024){
|
|
|
+ this.$message.error('上传文件不超过100MB !')
|
|
|
+ }
|
|
|
+ return isJSON
|
|
|
+ },
|
|
|
+ uploadRequireDoc(param) {
|
|
|
+ this.showLoading()
|
|
|
+ const formData = new FormData()
|
|
|
+ let config = {
|
|
|
+ //添加请求头
|
|
|
+ headers: {'Content-Type': 'multipart/form-data'},
|
|
|
+ }
|
|
|
+ formData.append('file', param.file)
|
|
|
+ Http.upload(Apis.FILE.TASK_IMPORT, formData, config).then((res) => {
|
|
|
+ this.hideLoading()
|
|
|
+ notify('success', '导入任务成功')
|
|
|
+ this.taskJson.push(res.data)
|
|
|
+ this.showImportTaskModal = false;
|
|
|
+ }).catch((error) => {
|
|
|
+ this.hideLoading()
|
|
|
+ notify('error', '导入任务失败:' + error.data)
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
setUserInfo() {
|
|
|
if (storageGet('user') != null) {
|
|
|
this.isLogin = true;
|