edit.php 67 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194
  1. <?php
  2. use common\helpers\ComponentHelper;
  3. ComponentHelper::loadComponentView('com-dialog-select');
  4. ComponentHelper::loadComponentView('com-dialog-select-store');
  5. ComponentHelper::loadComponentView('com-select-cat');
  6. ?>
  7. <div id="app" v-cloak>
  8. <template>
  9. <div style="margin-left: 10px;display:none" >
  10. <com-dialog-select :multiple="true" @selected="conditionGoodsSelectCheck" title="商品选择">
  11. <el-button type="text" ref="checkgoods">选择商品</el-button>
  12. </com-dialog-select>
  13. </div>
  14. </template>
  15. <el-card class="box-card" v-loading="cardLoading" shadow="never" style="border:0;min-width: 1250px;"
  16. body-style="background-color: #f3f3f3;padding: 10px 0 0;">
  17. <div slot="header">
  18. <el-breadcrumb separator="/">
  19. <el-breadcrumb-item>
  20. <span style="color: #409EFF;cursor: pointer" @click="$navigate({r:'double-copy/level/index'})">
  21. 等级
  22. </span>
  23. </el-breadcrumb-item>
  24. <el-breadcrumb-item>编辑等级</el-breadcrumb-item>
  25. </el-breadcrumb>
  26. </div>
  27. <div class="form-body">
  28. <el-form :model="ruleForm" :rules="rules" size="small" ref="ruleForm" label-width="160px">
  29. <el-row>
  30. <el-col :span="24">
  31. <el-form-item label="等级权重" prop="level">
  32. <el-select v-model="ruleForm.level" placeholder="请选择" style=" width: 260px;">
  33. <el-option v-for="item in weights" :key="item.level" :label="item.name"
  34. :value="item.level" :disabled="item.disabled && item.level!=origin_level">
  35. </el-option>
  36. </el-select>
  37. </el-form-item>
  38. <el-form-item label="等级名称" prop="name">
  39. <el-input
  40. v-model="ruleForm.name"
  41. placeholder="请输入等级名称"
  42. type="text" maxlength="5" show-word-limit
  43. style=" width: 260px;"
  44. ></el-input>
  45. </el-form-item>
  46. <el-form-item :label="capital_map.first_prize + '佣金类型'" prop="first_prize_type">
  47. <el-radio-group v-model="ruleForm.setting.first_prize_type">
  48. <el-radio :label="0">百分比</el-radio>
  49. <el-radio :label="1">固定金额</el-radio>
  50. </el-radio-group>
  51. </el-form-item>
  52. <el-form-item :label="capital_map.first_prize">
  53. <el-input v-model="ruleForm.setting.first_prize" type="text" style=" width: 260px;" onInput="value=toNumber(value,2)">
  54. <template slot="append" v-if="ruleForm.setting.first_prize_type == 0">%</template>
  55. <template slot="append" v-if="ruleForm.setting.first_prize_type == 1">元</template>
  56. </el-input>
  57. </el-form-item>
  58. <el-form-item :label="capital_map.first_prize + '积分类型'" prop="first_prize_type">
  59. <el-radio-group v-model="ruleForm.score_setting.first_prize_type">
  60. <el-radio :label="0">百分比</el-radio>
  61. <el-radio :label="1">固定金额</el-radio>
  62. </el-radio-group>
  63. </el-form-item>
  64. <el-form-item :label="capital_map.first_prize + '积分'">
  65. <el-input v-model="ruleForm.score_setting.first_prize" type="text" style=" width: 260px;" onInput="value=toNumber(value,2)">
  66. <template slot="append" v-if="ruleForm.score_setting.first_prize_type == 0">%</template>
  67. <template slot="append" v-if="ruleForm.score_setting.first_prize_type == 1">个</template>
  68. </el-input>
  69. </el-form-item>
  70. <template v-if="is_show_additional_score == 1">
  71. <el-form-item :label="capital_map.first_prize + '额外积分类型'" prop="first_prize_type">
  72. <el-radio-group v-model="ruleForm.additional_score_setting.first_prize_type">
  73. <el-radio :label="0">百分比</el-radio>
  74. <el-radio :label="1">固定金额</el-radio>
  75. </el-radio-group>
  76. </el-form-item>
  77. <el-form-item :label="capital_map.first_prize + '额外积分'">
  78. <el-input v-model="ruleForm.additional_score_setting.first_prize" type="text" style=" width: 260px;" onInput="value=toNumber(value,2)">
  79. <template slot="append" v-if="!ruleForm.additional_score_setting.first_prize_type">%</template>
  80. <template slot="append" v-if="ruleForm.additional_score_setting.first_prize_type == 1">个</template>
  81. </el-input>
  82. </el-form-item>
  83. </template>
  84. <el-form-item :label="capital_map.indirect_prize + '佣金类型'" prop="indirect_prize_type">
  85. <el-radio-group v-model="ruleForm.setting.indirect_prize_type">
  86. <el-radio :label="0">百分比</el-radio>
  87. <el-radio :label="1">固定金额</el-radio>
  88. </el-radio-group>
  89. </el-form-item>
  90. <el-form-item :label="capital_map.indirect_prize">
  91. <el-input v-model="ruleForm.setting.indirect_prize" type="text" style=" width: 260px;" onInput="value=toNumber(value,2)">
  92. <template slot="append" v-if="ruleForm.setting.indirect_prize_type == 0 ">%</template>
  93. <template slot="append" v-if="ruleForm.setting.indirect_prize_type == 1">元</template>
  94. </el-input>
  95. <div class="tips-text" v-if="ruleForm.setting.indirect_prize_type == 0">直推下级获得{{capital_map.first_prize}}或{{capital_map.second_prize}}收益时,获得其收益的百分之N,奖励平台承担</div>
  96. <div class="tips-text" v-if="ruleForm.setting.indirect_prize_type == 1">直推下级获得{{capital_map.first_prize}}或{{capital_map.second_prize}}收益时,可获得N元收益,奖励平台承担</div>
  97. </el-form-item>
  98. <el-form-item :label="capital_map.indirect_prize + '积分类型'" prop="indirect_prize_type">
  99. <el-radio-group v-model="ruleForm.score_setting.indirect_prize_type">
  100. <el-radio :label="0">百分比</el-radio>
  101. <el-radio :label="1">固定金额</el-radio>
  102. </el-radio-group>
  103. </el-form-item>
  104. <el-form-item :label="capital_map.indirect_prize + '积分'">
  105. <el-input v-model="ruleForm.score_setting.indirect_prize" type="text" style=" width: 260px;" onInput="value=toNumber(value,2)">
  106. <template slot="append" v-if="ruleForm.score_setting.indirect_prize_type == 0 ">%</template>
  107. <template slot="append" v-if="ruleForm.score_setting.indirect_prize_type == 1">个</template>
  108. </el-input>
  109. <div class="tips-text" v-if="ruleForm.score_setting.indirect_prize_type == 0">直推下级获得{{capital_map.first_prize}}或{{capital_map.second_prize}}收益时,获得其收益的百分之N,奖励平台承担</div>
  110. <div class="tips-text" v-if="ruleForm.score_setting.indirect_prize_type == 1">直推下级获得{{capital_map.first_prize}}或{{capital_map.second_prize}}收益时,可获得N元收益,奖励平台承担</div>
  111. </el-form-item>
  112. <template v-if="is_show_additional_score == 1">
  113. <el-form-item :label="capital_map.indirect_prize + '额外积分类型'" prop="indirect_prize_type">
  114. <el-radio-group v-model="ruleForm.additional_score_setting.indirect_prize_type">
  115. <el-radio :label="0">百分比</el-radio>
  116. <el-radio :label="1">固定金额</el-radio>
  117. </el-radio-group>
  118. </el-form-item>
  119. <el-form-item :label="capital_map.indirect_prize + '额外积分'">
  120. <el-input v-model="ruleForm.additional_score_setting.indirect_prize" type="text" style=" width: 260px;" onInput="value=toNumber(value,2)">
  121. <template slot="append" v-if="!ruleForm.additional_score_setting.indirect_prize_type">%</template>
  122. <template slot="append" v-if="ruleForm.additional_score_setting.indirect_prize_type == 1">个</template>
  123. </el-input>
  124. </el-form-item>
  125. </template>
  126. <el-form-item :label="capital_map.second_prize + '佣金类型'" prop="second_prize_type" v-if="ruleForm.level >= 2">
  127. <el-radio-group v-model="ruleForm.setting.second_prize_type">
  128. <el-radio :label="0">百分比</el-radio>
  129. <el-radio :label="1">固定金额</el-radio>
  130. </el-radio-group>
  131. </el-form-item>
  132. <el-form-item :label="capital_map.second_prize" v-if="ruleForm.level >= 2">
  133. <el-input v-model="ruleForm.setting.second_prize" type="text" style=" width: 260px;" onInput="value=toNumber(value,2)">
  134. <template slot="append" v-if="ruleForm.setting.second_prize_type == 0">%</template>
  135. <template slot="append" v-if="ruleForm.setting.second_prize_type == 1 ">元</template>
  136. </el-input>
  137. </el-form-item>
  138. <el-form-item :label="capital_map.second_prize + '积分类型'" prop="second_prize_type" v-if="ruleForm.level >= 2">
  139. <el-radio-group v-model="ruleForm.score_setting.second_prize_type">
  140. <el-radio :label="0">百分比</el-radio>
  141. <el-radio :label="1">固定金额</el-radio>
  142. </el-radio-group>
  143. </el-form-item>
  144. <el-form-item :label="capital_map.second_prize + '积分'" v-if="ruleForm.level >= 2">
  145. <el-input v-model="ruleForm.score_setting.second_prize" type="text" style=" width: 260px;" onInput="value=toNumber(value,2)">
  146. <template slot="append" v-if="ruleForm.score_setting.second_prize_type == 0">%</template>
  147. <template slot="append" v-if="ruleForm.score_setting.second_prize_type == 1 ">个</template>
  148. </el-input>
  149. </el-form-item>
  150. <template v-if="is_show_additional_score == 1">
  151. <el-form-item :label="capital_map.second_prize + '额外积分类型'" prop="second_prize_type" v-if="ruleForm.level >= 2">
  152. <el-radio-group v-model="ruleForm.additional_score_setting.second_prize_type">
  153. <el-radio :label="0">百分比</el-radio>
  154. <el-radio :label="1">固定金额</el-radio>
  155. </el-radio-group>
  156. </el-form-item>
  157. <el-form-item :label="capital_map.second_prize + '额外积分'" v-if="ruleForm.level >= 2">
  158. <el-input v-model="ruleForm.additional_score_setting.second_prize" type="text" style=" width: 260px;" onInput="value=toNumber(value,2)">
  159. <template slot="append" v-if="!ruleForm.additional_score_setting.second_prize_type">%</template>
  160. <template slot="append" v-if="ruleForm.additional_score_setting.second_prize_type == 1 ">个</template>
  161. </el-input>
  162. </el-form-item>
  163. </template>
  164. <el-form-item :label="capital_map.equal_prize + '佣金类型'" prop="equal_prize_type" v-if="ruleForm.level >= 2">
  165. <el-radio-group v-model="ruleForm.setting.equal_prize_type">
  166. <el-radio :label="0">百分比</el-radio>
  167. <el-radio :label="1">固定金额</el-radio>
  168. </el-radio-group>
  169. </el-form-item>
  170. <el-form-item :label="capital_map.equal_prize" v-if="ruleForm.level >= 2">
  171. <el-input v-model.number="ruleForm.setting.equal_prize" type="text" style=" width: 260px;">
  172. <template slot="append" v-if="ruleForm.setting.equal_prize_type == 0">%</template>
  173. <template slot="append" v-if="ruleForm.setting.equal_prize_type == 1">元</template>
  174. </el-input>
  175. </el-form-item>
  176. <el-form-item :label="capital_map.equal_prize + '积分类型'" prop="equal_prize_type" v-if="ruleForm.level >= 2">
  177. <el-radio-group v-model="ruleForm.score_setting.equal_prize_type">
  178. <el-radio :label="0">百分比</el-radio>
  179. <el-radio :label="1">固定金额</el-radio>
  180. </el-radio-group>
  181. </el-form-item>
  182. <el-form-item :label="capital_map.equal_prize + '积分'" v-if="ruleForm.level >= 2">
  183. <el-input v-model.number="ruleForm.score_setting.equal_prize" type="text" style=" width: 260px;">
  184. <template slot="append" v-if="ruleForm.score_setting.equal_prize_type == 0">%</template>
  185. <template slot="append" v-if="ruleForm.score_setting.equal_prize_type == 1">个</template>
  186. </el-input>
  187. </el-form-item>
  188. <template v-if="is_show_additional_score == 1">
  189. <el-form-item :label="capital_map.equal_prize + '额外积分类型'" prop="equal_prize_type" v-if="ruleForm.level >= 2">
  190. <el-radio-group v-model="ruleForm.additional_score_setting.equal_prize_type">
  191. <el-radio :label="0">百分比</el-radio>
  192. <el-radio :label="1">固定金额</el-radio>
  193. </el-radio-group>
  194. </el-form-item>
  195. <el-form-item :label="capital_map.equal_prize + '额外积分'" v-if="ruleForm.level >= 2">
  196. <el-input v-model.number="ruleForm.additional_score_setting.equal_prize" type="text" style=" width: 260px;">
  197. <template slot="append" v-if="!ruleForm.additional_score_setting.equal_prize_type">%</template>
  198. <template slot="append" v-if="ruleForm.additional_score_setting.equal_prize_type == 1">个</template>
  199. </el-input>
  200. </el-form-item>
  201. </template>
  202. <el-form-item :label="capital_map.allowance_price + '佣金类型'" prop="allowance_price_type" >
  203. <el-radio-group v-model="ruleForm.setting.allowance_price_type">
  204. <el-radio :label="0">百分比</el-radio>
  205. <el-radio :label="1">固定金额</el-radio>
  206. </el-radio-group>
  207. </el-form-item>
  208. <el-form-item :label="capital_map.allowance_price " >
  209. <el-input v-model.number="ruleForm.setting.allowance_price" type="text" style=" width: 260px;">
  210. <template slot="append" v-if="ruleForm.setting.allowance_price_type == 0">%</template>
  211. <template slot="append" v-if="ruleForm.setting.allowance_price_type == 1 ">元</template>
  212. </el-input>
  213. </el-form-item>
  214. <el-form-item :label="capital_map.allowance_price + '积分类型'" prop="allowance_price_type" >
  215. <el-radio-group v-model="ruleForm.score_setting.allowance_price_type">
  216. <el-radio :label="0">百分比</el-radio>
  217. <el-radio :label="1">固定金额</el-radio>
  218. </el-radio-group>
  219. <div class="tips-text">获得{{capital_map.first_prize}}或{{capital_map.second_prize}}用户且该用户位置小于或等于2号位(位置要根据设置而定),则此用户的上级可获得其奖励的N%收益,奖励平台承担</div>
  220. </el-form-item>
  221. <el-form-item :label="capital_map.allowance_price + '积分'" >
  222. <el-input v-model.number="ruleForm.score_setting.allowance_price" type="text" style=" width: 260px;">
  223. <template slot="append" v-if="ruleForm.score_setting.allowance_price_type == 0">%</template>
  224. <template slot="append" v-if="ruleForm.score_setting.allowance_price_type == 1 ">元</template>
  225. </el-input>
  226. <div class="tips-text">获得{{capital_map.first_prize}}或{{capital_map.second_prize}}用户且该用户位置小于或等于2号位(位置要根据设置而定),则此用户的上级可获得其奖励的N%收益,奖励平台承担</div>
  227. </el-form-item>
  228. <template v-if="is_show_additional_score == 1">
  229. <el-form-item :label="capital_map.allowance_price + '额外积分类型'" prop="allowance_price_type" >
  230. <el-radio-group v-model="ruleForm.additional_score_setting.allowance_price_type">
  231. <el-radio :label="0">百分比</el-radio>
  232. <el-radio :label="1">固定金额</el-radio>
  233. </el-radio-group>
  234. </el-form-item>
  235. <el-form-item :label="capital_map.allowance_price + '额外积分'" >
  236. <el-input v-model.number="ruleForm.additional_score_setting.allowance_price" type="text" style=" width: 260px;">
  237. <template slot="append" v-if="!ruleForm.additional_score_setting.allowance_price_type">%</template>
  238. <template slot="append" v-if="ruleForm.additional_score_setting.allowance_price_type == 1 ">元</template>
  239. </el-input>
  240. </el-form-item>
  241. </template>
  242. <el-form-item :label="capital_map.equal_level_prize + '佣金类型'" prop="equal_level_prize_type" v-if="ruleForm.level >= 2">
  243. <el-radio-group v-model="ruleForm.setting.equal_level_prize_type">
  244. <el-radio :label="0">百分比</el-radio>
  245. <el-radio :label="1">固定金额</el-radio>
  246. </el-radio-group>
  247. </el-form-item>
  248. <el-form-item :label="capital_map.equal_level_prize" v-if="ruleForm.level >= 2">
  249. <el-input v-model.number="ruleForm.setting.equal_level_prize" type="text" style=" width: 260px;">
  250. <template slot="append" v-if="ruleForm.setting.equal_level_prize_type == 0">%</template>
  251. <template slot="append" v-if="ruleForm.setting.equal_level_prize_type == 1">元</template>
  252. </el-input>
  253. </el-form-item>
  254. <el-form-item :label="capital_map.equal_level_prize + '积分类型'" prop="equal_level_prize_type" v-if="ruleForm.level >= 2">
  255. <el-radio-group v-model="ruleForm.score_setting.equal_level_prize_type">
  256. <el-radio :label="0">百分比</el-radio>
  257. <el-radio :label="1">固定金额</el-radio>
  258. </el-radio-group>
  259. </el-form-item>
  260. <el-form-item :label="capital_map.equal_level_prize + '积分'" v-if="ruleForm.level >= 2">
  261. <el-input v-model.number="ruleForm.score_setting.equal_level_prize" type="text" style=" width: 260px;">
  262. <template slot="append" v-if="ruleForm.score_setting.equal_level_prize_type == 0">%</template>
  263. <template slot="append" v-if="ruleForm.score_setting.equal_level_prize_type == 1">个</template>
  264. </el-input>
  265. </el-form-item>
  266. <template v-if="is_show_additional_score == 1">
  267. <el-form-item :label="capital_map.equal_level_prize + '额外积分类型'" prop="equal_level_prize_type" v-if="ruleForm.level >= 2">
  268. <el-radio-group v-model="ruleForm.additional_score_setting.equal_level_prize_type">
  269. <el-radio :label="0">百分比</el-radio>
  270. <el-radio :label="1">固定金额</el-radio>
  271. </el-radio-group>
  272. </el-form-item>
  273. <el-form-item :label="capital_map.equal_level_prize + '额外积分'" v-if="ruleForm.level >= 2">
  274. <el-input v-model.number="ruleForm.additional_score_setting.equal_level_prize" type="text" style=" width: 260px;">
  275. <template slot="append" v-if="!ruleForm.additional_score_setting.equal_level_prize_type">%</template>
  276. <template slot="append" v-if="ruleForm.additional_score_setting.equal_level_prize_type == 1">个</template>
  277. </el-input>
  278. </el-form-item>
  279. </template>
  280. <el-form-item :label="capital_map.repurchase_prize + '佣金类型'" prop="repurchase_prize_type">
  281. <el-radio-group v-model="ruleForm.setting.repurchase_prize_type">
  282. <el-radio :label="0">百分比</el-radio>
  283. <el-radio :label="1">固定金额</el-radio>
  284. </el-radio-group>
  285. </el-form-item>
  286. <el-form-item :label="capital_map.repurchase_prize" prop="repurchase_prize">
  287. <el-input v-model.number="ruleForm.setting.repurchase_prize" type="text" style=" width: 260px;">
  288. <template slot="append" v-if="ruleForm.setting.repurchase_prize_type == 0">%</template>
  289. <template slot="append" v-if="ruleForm.setting.repurchase_prize_type == 1">元</template>
  290. </el-input>
  291. </el-form-item>
  292. <el-form-item :label="capital_map.repurchase_prize + '积分类型'" prop="repurchase_prize_type">
  293. <el-radio-group v-model="ruleForm.score_setting.repurchase_prize_type">
  294. <el-radio :label="0">百分比</el-radio>
  295. <el-radio :label="1">固定金额</el-radio>
  296. </el-radio-group>
  297. </el-form-item>
  298. <el-form-item :label="capital_map.repurchase_prize + '积分'" prop="repurchase_prize">
  299. <el-input v-model.number="ruleForm.score_setting.repurchase_prize" type="text" style=" width: 260px;">
  300. <template slot="append" v-if="ruleForm.score_setting.repurchase_prize_type == 0">%</template>
  301. <template slot="append" v-if="ruleForm.score_setting.repurchase_prize_type == 1">个</template>
  302. </el-input>
  303. </el-form-item>
  304. <template v-if="is_show_additional_score == 1">
  305. <el-form-item :label="capital_map.repurchase_prize + '额外积分类型'" prop="repurchase_prize_type">
  306. <el-radio-group v-model="ruleForm.additional_score_setting.repurchase_prize_type">
  307. <el-radio :label="0">百分比</el-radio>
  308. <el-radio :label="1">固定金额</el-radio>
  309. </el-radio-group>
  310. </el-form-item>
  311. <el-form-item :label="capital_map.repurchase_prize + '额外积分'" prop="repurchase_prize">
  312. <el-input v-model.number="ruleForm.additional_score_setting.repurchase_prize" type="text" style=" width: 260px;">
  313. <template slot="append" v-if="!ruleForm.additional_score_setting.repurchase_prize_type">%</template>
  314. <template slot="append" v-if="ruleForm.additional_score_setting.repurchase_prize_type == 1">个</template>
  315. </el-input>
  316. </el-form-item>
  317. </template>
  318. <el-form-item :label="capital_map.freeze_fund" v-if="ruleForm.level >= 2">
  319. <div style="display: flex;align-items: center">
  320. 此等级产生{{ capital_map.second_prize }}收益冻结
  321. <el-input type="text" v-model="ruleForm.setting.freeze_fund_prize" style="width: 100px; margin: 0 10px;" onInput="value=toNumber(value,2)">
  322. </el-input>
  323. %/每单,助力升级代理成为老板,并且老板团队产生代理
  324. <el-input type="number" style="width: 100px;" v-model="ruleForm.setting.freeze_fund_num"></el-input>
  325. 个后解冻全部收益
  326. <el-tooltip class="item" effect="dark"
  327. content="助力升级的代理必须成为老板"
  328. placement="top-end">
  329. <i class="el-icon-info"></i>
  330. </el-tooltip>
  331. </div>
  332. </el-form-item>
  333. <el-form-item label="" v-if="ruleForm.level >= 2">
  334. <div style="display: flex;align-items: center">
  335. <el-checkbox v-model="ruleForm.setting.is_thaw" :true-label="1" :false-label="0">
  336. 协助1号位和2号位晋升等级大于等于
  337. <el-select v-model="ruleForm.setting.first_level" placeholder="请选择" style="width:100px;">
  338. <el-option v-for="item in level_arr" :key="item.level" :label="item.name" :value="item.level"></el-option>
  339. </el-select>
  340. 等级,且需完成直推
  341. <el-input type="number" style="width: 100px;" v-model="ruleForm.setting.push_num"></el-input>
  342. 个大于等于
  343. <el-select v-model="ruleForm.setting.second_level" placeholder="请选择" style="width:100px;">
  344. <el-option v-for="item in level_arr" :key="item.level" :label="item.name" :value="item.level"></el-option>
  345. </el-select>
  346. 等级(包含1号位和2号位)后解冻全部收益
  347. <!-- <el-tooltip class="item" effect="dark"
  348. content="助力升级的代理必须成为老板"
  349. placement="top-end">
  350. <i class="el-icon-info"></i>
  351. </el-tooltip> -->
  352. </el-checkbox>
  353. </div>
  354. </el-form-item>
  355. <el-form-item label="解冻阶梯设置" v-if="ruleForm.level >= 2">
  356. <el-switch v-model="ruleForm.open_ladder" :active-value="1" :inactive-value="0"></el-switch>
  357. </el-form-item>
  358. <div class="el-form-item el-form-item--small">
  359. <div class="el-form-item__content my_reset" style="margin-left: 60px;" v-if="ruleForm.level >= 2 && ruleForm.open_ladder == 1">
  360. <div v-for="(item,key) in ruleForm.ladder_setting" style="margin: 5px 0;">
  361. ● 前
  362. <el-input style="width:50px" v-model="item.market" onInput="value=toNumber(value)"></el-input>
  363. 个市场团队总业绩达到
  364. <el-input placeholder="0.00" style="width:130px" v-model="item.achievement" onInput="value=toNumber(value,2)">
  365. <template slot="append">元</template>
  366. </el-input>
  367. 且单个市场业绩不低于
  368. <el-input placeholder="0.00" style="width:130px" v-model="item.single_market" onInput="value=toNumber(value,2)">
  369. <template slot="append">元</template>
  370. </el-input>
  371. 解冻基金
  372. <el-input placeholder="0.00" style="width:90px" v-model="item.thaw_percent" onInput="value=toNumber(value,2)">
  373. <template slot="append">%</template>
  374. </el-input>
  375. 且后续冻结比例:{{ ruleForm.setting.freeze_fund_prize * (100-item.thaw_percent) / 100 }}%,前端显示
  376. <el-input style="width:180px" v-model="item.show_contents"></el-input>
  377. <el-button type="text" @click="handle('delete',key)" style="margin-left: 10px;">删除</el-button>
  378. </div>
  379. <div v-if="ruleForm.ladder_setting.length < 5"><el-button type="text" @click="handle('add')">+添加设置</el-button> <span style="font-size: 12px; color: #cccbcb;">最多可添加5条</span></div>
  380. </div>
  381. </div>
  382. <el-form-item label="是否启用自动升级" prop="is_auto_upgrade">
  383. <el-switch v-model="ruleForm.is_auto_upgrade" :active-value="1" :inactive-value="0"></el-switch>
  384. </el-form-item>
  385. <el-form-item label="条件升级" v-if="ruleForm.is_auto_upgrade == 1 && ruleForm.level >= 2">
  386. <template v-if="ruleForm.level >= 2">
  387. <el-form-item>
  388. <el-switch v-model="ruleForm.upgrade_type_condition" :active-value="1"
  389. :inactive-value="0" active-text="开启" inactive-text="关闭">
  390. </el-switch>
  391. </el-form-item>
  392. <el-form-item v-if="ruleForm.upgrade_type_condition==1">
  393. <el-radio-group v-model="ruleForm.condition_type">
  394. <el-radio :label="1">满足其一方可升级</el-radio>
  395. <el-radio :label="2">满足所有才可升级</el-radio>
  396. </el-radio-group>
  397. </el-form-item>
  398. <el-checkbox-group
  399. v-model="ruleForm.checked_condition_keys"
  400. v-if="ruleForm.upgrade_type_condition==1 && ruleForm.condition_type>0"
  401. class="check-group">
  402. <el-col :span="24" v-if="ruleForm.level == 2">
  403. <el-checkbox :label="ruleForm.checked_condition_values[0].key">
  404. <div style="display: flex;align-items: center">
  405. 条件1: 升级前身份等级为代理,直推
  406. <el-input type="number" v-model="ruleForm.checked_condition_values[0].value.val0">
  407. <template slot="append">个</template>
  408. </el-input>
  409. 代理后升级
  410. </div>
  411. </el-checkbox>
  412. </el-col>
  413. <el-col :span="24" v-if="ruleForm.level > 2">
  414. <el-checkbox :label="ruleForm.checked_condition_values[1].key">
  415. <div style="display: flex;align-items: center">
  416. 条件2:当前等级为
  417. <el-select v-model="ruleForm.checked_condition_values[1].value.val0" placeholder="请选择">
  418. <el-option v-for="item in level_arr" :key="item.level" :label="item.name" :value="item.level"></el-option>
  419. </el-select>
  420. 直推前
  421. <el-input type="number" v-model="ruleForm.checked_condition_values[1].value.val1">
  422. <template slot="append">个</template>
  423. </el-input>
  424. 市场都成为
  425. <el-select v-model="ruleForm.checked_condition_values[1].value.val2" placeholder="请选择">
  426. <el-option v-for="item in level_arr" :key="item.level" :label="item.name" :value="item.level"></el-option>
  427. </el-select>
  428. 或以上级别
  429. </div>
  430. </el-checkbox>
  431. </el-col>
  432. <el-col :span="24" >
  433. <el-checkbox :label="ruleForm.checked_condition_values[2].key">
  434. <div style="display: flex;align-items: center">
  435. 条件3: 购买指定商品,商品ID组
  436. <el-input style="width:100px;" v-model="ruleForm.checked_condition_values[2].value.val0"></el-input>&nbsp; <el-button type="text" @click="clickSelectCheckConditionGoods()">选择商品</el-button>
  437. </div>
  438. </el-checkbox>
  439. </el-col>
  440. <el-col :span="24" v-if="ruleForm.level >= 2">
  441. <el-checkbox :label="ruleForm.checked_condition_values[3].key">
  442. <div style="display: flex;align-items: center">
  443. 条件4: 指定商品ID
  444. <el-input v-model="ruleForm.checked_condition_values[3].value.val0"></el-input>
  445. (多个商品间用英文逗号隔开),并且单笔订单金额满(订单完成)
  446. <el-input type="number" v-model="ruleForm.checked_condition_values[3].value.val1">
  447. <template slot="append">元</template>
  448. </el-input>
  449. </div>
  450. </el-checkbox>
  451. </el-col>
  452. </el-checkbox-group>
  453. </template>
  454. </el-form-item>
  455. <el-form-item label="购买商品升级" v-if="ruleForm.is_auto_upgrade == 1">
  456. <el-form-item>
  457. <el-switch v-model="ruleForm.upgrade_type_goods" :active-value="1"
  458. :inactive-value="0" active-text="开启" inactive-text="关闭">
  459. </el-switch>
  460. </el-form-item>
  461. <el-form-item v-if="ruleForm.upgrade_type_goods==1">
  462. <el-radio-group v-model="ruleForm.buy_goods_type">
  463. <el-radio :label="0">订单完成
  464. </el-radio>
  465. <el-radio :label="1">支付完成
  466. </el-radio>
  467. </el-radio-group>
  468. </el-form-item>
  469. <el-form-item v-if="ruleForm.upgrade_type_goods==1">
  470. <el-radio-group v-model="ruleForm.goods_type">
  471. <el-radio :label="1">任意商品</el-radio>
  472. <el-radio :label="2">指定商品</el-radio>
  473. </el-radio-group>
  474. <div style="margin-top: 10px; display: flex;" v-if="ruleForm.goods_type==2">
  475. <com-dialog-select :multiple="true" @selected="goodsSelect" title="商品选择">
  476. <el-button type="primary" plain>选择商品</el-button>
  477. </com-dialog-select>
  478. <div style="color: #ff4544; margin-left: 10px;">最多可添加99个商品</div>
  479. </div>
  480. </el-form-item>
  481. </el-form-item>
  482. <el-form-item prop="goods_ids" v-if="ruleForm.upgrade_type_goods==1">
  483. <template v-if="ruleForm.goods_type==2">
  484. <div style="max-height: 300px;overflow-y: auto;width: 60%;">
  485. <el-table :data="ruleForm.goods_list" border style="width: 100%">
  486. <el-table-column type="index" align="center" label="序号" width="50"></el-table-column>
  487. <el-table-column prop="id" align="center" label="商品id" width="100"></el-table-column>
  488. <el-table-column prop="name,cover_pic" label="商品名称" >
  489. <template slot-scope="scope">
  490. <div flex="box:first">
  491. <div style="padding-right: 10px;">
  492. <com-image mode="aspectFill" :src="scope.row.cover_pic"></com-image>
  493. </div>
  494. <div style="display:flex;flex-direction:column;align-items:flex-start;">
  495. <div>{{scope.row.name}}</div>
  496. <div>
  497. <span style="color: #ff4544;" v-if="scope.row.price">¥{{ scope.row.price }}</span>
  498. <span style="margin-left: 20px;" v-if="scope.row.stock">库存:{{ scope.row.stock }}</span>
  499. </div>
  500. </div>
  501. </div>
  502. </template>
  503. </el-table-column>
  504. <el-table-column label="操作" width="100">
  505. <template slot-scope="scope">
  506. <el-button @click="deleteGoods(scope.$index)" type="primary" size="mini">删除</el-button>
  507. </template>
  508. </el-table-column>
  509. </el-table>
  510. </div>
  511. </template>
  512. </el-form-item>
  513. <el-form-item label="购买门店商品升级" v-if="ruleForm.is_auto_upgrade == 1">
  514. <el-form-item>
  515. <el-switch v-model="ruleForm.upgrade_type_store_goods" :active-value="1"
  516. :inactive-value="0" active-text="开启" inactive-text="关闭">
  517. </el-switch>
  518. </el-form-item>
  519. <el-form-item v-if="ruleForm.upgrade_type_store_goods==1">
  520. <el-radio-group v-model="ruleForm.buy_store_goods_type">
  521. <el-radio :label="0">订单完成
  522. </el-radio>
  523. <el-radio :label="1">支付完成
  524. </el-radio>
  525. </el-radio-group>
  526. </el-form-item>
  527. <el-form-item v-if="ruleForm.upgrade_type_store_goods==1">
  528. <el-radio-group v-model="ruleForm.store_goods_type">
  529. <el-radio :label="1">任意商品</el-radio>
  530. <el-radio :label="2">指定商品</el-radio>
  531. </el-radio-group>
  532. <div style="margin-top: 10px; display: flex;" v-if="ruleForm.store_goods_type==2">
  533. <com-dialog-select-store :multiple="true" @selected="storeGoodsSelect" title="商品选择" :is_show_store_name="true" url="store/store-goods/search-with-store">
  534. <el-button type="primary" plain>选择商品</el-button>
  535. </com-dialog-select-store>
  536. <div style="color: #ff4544; margin-left: 10px;">最多可添加99个商品</div>
  537. </div>
  538. </el-form-item>
  539. </el-form-item>
  540. <el-form-item label="收银台支付任意一笔订单升级" v-if="ruleForm.is_auto_upgrade == 1">
  541. <el-form-item>
  542. <el-switch v-model="ruleForm.store_cashier_order_is_up" :active-value="1"
  543. :inactive-value="0" active-text="开启" inactive-text="关闭">
  544. </el-switch>
  545. </el-form-item>
  546. </el-form-item>
  547. <el-form-item prop="store_goods_ids" v-if="ruleForm.upgrade_type_store_goods==1">
  548. <template v-if="ruleForm.store_goods_type==2">
  549. <div style="max-height: 300px;overflow-y: auto;width: 60%;">
  550. <el-table :data="ruleForm.store_goods_list" border style="width: 100%">
  551. <el-table-column type="index" align="center" label="序号" width="50"></el-table-column>
  552. <el-table-column prop="id" align="center" label="商品id" width="100"></el-table-column>
  553. <el-table-column prop="name,cover_pic" label="商品名称" >
  554. <template slot-scope="scope">
  555. <div flex="box:first">
  556. <div style="padding-right: 10px;">
  557. <com-image mode="aspectFill" :src="scope.row.cover_pic"></com-image>
  558. </div>
  559. <div style="display:flex;flex-direction:column;align-items:flex-start;">
  560. <div>{{scope.row.name}}</div>
  561. <div>
  562. <span style="color: #ff4544;" v-if="scope.row.price">¥{{ scope.row.price }}</span>
  563. <span style="margin-left: 20px;" v-if="scope.row.stock">库存:{{ scope.row.stock }}</span>
  564. </div>
  565. </div>
  566. </div>
  567. </template>
  568. </el-table-column>
  569. <el-table-column label="操作" width="100">
  570. <template slot-scope="scope">
  571. <el-button @click="deleteStoreGoods(scope.$index)" type="primary" size="mini">删除</el-button>
  572. </template>
  573. </el-table-column>
  574. </el-table>
  575. </div>
  576. </template>
  577. </el-form-item>
  578. <el-form-item label="是否启用" prop="status">
  579. <el-switch v-model="ruleForm.status" :active-value="1" :inactive-value="0"></el-switch>
  580. </el-form-item>
  581. <el-form-item label="等级说明">
  582. <el-input type="textarea" :rows="8" placeholder="请输入等级说明" v-model="ruleForm.explain" maxlength="1000" show-word-limit></el-input>
  583. </el-form-item>
  584. </el-col>
  585. </el-row>
  586. </el-form>
  587. </div>
  588. <el-button class="button-item" :loading="btnLoading" type="primary" @click="submitForm('ruleForm')"
  589. size="small">保存
  590. </el-button>
  591. </el-card>
  592. </div>
  593. <script>
  594. const app = new Vue({
  595. el: '#app',
  596. data() {
  597. return {
  598. msg: 1,
  599. options: [], //会员等级列表
  600. origin_level: 0,
  601. showConditionMsg: false,
  602. conditionMsg: '',
  603. //权重列表
  604. weights: [],
  605. level_arr: [],
  606. capital_map: {
  607. first_prize: '直推奖',
  608. indirect_prize: '间推奖',
  609. second_prize: '平台补贴',
  610. equal_prize: '培育奖',
  611. freeze_fund: '冻结基金',
  612. allowance_price : '津贴奖',
  613. equal_level_prize: '平级奖',
  614. repurchase_prize:'复购奖',
  615. },
  616. ruleForm: {
  617. level: '', //当前选中等级
  618. name: '',
  619. condition_type: 1,
  620. buy_goods_type: 0,
  621. is_auto_upgrade: 0,
  622. goods_type: 1,
  623. upgrade_type_condition: 0,
  624. upgrade_type_goods: 0,
  625. status: 1,
  626. explain: '',
  627. checked_condition_values: [
  628. {
  629. key: 0,
  630. value: {
  631. val0: '',
  632. }
  633. },
  634. {
  635. key: 1,
  636. value: {
  637. val0: 2,
  638. val1: 2,
  639. val2: 2,
  640. }
  641. },
  642. {
  643. key: 2,
  644. value: {
  645. val0: '',
  646. }
  647. },
  648. {
  649. key: 3,
  650. value: {
  651. val0: '',
  652. val1: '0',
  653. }
  654. },
  655. ],
  656. goods_ids: [],
  657. checked_condition_keys: [], //对应条件的key
  658. goods_list: [],
  659. setting: {
  660. commission_type: 'commission',
  661. from_type: 'double_copy',
  662. first_prize_type: 0,
  663. first_prize: 0,
  664. indirect_prize_type: 0,
  665. indirect_prize: 0,
  666. second_prize_type: 0,
  667. second_prize: 0,
  668. equal_prize_type: 0,
  669. equal_prize: 0,
  670. freeze_fund_prize: 0,
  671. freeze_fund_num: 0,
  672. allowance_price_type: 0,
  673. allowance_price: 0,
  674. equal_level_prize_type: 0,
  675. equal_level_prize: 0,
  676. repurchase_prize_type:0,
  677. repurchase_prize:0,
  678. is_thaw: 0, //是否勾选额外解冻条件
  679. first_level:'', //直推1、2号位需满足等级条件
  680. push_num: 0, //直推个数
  681. second_level: '', //直推用户等级
  682. },
  683. score_setting: {
  684. commission_type: 'score',
  685. from_type: 'double_copy',
  686. first_prize_type: 0,
  687. first_prize: 0,
  688. indirect_prize_type: 0,
  689. indirect_prize: 0,
  690. second_prize_type: 0,
  691. second_prize: 0,
  692. equal_prize_type: 0,
  693. equal_prize: 0,
  694. freeze_fund_prize: 0,
  695. freeze_fund_num: 0,
  696. allowance_price_type: 0,
  697. allowance_price: 0,
  698. equal_level_prize_type: 0,
  699. equal_level_prize: 0,
  700. repurchase_prize_type:0,
  701. repurchase_prize:0,
  702. },
  703. additional_score_setting: {
  704. commission_type: 'additional_score',
  705. from_type: 'double_copy',
  706. first_prize_type: 0,
  707. first_prize: 0,
  708. indirect_prize_type: 0,
  709. indirect_prize: 0,
  710. second_prize_type: 0,
  711. second_prize: 0,
  712. equal_prize_type: 0,
  713. equal_prize: 0,
  714. freeze_fund_prize: 0,
  715. freeze_fund_num: 0,
  716. allowance_price_type: 0,
  717. allowance_price: 0,
  718. equal_level_prize_type: 0,
  719. equal_level_prize: 0,
  720. repurchase_prize_type:0,
  721. repurchase_prize:0,
  722. },
  723. open_ladder: 0,
  724. ladder_setting: [],
  725. buy_store_goods_type: 0,
  726. store_goods_type: 1,
  727. upgrade_type_store_goods: 0,
  728. store_cashier_order_is_up: 0,
  729. store_goods_ids:[],
  730. store_goods_list:[],
  731. },
  732. checked_condition_values: [
  733. {
  734. key: 0,
  735. value: {
  736. val0: '',
  737. }
  738. },
  739. {
  740. key: 1,
  741. value: {
  742. val0: 0,
  743. val1: 0,
  744. val2: 0,
  745. }
  746. },
  747. {
  748. key: 2,
  749. value: {
  750. val0: '',
  751. }
  752. },
  753. {
  754. key: 3,
  755. value: {
  756. val0: '',
  757. val1: 0,
  758. }
  759. }
  760. ],
  761. rules: {
  762. level: [
  763. {required: true, message: '请选择等级', trigger: 'change'},
  764. ],
  765. name: [
  766. {required: true, message: '请输入等级名称', trigger: 'change'},
  767. ],
  768. status: [
  769. {required: true, message: '请选择等级状态', trigger: 'change'},
  770. ],
  771. },
  772. btnLoading: false,
  773. cardLoading: false,
  774. is_show_additional_score: <?= $is_show_additional_score ?>
  775. };
  776. },
  777. mounted() {
  778. // if (getQuery('id')) {
  779. // this.loadData();
  780. // }
  781. this.loadData();
  782. },
  783. methods: {
  784. // 获取显示的值
  785. loadData() {
  786. this.cardLoading = true;
  787. request({
  788. params: {
  789. r: 'double-copy/level/edit',
  790. id: getQuery('id')
  791. },
  792. }).then(e => {
  793. this.cardLoading = false;
  794. if (e.data.code == 0) {
  795. if (e.data.data.detail) {
  796. // 该字段为后面新增的关联字段,兼容之前的数据
  797. let score_setting = this.ruleForm.score_setting
  798. let additional_score_setting = this.ruleForm.additional_score_setting
  799. Object.assign(this.ruleForm, e.data.data.detail)
  800. if(!e.data.data.detail.score_setting){
  801. this.ruleForm.score_setting = score_setting
  802. }
  803. if(!e.data.data.detail.additional_score_setting){
  804. this.ruleForm.additional_score_setting = additional_score_setting
  805. }
  806. this.checked_condition_values.forEach((item,i) => {
  807. if (isEmpty(this.ruleForm.checked_condition_values[i])) {
  808. this.ruleForm.checked_condition_values.push(item)
  809. }
  810. })
  811. console.log(this.ruleForm.checked_condition_values);
  812. this.origin_level =this.ruleForm.level;
  813. }
  814. this.weights = e.data.data.weights;
  815. this.level_arr = e.data.data.level_arr;
  816. if (!isEmpty(e.data.data.capital_map)) this.capital_map = e.data.data.capital_map;
  817. console.log(thi.ruleForm);
  818. } else {
  819. this.$message.error(e.data.msg);
  820. }
  821. }).catch(e => {
  822. console.log(e);
  823. });
  824. },
  825. //提交表单
  826. submitForm(formName) {
  827. let self = this;
  828. self.showConditionMsg = false;
  829. if (self.ruleForm.upgrade_type_goods == 1) {
  830. if (self.ruleForm.goods_list.length == 0 && self.ruleForm.goods_type == 2) { //选中的checkBox
  831. self.$message.error('请选择升级商品');
  832. return;
  833. }
  834. }
  835. if (self.ruleForm.is_auto_upgrade == 1 && self.ruleForm.upgrade_type_condition == 1) { //选中升级条件
  836. if (self.ruleForm.checked_condition_keys.length == 0) { //选中的checkBox
  837. self.$message.error('请完善升级条件');
  838. return;
  839. }
  840. let checked_condition_values = self.ruleForm.checked_condition_values;
  841. self.ruleForm.checked_condition_keys.forEach(v => {
  842. self.conditionMsg = '请完善条件:' + (parseInt(v) + 1);
  843. // 遍历对象里面的每一个值,如果为空,则弹出
  844. for (let i in checked_condition_values[v].value) {
  845. if (!checked_condition_values[v].value[i] && checked_condition_values[v].value[i] === '') {
  846. self.showConditionMsg = true;
  847. return;
  848. }
  849. }
  850. })
  851. if (self.showConditionMsg) {
  852. this.$message.error(self.conditionMsg);
  853. return
  854. }
  855. if (this.ruleForm.checked_condition_keys.length > 0) {
  856. if (this.ruleForm.condition_type == 0) {
  857. this.$message.error('请选择条件升级的方式升级类型');
  858. return;
  859. }
  860. }
  861. }
  862. // return
  863. this.$refs[formName].validate((valid) => {
  864. if (valid) {
  865. // self.btnLoading = true;
  866. request({
  867. params: {
  868. r: 'double-copy/level/edit'
  869. },
  870. method: 'post',
  871. data: {
  872. form: self.ruleForm,
  873. }
  874. }).then(e => {
  875. self.btnLoading = false;
  876. if (e.data.code == 0) {
  877. navigateTo({
  878. r: 'double-copy/level/index'
  879. })
  880. } else {
  881. self.$message.error(e.data.msg);
  882. }
  883. }).catch(e => {
  884. self.$message.error(e.data.msg);
  885. self.btnLoading = false;
  886. });
  887. } else {
  888. console.log('error submit!!');
  889. return false;
  890. }
  891. });
  892. },
  893. //选择商品
  894. goodsSelect(param) {
  895. for (let j in param) {
  896. let item = param[j];
  897. if (this.ruleForm.goods_ids.length >= 99) {
  898. this.$message.error('指定商品不能大于99个');
  899. return;
  900. }
  901. let flag = true;
  902. for (let i in this.ruleForm.goods_ids) {
  903. if (this.ruleForm.goods_ids[i] == param[j].id) {
  904. flag = false;
  905. break;
  906. }
  907. }
  908. if (flag) {
  909. this.ruleForm.goods_ids.push(param[j].id);
  910. this.ruleForm.goods_list.push({
  911. id: param[j].id,
  912. name: param[j].goods_name,
  913. cover_pic: param[j].cover_pic,
  914. price: param[j].price,
  915. stock: param[j].stock,
  916. });
  917. }
  918. }
  919. },
  920. //删除商品
  921. deleteGoods(index) {
  922. this.ruleForm.goods_list.splice(index, 1);
  923. this.ruleForm.goods_ids.splice(index, 1);
  924. },
  925. //检测当前输入的违规次数--输入的时候
  926. freezeFundValuesVal0ViolationNumInput(value, v_key) {
  927. this.ruleForm.freeze_fund_data.freeze_fund_values[v_key].value.val0 = numberHandle(value, 2, 2);
  928. },
  929. //检测当前输入的违规次数--输入的时候
  930. freezeFundValuesVal2ViolationNumInput(value, v_key) {
  931. this.ruleForm.freeze_fund_data.freeze_fund_values[v_key].value.val2 = numberHandle(value, 2, 2);
  932. },
  933. handle(type, data = null) {
  934. switch (type) {
  935. case 'add':// 添加规格
  936. this.ruleForm.ladder_setting.push({
  937. market:"2",
  938. achievement:"0",
  939. thaw_percent:"",
  940. show_contents:"",
  941. });
  942. break;
  943. case 'delete':// 删除规格
  944. this.ruleForm.ladder_setting.splice(data,1);
  945. break;
  946. }
  947. },
  948. //选择商品
  949. storeGoodsSelect(param) {
  950. for (let j in param) {
  951. let item = param[j];
  952. if (this.ruleForm.store_goods_ids.length >= 99) {
  953. this.$message.error('指定商品不能大于99个');
  954. return;
  955. }
  956. let flag = true;
  957. for (let i in this.ruleForm.store_goods_ids) {
  958. if (this.ruleForm.store_goods_ids[i] == param[j].id) {
  959. flag = false;
  960. break;
  961. }
  962. }
  963. if (flag) {
  964. this.ruleForm.store_goods_ids.push(param[j].id);
  965. this.ruleForm.store_goods_list.push({
  966. id: param[j].id,
  967. name: param[j].goods_name,
  968. cover_pic: param[j].cover_pic,
  969. price: param[j].price,
  970. stock: param[j].stock,
  971. });
  972. }
  973. }
  974. },
  975. //删除商品
  976. deleteStoreGoods(index) {
  977. this.ruleForm.store_goods_list.splice(index, 1);
  978. this.ruleForm.store_goods_ids.splice(index, 1);
  979. },
  980. clickSelectCheckConditionGoods() {
  981. this.$refs.checkgoods.$el.click()
  982. },
  983. conditionGoodsSelectCheck(param) {
  984. let ckey;
  985. this.ruleForm.checked_condition_values.forEach(function(item, index) {
  986. if (item.key == 2) {
  987. ckey = index;
  988. }
  989. })
  990. let gval = this.ruleForm.checked_condition_values[2].value.val0;
  991. let garr = [];
  992. if (gval.length > 0) {
  993. garr = gval.split(",")
  994. }
  995. for (let j in param) {
  996. let item = param[j];
  997. let isHave = false;
  998. garr.forEach(element => {
  999. if (element == param[j].id) {
  1000. isHave = true;
  1001. }
  1002. });
  1003. if (!isHave) {
  1004. garr.push(param[j].id);
  1005. }
  1006. }
  1007. gval = garr.join(',');
  1008. this.ruleForm.checked_condition_values[2].value.val0 = gval;
  1009. console.log(gval);
  1010. },
  1011. conditionGoodsSelect(param) {
  1012. let ckey;
  1013. this.ruleForm.checked_condition_values.forEach(function(item, index) {
  1014. if (item.key == 2) {
  1015. ckey = index;
  1016. }
  1017. })
  1018. let gval = this.ruleForm.checked_condition_values[ckey].value.val0;
  1019. let garr = [];
  1020. if (gval.length > 0) {
  1021. garr = gval.split(",")
  1022. }
  1023. for (let j in param) {
  1024. let item = param[j];
  1025. let isHave = false;
  1026. garr.forEach(element => {
  1027. if (element == param[j].id) {
  1028. isHave = true;
  1029. }
  1030. });
  1031. if (!isHave) {
  1032. garr.push(param[j].id);
  1033. }
  1034. }
  1035. gval = garr.join(',');
  1036. console.log(gval);
  1037. this.ruleForm.checked_condition_values[ckey].value.val0 = gval;
  1038. },
  1039. }
  1040. });
  1041. </script>
  1042. <style>
  1043. .form-body {
  1044. padding: 20px;
  1045. background-color: #fff;
  1046. margin-bottom: 20px;
  1047. padding-right: 20%;
  1048. min-width: 900px;
  1049. }
  1050. .form-button .el-form-item__content {
  1051. margin-left: 0 !important;
  1052. }
  1053. .button-item {
  1054. padding: 9px 25px;
  1055. }
  1056. .check-group {
  1057. font-size: 14px !important;
  1058. }
  1059. .check-group .el-col {
  1060. display: flex;
  1061. }
  1062. .check-group .el-input {
  1063. margin: 0 5px;
  1064. }
  1065. .check-group .el-col .el-checkbox {
  1066. display: flex;
  1067. align-items: center;
  1068. }
  1069. .check-group .el-col .el-input {
  1070. width: 100px;
  1071. }
  1072. .check-group .el-col .el-input .el-input__inner {
  1073. height: 30px;
  1074. width: 100px;
  1075. }
  1076. .el-checkbox-group .el-col {
  1077. margin-bottom: 10px;
  1078. }
  1079. .my_reset input {
  1080. height: 32px;
  1081. line-height: 32px;
  1082. }
  1083. .my_reset .el-input-group__append {
  1084. padding: 0px 10px;
  1085. }
  1086. </style>