com-short-video.php 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. <template id="com-short-video">
  2. <div class="com-short-video">
  3. <el-card class="edit-card" shadow="never">
  4. <!-- <div slot="header" class="clearfix">
  5. <div class="card-title">短视频带货奖励设置<span class="card-sub-title"></span></div>
  6. </div> -->
  7. <el-form :model="form" size="small">
  8. <div v-for="(setting,index) in form">
  9. <!-- <el-form-item label="商品是否参与短视频带货奖励" prop="is_enable">
  10. <el-switch :active-value="1" :inactive-value="0" v-model="setting.is_enable"></el-switch>
  11. </el-form-item> -->
  12. <el-form-item label="商品是否独立设置短视频带货奖励" prop="is_alone">
  13. <el-switch :active-value="1" :inactive-value="0" v-model="setting.is_alone"></el-switch>
  14. <div v-if="setting.is_alone==1">
  15. <el-radio v-model="setting.detail.calculate_type" :label="1">百分比</el-radio>
  16. <el-radio v-model="setting.detail.calculate_type" :label="2">固定金额</el-radio>
  17. </div>
  18. </el-form-item>
  19. <el-form-item v-if="setting.is_alone==1" style="width: 500px;" label="" prop="calculate_type">
  20. <el-input v-if="setting.detail.calculate_type==1" type="number" :min="0" :max="100"
  21. class="member-money" v-model="setting.detail.value" placeholder="">
  22. <template slot="append">%</template>
  23. </el-input>
  24. <el-input v-if="setting.detail.calculate_type==2" type="number" :min="0" :max="100"
  25. class="member-money" v-model="setting.detail.value" placeholder="">
  26. <template slot="append">元</template>
  27. </el-input>
  28. </el-form-item>
  29. </div>
  30. </el-form>
  31. </el-card>
  32. </div>
  33. </template>
  34. <script>
  35. Vue.component('com-short-video', {
  36. template: "#com-short-video",
  37. props: {
  38. goods: {
  39. type: Object,
  40. default: () => {
  41. return {};
  42. }
  43. },
  44. level_arr: {
  45. type: Object,
  46. default: () => {
  47. return {};
  48. }
  49. },
  50. setting: {
  51. type: Object,
  52. default: () => {
  53. return {};
  54. }
  55. },
  56. },
  57. data() {
  58. return {
  59. form: {
  60. commission: {
  61. is_enable: 0,
  62. is_alone: 0,
  63. item_type: 'goods',
  64. commission_type: 'commission',
  65. detail: {
  66. calculate_type: 1,
  67. value: 0
  68. }
  69. }
  70. }
  71. }
  72. },
  73. watch: {
  74. setting: {
  75. deep: true,
  76. immediate: true,
  77. handler(value) {
  78. if (!isEmpty(value)) {
  79. this.form = value;
  80. }
  81. }
  82. },
  83. form: {
  84. deep: true,
  85. immediate: true,
  86. handler(value) {
  87. this.$emit("change", JSON.stringify(value), "ShortVideo");
  88. }
  89. }
  90. },
  91. });
  92. </script>