|
@@ -28,7 +28,7 @@
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
<div>
|
|
<div>
|
|
<el-dropdown trigger="click" split-button type="primary" size="small" @command="handleCommand1($event,scope.row)" >
|
|
<el-dropdown trigger="click" split-button type="primary" size="small" @command="handleCommand1($event,scope.row)" >
|
|
- <p @click="edit(scope.row)">编辑</p>
|
|
|
|
|
|
+ <p @click="edit(scope.row)">{{ scope.row.status=='进行中'?'编辑':'查看'}}</p>
|
|
<el-dropdown-menu slot="dropdown" class="text-align_center">
|
|
<el-dropdown-menu slot="dropdown" class="text-align_center">
|
|
<el-dropdown-item command="1" v-if="scope.row.status=='进行中'">登记结果</el-dropdown-item>
|
|
<el-dropdown-item command="1" v-if="scope.row.status=='进行中'">登记结果</el-dropdown-item>
|
|
<el-dropdown-item command="2" v-else>查看结果</el-dropdown-item>
|
|
<el-dropdown-item command="2" v-else>查看结果</el-dropdown-item>
|
|
@@ -62,14 +62,18 @@
|
|
<el-dialog
|
|
<el-dialog
|
|
title="登记结果"
|
|
title="登记结果"
|
|
:visible.sync="registerVisible"
|
|
:visible.sync="registerVisible"
|
|
- width="1100px"
|
|
|
|
|
|
+ :width="registerForm.type==1?'1100px':'500px'"
|
|
:before-close="closeRegister"
|
|
:before-close="closeRegister"
|
|
>
|
|
>
|
|
<div>
|
|
<div>
|
|
|
|
+ <div style="display:flex;justify-content:flex-end;margin-bottom:10px">
|
|
|
|
+ <el-button type="primary" size="small" v-if="registerForm.type==2" @click="editRegister">{{ registerForm.edit?'保存':'编辑' }}</el-button>
|
|
|
|
+ </div>
|
|
|
|
+
|
|
<el-form :model="registerForm" label-width="100px">
|
|
<el-form :model="registerForm" label-width="100px">
|
|
- <el-form-item label="结论" prop="conclusion">
|
|
|
|
|
|
+ <el-form-item label="结论:" prop="conclusion">
|
|
<el-input
|
|
<el-input
|
|
- v-if="registerForm.type==1"
|
|
|
|
|
|
+ v-if="registerForm.type==1 || registerForm.edit == true"
|
|
v-model="registerForm.conclusion"
|
|
v-model="registerForm.conclusion"
|
|
type="textarea"
|
|
type="textarea"
|
|
autocomplete="off"
|
|
autocomplete="off"
|
|
@@ -77,14 +81,14 @@
|
|
></el-input>
|
|
></el-input>
|
|
<span v-else>{{ registerForm.conclusion }}</span>
|
|
<span v-else>{{ registerForm.conclusion }}</span>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="上传附件">
|
|
|
|
- <div v-if="registerForm.reportFiles" class="upload-file">
|
|
|
|
- <div v-for="item in registerForm.reportFiles" style="margin:0;display:flex;justify-content:space-around;">
|
|
|
|
|
|
+ <el-form-item label="上传附件:">
|
|
|
|
+ <div v-if="registerForm.filesVOs" class="upload-file">
|
|
|
|
+ <div v-for="item in registerForm.filesVOs" style="margin:0;display:flex;justify-content:space-around;">
|
|
<p style="margin:0;width:calc(100% - 40px);overflow: hidden;white-space: nowrap;text-overflow:ellipsis;cursor: pointer">{{item.name?item.name+'.'+item.suffix:item.fileName}}</p>
|
|
<p style="margin:0;width:calc(100% - 40px);overflow: hidden;white-space: nowrap;text-overflow:ellipsis;cursor: pointer">{{item.name?item.name+'.'+item.suffix:item.fileName}}</p>
|
|
<Menu :data="item" @delFile="delFile"></Menu>
|
|
<Menu :data="item" @delFile="delFile"></Menu>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <el-upload v-if="registerForm.type==1" ref="upload" class="upload-file" drag action="#" :auto-upload="false" :show-file-list="true" :on-change="onChange" multiple :on-preview="handlePreview" :on-remove="handleRemove">
|
|
|
|
|
|
+ <el-upload v-if="registerForm.type==1 || registerForm.edit == true" ref="upload" class="upload-file" drag action="#" :auto-upload="false" :show-file-list="true" :on-change="onChange" multiple :on-preview="handlePreview" :on-remove="handleRemove">
|
|
<i :class="!file ? 'el-icon-upload' : 'el-icon-refresh'"></i>
|
|
<i :class="!file ? 'el-icon-upload' : 'el-icon-refresh'"></i>
|
|
<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
|
|
<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
|
|
<div class="el-upload__tip" slot="tip"></div>
|
|
<div class="el-upload__tip" slot="tip"></div>
|
|
@@ -93,9 +97,12 @@
|
|
</el-form>
|
|
</el-form>
|
|
<addMatter :type="type" :reportId="reportId" :sign="matterSign" @value="getMatter" v-if="registerForm.type==1"></addMatter>
|
|
<addMatter :type="type" :reportId="reportId" :sign="matterSign" @value="getMatter" v-if="registerForm.type==1"></addMatter>
|
|
</div>
|
|
</div>
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
|
|
|
+ <div slot="footer" class="dialog-footer" v-if="registerForm.type==1 || registerForm.edit == true">
|
|
<el-button @click="closeRegister">取 消</el-button>
|
|
<el-button @click="closeRegister">取 消</el-button>
|
|
- <el-button type="primary" @click="submitRegister">确 定</el-button>
|
|
|
|
|
|
+ <el-button type="primary" @click="submitRegister" :loading="btnLoading">确 定</el-button>
|
|
|
|
+ </div>
|
|
|
|
+ <div slot="footer" class="dialog-footer" v-else>
|
|
|
|
+ <el-button @click="closeRegister">关 闭</el-button>
|
|
</div>
|
|
</div>
|
|
</el-dialog>
|
|
</el-dialog>
|
|
</div>
|
|
</div>
|
|
@@ -111,6 +118,7 @@ export default {
|
|
props:['reportId'],
|
|
props:['reportId'],
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
|
|
+ btnLoading:false,
|
|
tableHeight:null,
|
|
tableHeight:null,
|
|
title:'',
|
|
title:'',
|
|
dialogVisible:false,
|
|
dialogVisible:false,
|
|
@@ -217,7 +225,15 @@ export default {
|
|
}else{
|
|
}else{
|
|
|
|
|
|
}
|
|
}
|
|
- this.deleteMatters(ids)
|
|
|
|
|
|
+ this.$confirm('此操作将永久删除, 是否继续?', '提示', {
|
|
|
|
+ confirmButtonText: '确定',
|
|
|
|
+ cancelButtonText: '取消',
|
|
|
|
+ type: 'warning'
|
|
|
|
+ }).then(() => {
|
|
|
|
+ this.deleteMatters(ids)
|
|
|
|
+ }).catch(() => {
|
|
|
|
+ });
|
|
|
|
+
|
|
},
|
|
},
|
|
//删除事项
|
|
//删除事项
|
|
deleteMatters(ids){
|
|
deleteMatters(ids){
|
|
@@ -243,13 +259,13 @@ export default {
|
|
},
|
|
},
|
|
//上传附件
|
|
//上传附件
|
|
onChange(file, fileList) {
|
|
onChange(file, fileList) {
|
|
- if(this.registerForm.reportFiles){
|
|
|
|
- var index3 = this.registerForm.reportFiles.findIndex(item=>{
|
|
|
|
|
|
+ if(this.registerForm.filesVOs){
|
|
|
|
+ var index3 = this.registerForm.filesVOs.findIndex(item=>{
|
|
return item.name+'.'+item.suffix == file.raw.name
|
|
return item.name+'.'+item.suffix == file.raw.name
|
|
})
|
|
})
|
|
if(index3!=-1){
|
|
if(index3!=-1){
|
|
|
|
|
|
- this.Already.push(this.registerForm.reportFiles[index3].name)
|
|
|
|
|
|
+ this.Already.push(this.registerForm.filesVOs[index3].name)
|
|
var index2 = fileList.reverse().findIndex(item=>{
|
|
var index2 = fileList.reverse().findIndex(item=>{
|
|
return item.raw.name == file.raw.name
|
|
return item.raw.name == file.raw.name
|
|
})
|
|
})
|
|
@@ -332,11 +348,14 @@ export default {
|
|
},
|
|
},
|
|
//移除已保存的文件
|
|
//移除已保存的文件
|
|
delFile(id){
|
|
delFile(id){
|
|
- var index = this.registerForm.reportFiles.findIndex(item=>{
|
|
|
|
|
|
+ var index = this.registerForm.filesVOs.findIndex(item=>{
|
|
return item.id == id
|
|
return item.id == id
|
|
})
|
|
})
|
|
if(index!=-1){
|
|
if(index!=-1){
|
|
- this.registerForm.reportFiles.splice(index,1)
|
|
|
|
|
|
+ this.registerForm.filesVOs.splice(index,1)
|
|
|
|
+ if(this.registerForm.type == 2 && !this.registerForm.edit){
|
|
|
|
+ this.submitRegister()
|
|
|
|
+ }
|
|
}
|
|
}
|
|
},
|
|
},
|
|
//打开登记结果弹窗
|
|
//打开登记结果弹窗
|
|
@@ -350,6 +369,9 @@ export default {
|
|
closeRegister(){
|
|
closeRegister(){
|
|
this.type = null
|
|
this.type = null
|
|
this.registerForm = {}
|
|
this.registerForm = {}
|
|
|
|
+ if(this.registerForm.type==1 || this.registerForm.edit){
|
|
|
|
+ this.$refs.upload.clearFiles()
|
|
|
|
+ }
|
|
this.registerVisible = false
|
|
this.registerVisible = false
|
|
},
|
|
},
|
|
//获取后续事项
|
|
//获取后续事项
|
|
@@ -357,11 +379,51 @@ export default {
|
|
this.registerForm.followUps = val
|
|
this.registerForm.followUps = val
|
|
this.matterSign = false
|
|
this.matterSign = false
|
|
},
|
|
},
|
|
|
|
+ //编辑事项结果
|
|
|
|
+ editRegister(){
|
|
|
|
+ this.$set(this.registerForm,'edit',!this.registerForm.edit)
|
|
|
|
+ },
|
|
//更新后续跟进事项结果
|
|
//更新后续跟进事项结果
|
|
submitRegister(){
|
|
submitRegister(){
|
|
this.matterSign = true
|
|
this.matterSign = true
|
|
this.$nextTick(()=>{
|
|
this.$nextTick(()=>{
|
|
- let formData = new FormData()
|
|
|
|
|
|
+ this.btnLoading = true
|
|
|
|
+ if(this.registerForm.followUps && this.registerForm.followUps.length>0){
|
|
|
|
+ try{
|
|
|
|
+ var keyList={
|
|
|
|
+ followUpName:'',
|
|
|
|
+ remark:'',
|
|
|
|
+ agent:'',
|
|
|
|
+ assistPerson:'',
|
|
|
|
+ timeLimit:''
|
|
|
|
+ }
|
|
|
|
+ this.registerForm.followUps.forEach(item=>{
|
|
|
|
+ var a = false
|
|
|
|
+ for(let key in keyList){
|
|
|
|
+ if(item[key] !='' && item[key] != null){
|
|
|
|
+ a = true
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if(a == true){
|
|
|
|
+ if(item.followUpName!='') {
|
|
|
|
+
|
|
|
|
+ }else{
|
|
|
|
+ throw new Error()
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ this.submitRegister1()
|
|
|
|
+ }catch(e){
|
|
|
|
+ this.$message.error('名称不能为空')
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ this.submitRegister1()
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+ submitRegister1(){
|
|
|
|
+ let formData = new FormData()
|
|
if(this.file){
|
|
if(this.file){
|
|
for (var i = 0; i < this.file.length; i++) {
|
|
for (var i = 0; i < this.file.length; i++) {
|
|
formData.append("files", this.file[i]);
|
|
formData.append("files", this.file[i]);
|
|
@@ -371,12 +433,13 @@ export default {
|
|
formData.append('register',JSON.stringify(this.registerForm))
|
|
formData.append('register',JSON.stringify(this.registerForm))
|
|
this.$api.register(formData).then(response=>{
|
|
this.$api.register(formData).then(response=>{
|
|
if(response.code == 200){
|
|
if(response.code == 200){
|
|
|
|
+ this.btnLoading = false
|
|
this.getList()
|
|
this.getList()
|
|
this.closeRegister()
|
|
this.closeRegister()
|
|
}
|
|
}
|
|
|
|
+ }).catch(error=>{
|
|
|
|
+ this.btnLoading = false
|
|
})
|
|
})
|
|
- })
|
|
|
|
-
|
|
|
|
}
|
|
}
|
|
},
|
|
},
|
|
}
|
|
}
|