index.blade.php 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. @extends('layouts.base')
  2. @section('content')
  3. @section('title', '打印机')
  4. <link rel="stylesheet" type="text/css" href="{{static_url('yunshop/goods/vue-goods1.css')}}" />
  5. <div id="app">
  6. <div class="all">
  7. <div class="vue-head">
  8. <div class="vue-main-title">
  9. <div class="vue-main-title-left"></div>
  10. <div class="vue-main-title-content">打印机设置</div>
  11. </div>
  12. <div style="padding: 50px 100px;">
  13. <el-form ref="form" :model="form" label-width="10%">
  14. <el-form-item label="打印机">
  15. <el-row :gutter="3">
  16. <el-col :span="12">
  17. <div class="grid-content bg-purple">
  18. <template>
  19. <el-select v-model="form.printer_ids" multiple placeholder="请选择">
  20. <el-option
  21. v-for="item in printers"
  22. :key="item.id"
  23. :label="item.title"
  24. :value="item.id">
  25. </el-option>
  26. </el-select>
  27. </template>
  28. </div>
  29. </el-col>
  30. </el-row>
  31. </el-form-item>
  32. <el-form-item label="打印模板">
  33. <el-row :gutter="3">
  34. <el-col :span="12">
  35. <template>
  36. <el-select clearable style="width: 100%" v-model="form.temp_id" placeholder="请选择打印模板">
  37. <el-option
  38. v-for="item in temps"
  39. :key="item.id"
  40. :label="item.title"
  41. :value="item.id">
  42. </el-option>
  43. </el-select>
  44. </template>
  45. </el-col>
  46. </el-row>
  47. </el-form-item>
  48. <el-form-item label="打印模板">
  49. <el-row :gutter="3">
  50. <el-col :span="12">
  51. <template>
  52. <el-checkbox-group v-model="form.print_type">
  53. <el-checkbox label="1">订单下单</el-checkbox>
  54. <el-checkbox label="2">订单支付</el-checkbox>
  55. <el-checkbox label="3">售后订单</el-checkbox>
  56. <el-checkbox label="4">手动打印</el-checkbox>
  57. </el-checkbox-group>
  58. <p style="color: red">注: 手动打印勾选后自提点,门店自提点订单核销员扫码显示打印小票按钮</p>
  59. </template>
  60. </el-col>
  61. </el-row>
  62. </el-form-item>
  63. <el-form-item label="打印序号">
  64. <el-switch v-model="form.is_serial_number" :active-value="1" :inactive-value="0"></el-switch>
  65. <div class="tip left-style">开启后小票右上角按数字顺序排,每日零时重新从1开始排</div>
  66. </el-form-item>
  67. </el-form>
  68. </div>
  69. </div>
  70. <div class="vue-page">
  71. <div class="vue-center">
  72. <el-button type="primary" @click.native.prevent="onSubmit"
  73. >提交
  74. </el-button>
  75. </div>
  76. </div>
  77. </div>
  78. </div>
  79. <script>
  80. var app = new Vue({
  81. el: '#app',
  82. delimiters: ['[[', ']]'],
  83. data() {
  84. let printers = JSON.parse('{!! $printers !!}');
  85. let temps = JSON.parse('{!! $temps !!}');
  86. let plugin_id = JSON.parse('{!! $plugin_id !!}');
  87. let print_set = JSON.parse('{!! $print_set !!}');
  88. console.log(print_set);
  89. return {
  90. printers: printers,
  91. form: {
  92. plugin_id: plugin_id,
  93. print_type: [],
  94. ...print_set,
  95. },
  96. formLoading: false,
  97. temps: temps,
  98. }
  99. },
  100. mounted: function () {
  101. },
  102. methods: {
  103. onSubmit() {
  104. if (this.formLoading) {
  105. return;
  106. }
  107. this.$refs.form.validate((valid) => {
  108. if (valid) {
  109. this.$http.post("{!! $sub_url !!}", {'setting': this.form}).then(response => {
  110. if (response.data.result) {
  111. this.$message({
  112. message: response.data.msg,
  113. type: 'success'
  114. });
  115. window.location.reload();
  116. } else {
  117. this.$message({
  118. message: response.data.msg,
  119. type: 'error'
  120. });
  121. }
  122. this.formLoading = false;
  123. }, response => {
  124. console.log(response);
  125. });
  126. } else {
  127. console.log('error submit!!');
  128. return false;
  129. }
  130. });
  131. }
  132. }
  133. });
  134. </script>
  135. @endsection