|
@@ -9,9 +9,9 @@
|
|
|
:closeOnOverlayClick="false"
|
|
|
:close-btn="true"
|
|
|
:cancel-btn="null"
|
|
|
- @close="visible = false"
|
|
|
+ @close="drawerOnClose"
|
|
|
confirmBtn="关闭"
|
|
|
- @confirm="confirm"
|
|
|
+ @confirm="drawerOnClose"
|
|
|
>
|
|
|
<t-collapse class="sop-step-mid" defaultExpandAll>
|
|
|
<t-collapse-panel disabled>
|
|
@@ -54,8 +54,14 @@
|
|
|
</t-collapse-panel>
|
|
|
</t-collapse>
|
|
|
<div class="pt-20px" style="border-top: 1px solid #f0f0f0">
|
|
|
- <t-button @click="editProcessVar">编辑</t-button>
|
|
|
- <t-button class="ml-10px" variant="outline" @click="saveProcessVar"
|
|
|
+ <t-button @click="editProcessVar" v-if="!radioEditStatus">编辑</t-button>
|
|
|
+ <t-button @click="editProcessVar" v-else>取消</t-button>
|
|
|
+ <t-button
|
|
|
+ class="ml-10px animate__animated"
|
|
|
+ variant="outline"
|
|
|
+ @click="saveProcessVar"
|
|
|
+ :disabled="!radioEditStatus"
|
|
|
+ :class="{ animate__shakeX: rejectClose }"
|
|
|
>保存</t-button
|
|
|
>
|
|
|
</div>
|
|
@@ -326,9 +332,11 @@ const {
|
|
|
false
|
|
|
);
|
|
|
const processVar = ref([]);
|
|
|
+const radioEditStatus = ref(false);
|
|
|
const editProcessVar = () => {
|
|
|
+ radioEditStatus.value = !radioEditStatus.value;
|
|
|
processVar.value.forEach((item) => {
|
|
|
- item.writable = true;
|
|
|
+ item.writable = radioEditStatus.value;
|
|
|
});
|
|
|
};
|
|
|
const saveProcessVar = () => {
|
|
@@ -344,9 +352,11 @@ const saveProcessVar = () => {
|
|
|
processVar: JSON.stringify(arr),
|
|
|
}).then(() => {
|
|
|
MessagePlugin.success('保存成功');
|
|
|
+ radioEditStatus.value = false;
|
|
|
processVar.value.forEach((item) => {
|
|
|
item.writable = false;
|
|
|
});
|
|
|
+ rejectClose.value = false;
|
|
|
});
|
|
|
};
|
|
|
watch(visible, (val) => {
|
|
@@ -380,4 +390,20 @@ const confirm = () => {
|
|
|
emit('confirm');
|
|
|
visible.value = false;
|
|
|
};
|
|
|
+const rejectClose = ref(false);
|
|
|
+const drawerOnClose = () => {
|
|
|
+ if (radioEditStatus.value) {
|
|
|
+ rejectClose.value = false;
|
|
|
+
|
|
|
+ MessagePlugin.warning(
|
|
|
+ '请先保存属性【部署方式】【阅卷方式】【扫描场地网络】'
|
|
|
+ );
|
|
|
+ setTimeout(() => {
|
|
|
+ rejectClose.value = true;
|
|
|
+ }, 0);
|
|
|
+ return false;
|
|
|
+ } else {
|
|
|
+ visible.value = false;
|
|
|
+ }
|
|
|
+};
|
|
|
</script>
|