| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227 |
- @extends('layouts.base')
- @section('content')
- <link rel="stylesheet" type="text/css" href="{{static_url('yunshop/goods/vue-goods1.css')}}"/>
- <!-- <style>
- .panel{
- margin-bottom:10px!important;
- padding-left: 20px;
- border-radius: 10px;
- }
- .panel .active a {
- background-color: #29ba9c!important;
- border-radius: 18px!important;
- color:#fff;
- }
- .panel a{
- border:none!important;
- background-color:#fff!important;
- }
- .con{
- padding-bottom:40px;
- position:relative;
- border-radius: 8px;
- min-height:100vh;
- }
- .con .setting .block{
- padding:10px;
- background-color:#fff;
- border-radius: 8px;
- }
- .con .setting .block .title{
- font-size:18px;
- margin-bottom:15px;
- display:flex;
- align-items:center;
- }
- .confirm-btn{
- width: calc(100% - 266px);
- position:fixed;
- bottom:0;
- right:0;
- margin-right:10px;
- line-height:63px;
- background-color: #ffffff;
- box-shadow: 0px 8px 23px 1px
- rgba(51, 51, 51, 0.3);
- background-color:#fff;
- text-align:center;
- z-index:99;
- }
- b{
- font-size:14px;
- }
- </style> -->
- <style>
- .all { background: #eff3f6;}
- </style>
- <div class="all">
- <div id="app" v-cloak>
- <el-form ref="form" :model="form" :rules="rules" label-width="15%">
- <div class="vue-crumbs">
- 订单飘窗
- >
- 基础设置
- </div>
- <div class="vue-head">
- <div class="vue-main-title">
- <div class="vue-main-title-left"></div>
- <div class="vue-main-title-content">基础设置</div>
- </div>
- <div class="vue-main-form">
-
- <el-form-item label="开启订单飘窗" prop="is_open">
- <el-switch v-model="form.is_open" :active-value="1" :inactive-value="0"></el-switch>
- <div class="tip">开启后商城自营商品、门店商品、供应商商品、酒店商品、租赁商品、门店预约插件商品、电子合同插件商品等详情页显示订单飘窗!</div>
- </el-form-item>
- </div>
- </div>
- <div class="vue-main">
- <div class="vue-main-title">
- <div class="vue-main-title-left"></div>
- <div class="vue-main-title-content">订单飘窗设置</div>
- </div>
- <div class="vue-main-form">
- <el-form-item label="滚动提示数量" prop="broadcast_number">
- <el-input v-model="form.broadcast_number" type="number" style="width:70%;">
- <template slot="append">个</template>
- </el-input>
- <div class="tip">取设置数量的最新订单数据滚动提示。</div>
- </el-form-item>
- <el-form-item label="飘窗信息显示" prop="show_type">
- <el-radio-group v-model="form.show_type">
- <el-radio :label="1">商城所有商品</el-radio>
- <el-radio :label="2">当前浏览的商品</el-radio>
- </el-radio-group>
- </el-form-item>
- <el-form-item label="订单飘窗文案自定义" prop="content">
- <el-input v-model="form.content" style="width:70%;" ref="content" placeholder="默认:【用户昵称】于【下单时间】成功下单!"></el-input>
- <div>
- <el-button size="mini" @click="addContent('nickname')" ref="nickname">用户昵称</el-button>
- <el-button size="mini" @click="addContent('time')" ref="time">下单时间</el-button>
- </div>
- <div class="tip">飘窗文案前面固定为用户头像!</div>
- </el-form-item>
- </div>
- </div>
-
- </el-form>
- <!-- 分页 -->
- <div class="vue-page">
- <div class="vue-center">
- <el-button type="primary" @click="submitForm('form')">提交</el-button>
- <el-button @click="goBack">返回</el-button>
- </div>
- </div>
- <!--end-->
- </div>
- </div>
- <script>
- var vm = new Vue({
- el: "#app",
- delimiters: ['[[', ']]'],
- data() {
- let set = JSON.parse('{!! $set ?: '{}' !!}');
- console.log(set);
- return {
- form:{
- is_open:0,
- broadcast_number:10,
- content:'',
- show_type:1,
- ...set
- },
- rules:{},
- }
- },
- mounted () {
- // this.getData();
- },
- methods: {
- // 添加关键词
- addContent(name) {
- let words = "";
- if(name=='nickname'){
- words = "[用户昵称]";
- }
- if(name=='time'){
- words = "[下单时间]";
- }
-
- this.insertInputTxt(name,words)
- },
- insertInputTxt(ref,words) {
- let name = this.$refs['content'].$refs.input;
- var startPos = name.selectionStart;
- console.log(startPos);
- var endPos = name.selectionEnd;
- if (startPos === undefined || endPos === undefined) return
- var txt = name.value;
- var result = txt.substring(0, startPos) + words + txt.substring(endPos)
- name.value = result;
- name.focus();
- name.selectionStart = startPos + words.length;
- name.selectionEnd = startPos + words.length;
- console.log(name.value)
- this.form['content'] = name.value;
- },
- goBack() {
- history.go(-1);
- },
- submitForm(formName) {
- console.log(this.form)
- let that = this;
- let json = {
- form_data:{
- is_open:this.form.is_open,
- broadcast_number:this.form.broadcast_number,
- content:this.form.content,
- show_type:this.form.show_type,
- }
- };
- console.log(json);
- this.$refs[formName].validate((valid) => {
- if (valid) {
- let loading = this.$loading({target:document.querySelector(".content"),background: 'rgba(0, 0, 0, 0)'});
- this.$http.post('{!! yzWebFullUrl('plugin.broadcast.admin.controllers.set.index') !!}',json).then(response => {
- if (response.data.result) {
- this.$message({type: 'success',message: '操作成功!'});
- window.location.reload();
- } else {
- this.$message({message: response.data.msg,type: 'error'});
- }
- loading.close();
- },response => {
- loading.close();
- });
- }
- else {
- console.log('error submit!!');
- return false;
- }
- });
- },
- // submit() {
- // this.$http.post("{!! yzWebFullUrl('plugin.broadcast.admin.controllers.set.index') !!}",{'form_data':this.form}).then(response => {
- // if (response.data.result) {
- // this.$message({type: 'success',message: '操作成功!'});
- // window.location.href='{!! yzWebFullUrl('plugin.broadcast.admin.controllers.set.index') !!}';
- // this.loading = false;
- // } else {
- // this.$message({message: response.data.msg,type: 'error'});
- // this.loading = false;
- // }
- // });
- // }
- },
- });
- </script>
- @endsection
|