setting.php 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. <?php
  2. /**
  3. * @link:http://www.gdqijianshi.com/
  4. * @copyright: Copyright (c) 2020 广东七件事集团
  5. * Created by PhpStorm
  6. * Author: ganxiaohao
  7. * Date: 2020-05-08
  8. * Time: 16:11
  9. */
  10. use common\helpers\ComponentHelper;
  11. ComponentHelper::loadComponentView('component/boss/com-dialog-select', dirname(__DIR__));
  12. ComponentHelper::loadComponentView('component/boss/com-select-cat', dirname(__DIR__));
  13. ?>
  14. <div id="app" v-cloak>
  15. <el-card class="box-card" v-loading="loading" shadow="never" style="border:0;min-width: 1500px;"
  16. body-style="background-color: #f3f3f3;padding: 10px 0 0;">
  17. <div slot="header">
  18. <div>
  19. <span>基础设置</span>
  20. </div>
  21. </div>
  22. <div class="form_box">
  23. <el-form :model="ruleForm" size="small" ref="ruleForm" label-width="150px">
  24. <el-card shadow="never">
  25. <div slot="header">
  26. <div>
  27. <span>股东设置</span>
  28. </div>
  29. </div>
  30. <div>
  31. <el-row>
  32. <el-col :span="16">
  33. <el-form-item label="启用股东提成" style="margin-bottom: 0">
  34. <div>
  35. <el-switch v-model="ruleForm.is_enable" :active-value="1" :inactive-value="0">
  36. </el-switch>
  37. </div>
  38. <br/>
  39. <div class="tips-text" style="line-height: 24px;">
  40. 门店是否开启股东分红
  41. </div>
  42. </el-form-item>
  43. <el-form-item prop="compute_type" label="佣金计算方式">
  44. <el-col :span="8" style="width:100%;">
  45. <el-radio-group v-model="ruleForm.compute_type" size="small">
  46. <el-radio :label="0" border>实际支付金额</el-radio>
  47. <el-radio :label="1" border>商品利润</el-radio>
  48. <el-radio :label="2" border>商品售价</el-radio>
  49. </el-radio-group>
  50. </el-col>
  51. <br/>
  52. <div class="tips-text" style="line-height: 24px;">
  53. 分红营业额的计算方式,如选择实际支付金额,如上——则计算该门店所有订单的支
  54. 付金额为营业额*5%等于董事等级的佣金,再平均分给该等级的所有人
  55. </div>
  56. </el-form-item>
  57. <el-form-item prop="settlement_method" label="结算方式">
  58. <el-col :span="8" style="width: 100%;">
  59. <el-radio-group v-model="ruleForm.settlement_method" size="small">
  60. <el-radio :label="0" border>支付完成发放</el-radio>
  61. <!-- <el-radio :label="1" border>订单完成发放</el-radio>-->
  62. </el-radio-group>
  63. </el-col>
  64. <div class="tips-text" style="line-height: 24px;">
  65. 分红结算方式,已结算的佣金可提现
  66. </div>
  67. </el-form-item>
  68. <!-- <el-form-item prop="settlement_period" label="佣金结算周期">-->
  69. <!-- <el-col :span="8">-->
  70. <!-- <el-input v-model="ruleForm.settlement_period" type="number">-->
  71. <!-- <template slot="append">天后发放</template>-->
  72. <!-- </el-input>-->
  73. <!-- </el-col>-->
  74. <!-- </el-form-item>-->
  75. <el-form-item prop="compute_period" label="结算周期">
  76. <el-col :span="8" style="width: 100%;">
  77. <el-radio-group v-model="ruleForm.compute_period" size="small">
  78. <el-radio :label="1" border>天</el-radio>
  79. <el-radio :label="2" border>周</el-radio>
  80. <el-radio :label="3" border>月</el-radio>
  81. </el-radio-group>
  82. </el-col>
  83. <div class="tips-text" style="line-height: 24px;">
  84. 分红周期,如选择一个月,则股东分红一个月分一次,计算当月的营业额进行分红,
  85. 注意:运营后不要随意更改,避免重复分红
  86. </div>
  87. </el-form-item>
  88. <el-form-item label="股东分红说明" prop="detail">
  89. <el-input type="textarea" :rows="3" placeholder="请输入股东分红说明"
  90. v-model="ruleForm.detail" maxlength="80" show-word-limit></el-input>
  91. </el-form-item>
  92. </el-col>
  93. </el-row>
  94. </div>
  95. </el-card>
  96. </el-form>
  97. <el-button :loading="btnLoading" class="button-item" type="primary" style="margin-top: 24px;"
  98. @click="store('ruleForm')" size="small">保存
  99. </el-button>
  100. </div>
  101. </el-card>
  102. </div>
  103. <script>
  104. const app = new Vue({
  105. el: '#app',
  106. data() {
  107. return {
  108. loading: false,
  109. btnLoading: false,
  110. ruleForm: {
  111. is_enable: 0,
  112. compute_type:0,//佣金计算方式
  113. compute_period:0,//结算周期
  114. settlement_method:0,//结算方式
  115. settlement_period:0,//佣金结算周期
  116. detail:''//股东分红说明
  117. },
  118. }
  119. },
  120. mounted: function () {
  121. this.loadData();
  122. },
  123. methods: {
  124. loadData() {
  125. this.loading = true;
  126. request({
  127. params: {
  128. r: 'store/client/store-boss/setting',
  129. },
  130. method: 'get'
  131. }).then(e => {
  132. this.loading = false;
  133. if (e.data.code == 0) {
  134. this.ruleForm = Object.assign(this.ruleForm, e.data.data.setting);
  135. }
  136. }).catch(e => {
  137. this.loading = false;
  138. })
  139. },
  140. store(formName) {
  141. this.$refs[formName].validate((valid) => {
  142. if (valid) {
  143. this.btnLoading = true;
  144. request({
  145. params: {
  146. r: 'store/client/store-boss/setting',
  147. },
  148. method: 'post',
  149. data: this.ruleForm
  150. }).then(e => {
  151. this.btnLoading = false;
  152. if (e.data.code == 0) {
  153. this.$message.success(e.data.msg);
  154. } else {
  155. this.$message.error(e.data.msg);
  156. }
  157. }).catch(e => {
  158. this.$message.error(e);
  159. this.btnLoading = false;
  160. })
  161. } else {
  162. this.btnLoading = false;
  163. console.log('error submit!!');
  164. return false;
  165. }
  166. });
  167. },
  168. }
  169. });
  170. </script>
  171. <style>
  172. .form_box {
  173. background-color: #f3f3f3;
  174. padding: 0 0 20px;
  175. }
  176. .button-item {
  177. margin-top: 12px;
  178. padding: 9px 25px;
  179. }
  180. .el-input-group__append {
  181. background-color: #fff;
  182. color: #353535;
  183. }
  184. </style>