setting.php 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. <?php
  2. /**
  3. * @link:http://www.gdqijianshi.com/
  4. * @copyright: Copyright (c) 2020 广东七件事集团
  5. * Created by PhpStorm
  6. * Author: lun
  7. * Date: 2021-10-23
  8. * Time: 16:11
  9. */
  10. ?>
  11. <div id="app" v-cloak>
  12. <el-card class="box-card" v-loading="loading" shadow="never" style="border:0;min-width: 1500px;" body-style="background-color: #f3f3f3;padding: 10px 0 0;">
  13. <div slot="header">
  14. <div>
  15. <span>设置</span>
  16. </div>
  17. </div>
  18. <div class="form_box">
  19. <el-form :model="ruleForm" size="small" ref="ruleForm" label-width="150px">
  20. <el-card shadow="never">
  21. <div slot="header">
  22. <div>
  23. <span>基础设置</span>
  24. </div>
  25. </div>
  26. <div>
  27. <el-row>
  28. <el-col :span="16">
  29. <el-form-item label="启用" style="margin-bottom: 0">
  30. <div>
  31. <el-switch v-model="ruleForm.is_enable" :active-value="1" :inactive-value="0"></el-switch>
  32. </div>
  33. </el-form-item>
  34. <el-form-item label="促销奖设置" style="margin-bottom: 0">
  35. <div>
  36. <el-switch v-model="ruleForm.is_enable_promote_reward" :active-value="1" :inactive-value="0">
  37. </el-switch>
  38. </div>
  39. </el-form-item>
  40. <el-form-item prop="compute_period" label="业绩结算">
  41. <el-col :span="8" style="width: 100%;">
  42. <el-radio-group v-model="ruleForm.compute_period" size="small">
  43. <el-radio :label="0" border>按月结算</el-radio>
  44. </el-radio-group>
  45. </el-col>
  46. </el-form-item>
  47. <el-form-item label="门店管理奖">
  48. <el-switch v-model="ruleForm.is_enable_store_manage_reward" :active-value="1" :inactive-value="0"></el-switch>
  49. </el-form-item>
  50. <el-form-item label="管理奖比例" v-if="ruleForm.is_enable_store_manage_reward == 1">
  51. <el-input v-model="ruleForm.manage_reward_rate" style="width: 200px;" @key>
  52. <template slot="append">%</template>
  53. </el-input>
  54. </el-form-item>
  55. <el-form-item label="核销码背景" prop="background_url">
  56. <com-attachment v-if="!ruleForm.background_url" :multiple="false" :max="1" type="images" @selected="coverPic">
  57. <div class="card-upload">
  58. <i class="el-icon-plus"></i>
  59. </div>
  60. </com-attachment>
  61. <div class="card-coverimg" v-else>
  62. <el-image style="width: 80px; height: 80px" :src="ruleForm.background_url"></el-image>
  63. <el-button @click="delPic('background_url')" class="icon-close" type="primary" size="mini" icon="el-icon-close" circle></el-button>
  64. </div>
  65. <p class="tips-text">建议尺寸:700px*350px 格式:JPG</p>
  66. </el-form-item>
  67. </el-col>
  68. </el-row>
  69. </div>
  70. </el-card>
  71. </el-form>
  72. <el-button :loading="btnLoading" class="button-item" type="primary" style="margin-top: 24px;" @click="store('ruleForm')" size="small">保存
  73. </el-button>
  74. </div>
  75. </el-card>
  76. </div>
  77. <script>
  78. const app = new Vue({
  79. el: '#app',
  80. data() {
  81. return {
  82. loading: false,
  83. btnLoading: false,
  84. ruleForm: {
  85. is_enable: 0,
  86. is_enable_promote_reward: 0,
  87. compute_period:0,
  88. is_enable_store_manage_reward:0,
  89. manage_reward_rate:0,
  90. background_url:'',
  91. },
  92. }
  93. },
  94. mounted: function() {
  95. this.loadData();
  96. },
  97. methods: {
  98. loadData() {
  99. this.loading = true;
  100. request({
  101. params: {
  102. r: 'write-off/default/setting',
  103. },
  104. method: 'get'
  105. }).then(e => {
  106. this.loading = false;
  107. if (e.data.code == 0 && !isEmpty(e.data.data)) {
  108. this.ruleForm = Object.assign(this.ruleForm, e.data.data);
  109. }
  110. }).catch(e => {
  111. this.loading = false;
  112. })
  113. },
  114. store(formName) {
  115. this.$refs[formName].validate((valid) => {
  116. if (valid) {
  117. this.btnLoading = true;
  118. request({
  119. params: {
  120. r: 'write-off/default/setting',
  121. },
  122. method: 'post',
  123. data: this.ruleForm
  124. }).then(e => {
  125. this.btnLoading = false;
  126. if (e.data.code == 0) {
  127. this.$message.success(e.data.msg);
  128. } else {
  129. this.$message.error(e.data.msg);
  130. }
  131. }).catch(e => {
  132. this.$message.error(e);
  133. this.btnLoading = false;
  134. })
  135. } else {
  136. this.btnLoading = false;
  137. console.log('error submit!!');
  138. return false;
  139. }
  140. });
  141. },
  142. coverPic(e) { // 选择图片
  143. this.ruleForm.background_url = e[0].url
  144. },
  145. delPic(type, index) { // 删除图片
  146. switch (type) {
  147. case 'background_url':
  148. this.ruleForm.background_url = ''
  149. break;
  150. default:
  151. break;
  152. }
  153. },
  154. }
  155. });
  156. </script>