auto-cancel-order.vue 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <template>
  2. <el-form :model="form" class="common-form" label-width="auto">
  3. <el-form-item label="已扫码-待提交:">
  4. <div class="flex items-center">
  5. <el-checkbox v-model="form.submitSwitch" :true-label="1" :false-label="0">开启</el-checkbox>
  6. <ele-text class="ml-6">
  7. 待提交状态的订单,在距离最后一次扫码
  8. <el-input v-model="form.submitHours" placeholder="请输入" clearable style="width: 100px" />
  9. 小时后,系统自动取消订单。
  10. </ele-text>
  11. <ele-text type="info" class="ml-6">取消后不可恢复订单</ele-text>
  12. </div>
  13. </el-form-item>
  14. <el-form-item label="已初审-待上门取件:">
  15. <div class="flex items-center">
  16. <el-checkbox v-model="form.pickUpSwitch" :true-label="1" :false-label="0">开启</el-checkbox>
  17. <ele-text class="ml-6">
  18. 待上门取件的订单,路由信息
  19. <el-input v-model="form.pickUpDays" placeholder="请输入" clearable style="width: 100px" />
  20. 天未更新时,系统自动取消回收订单。
  21. </ele-text>
  22. <ele-text type="info" class="ml-6">取消后3个月内可恢复订单</ele-text>
  23. </div>
  24. </el-form-item>
  25. <el-form-item>
  26. <el-button type="success" style="width: 100px" plain @click="onSubmit">保存</el-button>
  27. </el-form-item>
  28. </el-form>
  29. </template>
  30. <script setup>
  31. import { reactive, watch } from 'vue';
  32. import { ElMessage } from 'element-plus';
  33. import request from '@/utils/request';
  34. const props = defineProps({
  35. settings: {
  36. type: Object,
  37. default: () => ({})
  38. }
  39. });
  40. const form = reactive({
  41. submitSwitch: 0,
  42. submitHours: '',
  43. pickUpSwitch: 0,
  44. pickUpDays: ''
  45. });
  46. watch(() => props.settings, (newVal) => {
  47. if (newVal) {
  48. form.submitSwitch = newVal.autoCancelSubmitSwitch;
  49. form.submitHours = newVal.autoCancelSubmitHours;
  50. form.pickUpSwitch = newVal.autoCancelPickUpSwitch;
  51. form.pickUpDays = newVal.autoCancelPickUpDays;
  52. }
  53. }, { immediate: true, deep: true });
  54. const onSubmit = () => {
  55. request.post('/recycle/manage/overall/update/autoCancel', {
  56. submitSwitch: form.submitSwitch,
  57. submitHours: form.submitHours,
  58. pickUpSwitch: form.pickUpSwitch,
  59. pickUpDays: form.pickUpDays
  60. }).then(res => {
  61. if (res.data.code === 200) {
  62. ElMessage.success('保存成功');
  63. } else {
  64. ElMessage.error(res.data.msg)
  65. }
  66. });
  67. };
  68. </script>