index.php 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668
  1. <style>
  2. @media screen and (min-width: 1370px) {
  3. .form-body {
  4. padding: 20px 0;
  5. padding-right: 50%;
  6. min-width: 1400px;
  7. }
  8. }
  9. @media screen and (max-width: 1369px) {
  10. .form-body {
  11. padding: 20px 0;
  12. padding-right: 20%;
  13. }
  14. }
  15. .form-body {
  16. background-color: #fff;
  17. margin-bottom: 20px;
  18. }
  19. .mo_title{
  20. font-size: 17px;
  21. margin-bottom: 20px;
  22. border-left: 5px solid #1479F0;
  23. padding-left: 15px;
  24. }
  25. .title_content{
  26. width: 20%;
  27. float: left;
  28. }
  29. .msg_font{
  30. font-size: 12px;
  31. color: #999999;
  32. }
  33. .row_data{
  34. padding-left: 24px;
  35. padding-bottom: 10px;
  36. }
  37. .row_transfer{
  38. padding-left: 55px;
  39. }
  40. .content_data_transfer{
  41. padding-left: 64px;
  42. padding-bottom: 20px;
  43. }
  44. .el-tabs__content {
  45. padding: 0 !important;
  46. }
  47. </style>
  48. <div id="app" v-cloak>
  49. <el-tabs v-model="activeName" type="border-card">
  50. <el-tab-pane label="基础设置" name="basic">
  51. <el-card style="border:0; min-width: 1000px;" shadow="never" v-loading="loading">
  52. <div v-if="load">
  53. <div class="form-body">
  54. <el-form ref="ruleForm" :model="ruleForm" label-width="120px" style="padding-left: 20px;" size="small">
  55. <el-form-item :label="'冻结'+integral_name+'激活:'" prop="material_link" style="font-size: 16px;">
  56. <div class="row_data">
  57. <el-radio v-model="ruleForm.frozen_status" :label="1">开启</el-radio>
  58. <el-radio v-model="ruleForm.frozen_status" :label="2">关闭</el-radio>
  59. <div class="msg_font">冻结{{integral_name}}激活到激活{{integral_name}}中</div>
  60. </div>
  61. </el-form-item>
  62. <el-form-item label="激活方式:" prop="activation_method" style="font-size: 16px;">
  63. <div class="row_data">
  64. <el-radio-group v-model="ruleForm.activation_method">
  65. <el-radio :label="1">按初始冻结余额激活</el-radio>
  66. <br>
  67. <el-radio :label="2" style="margin: 20px 0;">按最新冻结余额激活</el-radio>
  68. <br>
  69. <el-radio :label="3">按固定数量激活</el-radio>
  70. </el-radio-group>
  71. </div>
  72. <el-form-item :label="'每日激活' + (ruleForm.activation_method == 3 ? '数量' : '比例') + ':'" prop="material_link">
  73. <el-input style="width: 220px;" placeholder="请输入每日激活比例" onInput="value = toNumber(value, 2)" v-model="ruleForm.activation_num">
  74. <template slot="append">{{ ruleForm.activation_method == 3 ? '个' : '%' }}</template>
  75. </el-input>
  76. </el-form-item>
  77. <el-form-item label="每日激活时间:" prop="material_link">
  78. <el-time-select v-model="ruleForm.activation_time" value-format="HHmm" :picker-options="{start: '00:00',step: '00:30',end: '23:59'}"
  79. placeholder="选择时间">
  80. </el-time-select>
  81. </el-form-item>
  82. </el-form-item>
  83. <el-form-item :label="'赠送'+integral_name+'方式'" prop="give_type" style="font-size: 16px;">
  84. <div class="row_data">
  85. <el-radio v-model="ruleForm.give_type" :label="1">支付完成</el-radio>
  86. <el-radio v-model="ruleForm.give_type" :label="2">订单完成</el-radio>
  87. </div>
  88. </el-form-item>
  89. <el-form-item label="" v-if="ruleForm.give_type == 1" prop="change_activation_integral">
  90. <div class="row_data">
  91. <el-radio v-model="ruleForm.change_activation_integral" :label="1">
  92. 订单确认收货且完成评价后,这笔订单赠送的冻结积分变为激活积分
  93. </el-radio>
  94. <el-radio v-model="ruleForm.change_activation_integral" :label="2">
  95. 订单支付后,订单赠送的冻结积分按照激活方式每天释放为激活积分
  96. </el-radio>
  97. <el-radio v-model="ruleForm.change_activation_integral" :label="0">
  98. 订单确认收货或已完成,不管是否评价,
  99. <el-input v-model="ruleForm.time_limit" onInput="value = toNumber(value, 2)" style="width:100px;"></el-input>
  100. 天后,释放所有积分
  101. </el-radio>
  102. </div>
  103. </el-form-item>
  104. <el-form-item label="自定义名称:" prop="integral_name" style="font-size: 16px;">
  105. <div class="row_data">
  106. <el-input v-model="integral_name" style="width:200px;"></el-input>
  107. </div>
  108. </el-form-item>
  109. <!--消费送冻结积分激活积分-->
  110. <div class="mo_title">消费送冻结积分激活积分</div>
  111. <el-form ref="ruleForm" :model="ruleForm" label-width="120px" style="padding-left: 20px;" size="small">
  112. <el-form-item style="padding-left: 25px;" :label="'下单赠送:'" prop="material_link">
  113. <el-form-item label="冻结积分" label-width="80px">
  114. <el-input placeholder="请输入赠送积分金额" style="margin-right: 10px;" class="width-350" v-model="buy_frozen_integral.give" onInput="value = toNumber(value, 2)">
  115. <template slot="prepend">赠送积分</template>
  116. <template slot="append">{{ buy_frozen_integral.is_percent == 0 ? '个' : '%' }}</template>
  117. </el-input>
  118. <el-radio v-model="buy_frozen_integral.is_percent" :label="0">固定值</el-radio>
  119. <el-radio v-model="buy_frozen_integral.is_percent" :label="1">百分比</el-radio>
  120. </el-form-item>
  121. <el-form-item label="激活积分" label-width="80px">
  122. <el-input placeholder="请输入赠送积分金额" style="margin-right: 10px;" class="width-350" v-model="buy_integral.give" onInput="value = toNumber(value, 2)">
  123. <template slot="prepend">赠送积分</template>
  124. <template slot="append">{{ buy_integral.is_percent == 0 ? '个' : '%' }}</template>
  125. </el-input>
  126. <el-radio v-model="buy_integral.is_percent" :label="0">固定值</el-radio>
  127. <el-radio v-model="buy_integral.is_percent" :label="1">百分比</el-radio>
  128. </el-form-item>
  129. </el-form-item>
  130. <el-form-item style="padding-left: 25px;" :label="'直推上级赠送:'" prop="material_link">
  131. <el-form-item label="冻结积分" label-width="80px">
  132. <el-input placeholder="请输入赠送积分金额" style="margin-right: 10px;" class="width-350" v-model="parent_frozen_integral.give" onInput="value = toNumber(value, 2)">
  133. <template slot="prepend">赠送积分</template>
  134. <template slot="append">{{ parent_frozen_integral.is_percent == 0 ? '个' : '%' }}</template>
  135. </el-input>
  136. <el-radio v-model="parent_frozen_integral.is_percent" :label="0">固定值</el-radio>
  137. <el-radio v-model="parent_frozen_integral.is_percent" :label="1">百分比</el-radio>
  138. </el-form-item>
  139. <el-form-item label="激活积分" label-width="80px">
  140. <el-input placeholder="请输入赠送积分金额" style="margin-right: 10px;" class="width-350" v-model="parent_integral.give" onInput="value = toNumber(value, 2)">
  141. <template slot="prepend">赠送积分</template>
  142. <template slot="append">{{ parent_integral.is_percent == 0 ? '个' : '%' }}</template>
  143. </el-input>
  144. <el-radio v-model="parent_integral.is_percent" :label="0">固定值</el-radio>
  145. <el-radio v-model="parent_integral.is_percent" :label="1">百分比</el-radio>
  146. </el-form-item>
  147. </el-form-item>
  148. <!-- <el-form-item style="padding-left: 25px;" :label="'商家奖励:'" prop="material_link">-->
  149. <!---->
  150. <!-- <el-form-item label="冻结积分" label-width="80px">-->
  151. <!-- <el-input placeholder="请输入赠送积分金额" style="margin-right: 10px;" class="width-350" v-model="store_frozen_integral.give" onInput="value = toNumber(value, 2)">-->
  152. <!-- <template slot="prepend">赠送积分</template>-->
  153. <!-- <template slot="append">{{ store_frozen_integral.is_percent == 0 ? '个' : '%' }}</template>-->
  154. <!-- </el-input>-->
  155. <!---->
  156. <!-- <el-radio v-model="store_frozen_integral.is_percent" :label="0">固定值</el-radio>-->
  157. <!-- <el-radio v-model="store_frozen_integral.is_percent" :label="1">百分比</el-radio>-->
  158. <!-- </el-form-item>-->
  159. <!---->
  160. <!-- <el-form-item label="激活积分" label-width="80px">-->
  161. <!-- <el-input placeholder="请输入赠送积分金额" style="margin-right: 10px;" class="width-350" v-model="store_integral.give" onInput="value = toNumber(value, 2)">-->
  162. <!-- <template slot="prepend">赠送积分</template>-->
  163. <!-- <template slot="append">{{ store_integral.is_percent == 0 ? '个' : '%' }}</template>-->
  164. <!-- </el-input>-->
  165. <!---->
  166. <!-- <el-radio v-model="store_integral.is_percent" :label="0">固定值</el-radio>-->
  167. <!-- <el-radio v-model="store_integral.is_percent" :label="1">百分比</el-radio>-->
  168. <!-- </el-form-item>-->
  169. <!-- </el-form-item>-->
  170. <!---->
  171. <!-- <el-form-item style="padding-left: 25px;" :label="'商家上级奖励:'" prop="material_link">-->
  172. <!---->
  173. <!-- <el-form-item label="冻结积分" label-width="80px">-->
  174. <!-- <el-input placeholder="请输入赠送积分金额" style="margin-right: 10px;" class="width-350" v-model="parent_store_frozen_integral.give" onInput="value = toNumber(value, 2)">-->
  175. <!-- <template slot="prepend">赠送积分</template>-->
  176. <!-- <template slot="append">{{ parent_store_frozen_integral.is_percent == 0 ? '个' : '%' }}</template>-->
  177. <!-- </el-input>-->
  178. <!---->
  179. <!-- <el-radio v-model="parent_store_frozen_integral.is_percent" :label="0">固定值</el-radio>-->
  180. <!-- <el-radio v-model="parent_store_frozen_integral.is_percent" :label="1">百分比</el-radio>-->
  181. <!-- </el-form-item>-->
  182. <!---->
  183. <!-- <el-form-item label="激活积分" label-width="80px">-->
  184. <!-- <el-input placeholder="请输入赠送积分金额" style="margin-right: 10px;" class="width-350" v-model="parent_store_integral.give" onInput="value = toNumber(value, 2)">-->
  185. <!-- <template slot="prepend">赠送积分</template>-->
  186. <!-- <template slot="append">{{ parent_store_integral.is_percent == 0 ? '个' : '%' }}</template>-->
  187. <!-- </el-input>-->
  188. <!---->
  189. <!-- <el-radio v-model="parent_store_integral.is_percent" :label="0">固定值</el-radio>-->
  190. <!-- <el-radio v-model="parent_store_integral.is_percent" :label="1">百分比</el-radio>-->
  191. <!-- </el-form-item>-->
  192. <!-- </el-form-item>-->
  193. </el-form>
  194. <!--消费送冻结积分激活积分end-->
  195. <div class="mo_title">{{integral_name}}转出规则</div>
  196. <el-form ref="ruleForm" :model="ruleForm" label-width="120px" style="padding-left: 20px;" size="small">
  197. <el-form-item style="padding-left: 25px;" :label="'好友'+integral_name+'转让:'" prop="material_link">
  198. <div class="row_transfer">
  199. <el-radio v-model="ruleForm.transfer_status" :label="1">开启</el-radio>
  200. <el-radio v-model="ruleForm.transfer_status" :label="2">关闭</el-radio>
  201. <div class="msg_font">可以选择冻结{{integral_name}}转让和激活{{integral_name}}转让给好友</div>
  202. <div class="title_content">{{integral_name}}类型:</div>
  203. <div class="content_data">
  204. <el-checkbox-group v-model="ruleForm.transfer_red_type">
  205. <el-checkbox label="frozen_integral">冻结{{integral_name}}</el-checkbox>
  206. <el-checkbox label="integral">激活{{integral_name}}</el-checkbox>
  207. </el-checkbox-group>
  208. </div>
  209. <div class="title_content">转让权限:</div>
  210. <div class="content_data">
  211. <el-radio v-model="ruleForm.auth_status" :label="1">不限</el-radio>
  212. <el-radio v-model="ruleForm.auth_status" :label="2">限制团队上下级</el-radio>
  213. </div>
  214. </div>
  215. <el-form-item label="转让手续费:" >
  216. <el-input maxlength="5" style="width: 350px;" placeholder="请输入转让手续费" onInput="value = toNumber(value, 2)" v-model="ruleForm.transfer_percentage" >
  217. <template slot="append">%</template>
  218. </el-input>
  219. <div class="msg_font">转让{{integral_name}}平台收取手续费</div>
  220. </el-form-item>
  221. </el-form-item>
  222. <el-form ref="ruleForm" :model="ruleForm" label-width="120px" style="padding-left: 20px;" size="small">
  223. <el-form-item :label="integral_name+'转出:'" prop="material_link">
  224. <div class="row_transfer">
  225. <el-radio v-model="ruleForm.transfer_out_status" :label="1">开启</el-radio>
  226. <el-radio v-model="ruleForm.transfer_out_status" :label="2">关闭</el-radio>
  227. <div class="msg_font">冻结{{integral_name}}和激活{{integral_name}}转换会员自己的余额或者积分</div>
  228. <div class="title_content">{{integral_name}}类型:</div>
  229. <div class="content_data">
  230. <el-checkbox-group v-model="ruleForm.transfer_out_type">
  231. <el-checkbox label="frozen_integral">冻结{{integral_name}}</el-checkbox>
  232. <el-checkbox label="integral">激活{{integral_name}}</el-checkbox>
  233. </el-checkbox-group>
  234. </div>
  235. <div class="title_content">转出方式:</div>
  236. <div class="content_data">
  237. <el-checkbox-group v-model="ruleForm.transfer_out_mode">
  238. <div class="content_data_transfer">
  239. <el-checkbox label="1">转余额</el-checkbox>
  240. <br>
  241. <el-input style="width: 350px;" v-if = "ruleForm.transfer_out_mode.indexOf('1') >= 0" onInput="value = toNumber(value, 2)" v-model="ruleForm.transfer_out_balance">
  242. <template slot="prepend">1{{integral_name}}等于</template>
  243. <template slot="append">元</template>
  244. </el-input>
  245. <br>
  246. <el-checkbox label="2" style="margin: 5px 30px 10px 53px;">转积分</el-checkbox>
  247. <br>
  248. <el-input style="width: 350px;" v-if = "ruleForm.transfer_out_mode.indexOf('2') >= 0" onInput="value = toNumber(value, 2)" v-model="ruleForm.transfer_out_red_packet">
  249. <template slot="prepend">1{{integral_name}}等于</template>
  250. <template slot="append">红包</template>
  251. </el-input><br>
  252. <el-checkbox label="3" style="margin: 5px 30px 10px 53px;">转贡献值</el-checkbox>
  253. <br>
  254. <el-input style="width: 350px;" v-if = "ruleForm.transfer_out_mode.indexOf('3') >= 0" onInput="value = toNumber(value, 2)" v-model="ruleForm.transfer_out_contribution">
  255. <template slot="prepend">1{{integral_name}}等于</template>
  256. <template slot="append">贡献值</template>
  257. </el-input><br>
  258. <el-checkbox label="4" style="margin: 5px 30px 10px 53px;">转嗨贝</el-checkbox>
  259. <br>
  260. <el-input style="width: 350px;" v-if = "ruleForm.transfer_out_mode.indexOf('4') >= 0" onInput="value = toNumber(value, 2)" v-model="ruleForm.transfer_out_hi_bei">
  261. <template slot="prepend">1{{integral_name}}等于</template>
  262. <template slot="append">嗨贝</template>
  263. </el-input>
  264. </div>
  265. </el-checkbox-group>
  266. </div>
  267. </div>
  268. <el-form-item label="转出手续费:" prop="material_link">
  269. <el-input maxlength="5" style="width: 350px;" placeholder="请输入转出手续费" onInput="value = toNumber(value, 2)" v-model="ruleForm.transfer_out_service">
  270. <template slot="append">%</template>
  271. </el-input>
  272. <div class="msg_font">转出{{integral_name}}平台收取手续费</div>
  273. </el-form-item>
  274. </el-form-item>
  275. </el-form>
  276. </el-form>
  277. <!--消费送冻结积分激活积分end-->
  278. <div class="mo_title">商品购买冻结积分奖励设置</div>
  279. <el-form ref="ruleForm" :model="ruleForm" label-width="130px" style="padding-left: 20px;">
  280. <el-form-item label="是否开启商品购买冻结积分奖励">
  281. <el-switch
  282. v-model="ruleForm.is_enable_buy_goods_give_frozen_score"
  283. :active-value="1"
  284. :inactive-value="0">
  285. </el-switch>
  286. </el-form-item>
  287. <template v-if="ruleForm.is_enable_buy_goods_give_frozen_score">
  288. <el-form-item label="奖励周期">
  289. <el-radio-group v-model="ruleForm.reward_period">
  290. <el-radio :label="0">每天</el-radio>
  291. </el-radio-group>
  292. </el-form-item>
  293. <el-form-item label="奖励冻结积分">
  294. <el-input v-model="ruleForm.reward_frozen_score" size="small" onInput="value = toNumber(value, 2)">
  295. <template slot="append">个</template>
  296. </el-input>
  297. </el-form-item>
  298. <el-form-item label="奖励">
  299. <el-input v-model="ruleForm.reward_person_count" size="small" onInput="value = toNumber(value)">
  300. <template slot="append">人</template>
  301. </el-input>
  302. </el-form-item>
  303. <el-form-item label="循环">
  304. <el-input v-model="ruleForm.loop_num" size="small" onInput="value = toNumber(value)">
  305. <template slot="append">轮</template>
  306. </el-input>
  307. </el-form-item>
  308. <el-form-item label="满足用户等级奖励">
  309. <el-select v-model="ruleForm.level_condition" size="small" multiple>
  310. <el-option
  311. v-for="item in levelList"
  312. :key="item.level"
  313. :label="item.name"
  314. :value="parseInt(item.level)">
  315. </el-option>
  316. </el-select>
  317. </el-form-item>
  318. <div class="msg_font">注:每日只能奖励一位满足等级的会员 每天从当前上级开始逐层向上奖励,一旦确定奖励层级,后续循环都在该层级的几个人中进行。若期间有人等级不达标,则其对应的奖励不发放,且当天无奖励。建议保持关系链稳定,避免影响奖励顺序。</div>
  319. <el-form-item label="赠送积分方式">
  320. <el-radio-group v-model="ruleForm.gift_method">
  321. <el-radio :label="0">订单支付</el-radio>
  322. <el-radio :label="1">订单完成</el-radio>
  323. </el-radio-group>
  324. </el-form-item>
  325. </template>
  326. </el-form>
  327. <div class="mo_title">分销商/渠道分红积分奖励设置</div>
  328. <el-form ref="ruleForm" :model="ruleForm" label-width="160px" style="padding-left: 20px;">
  329. <el-form-item label="积分奖励转化冻结积分">
  330. <el-radio-group v-model="ruleForm.score_reward_invert_freeze_points">
  331. <el-radio :label="1">开启</el-radio>
  332. <el-radio :label="0">关闭</el-radio>
  333. </el-radio-group>
  334. <div class="msg_font">注:开启之后,分销商和渠道分红的积分转化成冻结积分</div>
  335. </el-form-item>
  336. </el-form>
  337. </el-form>
  338. <el-button class="button-item" :loading="btnLoading" type="primary" size="small" @click="store('ruleForm')" style="margin-left: 20px;">保存</el-button>
  339. </div>
  340. </div>
  341. </el-card>
  342. </el-tab-pane>
  343. <el-tab-pane label="更多设置" name="more">
  344. <el-card style="border:0; min-width: 1000px;" shadow="never">
  345. <div v-if="load">
  346. <div class="form-body">
  347. <el-form ref="ruleForm" :model="ruleForm" label-width="160px" style="padding-left: 20px;">
  348. <el-form-item label="指定日期不激活">
  349. <el-date-picker
  350. type="dates"
  351. v-model="ruleForm.inactive_dates"
  352. placeholder="选择日期"
  353. value-format="yyyy-MM-dd">
  354. </el-date-picker>
  355. </el-form-item>
  356. <el-form-item label="已选择日期">
  357. <el-tag
  358. closable
  359. style="margin-right: 5px;"
  360. v-for="(date, index) in ruleForm.inactive_dates"
  361. :key="date"
  362. :type="date"
  363. effect="dark"
  364. @close="removeInactiveDates(index)">
  365. {{ date }}
  366. </el-tag>
  367. </el-form-item>
  368. </el-form>
  369. <el-button class="button-item" :loading="btnLoading" type="primary" size="small" @click="store('ruleForm')" style="margin-left: 20px;">保存</el-button>
  370. </div>
  371. </div>
  372. </el-card>
  373. </el-tab-pane>
  374. </el-tabs>
  375. </div>
  376. <script>
  377. const app = new Vue({
  378. el: '#app',
  379. data() {
  380. return {
  381. userLevelList: [],
  382. loading: false,
  383. load: false,
  384. btnLoading: false,
  385. ruleForm : {
  386. frozen_status : '',
  387. activation_method: '',
  388. give_type : '',
  389. time_limit: '',
  390. integral_name : '积分',
  391. activation_num : '',
  392. activation_time : '',
  393. change_activation_integral: 0,
  394. transfer_status: '',
  395. transfer_red_type: [],
  396. auth_status:'',
  397. transfer_percentage: 0,
  398. transfer_out_status: '',
  399. transfer_out_type:[],
  400. transfer_out_mode:[],
  401. // transfer_out_percentage:'',
  402. transfer_out_service:'',
  403. buy_frozen_integral: {
  404. integral_wallet_type: 'frozen_integral',
  405. give:'',
  406. is_percent:1,
  407. },
  408. buy_integral: {
  409. integral_wallet_type: 'integral',
  410. is_percent: 1,
  411. give: 0,
  412. },
  413. parent_frozen_integral: {
  414. integral_wallet_type: 'frozen_integral',
  415. give:'',
  416. is_percent:1,
  417. },
  418. parent_integral: {
  419. integral_wallet_type: 'integral',
  420. is_percent: 1,
  421. give: 0,
  422. },
  423. // parent_store_frozen_integral: {
  424. // integral_wallet_type: 'frozen_integral',
  425. // give:'',
  426. // is_percent:1,
  427. // },
  428. // parent_store_integral: {
  429. // integral_wallet_type: 'integral',
  430. // is_percent: 1,
  431. // give: 0,
  432. // },
  433. // store_frozen_integral: {
  434. // integral_wallet_type: 'frozen_integral',
  435. // give:'',
  436. // is_percent:1,
  437. // },
  438. // store_integral: {
  439. // integral_wallet_type: 'integral',
  440. // is_percent: 1,
  441. // give: 0,
  442. // },
  443. is_enable_buy_goods_give_frozen_score: 0,
  444. reward_period: 0,
  445. reward_frozen_score: 0,
  446. reward_person_count: 0,
  447. loop_num: 0,
  448. level_condition: [],
  449. gift_method: 0,
  450. score_reward_invert_freeze_points: 0,
  451. inactive_dates: [],
  452. },
  453. material_link : "/plugins/littleRedBook/index",
  454. checkAll: false,//是否全选
  455. isIndeterminate: false,//未全选样式
  456. checkedCities: [],//已勾选的
  457. integral_name: '积分',
  458. buy_frozen_integral: {
  459. integral_wallet_type: 'frozen_integral',
  460. give:'',
  461. is_percent:1,
  462. },
  463. buy_integral: {
  464. integral_wallet_type: 'integral',
  465. is_percent: 1,
  466. give: 0,
  467. },
  468. parent_frozen_integral: {
  469. integral_wallet_type: 'frozen_integral',
  470. give:'',
  471. is_percent:1,
  472. },
  473. parent_integral: {
  474. integral_wallet_type: 'integral',
  475. is_percent: 1,
  476. give: 0,
  477. },
  478. // parent_store_frozen_integral: {
  479. // integral_wallet_type: 'frozen_integral',
  480. // give:'',
  481. // is_percent:1,
  482. // },
  483. // parent_store_integral: {
  484. // integral_wallet_type: 'integral',
  485. // is_percent: 1,
  486. // give: 0,
  487. // },
  488. // store_frozen_integral: {
  489. // integral_wallet_type: 'frozen_integral',
  490. // give:'',
  491. // is_percent:1,
  492. // },
  493. // store_integral: {
  494. // integral_wallet_type: 'integral',
  495. // is_percent: 1,
  496. // give: 0,
  497. // },
  498. levelList: <?= $levelList ?>,
  499. activeName: 'basic'
  500. };
  501. },
  502. created() {
  503. this.loadData();
  504. },
  505. methods: {
  506. store(formName) {
  507. this.$refs[formName].validate((valid) => {
  508. let self = this;
  509. self.ruleForm.user_level_limit = self.checkedCities;
  510. // console.log(this.ruleForm, '==========');return null;
  511. if (valid) {
  512. if (self.ruleForm.transfer_status == 1 && !self.ruleForm.transfer_percentage) {
  513. self.ruleForm.transfer_percentage = 0;
  514. }
  515. if (self.ruleForm.transfer_out_status == 1 && !self.ruleForm.transfer_out_service) {
  516. self.ruleForm.transfer_out_service = 0;
  517. }
  518. if (self.ruleForm.transfer_out_mode.indexOf('1') > -1 && !self.ruleForm.transfer_out_balance) {
  519. self.ruleForm.transfer_out_balance = 1;
  520. }
  521. if (self.ruleForm.transfer_out_mode.indexOf('2') > -1 && !self.ruleForm.transfer_out_red_packet) {
  522. self.ruleForm.transfer_out_red_packet = 1;
  523. }
  524. if (self.ruleForm.transfer_out_mode.indexOf('2') > -1 && !self.ruleForm.transfer_out_contribution) {
  525. self.ruleForm.transfer_out_contribution = 1;
  526. }
  527. if (self.ruleForm.transfer_out_mode.indexOf('2') > -1 && !self.ruleForm.transfer_out_hi_bei) {
  528. self.ruleForm.transfer_out_hi_bei = 1;
  529. }
  530. if (self.ruleForm.frozen_status == 1 && !self.ruleForm.activation_num) {
  531. self.ruleForm.activation_num = 0;
  532. }
  533. self.ruleForm.integral_name = self.integral_name;
  534. self.ruleForm.buy_frozen_integral = self.buy_frozen_integral;
  535. self.ruleForm.buy_integral = self.buy_integral;
  536. self.ruleForm.parent_frozen_integral = self.parent_frozen_integral;
  537. self.ruleForm.parent_integral = self.parent_integral;
  538. // self.ruleForm.store_frozen_integral = self.store_frozen_integral;
  539. // self.ruleForm.store_integral = self.store_integral;
  540. // self.ruleForm.parent_store_frozen_integral = self.parent_store_frozen_integral;
  541. // self.ruleForm.parent_store_integral = self.parent_store_integral;
  542. self.btnLoading = true;
  543. request({
  544. params: {
  545. r: 'score-expansion/setting/index'
  546. },
  547. method: 'post',
  548. data: self.ruleForm,
  549. }).then(e => {
  550. self.btnLoading = false;
  551. if (e.data.code == 0) {
  552. self.$message.success(e.data.msg);
  553. } else {
  554. self.$message.error(e.data.msg);
  555. }
  556. }).catch(e => {
  557. self.$message.error(e.data.msg);
  558. self.btnLoading = false;
  559. });
  560. } else {
  561. console.log('error submit!!');
  562. return false;
  563. }
  564. });
  565. },
  566. //获取页面信息
  567. loadData() {
  568. this.loading = true;
  569. this.load = true;
  570. request({
  571. params: {
  572. r: 'score-expansion/setting/index'
  573. }
  574. }).then(e => {
  575. this.loading = false;
  576. if (e.data.code == 0) {
  577. //19:18
  578. if(!isEmpty(e.data.data)) {
  579. this.ruleForm = e.data.data;
  580. if (isEmpty(this.ruleForm.integral_name)) {
  581. this.ruleForm.integral_name = this.integral_name
  582. } else {
  583. this.integral_name = this.ruleForm.integral_name
  584. }
  585. if (!isEmpty(this.ruleForm.buy_frozen_integral)) {
  586. this.buy_frozen_integral = this.ruleForm.buy_frozen_integral
  587. }
  588. if (!isEmpty(this.ruleForm.buy_integral)) {
  589. this.buy_integral = this.ruleForm.buy_integral
  590. }
  591. if (!isEmpty(this.ruleForm.parent_frozen_integral)) {
  592. this.parent_frozen_integral = this.ruleForm.parent_frozen_integral
  593. }
  594. if (!isEmpty(this.ruleForm.parent_integral)) {
  595. this.parent_integral = this.ruleForm.parent_integral
  596. }
  597. // if (!isEmpty(this.ruleForm.store_frozen_integral)) {
  598. // this.store_frozen_integral = this.ruleForm.store_frozen_integral
  599. // }
  600. // if (!isEmpty(this.ruleForm.store_integral)) {
  601. // this.store_integral = this.ruleForm.store_integral
  602. // }
  603. // if (!isEmpty(this.ruleForm.parent_store_frozen_integral)) {
  604. // this.parent_store_frozen_integral = this.ruleForm.parent_store_frozen_integral
  605. // }
  606. // if (!isEmpty(this.ruleForm.parent_store_integral)) {
  607. // this.parent_store_integral = this.ruleForm.parent_store_integral
  608. // }
  609. this.ruleForm.transfer_red_type = this.ruleForm.transfer_red_type ? JSON.parse(this.ruleForm.transfer_red_type):[];
  610. this.ruleForm.transfer_out_type = this.ruleForm.transfer_out_type ? JSON.parse(this.ruleForm.transfer_out_type):[];
  611. this.ruleForm.transfer_out_mode = this.ruleForm.transfer_out_mode ? JSON.parse(this.ruleForm.transfer_out_mode):[];
  612. //if(this.ruleForm.change_activation_integral != undefined){
  613. // this.ruleForm.change_activation_integral = String(this.ruleForm.change_activation_integral)
  614. //}
  615. }
  616. this.load = true;
  617. } else {
  618. this.$message.error(e.data.msg);
  619. }
  620. }).catch(e => {
  621. this.$message.error(e);
  622. this.btnLoading = false;
  623. });
  624. },
  625. removeInactiveDates(index) {
  626. this.ruleForm.inactive_dates.splice(index, 1);
  627. }
  628. }
  629. });
  630. </script>