| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519 |
- @extends('layouts.base')
- @section('title', "活动详情")
- @section('content')
- <link rel="stylesheet" href="{{static_url('css/public-number.css')}}">
- <style>
- #re_content{
- margin-top:20px;
- }
- .el-form .el-form-item{
- margin-right: 60px;
- }
- .list_total_num{
- margin-top:20px;
- }
- .el-table__header-wrapper{
- margin-top:20px;
- }
- .el-tag{font-weight:700;font-size:15px;}
- .rightlist-head{padding:15px 0;line-height:50px;}
- .rightlist-head-con{float:left;padding-right:20px;font-size:16px;color:#888;}
- .el-button+.el-button {margin-left: 0px;}
- .el-breadcrumb{padding:30px 0;font-size:16px;}
- .el-breadcrumb__inner a{font-weight: 500;}
- .tip{color:#333;font-size:12px;}
- /* 上传图片 */
- .avatar-uploader .el-upload {margin-top:15px;border: 1px dashed #d9d9d9;border-radius: 6px;cursor: pointer;position: relative;overflow: hidden;}
- .avatar-uploader .el-upload:hover {border-color: #409EFF;}
- .avatar-uploader-icon {font-size: 28px;color: #8c939d;width: 48px;height: 48px;line-height: 48px;text-align: center;}
- .avatar {width: 48px;height: 48px;display: block;}
- .el-upload-tip{width:178px;margin:0;padding:0;color:#999;text-align:center;}
- input[type=file] {display: none;}
- .avatar-uploader-box{position:relative;width:60px;}
- .avatar-tip-text{position:absolute;width:48px;height:20px;line-height:28px;bottom:0;background:#000;opacity:0.7;color:#fff;font-size:12px;}
- .el-icon-circle-close{position:absolute;top:10px;right:0;color:#999;}
- /* 添加奖品弹出框 */
- .addAwrad .tag{
- word-wrap:break-word;
- padding:7px;
- }
- .addAwrad .tag span{
- padding:5px;
- margin-bottom:5px;
- display:inline-block;
- border-radius:4px;
- margin-right:5px;
- }
- /* 编辑奖品弹出框 */
- .editAwrad .tag{
- word-wrap:break-word;
- padding:7px;
- }
- .editAwrad .tag span{
- padding:5px;
- margin-bottom:5px;
- display:inline-block;
- border-radius:4px;
- margin-right:5px;
- }
- .classNormal{
- border:solid 1px #eee;
- }
- .classred{
- border:solid 1px red;
- }
- .el-step.is-simple .el-step__head{
- display: flex;
- align-items: center;
- margin-bottom: 2px;
- }
- .add-goods{
- width: 120px;
- height: 120px;
- border: dashed 1px #dde2ee;
- display:flex;
- flex-direction:column;
- justify-content:center;
- align-items:center;
- }
- .num{
- width:60px;
- height:40px;
- }
- .num .el-input__inner{
- width:60px;
- height:40px;
- }
- </style>
- <!-- tab -->
- <div id='re_content' v-loading="all_loading">
- <div class="rightlist-head">
- <el-breadcrumb separator-class="el-icon-arrow-right">
- <el-breadcrumb-item><a href="{{ yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.index') }}">活动列表</a></el-breadcrumb-item>
- <el-breadcrumb-item>编辑活动</el-breadcrumb-item>
- </el-breadcrumb>
- </div>
- <el-steps :active="active" simple style="width:90%;margin:0 auto" align-center>
- <el-step title="1、编辑活动" icon="el-icon-edit"></el-step>
- <el-step title="2、奖项设置" icon="el-icon-setting"></el-step>
- <el-step title="3、页面装修" icon="el-icon-goods"></el-step>
- <el-step title="4、完成" icon="el-icon-success" :label="5"></el-step>
- </el-steps>
- <div style="width:1300px;margin:50px auto;display: flex;justify-content: center;">
- <!-- left -->
- <div class="left-con" v-if="active==0||active==1||active==2"></div>
- <!-- step 1 -->
- <el-form ref="form" :model="form" :rules="rules" label-width="20%">
- <div v-if="active==0" class="right-con" style="width:900px;border:1px solid #e1e1e1;background:#fafafa;float:left;">
- <div style="line-height:40px;padding-left:15px;font-weight:900;">基本信息</div>
- <hr style="padding:0;margin:0"/>
- <template>
- <el-form-item label="活动名称" prop="name">
- <el-input v-model="form.name" style="width:70%"></el-input>
- </el-form-item>
- <el-form-item label="活动时间" prop="time">
- <el-row>
- <el-col :span="12" style="float:none;width:80%;">
- <el-date-picker v-model="form.countdown_time[0]" type="datetime" format="yyyy-MM-dd HH:mm:ss"
- value-format="timestamp" placeholder="选择开始时间" ></el-date-picker>
- </el-col>
- <el-col :span="12" style="float:none;margin-top:10px;width:80%;">
- <el-date-picker v-model="form.countdown_time[1]" type="datetime" format="yyyy-MM-dd HH:mm:ss"
- value-format="timestamp" placeholder="选择结束时间"></el-date-picker>
- </el-col>
- </el-row>
- </el-form-item>
- <el-form-item label="参与用户身份" prop="role_type">
- <el-radio v-model.munber="form.role_type" :label="0" >所有用户</el-radio>
- <el-radio v-model.munber="form.role_type" :label="1" >部分用户</el-radio>
- <div v-if="form.role_type">
- <el-radio v-model.munber="form.member_type" :label="0" >会员等级</el-radio>
- <el-radio v-model.munber="form.member_type" :label="1" >推广员</el-radio>
- <el-select v-model="form.level_id" placeholder="请选择会员等级" clearable v-if="!form.member_type" style="width:70%">
- <el-option v-for="item in level_list" :key="item.id" :label="item.level_name" :value="item.id"></el-option>
- </el-select>
- </div>
- </el-form-item>
- <el-form-item label="购买商品" prop="goods_id">
- <!-- <el-select
- v-model="form.goods_id"
- placeholder="请输入关键词"
- filterable
- remote
- reserve-keyword
- @change="getImgUrl"
- placeholder="请输入关键词"
- :remote-method="loadGoods"
- :loading="loading"
- style="width: 100%">
- <el-option
- v-for="item in goods"
- :key="item.id"
- :label="'[GID:'+item.id+'][商品名称:'+item.title+']'"
- :value="item.id">
- </el-option>
- </el-select>
- <el-button type="danger" @click="clearGoods()" v-if="form.goods_id">点击清空</el-button> -->
- <div style="display:flex;flex-wrap: wrap;">
- <div class="good" v-for="(item,index,key) in thumbList" style="width:120px;display:flex;margin-right:20px;flex-direction: column">
- <div class="img" style="position:relative;">
- <a style="color:#333;"><div style="width: 20px;height: 20px;background-color: #dde2ee;display:flex;align-items:center;justify-content:center; #999999;position:absolute;right:-10px;top:-10px;border-radius:50%;" @click="delGoods(item)">X</div></a>
- <img :src="item.thumb" style="width:120px;height:120px;">
- </div>
- <div style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;overflow: hidden;font-size:12px;">[[item.title]][ID:[[item.id]]]</div>
- </div>
- <div class="add-goods" @click="openGoods()" >
- <a style="font-size:32px;color: #999999;"><i class="el-icon-plus" ></i></a>
- <div style="color: #999999;">选择商品</div>
- </div>
- </div>
- </el-form-item>
- <el-form-item label="活动类型" prop="draw_type">
- <el-radio v-model.munber="form.draw_type" :label="0" >无限制抽签</el-radio><br>
- <el-radio v-model.munber="form.draw_type" :label="1" >积分抽奖</el-radio>
- <span style="font-weight:500;padding-left:20px">消耗<input type="text" style="height:25px;width:100px;" v-model="form.use_point"/>积分</span><br>
- <el-radio v-model.munber="form.draw_type" :label="2" v-if="love_status == 1">[[love_name]]抽奖</el-radio>
- <span style="font-weight:500;padding-left:20px" v-if="love_status == 1">消耗<input type="text" style="height:25px;width:100px;" v-model="form.use_love"/>[[love_name]]</span><br>
- </el-form-item>
-
- <el-form-item label="参与次数" prop="partake_times">
- <el-radio v-model.munber="form.partake_times" :label="0" >一天N次</el-radio><br>
- <div v-if="form.partake_times==0">
- <div style="font-weight:500;padding-left:20px">每人每天抽<input type="text" v-model="form.days_times" style="height:25px;width:100px;"/>次</div>
- <div style="font-weight:500;padding-left:20px">每天分享额外抽<input type="text" v-model="form.days_share_times" style="height:25px;width:100px;"/>次</div>
- </div>
- <el-radio v-model.munber="form.partake_times" :label="1" >一人N次</el-radio>
- <div v-if="form.partake_times==1">
- <div style="font-weight:500;padding-left:20px">每人一共可抽<input type="text" v-model="form.somebody_times" style="height:25px;width:100px;"/>次</div>
- <div style="font-weight:500;padding-left:20px">每人分享额外抽<input type="text" v-model="form.somebody_share_times" style="height:25px;width:100px;"/>次</div>
- </div>
- </el-form-item>
-
-
- </template>
- </div>
- <!-- step 2 -->
- <div v-if="active==1" class="right-con" style="width:900px;border:1px solid #e1e1e1;background:#fafafa;float:left;">
- <el-form :model="form" :rules="rules" label-width="20%">
- <div style="line-height:40px;padding-left:15px;font-weight:900;">奖品设置</div>
- <hr style="padding:0;margin:0"/>
- <el-button type="primary" size="mini" style="margin:5px" @click="addAward()" v-if="prize_list.length<6">添加奖品</el-button>
- <!-- 表格start -->
- <el-table :data="prize_list" style="width: 100%" v-loading="search_loading">
- <el-table-column prop="name" label="名称" align="center"></el-table-column>
- <el-table-column label="奖品" align="center" >
- <template slot-scope="scope">
- <span v-if="scope.row.type==1">优惠券</span>
- <span v-if="scope.row.type==2">积分</span>
- <span v-if="scope.row.type==3">[[love_name]]</span>
- <span v-if="scope.row.type==4">余额</span>
- </template>
- </el-table-column>
- <el-table-column label="图片" width="100" align="center">
- <template slot-scope="scope">
- <img :src="[[scope.row.thumb_url]]" style="width:50px;height:50px;">
- </template>
- </el-table-column>
- <el-table-column prop="prize_num" label="数量" align="center"></el-table-column>
- <el-table-column prop="chance" label="中奖概率" align="center"> </el-table-column>
- <el-table-column label="操作" align="center">
- <template slot-scope="scope">
- <a @click="editAward(scope, prize_list)">编辑</a>
- <a @click="open(scope, prize_list)">删除</a>
- </template>
- </el-table-column>
- </el-table>
- </template>
- <span style="margin:10px;" class="help-block">注:所有奖品中奖概率总和不能超过100%</span>
- <div style="line-height:40px;padding-left:15px;font-weight:900;">未中奖设置</div>
- <hr style="padding:0;"/>
- <template>
- <el-form-item label="名称" prop="name">
- <el-input v-model="form.empty_prize_name" style="width:70%"></el-input>
- </el-form-item>
- <el-form-item label="图片" prop="empty_prize_thumb">
- <div class="avatar-uploader-box">
- <el-upload class="avatar-uploader" action="{{ yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.upload') }}" accept="image/*" :show-file-list="false" :on-success="prizeSuccess" :before-upload="prizeUpload">
- <img v-if="form.empty_prize_thumb" :src="form.empty_prize_thumb" class="avatar">
- <div v-if="form.empty_prize_thumb" class="avatar-tip-text">修改</div>
- <i v-if="!form.empty_prize_thumb" class="el-icon-plus avatar-uploader-icon"></i>
- </el-upload>
- <i v-show="form.empty_prize_thumb" class="el-icon-circle-close" @click="clearPrize" title="点击清除图片"></i>
- </div>
- <div class="tip">建议尺寸96*96像素,支持JPG、PNG、JPEG格式</div>
- </el-form-item>
- <el-form-item label="提示语" prop="tip">
- <el-input v-model="form.empty_prize_prompt" style="width:70%"></el-input>
- </el-form-item>
- <el-form-item label="提示跳转" prop="jump_type">
- <el-radio v-model.munber="form.jump_type" :label="0" >无跳转</el-radio>
- <el-radio v-model.munber="form.jump_type" :label="1" >有跳转</el-radio>
- <el-form-item label="" v-if="form.jump_type">
- <el-input type="textarea" placeholder="请输入跳转链接,以https://开头" v-model="form.jump_link"></el-input>
- </el-form-item>
- <div class="tip">如果开启有跳转,小程序默认跳转首页</div>
- </el-form-item>
-
- <div style="line-height:40px;padding-left:15px;font-weight:900;">参与者奖励</div>
- <hr style="padding:0;margin:0"/>
- <div style="margin:10px 0">
- <span style="font-weight:500;padding-left:20px">送<el-input type="text" style="width:100px;" v-model="form.partake_point"></el-input>积分</span>
- <span style="font-weight:500;padding-left:20px" v-if="love_status == 1">送<el-input type="text" style="width:100px;" v-model="form.partake_love"></el-input>[[love_name]]</span>
- <span style="font-weight:500;padding-left:20px">送<el-input type="text" style="width:100px;" v-model="form.partake_amount"></el-input>余额</span>
- </div>
- <el-form-item label="送优惠券">
- <el-input style="width:300px;" v-model="partake_coupon.name" ></el-input>
- <el-button @click="couponShow()">选择优惠券</el-button>
- </el-form-item>
- <el-form-item label="" prop="limit">
- <el-checkbox v-model="form.limit">仅送给未中奖者</el-checkbox>
- </el-form-item>
- </template>
- </el-form-item>
- </div>
- <!-- step 3 -->
- <div v-if="active==2" class="right-con" style="width:900px;border:1px solid #e1e1e1;background:#fafafa;float:left;">
- <el-form :model="form" :rules="rules" label-width="20%">
- <div style="line-height:40px;padding-left:15px;font-weight:900;">页面装修</div>
- <hr style="padding:0;"/>
- <template>
- <el-form-item label="图片" prop="name">
- <div class="avatar-uploader-box">
- <el-upload class="avatar-uploader" action="{{ yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.upload') }}" accept="image/*" :show-file-list="false" :on-success="diySuccess" :before-upload="diyUpload">
- <img v-if="form.background" :src="form.background" class="avatar">
- <div v-if="form.background" class="avatar-tip-text">修改</div>
- <i v-if="!form.background" class="el-icon-plus avatar-uploader-icon"></i>
- </el-upload>
- <i v-show="form.background" class="el-icon-circle-close" @click="clearDiy" title="点击清除图片"></i>
- </div>
- <div class="tip">建议尺寸375x160px,支持JPG、PNG、JPEG格式</div>
- </el-form-item>
- <el-form-item label="商家LOGO" prop="is_logo">
- <el-radio v-model.munber="form.is_logo" :label="0" >不展示</el-radio>
- <el-radio v-model.munber="form.is_logo" :label="1" >展示</el-radio>
- </el-form-item>
- <el-form-item label="奖品名称" prop="prize_name">
- <el-radio v-model.munber="form.prize_name" :label="0" >不展示</el-radio>
- <el-radio v-model.munber="form.prize_name" :label="1" >展示</el-radio>
- </el-form-item>
- <el-form-item label="领取成功公众号跳转链接">
- <el-input v-model="form.success_app_url" style="width:60%;"></el-input><el-button @click="show=true" style="margin-left:10px;">选择链接</el-button>
- </el-form-item>
- <el-form-item label="领取成功小程序跳转链接">
- <el-input v-model="form.success_mini_url" style="width:60%;"></el-input><el-button @click="pro=true" style="margin-left:10px;">选择小程序链接</el-button>
- </el-form-item>
- <pop :show="show" @replace="changeProp1" @add="parHref"></pop>
- <program :pro="pro" @replacepro="changeprogram" @addpro="parpro"></program>
- <el-form-item label="中奖名单" prop="is_award_list">
- <el-radio v-model.munber="form.is_roster" :label="0" >不展示</el-radio>
- <el-radio v-model.munber="form.is_roster" :label="1" >展示</el-radio>
- </el-form-item>
- <el-form-item label="背景色" prop="color">
- <el-color-picker v-model="form.background_colour"></el-color-picker>
- </el-form-item>
- <el-form-item label="活动描述" prop="color">
- <el-input v-model="form.describe_content" style="width:60%;"></el-input>
- </el-form-item>
- <div style="line-height:40px;padding-left:15px;font-weight:900;">活动说明</div>
- <hr style="padding:0;margin-top:0"/>
- <tinymceee v-model="form.content" style="width:90%;margin:0 auto;margin-bottom:15px;"></tinymceee>
- </template>
- </div>
- <div v-if="active==4">
- <div style="text-align:center">
- <div style="line-height:100px;">
- <i class="el-icon-success" style="color:#67C23A;font-size:80px;"></i>
- </div>
- <div style="font-weight:900;font-size:30px;line-height:48px;">幸运大转盘编辑成功</div>
- <div style="font-weight:500;font-size:24px;line-height:48px;">立即推广活动,获得更多客户与订单</div>
- <div>
-
- </div>
- <img :src="qrCode" alt='二维码'>
- <div>
- <el-button style="margin:10px 0" @click="copy()">复制链接</el-button>
- <el-input style="opacity:0;position: absolute;" v-model="activity_url" ref="activity">
- </div>
- <a href="{{ yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.index') }}"><el-button style="margin:10px 0">返回列表</el-button></a>
- <a href="{{ yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.add') }}"><el-button style="margin:10px 0">创建活动</el-button></a>
- </div>
- </div>
- </div>
- <div style="width:100%;display:block;float:left;text-align:center;margin:30px 0;" v-if="active==0||active==1||active==2">
- <a href="{{ yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.index') }}"><el-button v-if="active==0">取消</el-button></a>
- <el-button @click="last()" v-if="active==1||active==2">
- 上一步
- </el-button>
- <el-button type="success" @click="next()" v-if="active==1||active==0">
- 下一步
- </el-button>
- <el-button type="success" @click="submit()" v-if="active==2">
- 完成
- </el-button>
- </div>
- <!-- 添加奖品弹出框 -->
- <el-dialog title="添加奖品" :visible.sync="is_add_dialog" @close="closePop" class="addAwrad" :lock-scroll="true">
- <div >
- <el-form ref="award_form" :model="award_form" :rules="rules" label-width="20%">
- <template>
- <el-form-item label="名称" prop="name">
- <el-input v-model="award_form.name" style="width:70%" placeholder="最多可填6个字"></el-input>
- </el-form-item>
- <el-form-item label="奖品" prop="award_type">
- <div>
- <el-radio v-model.munber="award_form.award_type" :label="1" >优惠券</el-radio>
- <el-select
- v-model="award_form.coupon"
- v-if="award_form.award_type==1"
- filterable
- remote
- style="width:60%"
- reserve-keyword
- placeholder="请输入关键词"
- :remote-method="loadAward"
- :loading="loading"
- style="width: 100%">
- <el-option
- v-for="item in AwardList"
- :key="item.id"
- :label="item.name"
- :value="item.id">
- </el-option>
- </el-select>
- <el-input v-model="award_form.coupon_num" class="num" style="margin-left:10px;" v-if="award_form.award_type==1"></el-input><span style="margin-left:10px;" v-if="award_form.award_type==1">张</span>
- </div>
- <div style="margin:5px 0">
- <el-radio v-model.munber="award_form.award_type" :label="2" >积分</el-radio>
- <el-input style="width:60%;padding-left:20px" v-model="award_form.coin">
- <template slot="append">积分</template>
- </el-input>
- </div>
- <div style="margin:5px 0" v-if="love_status == 1">
- <el-radio v-model.munber="award_form.award_type" :label="3" >[[love_name]]</el-radio>
- <el-input style="width:60%;padding-left:20px" v-model="award_form.love">
- <template slot="append">[[love_name]]</template>
- </el-input>
- </div>
- <div style="margin:5px 0">
- <el-radio v-model.munber="award_form.award_type" :label="4" >余额</el-radio>
- <el-input style="width:60%;padding-left:20px" v-model="award_form.rest">
- <template slot="append">余额</template>
- </el-input>
- </div>
- </el-form-item>
- <el-form-item label="图片" prop="name">
- <div class="avatar-uploader-box">
- <el-upload class="avatar-uploader" action="{{ yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.upload') }}" accept="image/*" :show-file-list="false" :on-success="uploadSuccess" :before-upload="beforeUpload">
- <img v-if="award_form.thumb_url" :src="award_form.thumb_url" class="avatar">
- <div v-if="award_form.thumb_url" class="avatar-tip-text">修改</div>
- <i v-if="!award_form.thumb_url" class="el-icon-plus avatar-uploader-icon"></i>
- </el-upload>
- <i v-show="award_form.thumb_url" class="el-icon-circle-close" @click="clearImg" title="点击清除图片"></i>
- </div>
- <div class="tip">建议尺寸96*96像素,支持JPG、PNG、JPEG格式</div>
- </el-form-item>
- <el-form-item label="数量" prop="name">
- <el-input v-model="award_form.number" style="width:70%">
- <template slot="append">份</template>
- </el-input>
- </el-form-item>
-
- <el-form-item label="中奖概率" prop="rent">
- <el-input v-model="award_form.rent" style="width:70%">
- <template slot="append">%</template>
- </el-input>
- </el-form-item>
- </template>
- </el-form>
- </div>
- <span slot="footer" class="dialog-footer">
- <el-button @click="is_add_dialog = false">取 消</el-button>
- <el-button type="primary" @click="choose()">确 定</el-button>
- </span>
- </el-dialog>
- <el-dialog title="编辑奖品" :visible.sync="is_edit_dialog" @close="closeEdit" class="editAwrad" :lock-scroll="true">
- <div>
- <el-form ref="edit_form" :model="edit_form" :rules="rules" label-width="20%">
- <template>
- <el-form-item label="名称" prop="name">
- <el-input v-model="edit_form.name" style="width:70%" placeholder="最多可填6个字" :value="edit_form.name"></el-input>
- </el-form-item>
- <el-form-item label="奖品" prop="award_type">
- <div>
- <el-radio v-model.munber="edit_form.type" :label="1" >优惠券</el-radio>
- <el-select
- v-model="edit_form.coupon_id"
- v-if="edit_form.type==1"
- filterable
- remote
- style="width:60%"
- reserve-keyword
- placeholder="请输入关键词"
- :remote-method="loadEdit"
- :loading="loading"
- style="width: 100%">
- <el-option
- v-for="item in EditList"
- :key="item.id"
- :label="item.name"
- :value="item.id">
- </el-option>
- </el-select>
- <el-input v-model="edit_form.coupon_num" class="num" style="margin-left:10px;" v-if="edit_form.type==1"></el-input><span style="margin-left:10px;" v-if="edit_form.type==1">张</span>
- </div>
- <div style="margin:5px 0">
- <el-radio v-model.munber="edit_form.type" :label="2" >积分</el-radio>
- <el-input style="width:60%;padding-left:20px" v-model="edit_form.point" >
- <template slot="append">积分</template>
- </el-input>
- </div>
- <div style="margin:5px 0" v-if="love_status == 1">
- <el-radio v-model.munber="edit_form.type" :label="3" >[[love_name]]</el-radio>
- <el-input style="width:60%;padding-left:20px" v-model="edit_form.love" >
- <template slot="append">[[love_name]]</template>
- </el-input>
- </div>
- <div style="margin:5px 0">
- <el-radio v-model.munber="edit_form.type" :label="4" >余额</el-radio>
- <el-input style="width:60%;padding-left:20px" v-model="edit_form.amount" >
- <template slot="append">余额</template>
- </el-input>
- </div>
- </el-form-item>
- <el-form-item label="图片" prop="name">
- <div class="avatar-uploader-box">
- <el-upload class="avatar-uploader" action="{{ yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.upload') }}" accept="image/*" :show-file-list="false" :on-success="editSuccess" :before-upload="editUpload">
- <img v-if="edit_form.thumb_url" :src="edit_form.thumb_url" class="avatar">
- <div v-if="edit_form.thumb_url" class="avatar-tip-text">修改</div>
- <i v-if="!edit_form.thumb_url" class="el-icon-plus avatar-uploader-icon"></i>
- </el-upload>
- <i v-show="edit_form.thumb_url" class="el-icon-circle-close" @click="clearEdit" title="点击清除图片"></i>
- </div>
- <div class="tip">建议尺寸96*96像素,支持JPG、PNG、JPEG格式</div>
- </el-form-item>
- <el-form-item label="数量" prop="name">
- <el-input v-model="edit_form.prize_num" style="width:70%">
- <template slot="append">份</template>
- </el-input>
- </el-form-item>
-
- <el-form-item label="中奖概率" prop="rent">
- <el-input v-model="edit_form.chance" style="width:70%">
- <template slot="append">%</template>
- </el-input>
- </el-form-item>
- </template>
- </el-form>
- </div>
- <span slot="footer" class="dialog-footer">
- <el-button @click="is_edit_dialog = false">取 消</el-button>
- <el-button type="primary" @click="editChoose()">确 定</el-button>
- </span>
- </el-dialog>
- <el-dialog :visible.sync="goodsShow" width="60%" center title="选择商品">
- <div>
- <div style="text-align: center">
- <el-input v-model="search_form.keyword" style="width:80%"></el-input>
- <el-button type="primary" @click="searchGoods()" style="margin-left:20px;">搜索</el-button>
- </div>
- <el-table :data="goods_list" style="width: 100%;height:500px;overflow:auto">
- <el-table-column label="ID" prop="id" align="center" ></el-table-column>
- <el-table-column label="商品信息" align="center">
- <template slot-scope="scope">
- <div v-if="scope.row" style="display:flex;align-items: center;justify-content:center;">
- <img v-if="scope.row.thumb" :src="scope.row.thumb" style="width:50px;height:50px"></img>
- <div style="margin-left:10px">[[scope.row.title]]</div>
- </div>
- </template>
- </el-table-column>
-
- <el-table-column prop="refund_time" label="操作" align="center" >
- <template slot-scope="scope">
- <el-button @click="sureGoods(scope.row)" v-if="!scope.row.checked">
- 选择
- </el-button>
- <el-button disabled v-if="scope.row.checked">
- 选择
- </el-button>
- </template>
- </el-table-column>
- </el-table>
- </div>
-
- </el-dialog>
- <el-dialog title="选择优惠券" :visible.sync="coupon_show" @close="closeCoupon" class="Coupon">
- <el-select
- v-model="partake_coupon"
- filterable
- remote
- style="width:100%"
- reserve-keyword
- placeholder="请输入关键词"
- :remote-method="loadCoupon"
- value-key="id"
- @change="choice"
- :loading="loading"
- style="width: 100%">
- <el-option
- v-for="item in CouponList"
- :key="item.id"
- :label="item.name"
- :value="item">
- </el-option>
- </el-select>
- <span slot="footer" class="dialog-footer">
- <el-button @click="coupon_show = false">取 消</el-button>
- <el-button type="primary" @click="couponChoose()">确 定</el-button>
- </span>
- </el-dialog>
- </div>
- <script src="{{resource_get('static/yunshop/tinymce4.7.5/tinymce.min.js')}}"></script>
- @include('public.admin.tinymceee')
- @include('public.admin.pop')
- @include('public.admin.program')
- <script>
- var vm = new Vue({
- el: "#re_content",
- delimiters: ['[[', ']]'],
- data() {
- let data = {!! $page_list?:'{}' !!}
- let love_name = {!! $love_name ?: '爱心值' !!}
- let love_status = {!! $love_status !!}
- let activityModel = {!! $activityModel?:'{}' !!};
- let goodsModels = {!! $goodsModels?:'{}' !!};
- activityModel.level_id = Number(activityModel.level_id);
- activityModel.limit = activityModel.limit==1?true:false;
- activityModel.countdown_time[0]=activityModel.countdown_time[0]*1000;
- activityModel.countdown_time[1]=activityModel.countdown_time[1]*1000;
- let prize_list = {!! $prize_list?:'{}' !!}
- return {
- goodsShow:false,
- search_form:{
- keyword:''
- },
- thumbList:goodsModels.length>0?goodsModels:[],
- show:false,//是否开启公众号弹窗
- pro:false ,//是否开启小程序弹窗
- love_name : love_name,
- love_status : love_status,
- prize_list:[...prize_list],
- partake_coupon:{
- ...activityModel.has_one_coupon
- },
- coupon_show:false,
- couponSend:{},
- AwardList:[],
- CouponList:[],
- EditList:[],
- old_edit_form_coupon:'',
- couponName:'',
- activity_url:'',
- qrCode:'',
- arr:[],
- is_add_dialog:false,
- is_edit_dialog:false,
- search_loading:false,
- award_form:{
- coupon_num:'',
- name:'',
- award_type:1,
- coupon:'',
- thumb_url:'',
- number:'',
- rent:'',
- coin:'',
- love:'',
- rest:''
- },
- edit_form:{
- coupon_num:'',
- amount: '',
- chance: '',
- coupon_id: '',
- id: '',
- love: '',
- name: "",
- point: '',
- prize_num: '',
- thumb_url: "",
- type:1,
- },
- level_list:[],
- start_time:'',
- end_time:'',
- form:{
- describe_content:'',
- goods_id:[],
- background: "",
- background_colour: "",
- content: "",
- countdown_time:[],
- created_at: "",
- days_share_times: "",
- days_times: "",
- draw_type: 0,
- empty_prize_name: "",
- empty_prize_thumb: "",
- id:"",
- is_logo: 1,
- prize_name: 1,
- is_roster: 1,
- jump_link: "",
- jump_type: 0,
- level_id: "",
- limit: 1,
- member_type: 0,
- name: "",
- partake_amount: "",
- partake_coupon_id: "",
- partake_love: "",
- partake_point: "",
- partake_times: 0,
- prize_id: [],
- role_type: 0,
- somebody_share_times: "",
- somebody_times: "",
- uniacid: '',
- updated_at: "",
- use_love: "",
- use_point: "",
- ...activityModel
- },
- goods_list:[],
- coupon:'',
- level_list:[
- ],
- list:[
- ],
- coupon_list:[],
- award_list:[
- ],
- active:0,
- is_add_dialog:false,
- is_edit_dialog:false,
- all_loading:false,
- loading:false,
- activate_list:'',
- category_list: [],
- // status_list:status_list,
- data:'',
- list:[
- ],
- goods : [],
- loading:false,
- rules:{},
- }
- },
- created() {
- this.getLevel();
- },
- mounted(){
-
- },
- methods: {
- changeProp1(item){
- this.show=item;
- },
- //当前链接的增加
- parHref(child,confirm){
- this.show=confirm;
- this.form.success_app_url=child;
- },
- changeprogram(item){
- this.pro=item;
- },
- parpro(child,confirm){
- this.pro=confirm;
- this.form.success_mini_url=child;
- },
- next(){
- if(this.active===0){
- if(this.form.name===''){
- this.$message.error("请输入活动名称");
- return
- }
- if(this.form.basic_start_time===null){
- this.$message.error("请选择开始时间");
- return
- }
- if(this.form.basic_end_time===null){
- this.$message.error("请选择结束时间");
- return
- }
- if(this.form.member_type===0&&this.form.role_ype===1){
- if(this.form.level_id===''){
- this.$message.error("请选择会员等级");
- return
- }
- }
- }
- switch(this.form.draw_type) {
- case 0:
- break;
- case 1:
- if(this.form.use_point===''){
- this.$message.error("请填写消耗积分");
- return
- }
- if(isNaN(this.form.use_point)){
- this.$message.error("消耗积分需为数字");
- return
- }
- break;
- case 2:
- if(this.form.use_love===''){
- this.$message.error(`请填写消耗${this.love_name}`);
- return
- }
- if(isNaN(this.form.use_love)){
- this.$message.error(`消耗${this.love_name}需为数字`);
- return
- }
- break;
- }
- switch(this.form.partake_times){
- case 0:
- if(this.form.days_times===''){
- this.$message.error("请填写每人每天抽取的次数");
- return
- }
- if(isNaN(this.form.days_times)){
- this.$message.error("每人每天抽取的次数需为数字");
- return
- }
- if(this.form.days_share_times===''){
- this.$message.error("请填写每天分享额外抽取的次数");
- return
- }
- if(isNaN(this.form.days_share_times)){
- this.$message.error("每天分享额外抽取的次数需为数字");
- return
- }
- break;
- case 1:
- if(this.form.somebody_times===''){
- this.$message.error("请填写每人一共可抽取的次数");
- return
- }
- if(isNaN(this.form.somebody_times)){
- this.$message.error("每人一共可抽取的次数需为数字");
- return
- }
- if(this.form.somebody_share_times===''){
- this.$message.error("请填写每人分享额外抽取的次数");
- return
- }
- if(isNaN(this.form.somebody_share_times)){
- this.$message.error("每人分享额外抽取的次数需为数字");
- return
- }
- break;
- }
- if(this.active===1){
- if(this.prize_list.length<=0){
- this.$message.error("请先添加奖品");
- return
- }
- if(this.form.empty_prize_name===''){
- this.$message.error("请先填写未中奖设置名称");
- return
- }
- if(this.form.empty_prize_thumb===''){
- this.$message.error("请先传未中奖设置图片");
- return
-
- }
- if(this.form.partake_point==''&&this.form.partake_love==''&&this.form.partake_amount==''&&(this.partake_coupon.name==''||this.partake_coupon.name==undefined)){
- this.$message.error("请先填写参与者奖励");
- return
- }
- let changeAmount=this.prize_list.map((item,index,key)=>{return Number(item.chance)})
- let chanceAmount=changeAmount.reduce(function(a,b){
- return a+b
- },0)
- if(chanceAmount>=100){
- this.$message.error("所有奖品中奖概率总和不能大于等于100%");
- return
- }
- }
- if(this.active<=2){
- console.log(this.partake_coupon.name)
- this.active++;
- }
- },
- last() {
- this.active--;
- },
- timestampToTime(timestamp) {
- var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
- var Y = date.getFullYear() + '-';
- var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
- var D = (date.getDate() < 10 ? '0'+date.getDate() : date.getDate()) + ' ';
- var h = (date.getHours() < 10 ? '0'+date.getHours() : date.getHours()) + ':';
- var m = (date.getMinutes() < 10 ? '0'+date.getMinutes() : date.getMinutes()) + ':';
- var s = (date.getSeconds() < 10 ? '0'+date.getSeconds() : date.getSeconds());
- return Y+M+D+h+m+s;
- },
- getLevel(){
- this.$http.get('{!! yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.getMemberLevels') !!}').then(function (response){
- this.level_list=response.data.data.memberLevels;
- },function (response) {
- console.log(response);
- }
- );
- },
- open(scope, rows) {
- this.$confirm('此操作将永久删除该奖品, 是否继续?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning',
- }).then(() => {
- this.$message({
- type: 'success',
- message: '删除成功!',
- callback:this.deleteAward(scope, rows)
- });
- }).catch(() => {
- this.$message({
- type: 'info',
- message: '已取消删除'
- });
- });
- },
- openGoods() {
- this.goodsShow = true;
-
- },
- delGoods(item){
- this.thumbList.forEach((list,index)=>{
- if(list.id==item.id){
- this.goods_list.forEach((obj,index)=>{
- if(obj.id==item.id){
- obj.checked=false
- }
- })
- this.thumbList.splice(index,1)
- this.form.goods_id.splice(index,1)
- }
- })
- },
- searchGoods() {
- if(!this.search_form.keyword){
- this.$message({message: '请输入关键词搜索',type: 'error'});
- return
- }
- let that = this;
- this.$http.post('{!! yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.get-goods') !!}',{search:this.search_form.keyword}).then(response => {
- if (response.data.result) {
- let data = response.data;
- this.goods_list = data.data;
- this.goods_list.forEach((item,index)=>{
- if (this.form.goods_id == null) {
- this.form.goods_id = [];
- }
- if(this.form.goods_id.includes(item.id)){
- item.checked=true
- }else{
- item.checked=false
- }
- })
- this.$forceUpdate()
- } else {
- this.$message({message: response.data.msg,type: 'error'});
- }
- },response => {
- this.$message({message: response.data.msg,type: 'error'});
- });
- },
- sureGoods(item) {
- item.checked=true
- this.thumbList.push(item)
- this.form.goods_id.push(item.id)
- this.goods_list.push({})
- this.goods_list.splice(this.goods_list.length-1,1)
- },
-
- deleteAward(scope, rows){
- rows.splice(scope.$index, 1);
- this.form.prize_id.map((item,index,key)=>{
- if(item===scope.row.id){
- this.form.prize_id.splice(index,1);
- }
- })
- let json={
- id:scope.row.id
- }
- this.$http.post("{!! yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.delPrize') !!}",json).then(function (response){
-
- },function (response) {
- console.log(response);
- }
- );
- },
- addAward() {
- this.award_form={
- name:'',
- award_type:1,
- coupon:'',
- thumb_url:'',
- number:'',
- rent:'',
- coin:'',
- love:'',
- rest:''
- },
- this.is_add_dialog = true;
- },
- editAward(scope, rows){
- let json={
- id:scope.row.id
- }
- this.$http.post("{!! yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.editPrize') !!}",json).then(response => {
- if (response.data.result) {
- this.edit_form=response.data.data.prizeModel;
- if(response.data.data.prizeModel.type===1){
- this.old_edit_form_coupon=response.data.data.prizeModel.coupon_id;
- this.edit_form.coupon_id=response.data.data.prizeModel.has_one_coupon.name;
- this.edit_form.point='';
- this.edit_form.love='';
- this.edit_form.amount='';
- }
- if(this.edit_form.type==2){
- this.edit_form.love='';
- this.edit_form.amount='';
- this.edit_form.coupon_id='';
- }
- if(this.edit_form.type==3){
- this.edit_form.point='';
- this.edit_form.amount='';
- this.edit_form.coupon_id='';
- }
- if(this.edit_form.type==4){
- this.edit_form.love='';
- this.edit_form.point='';
- this.edit_form.coupon_id='';
- }
- }
- else {
- this.$message({message: response.data.msg,type: 'error'});
- }
- });
- this.is_edit_dialog = true;
- },
- //图片上传部分
- diyUpload(file) {
- const isImg = file.type === 'image/jpeg' || file.type==="image/png";
- const isLt2M = file.size / 1024 / 1024 < 2;
- if (!isLt2M) {
- this.$message.error('上传图片大小不能超过 2MB!');
- return false
- }
- if (!isImg) {
- this.$message.error('上传图片的格式只能是 JPG或PNG 格式!');
- return false;
- }
- },
- clearGoods() {
- this.form.goods_id = "";
- },
- diySuccess (res, file){
- if (res.result == 1) {
- this.form.background = res.data.thumb_url;
- this.$message.success("上传成功!");
- } else {
- this.$message.error(res.msg);
- }
- },
- clearDiy() {
- this.form.background = "";
- },
- prizeUpload(file) {
- const isImg = file.type === 'image/jpeg' || file.type==="image/png";
- const isLt2M = file.size / 1024 / 1024 < 2;
- if (!isLt2M) {
- this.$message.error('上传图片大小不能超过 2MB!');
- return false
- }
- if (!isImg) {
- this.$message.error('上传图片的格式只能是 JPG或PNG 格式!');
- return false;
- }
- },
- prizeSuccess (res, file){
- if (res.result == 1) {
- this.form.empty_prize_thumb = res.data.thumb_url;
- this.$message.success("上传成功!");
- } else {
- this.$message.error(res.msg);
- }
- },
- beforeUpload(file) {
- const isImg = file.type === 'image/jpeg' || file.type==="image/png";
- const isLt2M = file.size / 1024 / 1024 < 2;
- if (!isLt2M) {
- this.$message.error('上传图片大小不能超过 2MB!');
- return false
- }
- if (!isImg) {
- this.$message.error('上传图片的格式只能是 JPG或PNG 格式!');
- return false;
- }
- },
- uploadSuccess (res, file){
- if (res.result == 1) {
- this.award_form.thumb_url = res.data.thumb_url;
- this.$message.success("上传成功!");
-
- } else {
- this.$message.error(res.msg);
- }
-
- },
- editUpload(file) {
- const isImg = file.type === 'image/jpeg' || file.type==="image/png";
- const isLt2M = file.size / 1024 / 1024 < 2;
- if (!isLt2M) {
- this.$message.error('上传图片大小不能超过 2MB!');
- return false
- }
- if (!isImg) {
- this.$message.error('上传图片的格式只能是 JPG或PNG 格式!');
- return false;
- }
- },
- editSuccess (res, file){
- if (res.result == 1) {
-
- this.edit_form.thumb_url = res.data.thumb_url;
- this.$message.success("上传成功!");
- } else {
- this.$message.error(res.msg);
- }
- },
- clearImg() {
- this.award_form.thumb_url = "";
- },
- clearEdit() {
- this.edit_form.thumb_url = "";
- },
- clearPrize(){
- this.form.empty_prize_thumb=""
- },
- //图片上传部分
- //分页部分
- //分页部分
- //关闭弹窗部分
- closePop(){
- this.is_add_dialog=false;
- },
- closeEdit(){
- this.is_edit_dialog=false;
- },
- //关闭弹窗部分
- //奖品选中部分
- choose() {
- if(this.award_form.name===''){
- this.$message.error('请填写正确的奖品名称');
- return ;
- }
- switch (this.award_form.award_type) {
- case 1:
- if(this.award_form.coupon===''||this.award_form.coupon===null||this.award_form.coupon===undefined){
- this.$message.error("请选择优惠券");
- return
- }
- if(!this.award_form.coupon_num){
- this.$message.error("请输入优惠券数量");
- return
- }
- if(this.award_form.coupon_num<1){
- this.$message.error("优惠券数量不能小于1张");
- return
- }
- if(this.award_form.coupon_num>10){
- this.$message.error("优惠券数量不能超过10张");
- return
- }
- break;
- case 2:
- if(this.award_form.coin===''){
- this.$message.error("请填写积分");
- return
- }
- if(isNaN(this.award_form.coin)){
- this.$message.error("积分需为数字");
- return
- }
- break;
- case 3:
- if(this.award_form.love===''){
- this.$message.error(`请填写${this.love_name}`);
- return
- }
- if(isNaN(this.award_form.love)){
- this.$message.error(`${this.love_name}需为数字`);
- return
- }
- break;
- case 4:
- if(this.award_form.rest===''){
- this.$message.error("请填写余额");
- return
- }
- if(isNaN(this.award_form.rest)){
- this.$message.error("余额需为数字");
- return
- }
- break;
- }
- if(this.award_form.thumb_url===''){
- this.$message.error("请添加图片");
- return
- }
- if(this.award_form.number===''){
- this.$message.error("请填写数量");
- return
- }
- if(isNaN(this.award_form.number)){
- this.$message.error("数量需为数字");
- return
- }
- if(this.award_form.rent===''){
- this.$message.error("请填写中奖概率");
- return
- }
- if(0>Number(this.award_form.rent)||Number(this.award_form.rent)>=100){
- this.$message.error("中奖概率需在0-100之间");
- return
- }
- let json={
- name:this.award_form.name,
- type:this.award_form.award_type,
- coupon_id:this.award_form.award_type===1?this.award_form.coupon:'',
- thumb_url:this.award_form.thumb_url,
- prize_num:this.award_form.number,
- chance:this.award_form.rent,
- point:this.award_form.award_type===2?this.award_form.coin:'',
- love:this.award_form.award_type===3?this.award_form.love:'',
- amount:this.award_form.award_type===4?this.award_form.rest:'',
- coupon_num:this.award_form.award_type===1?this.award_form.coupon_num:'',
- }
-
- this.$http.post("{!! yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.addPrize') !!}",{'form_data':json}).then(response => {
-
- if (response.data.result) {
- this.$message({message: "添加奖品成功",type: 'success'});
- json.id=response.data.data.id;
- this.prize_list.push(json);
- this.form.prize_id.push(json.id);
- this.prize_list.map((item,index,key)=>{
- if(item.type==1){
- item.award='优惠券'
- }
- if(item.type==2){
- item.award='积分'
- }
- if(item.type==3){
- item.award=this.love_name
- }
- if(item.type==4){
- item.award='余额'
- }
- })
- }
- else {
- this.$message({message: response.data.msg,type: 'error'});
- }
- });
- this.is_add_dialog=false;
- },
- editChoose(){
- if(this.edit_form.name===''){
- this.$message.error('请填写正确的奖品名称');
- return ;
- }
- switch (this.edit_form.type) {
- case 1:
- if(this.edit_form.coupon_id===''||this.edit_form.coupon_id===null||this.edit_form.coupon_id===undefined){
- this.$message.error("请选择优惠券");
- return
- }
- if(!this.edit_form.coupon_num){
- this.$message.error("请输入优惠券数量");
- return
- }
- if(this.edit_form.coupon_num<1){
- this.$message.error("优惠券数量不能小于1张");
- return
- }
- if(this.edit_form.coupon_num>10){
- this.$message.error("优惠券数量不能超过10张");
- return
- }
- break;
- case 2:
- if(this.edit_form.point===''){
- this.$message.error("请填写积分");
- return
- }
- if(isNaN(this.edit_form.point)){
- this.$message.error("积分需为数字");
- return
- }
- break;
- case 3:
- if(this.edit_form.love===''){
- this.$message.error(`请填写${this.love_name}`);
- return
- }
- if(isNaN(this.edit_form.love)){
- this.$message.error(`${this.love_name}需为数字`);
- return
- }
- break;
- case 4:
- if(this.edit_form.amount===''){
- this.$message.error("请填写余额");
- return
- }
- if(isNaN(this.edit_form.amount)){
- this.$message.error("余额需为数字");
- return
- }
- break;
- }
- if(this.edit_form.thumb_url===''){
- this.$message.error("请添加图片");
- return
- }
- if(this.edit_form.prize_num===''){
- this.$message.error("请填写数量");
- return
- }
- if(isNaN(this.edit_form.prize_num)){
- this.$message.error("数量需为数字");
- return
- }
- if(this.edit_form.chance===''){
- this.$message.error("请填写中奖概率");
- return
- }
- if(0>Number(this.edit_form.chance)||Number(this.edit_form.chance)>100){
- this.$message.error("中奖概率需在0-100之间");
- return
- }
- if(typeof(this.edit_form.coupon_id)==="string"){
- this.edit_form.coupon_id=this.old_edit_form_coupon;
- }
- let json={
- amount:this.edit_form.type===4?this.edit_form.amount:'',
- chance:this.edit_form.chance,
- coupon_id:this.edit_form.type===1?this.edit_form.coupon_id:'',
- created_at:this.edit_form.created_at,
- give_out_num:this.edit_form.give_out_num,
- id:this.edit_form.id,
- love:this.edit_form.type===3?this.edit_form.love:'',
- name:this.edit_form.name,
- point:this.edit_form.type===2?this.edit_form.point:'',
- prize_num:this.edit_form.prize_num,
- thumb:this.edit_form.thumb,
- thumb_url:this.edit_form.thumb_url,
- type:this.edit_form.type,
- uniacid:this.edit_form.uniacid,
- updated_at:this.edit_form.updated_at,
- coupon_num:this.edit_form.type===1?this.edit_form.coupon_num:'',
- }
- this.$http.post("{!! yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.editPrize') !!}",{'form_data':json}).then(response => {
- if (response.data.result) {
- this.prize_list.map((item,index,key)=>{
- if(item.id===this.edit_form.id){
- this.prize_list.splice(index,1,this.edit_form)
- this.prize_list.map((item,index,key)=>{
- if(item.type==1){
- item.award='优惠券'
- }
- if(item.type==2){
- item.award='积分'
- }
- if(item.type==3){
- item.award=this.love_name
- }
- if(item.type==4){
- item.award='余额'
- }
- })
- }
- })
- this.$message({message: "编辑奖品成功",type: 'success'});
- }
- else {
- this.$message({message: response.data.msg,type: 'error'});
- }
- });
- this.is_edit_dialog=false;
- },
- submit() {
- if(this.active===2){
- if(this.form.background===''){
- this.$message.error("请先添加页面装修图片");
- return
- }
- if(this.form.background_colour===''){
- this.$message.error("请先选择背景颜色");
- return
- }
- if(this.form.content===''){
- this.$message.error("请先添加活动说明");
- return
- }
-
- let json={
- describe_content:this.form.describe_content,
- name:this.form.name,
- countdown_time:[Number(String(this.form.countdown_time[0]).substring(0,10)),Number(String(this.form.countdown_time[1]).substring(0,10))],
- goods_id:this.form.goods_id,
- role_type:this.form.role_type,
- member_type:this.form.member_type,
- level_id:this.form.level_id,
- draw_type:this.form.draw_type,
- use_point:this.form.draw_type===1?this.form.use_point:'',
- use_love:this.form.draw_type===2?this.form.use_love:'',
- partake_times:this.form.partake_times,
- days_times:this.form.partake_times===0?this.form.days_times:'',
- days_share_times:this.form.partake_times===0?this.form.days_share_times:'',
- somebody_times:this.form.partake_times===1?this.form.somebody_times:'',
- somebody_share_times:this.form.partake_times===1?this.form.somebody_share_times:'',
- prize_id:this.form.prize_id,
- empty_prize_name:this.form.empty_prize_name,
- empty_prize_thumb:this.form.empty_prize_thumb,
- jump_type:this.form.jump_type,
- jump_link:this.form.jump_type===1?this.form.jump_link:'',
- partake_point:this.form.partake_point,
- partake_love:this.form.partake_love,
- partake_amount:this.form.partake_amount,
- partake_coupon_id:this.partake_coupon.name!=''&&this.partake_coupon.name!=undefined?this.partake_coupon.id:'',
- limit:this.form.limit===true?1:0,
- background:this.form.background,
- background_colour:this.form.background_colour,
- is_logo:this.form.is_logo,
- prize_name:this.form.prize_name,
- is_roster:this.form.is_roster,
- content:this.form.content,
- empty_prize_prompt:this.form.empty_prize_prompt,
- id:this.form.id,
- goods_id:this.form.goods_id,
- success_app_url:this.form.success_app_url,
- success_mini_url:this.form.success_mini_url,
- }
- this.$http.post('{!! yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.edit') !!}',{'form_data':json}).then(function (response){
- if (response.data.result) {
- this.$message({message: "编辑活动成功",type: 'success'});
- } else {
- this.$message({message: response.data.msg,type: 'error'});
- return false;
- }
- this.$http.post('{!! yzWebFullUrl('plugin.lucky-draw.admin.controllers.activity.getActivityById') !!}',{'id':this.form.id}).then(function (response){
- this.qrCode=response.data.data.activityModel.qrCode;
- this.activity_url=response.data.data.activityModel.activity_url;
- },function (response) {
- this.$message({message: response.data.msg,type: 'error'});
- })
- this.active += 2;
- },function (response) {
- console.log(response);
- this.$message({message: response.data.msg,type: 'error'});
- })
-
- }
- },
- copy() {
- that = this;
- let Url = that.$refs['activity'];
- Url.select(); // 选择对象
- document.execCommand("Copy",false);
- that.$message({message:"复制成功!",type:"success"});
- },
- closeCoupon(){
- this.coupon_show=false;
- },
- choice(value){
- this.couponSend=value;
- },
- couponChoose(){
- this.coupon_show=false;
- this.partake_coupon=this.couponSend;
- },
- couponShow(){
- this.coupon_show=true;
- },
- loadAward(query) {
- if (query !== '') {
- this.loading = true;
- this.AwardList = [];
- this.$http.post("{!! yzWebUrl('plugin.lucky-draw.admin.controllers.activity.getCoupons') !!}",{kwd:query}).then(response => {
- this.AwardList = response.data.data.coupons;
- this.loading = false;
- }, response => {
- this.$message({type: 'error',message: response.data.msg});
- console.log(response);
- });
- } else {
- this.AwardList = [];
- }
- },
- loadEdit(query) {
- if (query !== '') {
- this.loading = true;
- this.EditList=[];
- this.$http.post("{!! yzWebUrl('plugin.lucky-draw.admin.controllers.activity.getCoupons') !!}",{kwd:query}).then(response => {
- this.EditList = response.data.data.coupons;
- this.loading = false;
- }, response => {
- this.$message({type: 'error',message: response.data.msg});
- console.log(response);
- });
- } else {
- this.EditList = [];
- }
- },
- loadCoupon(query) {
- if (query !== '') {
- this.loading = true;
- this.CouponList =[];
- this.$http.post("{!! yzWebUrl('plugin.lucky-draw.admin.controllers.activity.getCoupons') !!}",{kwd:query}).then(response => {
- this.CouponList = response.data.data.coupons;
- this.loading = false;
- }, response => {
- this.$message({type: 'error',message: response.data.msg});
- console.log(response);
- });
- } else {
- this.EditList = [];
- }
- },
- },
- });
- </script>
- <style>
- .left-con{
- float:left;
- margin-right:2%;
- width:375px;
- height:667px;
- background: url({{ plugin_assets('lucky-draw', 'views/admin/v2.png') }}) 0px -18px no-repeat;
- }
- </style>
- @endsection
|