setting.vue 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. <template> 
  2. <el-card class="form-container" shadow="never">
  3. <el-form :model="orderSetting"
  4. ref="orderSettingForm"
  5. :rules="rules"
  6. label-width="150px">
  7. <el-form-item label="秒杀订单超过:" prop="flashOrderOvertime">
  8. <el-input v-model="orderSetting.flashOrderOvertime" class="input-width">
  9. <template slot="append">分</template>
  10. </el-input>
  11. <span class="note-margin">未付款,订单自动关闭</span>
  12. </el-form-item>
  13. <el-form-item label="正常订单超过:" prop="normalOrderOvertime">
  14. <el-input v-model="orderSetting.normalOrderOvertime" class="input-width">
  15. <template slot="append">分</template>
  16. </el-input>
  17. <span class="note-margin">未付款,订单自动关闭</span>
  18. </el-form-item>
  19. <el-form-item label="发货超过:" prop="confirmOvertime">
  20. <el-input v-model="orderSetting.confirmOvertime" class="input-width">
  21. <template slot="append">天</template>
  22. </el-input>
  23. <span class="note-margin">未收货,订单自动完成</span>
  24. </el-form-item>
  25. <el-form-item label="订单完成超过:" prop="finishOvertime">
  26. <el-input v-model="orderSetting.finishOvertime" class="input-width">
  27. <template slot="append">天</template>
  28. </el-input>
  29. <span class="note-margin">自动结束交易,不能申请售后</span>
  30. </el-form-item>
  31. <el-form-item label="订单完成超过:" prop="commentOvertime">
  32. <el-input v-model="orderSetting.commentOvertime" class="input-width">
  33. <template slot="append">天</template>
  34. </el-input>
  35. <span class="note-margin">自动五星好评</span>
  36. </el-form-item>
  37. <el-form-item>
  38. <el-button
  39. @click="confirm('orderSettingForm')"
  40. type="primary">提交</el-button>
  41. </el-form-item>
  42. </el-form>
  43. </el-card>
  44. </template>
  45. <script>
  46. import {getOrderSetting,updateOrderSetting} from '@/api/orderSetting';
  47. const defaultOrderSetting = {
  48. id: null,
  49. flashOrderOvertime: 0,
  50. normalOrderOvertime: 0,
  51. confirmOvertime: 0,
  52. finishOvertime: 0,
  53. commentOvertime: 0
  54. };
  55. const checkTime = (rule, value, callback) => {
  56. if (!value) {
  57. return callback(new Error('时间不能为空'));
  58. }
  59. console.log("checkTime",value);
  60. let intValue = parseInt(value);
  61. if (!Number.isInteger(intValue)) {
  62. return callback(new Error('请输入数字值'));
  63. }
  64. callback();
  65. };
  66. export default {
  67. name: 'orderSetting',
  68. data() {
  69. return {
  70. orderSetting: Object.assign({}, defaultOrderSetting),
  71. rules: {
  72. flashOrderOvertime:{validator: checkTime, trigger: 'blur' },
  73. normalOrderOvertime:{validator: checkTime, trigger: 'blur' },
  74. confirmOvertime: {validator: checkTime, trigger: 'blur' },
  75. finishOvertime: {validator: checkTime, trigger: 'blur' },
  76. commentOvertime:{validator: checkTime, trigger: 'blur' }
  77. }
  78. }
  79. },
  80. created(){
  81. this.getDetail();
  82. },
  83. methods:{
  84. confirm(formName){
  85. this.$refs[formName].validate((valid) => {
  86. if (valid) {
  87. this.$confirm('是否要提交修改?', '提示', {
  88. confirmButtonText: '确定',
  89. cancelButtonText: '取消',
  90. type: 'warning'
  91. }).then(() => {
  92. updateOrderSetting(1,this.orderSetting).then(response=>{
  93. this.$message({
  94. type: 'success',
  95. message: '提交成功!',
  96. duration:1000
  97. });
  98. })
  99. });
  100. } else {
  101. this.$message({
  102. message: '提交参数不合法',
  103. type: 'warning'
  104. });
  105. return false;
  106. }
  107. });
  108. },
  109. getDetail(){
  110. getOrderSetting(1).then(response=>{
  111. this.orderSetting=response.data;
  112. })
  113. }
  114. }
  115. }
  116. </script>
  117. <style scoped>
  118. .input-width {
  119. width: 50%;
  120. }
  121. .note-margin {
  122. margin-left: 15px;
  123. }
  124. </style>