edit.php 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644
  1. <style>
  2. .form-body {
  3. padding: 20px;
  4. background-color: #fff;
  5. margin-bottom: 20px;
  6. padding-right: 20%;
  7. min-width: 900px;
  8. }
  9. .form-body .el-form-item {
  10. /*padding-right: 50%;*/
  11. min-width: 850px;
  12. }
  13. .form-button {
  14. margin: 0;
  15. }
  16. .form-button .el-form-item__content {
  17. margin-left: 0 !important;
  18. }
  19. .button-item {
  20. padding: 9px 25px;
  21. }
  22. /*批量上传图片*/
  23. .pic-url-remark {
  24. font-size: 13px;
  25. color: #c9c9c9;
  26. margin-bottom: 12px;
  27. }
  28. .add-image-btn {
  29. width: 100px;
  30. height: 100px;
  31. color: #419EFB;
  32. border: 1px solid #e2e2e2;
  33. cursor: pointer;
  34. }
  35. .del-btn-pro{
  36. position: absolute;
  37. top: 28%;
  38. left: 57px;
  39. }
  40. .del-btn{
  41. position: absolute;
  42. top: -4%;
  43. right: -4%;
  44. }
  45. .rule_input_width{
  46. width: 150px;
  47. }
  48. .increment{
  49. width: 903px;
  50. line-height: 40px;
  51. }
  52. </style>
  53. <?php
  54. use common\helpers\ComponentHelper;
  55. ComponentHelper::loadComponentView('com-dialog-select');
  56. ComponentHelper::loadComponentView('com-image');
  57. ComponentHelper::loadComponentView('com-rich-text');
  58. ?>
  59. <div id="app" v-cloak>
  60. <el-card v-loading="cardLoading" shadow="never" style="border:0;min-width: 1000px;" body-style="background-color: #f3f3f3;padding: 10px 0 0;">
  61. <div slot="header">
  62. <el-breadcrumb separator="/">
  63. <el-breadcrumb-item><span style="color: #409EFF;cursor: pointer" @click="$navigate({r:'redpack/default/index'})">活动列表</span>
  64. </el-breadcrumb-item>
  65. <el-breadcrumb-item>添加活动</el-breadcrumb-item>
  66. </el-breadcrumb>
  67. </div>
  68. <div class="form-body">
  69. <el-form :model="ruleForm" :rules="rules" size="small" ref="ruleForm" label-width="200px">
  70. <el-row>
  71. <el-col :span="24">
  72. <el-form-item label="活动名称:" prop="title" >
  73. <el-input v-model="ruleForm.title" prop="title" style=" width: 150px; float: left; " placeholder="请输入活动名称"></el-input>
  74. </el-form-item>
  75. <el-form-item label="活动描述:" prop="description">
  76. <el-input type="textarea" placeholder="请输入活动描述" style="width: 400px;" maxlength="200" v-model="ruleForm.description"></el-input>
  77. </el-form-item>
  78. <el-form-item label="活动封面:" prop="" >
  79. <div style="float: left;">
  80. <com-attachment v-model="ruleForm.cover" :multiple="false" :max="1">
  81. <el-tooltip class="item" effect="dark" content="建议尺寸:420 * 336" placement="top">
  82. <el-button size="mini">选择图片</el-button>
  83. </el-tooltip>
  84. </com-attachment>
  85. <div class="customize-share-title">
  86. <com-image mode="aspectFill" width='80px' height='80px' :src="ruleForm.cover ? ruleForm.cover : ''"></com-image>
  87. <!-- <el-button v-if="ruleForm.cover" class="del-btn-pro" size="mini" type="danger" icon="el-icon-close" @click="ruleForm.cover = ''"></el-button>-->
  88. </div>
  89. </div>
  90. </el-form-item>
  91. <el-form-item :label="redpack_name+'类型:'" prop="redpack_type" required>
  92. <el-radio-group style="width: 500px;" v-model="ruleForm.redpack_type" @change="onChangeRedPackType">
  93. <el-radio :label="1">冻结到激活{{ redpack_name }}
  94. <el-tooltip effect="dark" placement="top">
  95. <div slot="content">激活自己的冻结{{ redpack_name }}到激活{{ redpack_name }}中</div>
  96. <i class="el-icon-question"></i>
  97. </el-tooltip>
  98. </el-radio>
  99. <el-radio :label="2">增值冻结{{ redpack_name }}
  100. <el-tooltip effect="dark" placement="top">
  101. <div slot="content">抢平台发放{{ redpack_name }}</div>
  102. <i class="el-icon-question"></i>
  103. </el-tooltip>
  104. </el-radio>
  105. <el-radio :label="3">增值激活{{ redpack_name }}
  106. <el-tooltip effect="dark" placement="top">
  107. <div slot="content">抢平台发放{{ redpack_name }}</div>
  108. <i class="el-icon-question"></i>
  109. </el-tooltip>
  110. </el-radio>
  111. </el-radio-group>
  112. </el-form-item>
  113. <el-form-item label="启用等级次数限制" prop="is_limit_user_level_num" v-if="ruleForm.redpack_type != 1">
  114. <div><el-switch :active-value="1" :inactive-value="0" v-model="ruleForm.is_limit_user_level_num"></el-switch></div>
  115. <p style="color: #999">启用等级次数限制后不在使用每日活动最多可抢多少个,而直接根据用户等级来指定可抢红包次数</p>
  116. </el-form-item>
  117. <el-form-item label="活动时间:" style="margin-bottom: 40px;" prop="time_type" required>
  118. <el-radio-group v-model="ruleForm.time_type">
  119. <el-radio :label="1">每日{{ redpack_name }}</el-radio>
  120. <el-radio :label="2" v-if="ruleForm.is_limit_user_level_num == 0">时间段{{ redpack_name }}</el-radio>
  121. </el-radio-group>
  122. <div style="width: 500px" v-if="ruleForm.time_type == 1">
  123. <!-- <div style="float: left">
  124. <el-time-picker
  125. v-model="ruleForm.time_type_start_time"
  126. value-format="yyyy-MM-dd HH:mm:ss"
  127. :picker-options="{
  128. selectableRange: '00:00:00 - 23:59:59'
  129. }"
  130. placeholder="开始时间">
  131. </el-time-picker>至
  132. </div>
  133. <div style="float: left">
  134. <el-time-picker
  135. v-model="ruleForm.time_type_end_time"
  136. value-format="yyyy-MM-dd HH:mm:ss"
  137. :picker-options="{
  138. selectableRange: '00:00:00 - 23:59:59'
  139. }"
  140. placeholder="结束时间">
  141. </el-time-picker>
  142. </div> -->
  143. <el-time-picker
  144. @change="timeTypeChange"
  145. is-range
  146. value-format="HH:mm:ss"
  147. v-model="time_type_time"
  148. range-separator="至"
  149. start-placeholder="开始时间"
  150. end-placeholder="结束时间"
  151. placeholder="选择时间范围">
  152. </el-time-picker>
  153. </div>
  154. <el-date-picker
  155. v-if="ruleForm.time_type == 2"
  156. v-model="ruleForm.time_type_time"
  157. @change = "timeTypeChange2"
  158. type="datetimerange"
  159. value-format="yyyy-MM-dd HH:mm:ss"
  160. range-separator="至"
  161. start-placeholder="开始日期"
  162. end-placeholder="结束日期">
  163. </el-date-picker>
  164. </el-form-item>
  165. <el-form-item :label="redpack_name+'规则:'" prop="rule_data">
  166. <div class="red_pack_rule">
  167. <div class="increment">
  168. <div v-if="ruleForm.redpack_type != 1">
  169. <span>{{ ruleForm.time_type == 1 ? '每日' : '' }}总奖金</span>
  170. <el-input class="rule_input_width" onInput="value = toNumber(value, 2)" style="width: 150px;" v-model="ruleForm.award">
  171. <template slot="append">元</template>
  172. </el-input>
  173. <template v-if="ruleForm.time_type == 1">
  174. <span>
  175. 虚拟奖金
  176. </span>
  177. <el-input style="width: 150px;" onInput="value = toNumber(value, 2)" v-model="ruleForm.virtual_award">
  178. <template slot="append">元</template>
  179. </el-input>
  180. </template>
  181. <!-- <template v-if="ruleForm.time_type == 1">-->
  182. <!-- <span>-->
  183. <!-- 总奖金重置值-->
  184. <!-- <el-tooltip class="" effect="dark" content="每日凌晨将会覆盖每日总奖金" placement="top">-->
  185. <!-- <i class="el-icon-question"></i>-->
  186. <!-- </el-tooltip>-->
  187. <!-- </span>-->
  188. <!-- <el-input style="width: 150px;" onInput="value = toNumber(value, 2)" v-model="ruleForm.day_award">-->
  189. <!-- <template slot="append">元</template>-->
  190. <!-- </el-input>-->
  191. <!-- </template>-->
  192. </div>
  193. <div>
  194. <span>第一次抢{{ redpack_name }}金额在</span>
  195. <el-input style="width: 150px;" onInput="value = toNumber(value, 2)" v-model="ruleForm.rule_data.first_money_start">
  196. <template slot="append">元</template>
  197. </el-input>
  198. <span>和</span>
  199. <el-input style="width: 150px;" onInput="value = toNumber(value, 2)" v-model="ruleForm.rule_data.first_money_end">
  200. <template slot="append">元</template>
  201. </el-input>之间,<br>
  202. <span v-if="ruleForm.is_limit_user_level_num == 1">
  203. <span>第二次及第二次之后抢{{ redpack_name }}金额在</span>
  204. <el-input style="width: 150px;" onInput="value = toNumber(value, 2)" v-model="ruleForm.rule_data.second_money_start">
  205. <template slot="append">元</template>
  206. </el-input>
  207. <span>和</span>
  208. <el-input style="width: 150px;" onInput="value = toNumber(value, 2)" v-model="ruleForm.rule_data.second_money_end">
  209. <template slot="append">元</template>
  210. </el-input>之间,<br>
  211. </span>
  212. <span v-else>
  213. <span>每日邀请</span>
  214. <el-input style="width: 150px;" onInput="value = toNumber(value)" v-model="ruleForm.rule_data.everyday_invitation">
  215. <template slot="append">人</template>
  216. </el-input>,
  217. <span>可抢{{ redpack_name }}一次,单次金额在</span>
  218. <el-input style="width: 150px;" onInput="value = toNumber(value, 2)" v-model="ruleForm.rule_data.everyday_invitation_start">
  219. <template slot="append">元</template>
  220. </el-input>
  221. <span>和</span>
  222. <el-input style="width: 150px;" onInput="value = toNumber(value, 2)" v-model="ruleForm.rule_data.everyday_invitation_end">
  223. <template slot="append">元</template>
  224. </el-input>之间,<br>
  225. <span>每日活动最多抢</span>
  226. <el-input style="width: 150px;" onInput="value = toNumber(value)" v-model="ruleForm.rule_data.times">
  227. <template slot="append">次</template>
  228. </el-input>
  229. </span>
  230. </div>
  231. </div>
  232. </div>
  233. </el-form-item>
  234. <el-form-item style="width: 1600px;" label="参与权限:" prop="limit_user_level">
  235. <el-checkbox class="check-all" v-model="checkAll"
  236. @change="handleCheckAllChange">全选
  237. </el-checkbox>
  238. <el-checkbox-group class="checkbox-item" v-model="ruleForm.limit_user_level" @change="handleCheckedCitiesChange">
  239. <el-checkbox v-for="item in limit_user_level_list" :label="item.level" :key="item.id">
  240. {{item.name}}
  241. </el-checkbox>
  242. </el-checkbox-group>
  243. </el-form-item>
  244. <el-form-item style="width: 1400px;" label="每日抢红包次数" prop="limit_user_level_num"
  245. v-if="ruleForm.redpack_type != 1 && ruleForm.is_limit_user_level_num == 1">
  246. <el-table size="mini" border :data="limit_user_level_list" style="width: 500px">
  247. <el-table-column align="right" prop="name" label="等级" width="200"></el-table-column>
  248. <el-table-column align="center" label="次数">
  249. <template slot-scope="scope">
  250. <el-input @input="onInput($event, scope.row.level)" v-model="ruleForm.limit_user_level_num[scope.row.level]">
  251. <template #append>次</template>
  252. </el-input>
  253. </template>
  254. </el-table-column>
  255. </el-table>
  256. </el-form-item>
  257. <el-form-item style="width: 200px;" label="直推上级奖励比例" prop="reward_parent_rate" v-if="ruleForm.redpack_type != 1 && ruleForm.is_limit_user_level_num == 1">
  258. <el-input v-model="ruleForm.reward_parent_rate">
  259. <template #append>%</template>
  260. </el-input>
  261. </el-form-item>
  262. <el-form-item label="红包总个数/总奖池开关展示" prop="is_show_red_envelope_num" v-if="ruleForm.redpack_type != 1 && ruleForm.is_limit_user_level_num == 1">
  263. <el-switch :active-value="1" :inactive-value="0" v-model="ruleForm.is_show_red_envelope_num"></el-switch>
  264. <p style="color: #999">开启以后前端显示红包总个数;关闭的话前端显示今日红包总奖池</p>
  265. </el-form-item>
  266. <el-form-item label="邀请人抢红包是否展示" prop="is_show_invite_button">
  267. <el-switch :active-value="1" :inactive-value="0" v-model="ruleForm.is_show_invite_button"></el-switch>
  268. <p style="color: #999">开启的时候可邀请人抢红包,关闭则不可邀请人抢红包</p>
  269. </el-form-item>
  270. <el-form-item label="展示已抢红包金额" prop="is_show_reward_amount">
  271. <el-switch :active-value="1" :inactive-value="0" v-model="ruleForm.is_show_reward_amount"></el-switch>
  272. <p style="color: #999">开启的时候展示已抢红包金额,关闭则不展示已抢红包金额</p>
  273. </el-form-item>
  274. <el-form-item label-width="150px" label="规则说明:">
  275. <el-col :span="12">
  276. <com-rich-text style="width: 800px;" :simple-attachment="true" v-model="ruleForm.rule"></com-rich-text>
  277. </el-col>
  278. </el-form-item>
  279. </el-col>
  280. </el-row>
  281. </el-form>
  282. </div>
  283. <el-button class="button-item" :loading="btnLoading" type="primary" @click="store('ruleForm')" size="small">保存
  284. </el-button>
  285. </el-card>
  286. </div>
  287. <script>
  288. const app = new Vue({
  289. el: '#app',
  290. data() {
  291. var validatePass = (rule, value, callback) => {
  292. var reg = /^[\u4e00-\u9fa5\w]+$/;
  293. if (reg.test(value)) {
  294. callback();
  295. }else{
  296. callback(new Error('不能含有特殊字符'));
  297. }
  298. };
  299. return {
  300. btnLoading: false,
  301. cardLoading: false,
  302. isIndeterminate:false,
  303. checkAll:false,
  304. time_type_time: ['09:00:00', '18:00:00'],
  305. // time_type_time: null,
  306. ruleForm: {
  307. id:'',
  308. title: '',
  309. description:'',
  310. cover: '',
  311. time_type: 1,
  312. time_type_time: new Date(),
  313. time_type_start_time:'',
  314. time_type_end_time:'',
  315. redpack_type: 1,
  316. award: 1,
  317. virtual_award: 0,
  318. day_award: '',
  319. rule_data:{
  320. first_money_start: 0.3, //第一次抢红包金额最小值
  321. first_money_end:0.6, //第一次抢红包金额最大值
  322. everyday_invitation: 3, //每日邀请人数
  323. everyday_invitation_start: 0.3, //每日邀请人数可抢红包一次,单次金额在最小值
  324. everyday_invitation_end: 0.6, //每日邀请人数可抢红包一次,单次金额在最大值
  325. times: 3, //每日活动最多抢次数
  326. second_money_start: 0.1, // 第二次抢红包金额最小值
  327. second_money_end: 0.3, // 第二次抢红包金额最小值
  328. },
  329. rule: '',
  330. limit_user_level:[],
  331. is_show_red_envelope_num: 0,
  332. is_show_invite_button: 1,
  333. is_show_reward_amount: 1,
  334. is_limit_user_level_num: 0,
  335. reward_parent_rate: 0,
  336. limit_user_level_num: {}
  337. },
  338. limit_user_level_list:[],
  339. redpack_name:'红包',
  340. rules: {
  341. time_type: [{
  342. required: true,
  343. message: '活动时间活动时间',
  344. trigger: 'change'
  345. }, ],
  346. title: [{
  347. required: true,
  348. message: '请填写活动名称',
  349. trigger: 'change'
  350. },
  351. {
  352. validator: (rule, value, callback) => {
  353. if(value.length>20||value.length<0){
  354. callback('最大长度在1-20个字内');
  355. }
  356. callback();
  357. }
  358. },
  359. {
  360. validator:validatePass,
  361. trigger: 'blur'
  362. },
  363. ],
  364. description:[
  365. { min: 0, max: 20, message: '长度在 0 到 20 个字内', trigger: 'blur' }
  366. ],
  367. redpack_type: [{
  368. required: true,
  369. message: '类型是必选',
  370. trigger: 'change'
  371. }, ],
  372. rule_data: [{
  373. required: true,
  374. message: '规则必须选择',
  375. trigger: 'change'
  376. },],
  377. limit_user_level: [{
  378. required: true,
  379. message: '参与权限是必选',
  380. trigger: 'blur'
  381. },],
  382. },
  383. checkedCities:[],
  384. dialogAddgsVisible: false,
  385. // 对话框显示与否
  386. dialogVisible: false,
  387. dataloading: false,
  388. addGroupVisible: false,
  389. };
  390. },
  391. methods: {
  392. onChangeRedPackType(val) {
  393. // this.ruleForm.is_limit_user_level_num = val > 1 ? 1 : 0
  394. },
  395. onInput(val, level) {
  396. this.$set(this.ruleForm, `limit_user_level_num[${level}]`, val)
  397. this.$forceUpdate()
  398. },
  399. // 每日红包时间范围选择处理
  400. timeTypeChange(e) {
  401. console.log(e, 'e ======== ');
  402. if (e) {
  403. this.ruleForm.time_type_start_time = e[0];
  404. this.ruleForm.time_type_end_time = e[1];
  405. } else {
  406. this.ruleForm.time_type_start_time = '';
  407. this.ruleForm.time_type_end_time = '';
  408. }
  409. },
  410. // 全选事件
  411. handleCheckAllChange(val) {
  412. // console.log(val, 'handleCheckAllChange =============');
  413. let self = this;
  414. self.ruleForm.limit_user_level = [];
  415. if (val) {
  416. self.limit_user_level_list.forEach(function (item, index) {
  417. self.ruleForm.limit_user_level.push(item.level)
  418. });
  419. }
  420. this.checkAll = val;
  421. console.log(self.ruleForm.limit_user_level,77);
  422. self.isIndeterminate = false;
  423. },
  424. // 单选事件
  425. handleCheckedCitiesChange(value) {
  426. let checkedCount = value.length;
  427. this.checkAll = checkedCount === this.limit_user_level_list.length;
  428. this.isIndeterminate = checkedCount > 0 && checkedCount < this.limit_user_level_list.length;
  429. },
  430. error_msg(){
  431. if(!this.ruleForm.rule_data.first_money_end){
  432. this.$message.error('第一次抢'+this.redpack_name+'金额最大值不可以为空');
  433. return false;
  434. }
  435. if(parseFloat(this.ruleForm.rule_data.first_money_start) > parseFloat(this.ruleForm.rule_data.first_money_end)){
  436. this.$message.error('第一次抢'+this.redpack_name+'金额最小值不能大于最大值');
  437. return false;
  438. }
  439. if (this.ruleForm.is_limit_user_level_num == 0) {
  440. if(!this.ruleForm.rule_data.everyday_invitation_start){
  441. this.$message.error('每日邀请'+this.redpack_name+'金额最小值不能为空');
  442. return false;
  443. }
  444. if(!this.ruleForm.rule_data.everyday_invitation_end){
  445. this.$message.error('每日邀请'+this.redpack_name+'金额最大值不能为空');
  446. return false;
  447. }
  448. if(parseFloat(this.ruleForm.rule_data.everyday_invitation_start) > parseFloat(this.ruleForm.rule_data.everyday_invitation_end)){
  449. this.$message.error('每日邀请'+this.redpack_name+'金额最小值不能大于最大值');
  450. return false;
  451. }
  452. if(this.ruleForm.rule_data.times < 1){
  453. this.$message.error('每日活动最多抢次数最小值为1');
  454. return false;
  455. }
  456. if(!this.ruleForm.rule_data.everyday_invitation){
  457. this.$message.error('每日邀请人数必须填');
  458. return false;
  459. }
  460. }
  461. if(this.ruleForm.time_type ==1){
  462. this.ruleForm.day_award = this.ruleForm.award
  463. }
  464. if(this.ruleForm.time_type ==1 && this.ruleForm.time_type_end_time && this.ruleForm.time_type_start_time){
  465. this.$set(this.ruleForm,'time_type_time',[this.ruleForm.time_type_start_time,this.ruleForm.time_type_end_time]);
  466. var start_time = new Date(this.ruleForm.time_type_start_time).getTime();
  467. var end_time = new Date(this.ruleForm.time_type_end_time).getTime();
  468. if(start_time > end_time){
  469. this.$message.error('活动时间开始时间不能小于结束时间');
  470. return false;
  471. }
  472. }
  473. if(this.ruleForm.time_type == 1 && this.time_type_time.length < 1){
  474. this.$message.error('活动时间开始时间和结束时间是必须选择');
  475. return false;
  476. }
  477. if(!this.ruleForm.time_type_time){
  478. this.$message.error('活动时间必须选择');
  479. return false;
  480. }
  481. if(this.ruleForm.redpack_type !=1){
  482. if(!parseFloat(this.ruleForm.award)){
  483. this.$message.error('每日总奖金必须填.');
  484. return false;
  485. }
  486. }
  487. if(this.ruleForm.redpack_type !=1){
  488. // if(!parseFloat(this.ruleForm.day_award)){
  489. // this.$message.error('每日总奖金必须填!');
  490. // return false;
  491. // }
  492. }
  493. if(!this.ruleForm.rule_data.times){
  494. this.$message.error('每日活动最多抢次数必须填');
  495. return false;
  496. }
  497. if(this.ruleForm.limit_user_level.length<1){
  498. this.$message.error('参与权限必须选择');
  499. return false;
  500. }
  501. return true;
  502. },
  503. store(formName) {
  504. this.ruleForm.time_type_time = this.time_type_time
  505. if(!this.error_msg()) return false;
  506. this.$refs[formName].validate((valid) => {
  507. let self = this;
  508. if (valid) {
  509. self.btnLoading = true;
  510. request({
  511. params: {
  512. r: 'redpack/default/edit',
  513. },
  514. method: 'post',
  515. data: self.ruleForm,
  516. }).then(e => {
  517. self.btnLoading = false;
  518. if (e.data.code == 0) {
  519. navigateTo({
  520. r: 'redpack/default/index',
  521. })
  522. } else {
  523. self.$message.error(e.data.msg);
  524. }
  525. }).catch(e => {
  526. self.$message.error(e.data.msg);
  527. self.btnLoading = false;
  528. });
  529. } else {
  530. console.log('error submit!!');
  531. return false;
  532. }
  533. });
  534. },
  535. getDetail() {
  536. let self = this;
  537. //self.cardLoading = true;
  538. request({
  539. params: {
  540. r: 'redpack/default/edit',
  541. id: getQuery('id'),
  542. type: getQuery('type')
  543. },
  544. method: 'get',
  545. }).then(e => {
  546. self.cardLoading = false;
  547. if (e.data.code == 0) {
  548. //this.ruleForm.limit_user_level_list = e.data.data.limit_user_level_list;
  549. console.log(this.time_type_time, ' ====== 111111 ============');
  550. if(!isEmpty(e.data.data.detail)) {
  551. this.ruleForm = Object.assign(this.ruleForm, e.data.data.detail);
  552. }
  553. if(!isEmpty(e.data.data.limit_user_level_list)) this.limit_user_level_list = e.data.data.limit_user_level_list;
  554. if(this.ruleForm.start_time && this.ruleForm.end_time){
  555. this.$set(this.ruleForm,'time_type_time',[this.ruleForm.start_time,this.ruleForm.end_time]);
  556. if(this.ruleForm.time_type == 1){
  557. this.$set(this.ruleForm,'time_type_end_time',this.ruleForm.end_time);
  558. this.$set(this.ruleForm,'time_type_start_time',this.ruleForm.start_time);
  559. this.time_type_time = [];
  560. this.time_type_time.push(this.ruleForm.start_time);
  561. this.time_type_time.push(this.ruleForm.end_time);
  562. }
  563. }
  564. if (isEmpty(this.ruleForm.limit_user_level_num)) {
  565. this.ruleForm.limit_user_level_num = {}
  566. }
  567. if(!e.data.data.detail || isEmpty(e.data.data.detail.limit_user_level)) {
  568. this.ruleForm.limit_user_level = [];
  569. }else{
  570. this.checkAll = this.ruleForm.limit_user_level.length === this.limit_user_level_list.length;
  571. this.ruleForm.limit_user_level = e.data.data.detail.limit_user_level
  572. if (isEmpty(this.ruleForm.limit_user_level_num)) {
  573. for (let limitUserLevelListKey in this.limit_user_level_list) {
  574. this.ruleForm.limit_user_level_num[this.limit_user_level_list[limitUserLevelListKey].level] = 0
  575. }
  576. }
  577. }
  578. console.log(this.ruleForm, ' ====== 222222 ============');
  579. this.redpack_name = e.data.data.redpack_name
  580. if(isEmpty(e.data.data.detail)) this.handleCheckAllChange(true);
  581. } else {
  582. self.$message.error(e.data.msg);
  583. }
  584. }).catch(e => {
  585. console.log(e);
  586. });
  587. },
  588. /**
  589. *关闭或取消模态框,清空值
  590. * @param
  591. */
  592. closeDialogAddgsVisible() {
  593. this.$refs.addForm.resetFields(); //element封装的方法,清空模态框的值
  594. this.addFormTitle = "" //初始化title的值
  595. this.addForm = { //初始化addForm中的值
  596. name: "",
  597. }
  598. },
  599. timeTypeChange2(e)
  600. {
  601. if (e) {
  602. this.time_type_time[0] = e[0];
  603. this.time_type_time[1] = e[1];
  604. }
  605. }
  606. },
  607. mounted: function() {
  608. this.getDetail();
  609. }
  610. });
  611. </script>