|
|
@@ -7,7 +7,7 @@
|
|
|
@close="closeDrawer"
|
|
|
destroy-on-close
|
|
|
>
|
|
|
- <div v-if="lists.length == 0 && checkMap.get(recordId).length == 0">
|
|
|
+ <div v-if="lists.length == 0 && checks.length == 0">
|
|
|
<div style="text-align:center;padding:100px 0; font-size: 14px; color: #4a4646" v-if="!edit">暂无数据</div>
|
|
|
</div>
|
|
|
<div style="margin: 30px">
|
|
|
@@ -38,7 +38,7 @@
|
|
|
</div>
|
|
|
</el-timeline-item>
|
|
|
</el-timeline>
|
|
|
- <!-- <el-timeline v-else-if="edit">
|
|
|
+ <el-timeline v-else-if="edit">
|
|
|
<el-timeline-item
|
|
|
:timestamp="tipsType[index]"
|
|
|
placement="top"
|
|
|
@@ -56,15 +56,10 @@
|
|
|
<multi-upload-regu v-model="item.img"></multi-upload-regu>
|
|
|
</div>
|
|
|
</el-timeline-item>
|
|
|
- </el-timeline> -->
|
|
|
+ </el-timeline>
|
|
|
|
|
|
- <el-timeline reverse v-if="checkMap.get(recordId).length > 0 && !edit">
|
|
|
- <el-timeline-item
|
|
|
- :timestamp="item.createdAt"
|
|
|
- placement="top"
|
|
|
- v-for="item in checkMap.get(recordId)"
|
|
|
- :key="item.id"
|
|
|
- >
|
|
|
+ <el-timeline reverse v-if="checks.length > 0 && !edit">
|
|
|
+ <el-timeline-item :timestamp="item.createdAt" placement="top" v-for="item in checks" :key="item.id">
|
|
|
<div style="font-size: 14px; color: #4a4646">
|
|
|
{{ item.content }}
|
|
|
</div>
|
|
|
@@ -80,20 +75,35 @@
|
|
|
</el-image>
|
|
|
</el-timeline-item>
|
|
|
</el-timeline>
|
|
|
- <div v-else-if="edit">
|
|
|
- <div v-for="item in checkMap.get(recordId)" :key="item.id">
|
|
|
- <el-input type="textarea" :rows="2" v-model="item.content" style="width: 90%"></el-input>
|
|
|
- <el-button type="danger" icon="el-icon-delete" circle style="margin:5px"></el-button>
|
|
|
- <div style="margin-top:5px">
|
|
|
- <multi-upload-regu v-model="item.file"></multi-upload-regu>
|
|
|
+ <div v-if="edit">
|
|
|
+ <div v-for="(item, index) in checks" :key="item.id" class="list-item">
|
|
|
+ <div class="title">
|
|
|
+ <span>备注{{ index + 1 }}</span>
|
|
|
+ </div>
|
|
|
+ <el-input class="list-info" type="textarea" v-model="item.content"></el-input>
|
|
|
+ <multi-upload-regu class="list-info" v-model="item.file"></multi-upload-regu>
|
|
|
+ <div class="list-add">
|
|
|
+ <el-button type="danger" @click="onDeleteForm(index)" size="mini" plain>删除</el-button>
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ @click="onAddForm"
|
|
|
+ v-if="index === checks.length - 1"
|
|
|
+ size="mini"
|
|
|
+ plain
|
|
|
+ >新增备注</el-button
|
|
|
+ >
|
|
|
</div>
|
|
|
</div>
|
|
|
- <el-button type="primary" round size="mini" style="margin-bottom: 10px">添加</el-button>
|
|
|
+ <div v-if="checks.length == 0">
|
|
|
+ <el-button type="primary" @click="onAddForm" size="mini" plain style="margin-bottom: 14px"
|
|
|
+ >新增备注</el-button
|
|
|
+ >
|
|
|
+ </div>
|
|
|
</div>
|
|
|
|
|
|
- <div style="margin-top: 10px">
|
|
|
+ <div>
|
|
|
<el-button @click="edit = true" size="mini" plain v-if="!edit">编辑</el-button>
|
|
|
- <el-button @click="saveRow(recordId)" type="success" size="mini" plain v-if="edit" :saving="saving"
|
|
|
+ <el-button @click="submit" type="success" size="mini" plain v-if="edit" :saving="saving"
|
|
|
>保存</el-button
|
|
|
>
|
|
|
<el-button @click="edit = false" size="mini" plain v-if="edit">取消</el-button>
|
|
|
@@ -109,7 +119,7 @@ export default {
|
|
|
data() {
|
|
|
return {
|
|
|
lists: [],
|
|
|
- checkMap: new Map(),
|
|
|
+ // checkMap: new Map(),
|
|
|
tipsType: {
|
|
|
examOrganization: '是否履行考前备案手续(此项为否,不再检查下面内容)',
|
|
|
examSite: '是否在考场明显位置张贴《考级简章》',
|
|
|
@@ -124,7 +134,8 @@ export default {
|
|
|
},
|
|
|
recordId: '',
|
|
|
edit: false,
|
|
|
- saving: false
|
|
|
+ saving: false,
|
|
|
+ checks: []
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
|
@@ -161,10 +172,7 @@ export default {
|
|
|
this.expand(row);
|
|
|
},
|
|
|
expand(row) {
|
|
|
- let checks = new Map([...this.checkMap]);
|
|
|
- // if (checks.has(row)) {
|
|
|
- // return;
|
|
|
- // }
|
|
|
+ // let checks = new Map([...this.checkMap]);
|
|
|
this.$http
|
|
|
.post(
|
|
|
'recordCheck/all',
|
|
|
@@ -176,18 +184,25 @@ export default {
|
|
|
{ body: 'json' }
|
|
|
)
|
|
|
.then(res => {
|
|
|
- if (!res.empty) {
|
|
|
- checks.set(row, res.content);
|
|
|
- } else {
|
|
|
- return Promise.reject();
|
|
|
+ if (res.content.lenght > 0) {
|
|
|
+ this.checks = res.content;
|
|
|
}
|
|
|
+ // if (!res.empty) {
|
|
|
+ // checks.set(row, res.content);
|
|
|
+
|
|
|
+ // } else {
|
|
|
+ // return Promise.reject();
|
|
|
+ // }
|
|
|
})
|
|
|
.catch(e => {
|
|
|
- checks.set(row, []);
|
|
|
- })
|
|
|
- .then(() => {
|
|
|
- this.checkMap = new Map(checks);
|
|
|
+ // checks.set(row, []);
|
|
|
+ console.log(e);
|
|
|
});
|
|
|
+ // .then(() => {
|
|
|
+ // this.checkMap = new Map(checks);
|
|
|
+ // console.log(this.checkMap);
|
|
|
+ // console.log(this.checkMap.get(row));
|
|
|
+ // });
|
|
|
this.$http
|
|
|
.post(
|
|
|
'recordExpertAudit/all',
|
|
|
@@ -222,26 +237,32 @@ export default {
|
|
|
this.$http
|
|
|
.post('/recordCheck/batchSave', { checks: this.saveOtherJson })
|
|
|
.then(res => {
|
|
|
- this.saving = false;
|
|
|
- this.$message.success('成功');
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$http.post('/recordExpertAudit/batchSave', this.dataCon, { body: 'json' });
|
|
|
+ });
|
|
|
+ this.$message.success('受理成功');
|
|
|
+ this.getData();
|
|
|
})
|
|
|
.catch(e => {
|
|
|
console.log(e);
|
|
|
this.saving = false;
|
|
|
this.$message.error(e.error);
|
|
|
});
|
|
|
- this.$http
|
|
|
- .post('/recordExpertAudit/batchSave', this.dataCon, { body: 'json' })
|
|
|
- .then(res => {
|
|
|
- this.saving = false;
|
|
|
- this.$message.success('成功');
|
|
|
- this.edit = false;
|
|
|
+ },
|
|
|
+ onAddForm() {
|
|
|
+ this.checks.push({
|
|
|
+ content: '',
|
|
|
+ file: []
|
|
|
+ });
|
|
|
+ },
|
|
|
+ onDeleteForm(index) {
|
|
|
+ this.$alert('删除将无法恢复,确认要删除么?', '警告', { type: 'warning' })
|
|
|
+ .then(() => {
|
|
|
+ const checks = [...this.checks];
|
|
|
+ checks.splice(index, 1);
|
|
|
+ this.checks = checks;
|
|
|
})
|
|
|
- .catch(e => {
|
|
|
- console.log(e);
|
|
|
- this.saving = false;
|
|
|
- this.$message.error(e.error);
|
|
|
- });
|
|
|
+ .catch(e => {});
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
@@ -271,4 +292,17 @@ export default {
|
|
|
/deep/.el-radio__input.is-disabled + span.el-radio__label {
|
|
|
color: #606266; // #409EFF;
|
|
|
}
|
|
|
+.list-info {
|
|
|
+ width: 480px;
|
|
|
+ margin-top: 10px;
|
|
|
+ display: block;
|
|
|
+}
|
|
|
+
|
|
|
+.list-item {
|
|
|
+ padding-bottom: 30px;
|
|
|
+ .title {
|
|
|
+ font-size: 16px;
|
|
|
+ font-weight: bold;
|
|
|
+ }
|
|
|
+}
|
|
|
</style>
|