| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244 |
- @extends('layouts.base')
- @section('title', '基础设置')
- @section('content')
- <link rel="stylesheet" href="{{resource_get('plugins/high-light/views/backend/index.css')}}">
- <style>
- .vue-main{background: #eff3f6;}
- /* 导航 */
- .el-radio-button .el-radio-button__inner,.el-radio-button:first-child .el-radio-button__inner {border-radius: 4px 4px 4px 4px;border-left: 0px;}
- .el-radio-button__inner{border:0;}
- .el-radio-button:last-child .el-radio-button__inner {border-radius: 4px 4px 4px 4px;}
- </style>
- <div class="all">
- <div id="app" v-cloak>
- <el-form ref="form" :model="form" :rules="rules" label-width="15%">
- <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>
- </el-form-item>
- <el-form-item label="自定义名称" prop="diy_name">
- <el-input v-model="form.diy_name" style="width:70%;" ></el-input>
- </el-form-item>
- <el-form-item label="appkey" prop="appkey">
- <el-input v-model="form.appkey" style="width:70%;" ></el-input>
- </el-form-item>
- <el-form-item label="appsecret" prop="appsecret">
- <el-input v-model="form.appsecret" style="width:70%;" ></el-input>
- </el-form-item>
- <el-form-item label="开启业务场景关联" prop="is_open_businessscene">
- <el-switch v-model="form.is_open_businessscene" :active-value="1" :inactive-value="0"></el-switch>
- </el-form-item>
- <el-form-item label="选择业务场景" prop="businessscene">
- <el-select v-model="form.businessscene" placeholder="请选择状态" @change="changeBusiness" clearable>
- <el-option
- v-for="item in businessscene"
- :key="item.business_scenario_code"
- :label="item.business_scenario"
- :value="item.business_scenario_code">
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="是否传递合规字段" prop="compliance_field_switch">
- <el-radio-group v-model="form.compliance_field_switch">
- <el-radio :label="1" @change="changeBusiness">是</el-radio>
- <el-radio :label="0" @change="changeBusiness">否</el-radio>
- </el-radio-group>
- <div class="tip">
- 开启显示后接口传递合规字段,如果初次设置,在选择业务场景后重新改变一下此开关,以便刷新出合规字段相关内容
- </div>
- </el-form-item>
- <el-form-item :label="item.display_name" v-for="(item,index) in form.compliance_field">
- <el-input v-model="item.content" style="width:70%;" :placeholder="item.description"></el-input>
- </el-form-item>
- {{--<el-form-item label="小程序聚合页链接" prop="mini_url">--}}
- {{--<el-input v-model="mini_url" readonly style="width:70%;" ref="mini_url"></el-input>--}}
- {{--<el-button @click="copyLink('mini_url')">复制链接</el-button>--}}
- {{--</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>
- <upload-img :upload-show="uploadShow" :name="chooseImgName" @replace="changeProp" @sure="sureImg"></upload-img>
- </div>
- </div>
- @include('public.admin.uploadImg')
- <script>
- var app = new Vue({
- el:"#app",
- delimiters: ['[[', ']]'],
- name: 'test',
- data() {
- return{
- form:{
- compliance_field:[],
- compliance_field_switch:"0"
- },
- uploadShow:false,
- chooseImgName:'',
- submit_url:'',
- showVisible:false,
- businessscene:[],
- loading: false,
- template_list:[],
- rules:{
- // name:{ required: true, message: '请输入品牌名称'}
- },
- }
- },
- created() {
- this.getData();
- },
- mounted() {
- },
- methods: {
- getData() {
- let json = {};
- let loading = this.$loading({target:document.querySelector(".content"),background: 'rgba(0, 0, 0, 0)'});
- this.$http.post('{!! yzWebFullUrl('plugin.high-light.backend.set.get-info') !!}',json).then(function(response) {
- if (response.data.result) {
- this.form = response.data.data.set;
- this.businessscene = response.data.data.business;
- loading.close();
- } else {
- this.$message({
- message: response.data.msg,
- type: 'error'
- });
- }
- loading.close();
- }, function(response) {
- this.$message({
- message: response.data.msg,
- type: 'error'
- });
- loading.close();
- });
- },
- submitForm(formName) {
- // console.log(this.form)
- let that = this;
- let json = {
- is_open:this.form.is_open || 0,
- appkey:this.form.appkey,
- diy_name:this.form.diy_name,
- appsecret:this.form.appsecret,
- is_open_businessscene:this.form.is_open_businessscene,
- businessscene:this.form.businessscene,
- compliance_field:this.form.compliance_field,
- version:this.form.version,
- data_type:this.form.data_type,
- compliance_field_switch:this.form.compliance_field_switch,
- };
-
- 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.high-light.backend.set.edit') !!}',{set:json}).then(response => {
- if (response.data.result) {
- this.$message({message: response.data.msg,type: 'success'});
- } else {
- this.$message({message: response.data.msg,type: 'error'});
- }
- loading.close();
- },response => {
- loading.close();
- });
- }
- else {
- console.log('error submit!!');
- return false;
- }
- });
- },
- changeBusiness() {
- let that = this;
- that.form.compliance_field = [];
- if (this.form.compliance_field_switch == "0") {
- return;
- }
- if (!that.form.businessscene) {
- this.form.compliance_field_switch == "0"
- this.$message({message: "请先选择业务场景",type: 'error'});
- return;
- }
- let json = {
- business_scene_code:that.form.businessscene,
- };
- this.$refs['form'].validate((valid) => {
- if (valid) {
- let loading = this.$loading({target:document.querySelector(".content"),background: 'rgba(0, 0, 0, 0)'});
- this.$http.post('{!! yzWebFullUrl('plugin.high-light.backend.set.get-compliance-field') !!}',json).then(response => {
- if (response.data.result) {
- this.form.version = response.data.data.compliance_field.version;
- this.form.data_type = response.data.data.compliance_field.data_type;
- response.data.data.compliance_field.fields.forEach((item,index)=>{
- that.form.compliance_field.push({
- field_name:item.field_name,
- display_name:item.display_name,
- description:item.description,
- sort:item.sort,
- content:"",
- })
- });
- } else {
- this.$message({message: response.data.msg,type: 'error'});
- }
- loading.close();
- },response => {
- loading.close();
- });
- }
- else {
- console.log('error submit!!');
- return false;
- }
- });
- console.log(this.form,123);
- },
- goBack() {
- history.go(-1)
- },
- openUpload(str) {
- this.chooseImgName = str;
- this.uploadShow = true;
- },
- changeProp(val) {
- if(val == true) {
- this.uploadShow = false;
- }
- else {
- this.uploadShow = true;
- }
- },
- sureImg(name,image,image_url) {
- this.form[name] = image;
- this.form[name+'_src'] = image_url;
- },
- clearImg(str) {
- this.form[str] = "";
- this.form[str+'_src'] = "";
- this.$forceUpdate();
- },
-
- },
- })
- </script>
- @endsection
|