yshop1.7发布,后台升級eladmin2.4(前端,后台权限,代码生成器等重构),修复商品分类等一些问题
This commit is contained in:
@ -1,19 +1,19 @@
|
||||
<template>
|
||||
<el-dialog :append-to-body="true" :close-on-click-modal="false" :before-close="cancel" :visible.sync="dialog" :title="isAdd ? '新增' : '编辑'" width="900px">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px">
|
||||
<el-form-item label="标题" >
|
||||
<el-input v-model="form.title" style="width: 370px;"/>
|
||||
<el-form-item label="标题">
|
||||
<el-input v-model="form.title" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="作者" >
|
||||
<el-input v-model="form.author" style="width: 370px;"/>
|
||||
<el-form-item label="作者">
|
||||
<el-input v-model="form.author" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="封面" >
|
||||
<pic-upload v-model="form.imageInput" style="width: 370px;"/>
|
||||
<el-form-item label="封面">
|
||||
<pic-upload v-model="form.imageInput" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="简介" >
|
||||
<el-input v-model="form.synopsis" style="width: 370px;" rows="5" type="textarea"/>
|
||||
<el-form-item label="简介">
|
||||
<el-input v-model="form.synopsis" style="width: 370px;" rows="5" type="textarea" />
|
||||
</el-form-item>
|
||||
<el-form-item label="正文" >
|
||||
<el-form-item label="正文">
|
||||
<editor v-model="form.content" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
@ -5,21 +5,22 @@
|
||||
<!-- 新增 -->
|
||||
<div style="display: inline-block;margin: 0px 2px;">
|
||||
<el-button
|
||||
v-permission="['ADMIN','YXARTICLE_ALL','YXARTICLE_CREATE']"
|
||||
v-permission="['admin','YXARTICLE_ALL','YXARTICLE_CREATE']"
|
||||
class="filter-item"
|
||||
size="mini"
|
||||
type="primary"
|
||||
icon="el-icon-plus"
|
||||
@click="add">新增</el-button>
|
||||
@click="add"
|
||||
>新增</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<!--表单组件-->
|
||||
<eForm ref="form" :is-add="isAdd"/>
|
||||
<eForm ref="form" :is-add="isAdd" />
|
||||
<!--表格渲染-->
|
||||
<el-table v-loading="loading" :data="data" size="small" style="width: 100%;">
|
||||
<el-table-column prop="id" label="ID"/>
|
||||
<el-table-column prop="title" label="标题"/>
|
||||
<el-table-column prop="author" label="作者"/>
|
||||
<el-table-column prop="id" label="ID" />
|
||||
<el-table-column prop="title" label="标题" />
|
||||
<el-table-column prop="author" label="作者" />
|
||||
<el-table-column ref="table" prop="imageInput" label="封面">
|
||||
<template slot-scope="scope">
|
||||
<a :href="scope.row.imageInput" style="color: #42b983" target="_blank"><img :src="scope.row.imageInput" alt="点击打开" class="el-avatar"></a>
|
||||
@ -30,26 +31,28 @@
|
||||
<span>{{ scope.row.addTime }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column v-if="checkPermission(['ADMIN','YXARTICLE_ALL','YXARTICLE_EDIT','YXARTICLE_DELETE'])" label="操作" width="180px" align="center">
|
||||
<el-table-column v-if="checkPermission(['admin','YXARTICLE_ALL','YXARTICLE_EDIT','YXARTICLE_DELETE'])" label="操作" width="180px" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button v-permission="['ADMIN','YXARTICLE_ALL','YXARTICLE_EDIT']" size="mini" type="primary" icon="el-icon-edit" @click="edit(scope.row)"/>
|
||||
<el-button v-permission="['admin','YXARTICLE_ALL','YXARTICLE_EDIT']" size="mini" type="primary" icon="el-icon-edit" @click="edit(scope.row)" />
|
||||
<el-popover
|
||||
v-permission="['ADMIN','YXARTICLE_ALL','YXARTICLE_DELETE']"
|
||||
:ref="scope.row.id"
|
||||
v-permission="['admin','YXARTICLE_ALL','YXARTICLE_DELETE']"
|
||||
placement="top"
|
||||
width="180">
|
||||
width="180"
|
||||
>
|
||||
<p>确定删除本条数据吗?</p>
|
||||
<div style="text-align: right; margin: 0">
|
||||
<el-button size="mini" type="text" @click="$refs[scope.row.id].doClose()">取消</el-button>
|
||||
<el-button :loading="delLoading" type="primary" size="mini" @click="subDelete(scope.row.id)">确定</el-button>
|
||||
</div>
|
||||
<el-button slot="reference" type="danger" icon="el-icon-delete" size="mini"/>
|
||||
<el-button slot="reference" type="danger" icon="el-icon-delete" size="mini" />
|
||||
</el-popover>
|
||||
<el-popover
|
||||
v-permission="['ADMIN','YXARTICLE_ALL','YXARTICLE_DELETE']"
|
||||
:ref="'item'+scope.row.id"
|
||||
v-permission="['admin','YXARTICLE_ALL','YXARTICLE_DELETE']"
|
||||
placement="top"
|
||||
width="180">
|
||||
width="180"
|
||||
>
|
||||
<p>确定发布本条数据吗?</p>
|
||||
<div style="text-align: right; margin: 0">
|
||||
<el-button size="mini" type="text" @click="$refs['item'+scope.row.id].doClose()">取消</el-button>
|
||||
@ -67,13 +70,14 @@
|
||||
style="margin-top: 8px;"
|
||||
layout="total, prev, pager, next, sizes"
|
||||
@size-change="sizeChange"
|
||||
@current-change="pageChange"/>
|
||||
@current-change="pageChange"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del, publish } from '@/api/yxArticle'
|
||||
import eForm from './form'
|
||||
import { formatTime } from '@/utils/index'
|
||||
@ -82,7 +86,7 @@ export default {
|
||||
mixins: [initData],
|
||||
data() {
|
||||
return {
|
||||
delLoading: false,
|
||||
delLoading: false
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
@ -1,47 +1,47 @@
|
||||
<template>
|
||||
<el-dialog :append-to-body="true" :close-on-click-modal="false" :before-close="cancel" :visible.sync="dialog" :title="isAdd ? '新增' : '编辑'" width="500px">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px">
|
||||
<el-form-item label="字段名称" >
|
||||
<el-input v-model="form.menuName" style="width: 370px;"/>
|
||||
<el-form-item label="字段名称">
|
||||
<el-input v-model="form.menuName" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="类型(文本框,单选按钮...)" >
|
||||
<el-input v-model="form.type" style="width: 370px;"/>
|
||||
<el-form-item label="类型(文本框,单选按钮...)">
|
||||
<el-input v-model="form.type" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="表单类型" >
|
||||
<el-input v-model="form.inputType" style="width: 370px;"/>
|
||||
<el-form-item label="表单类型">
|
||||
<el-input v-model="form.inputType" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="配置分类id" >
|
||||
<el-input v-model="form.configTabId" style="width: 370px;"/>
|
||||
<el-form-item label="配置分类id">
|
||||
<el-input v-model="form.configTabId" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="规则 单选框和多选框" >
|
||||
<el-input v-model="form.parameter" style="width: 370px;"/>
|
||||
<el-form-item label="规则 单选框和多选框">
|
||||
<el-input v-model="form.parameter" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="上传文件格式1单图2多图3文件" >
|
||||
<el-input v-model="form.uploadType" style="width: 370px;"/>
|
||||
<el-form-item label="上传文件格式1单图2多图3文件">
|
||||
<el-input v-model="form.uploadType" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="规则" >
|
||||
<el-input v-model="form.required" style="width: 370px;"/>
|
||||
<el-form-item label="规则">
|
||||
<el-input v-model="form.required" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="多行文本框的宽度" >
|
||||
<el-input v-model="form.width" style="width: 370px;"/>
|
||||
<el-form-item label="多行文本框的宽度">
|
||||
<el-input v-model="form.width" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="多行文框的高度" >
|
||||
<el-input v-model="form.high" style="width: 370px;"/>
|
||||
<el-form-item label="多行文框的高度">
|
||||
<el-input v-model="form.high" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="默认值" >
|
||||
<el-input v-model="form.value" style="width: 370px;"/>
|
||||
<el-form-item label="默认值">
|
||||
<el-input v-model="form.value" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="配置名称" >
|
||||
<el-input v-model="form.info" style="width: 370px;"/>
|
||||
<el-form-item label="配置名称">
|
||||
<el-input v-model="form.info" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="配置简介" >
|
||||
<el-input v-model="form.desc" style="width: 370px;"/>
|
||||
<el-form-item label="配置简介">
|
||||
<el-input v-model="form.desc" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="排序" >
|
||||
<el-input v-model="form.sort" style="width: 370px;"/>
|
||||
<el-form-item label="排序">
|
||||
<el-input v-model="form.sort" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="是否隐藏" >
|
||||
<el-input v-model="form.status" style="width: 370px;"/>
|
||||
<el-form-item label="是否隐藏">
|
||||
<el-input v-model="form.status" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
|
@ -1,43 +1,42 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="150px">
|
||||
<el-form-item label="AppID" >
|
||||
<el-input v-model="form.wechat_appid" style="width: 370px;"/>
|
||||
<el-form-item label="AppID">
|
||||
<el-input v-model="form.wechat_appid" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="AppSecret" >
|
||||
<el-form-item label="AppSecret">
|
||||
<el-input v-model="form.wechat_appsecret" style="width: 370px;" type="password" />
|
||||
</el-form-item>
|
||||
<el-form-item label="微信验证TOKEN" >
|
||||
<el-input v-model="form.wechat_token" style="width: 370px;"/>
|
||||
<el-form-item label="微信验证TOKEN">
|
||||
<el-input v-model="form.wechat_token" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="EncodingAESKey" >
|
||||
<el-input v-model="form.wechat_encodingaeskey" style="width: 370px;"/>
|
||||
<el-form-item label="EncodingAESKey">
|
||||
<el-input v-model="form.wechat_encodingaeskey" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="微信服务器地址" >
|
||||
<el-input v-model="form.api" :disabled="true" style="width: 370px;"/>
|
||||
<el-form-item label="微信服务器地址">
|
||||
<el-input v-model="form.api" :disabled="true" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="微信分享图片" >
|
||||
<pic-upload v-model="form.wechat_share_img" style="width: 370px;"/>
|
||||
<el-form-item label="微信分享图片">
|
||||
<pic-upload v-model="form.wechat_share_img" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="微信分享标题" >
|
||||
<el-input v-model="form.wechat_share_title" style="width: 370px;"/>
|
||||
<el-form-item label="微信分享标题">
|
||||
<el-input v-model="form.wechat_share_title" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="微信分享简介" >
|
||||
<el-input v-model="form.wechat_share_synopsis" style="width: 370px;" rows="5" type="textarea"/>
|
||||
<el-form-item label="微信分享简介">
|
||||
<el-input v-model="form.wechat_share_synopsis" style="width: 370px;" rows="5" type="textarea" />
|
||||
</el-form-item>
|
||||
<el-form-item label="" >
|
||||
<el-button type="primary" @click="doSubmit">提交</el-button>
|
||||
<el-form-item label="">
|
||||
<el-button type="primary" @click="doSubmit">提交</el-button>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del, add, get } from '@/api/yxSystemConfig'
|
||||
import eForm from './form'
|
||||
import picUpload from '@/components/pic-upload'
|
||||
@ -70,10 +69,10 @@ export default {
|
||||
}
|
||||
},
|
||||
created() {
|
||||
get().then(rese=>{
|
||||
let newObj = {}
|
||||
rese.content.map(function (key,value) {
|
||||
let keyName = key.menuName;
|
||||
get().then(rese => {
|
||||
const newObj = {}
|
||||
rese.content.map(function(key, value) {
|
||||
const keyName = key.menuName
|
||||
newObj[keyName] = key.value
|
||||
})
|
||||
|
||||
@ -84,12 +83,12 @@ export default {
|
||||
checkPermission,
|
||||
doSubmit() {
|
||||
add(this.form).then(res => {
|
||||
Message({message: '设置成功',type: 'success'})
|
||||
Message({ message: '设置成功', type: 'success' })
|
||||
}).catch(err => {
|
||||
//this.loading = false
|
||||
// this.loading = false
|
||||
console.log(err.response.data.message)
|
||||
})
|
||||
},
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -1,35 +1,33 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="150px">
|
||||
<el-form-item label="AppID" >
|
||||
<el-input v-model="form.wxpay_appId" style="width: 370px;"/>
|
||||
<el-form-item label="AppID">
|
||||
<el-input v-model="form.wxpay_appId" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="商户id" >
|
||||
<el-form-item label="商户id">
|
||||
<el-input v-model="form.wxpay_mchId" style="width: 370px;" type="password" />
|
||||
</el-form-item>
|
||||
<el-form-item label="商户密钥" >
|
||||
<el-form-item label="商户密钥">
|
||||
<el-input v-model="form.wxpay_mchKey" style="width: 370px;" type="password" />
|
||||
</el-form-item>
|
||||
<el-form-item label="微信证书" >
|
||||
<file-upload v-model="form.wxpay_keyPath" style="width: 500px;"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" >
|
||||
<el-button type="primary" @click="doSubmit">提交</el-button>
|
||||
<el-form-item label="">
|
||||
<el-button type="primary" @click="doSubmit">提交</el-button>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del, add, get } from '@/api/yxSystemConfig'
|
||||
import eForm from './form'
|
||||
import fileUpload from '@/components/file-upload'
|
||||
import picUpload from '@/components/pic-upload'
|
||||
import { Message } from 'element-ui'
|
||||
export default {
|
||||
components: { eForm, fileUpload },
|
||||
components: { eForm, picUpload },
|
||||
mixins: [initData],
|
||||
data() {
|
||||
return {
|
||||
@ -37,18 +35,17 @@ export default {
|
||||
form: {
|
||||
wxpay_appId: '',
|
||||
wxpay_mchId: '',
|
||||
wxpay_mchKey: '',
|
||||
wxpay_keyPath: ''
|
||||
wxpay_mchKey: ''
|
||||
},
|
||||
rules: {
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
get().then(rese=>{
|
||||
let newObj = {}
|
||||
rese.content.map(function (key,value) {
|
||||
let keyName = key.menuName;
|
||||
get().then(rese => {
|
||||
const newObj = {}
|
||||
rese.content.map(function(key, value) {
|
||||
const keyName = key.menuName
|
||||
newObj[keyName] = key.value
|
||||
})
|
||||
|
||||
@ -59,12 +56,12 @@ export default {
|
||||
checkPermission,
|
||||
doSubmit() {
|
||||
add(this.form).then(res => {
|
||||
Message({message: '设置成功',type: 'success'})
|
||||
Message({ message: '设置成功', type: 'success' })
|
||||
}).catch(err => {
|
||||
//this.loading = false
|
||||
// this.loading = false
|
||||
console.log(err.response.data.message)
|
||||
})
|
||||
},
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -1,12 +1,12 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="150px">
|
||||
<el-form-item label="积分抵用比例" >
|
||||
<el-input v-model="form.integral_ratio" style="width: 370px;"/>
|
||||
<el-form-item label="积分抵用比例">
|
||||
<el-input v-model="form.integral_ratio" style="width: 370px;" />
|
||||
<p style="color: red">积分抵用比例(1积分抵多少金额)</p>
|
||||
</el-form-item>
|
||||
<el-form-item label="" >
|
||||
<el-button type="primary" @click="doSubmit">提交</el-button>
|
||||
<el-form-item label="">
|
||||
<el-button type="primary" @click="doSubmit">提交</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
@ -14,7 +14,7 @@
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del, add, get } from '@/api/yxSystemConfig'
|
||||
import eForm from './form'
|
||||
import picUpload from '@/components/pic-upload'
|
||||
@ -33,10 +33,10 @@ export default {
|
||||
}
|
||||
},
|
||||
created() {
|
||||
get().then(rese=>{
|
||||
let newObj = {}
|
||||
rese.content.map(function (key,value) {
|
||||
let keyName = key.menuName;
|
||||
get().then(rese => {
|
||||
const newObj = {}
|
||||
rese.content.map(function(key, value) {
|
||||
const keyName = key.menuName
|
||||
newObj[keyName] = key.value
|
||||
})
|
||||
|
||||
@ -47,12 +47,12 @@ export default {
|
||||
checkPermission,
|
||||
doSubmit() {
|
||||
add(this.form).then(res => {
|
||||
Message({message: '设置成功',type: 'success'})
|
||||
Message({ message: '设置成功', type: 'success' })
|
||||
}).catch(err => {
|
||||
//this.loading = false
|
||||
// this.loading = false
|
||||
console.log(err.response.data.message)
|
||||
})
|
||||
},
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -1,29 +1,29 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="150px">
|
||||
<el-form-item label="分销模式" >
|
||||
<el-form-item label="分销模式">
|
||||
<el-radio v-model="form.store_brokerage_statu" :label="1">指定分销</el-radio>
|
||||
<el-radio v-model="form.store_brokerage_statu" :label="2">人人分销</el-radio>
|
||||
</el-form-item>
|
||||
<el-form-item label="一级返佣比例" >
|
||||
<el-input v-model="form.store_brokerage_ratio" style="width: 370px;"/>
|
||||
<el-form-item label="一级返佣比例">
|
||||
<el-input v-model="form.store_brokerage_ratio" style="width: 370px;" />
|
||||
<p style="color: red">订单交易成功后给上级返佣的比例0 - 100,例:5 = 反订单金额的5%</p>
|
||||
</el-form-item>
|
||||
<el-form-item label="二级返佣比例" >
|
||||
<el-input v-model="form.store_brokerage_two" style="width: 370px;"/>
|
||||
<el-form-item label="二级返佣比例">
|
||||
<el-input v-model="form.store_brokerage_two" style="width: 370px;" />
|
||||
<p style="color: red">订单交易成功后给上级返佣的比例0 - 100,例:5 = 反订单金额的5%</p>
|
||||
</el-form-item>
|
||||
<el-form-item label="提现最低金额" >
|
||||
<el-input v-model="form.user_extract_min_price" style="width: 370px;"/>
|
||||
<el-form-item label="提现最低金额">
|
||||
<el-input v-model="form.user_extract_min_price" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="H5地址" >
|
||||
<el-input v-model="form.site_url" style="width: 370px;"/>
|
||||
<el-form-item label="H5地址">
|
||||
<el-input v-model="form.site_url" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="API地址" >
|
||||
<el-input v-model="form.api_url" style="width: 370px;"/>
|
||||
<el-form-item label="API地址">
|
||||
<el-input v-model="form.api_url" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="" >
|
||||
<el-button type="primary" @click="doSubmit">提交</el-button>
|
||||
<el-form-item label="">
|
||||
<el-button type="primary" @click="doSubmit">提交</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
@ -31,7 +31,7 @@
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del, add, get } from '@/api/yxSystemConfig'
|
||||
import eForm from './form'
|
||||
import picUpload from '@/components/pic-upload'
|
||||
@ -55,10 +55,10 @@ export default {
|
||||
}
|
||||
},
|
||||
created() {
|
||||
get().then(rese=>{
|
||||
let newObj = {}
|
||||
rese.content.map(function (key,value) {
|
||||
let keyName = key.menuName;
|
||||
get().then(rese => {
|
||||
const newObj = {}
|
||||
rese.content.map(function(key, value) {
|
||||
const keyName = key.menuName
|
||||
newObj[keyName] = key.value
|
||||
})
|
||||
this.form = newObj
|
||||
@ -69,12 +69,12 @@ export default {
|
||||
checkPermission,
|
||||
doSubmit() {
|
||||
add(this.form).then(res => {
|
||||
Message({message: '设置成功',type: 'success'})
|
||||
Message({ message: '设置成功', type: 'success' })
|
||||
}).catch(err => {
|
||||
//this.loading = false
|
||||
// this.loading = false
|
||||
console.log(err.response.data.message)
|
||||
})
|
||||
},
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -1,25 +1,24 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="150px">
|
||||
<el-form-item label="AppID" >
|
||||
<el-input v-model="form.wxapp_appId" style="width: 370px;"/>
|
||||
<el-form-item label="AppID">
|
||||
<el-input v-model="form.wxapp_appId" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="小程序密钥" >
|
||||
<el-form-item label="小程序密钥">
|
||||
<el-input v-model="form.wxapp_secret" style="width: 370px;" type="password" />
|
||||
</el-form-item>
|
||||
<el-form-item label="" >
|
||||
<el-button type="primary" @click="doSubmit">提交</el-button>
|
||||
<el-form-item label="">
|
||||
<el-button type="primary" @click="doSubmit">提交</el-button>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del, add, get } from '@/api/yxSystemConfig'
|
||||
import eForm from './form'
|
||||
import picUpload from '@/components/pic-upload'
|
||||
@ -39,10 +38,10 @@ export default {
|
||||
}
|
||||
},
|
||||
created() {
|
||||
get().then(rese=>{
|
||||
let newObj = {}
|
||||
rese.content.map(function (key,value) {
|
||||
let keyName = key.menuName;
|
||||
get().then(rese => {
|
||||
const newObj = {}
|
||||
rese.content.map(function(key, value) {
|
||||
const keyName = key.menuName
|
||||
newObj[keyName] = key.value
|
||||
})
|
||||
|
||||
@ -53,12 +52,12 @@ export default {
|
||||
checkPermission,
|
||||
doSubmit() {
|
||||
add(this.form).then(res => {
|
||||
Message({message: '设置成功',type: 'success'})
|
||||
Message({ message: '设置成功', type: 'success' })
|
||||
}).catch(err => {
|
||||
//this.loading = false
|
||||
// this.loading = false
|
||||
console.log(err.response.data.message)
|
||||
})
|
||||
},
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -1,11 +1,11 @@
|
||||
<template>
|
||||
<el-dialog :append-to-body="true" :close-on-click-modal="false" :before-close="cancel" :visible.sync="dialog" :title="isAdd ? '新增' : '编辑'" width="500px">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px">
|
||||
<el-form-item label="缓存数据" >
|
||||
<el-input v-model="form.result" style="width: 370px;"/>
|
||||
<el-form-item label="缓存数据">
|
||||
<el-input v-model="form.result" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="缓存时间" >
|
||||
<el-input v-model="form.addTime" style="width: 370px;"/>
|
||||
<el-form-item label="缓存时间">
|
||||
<el-input v-model="form.addTime" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
|
@ -5,35 +5,37 @@
|
||||
<!-- 新增 -->
|
||||
<div style="display: inline-block;margin: 0px 2px;">
|
||||
<el-button
|
||||
v-permission="['ADMIN','YXCACHE_ALL','YXCACHE_CREATE']"
|
||||
v-permission="['admin','YXCACHE_ALL','YXCACHE_CREATE']"
|
||||
class="filter-item"
|
||||
size="mini"
|
||||
type="primary"
|
||||
icon="el-icon-plus"
|
||||
@click="add">新增</el-button>
|
||||
@click="add"
|
||||
>新增</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<!--表单组件-->
|
||||
<eForm ref="form" :is-add="isAdd"/>
|
||||
<eForm ref="form" :is-add="isAdd" />
|
||||
<!--表格渲染-->
|
||||
<el-table v-loading="loading" :data="data" size="small" style="width: 100%;">
|
||||
<el-table-column prop="key" label="key"/>
|
||||
<el-table-column prop="result" label="缓存数据"/>
|
||||
<el-table-column prop="addTime" label="缓存时间"/>
|
||||
<el-table-column v-if="checkPermission(['ADMIN','YXCACHE_ALL','YXCACHE_EDIT','YXCACHE_DELETE'])" label="操作" width="150px" align="center">
|
||||
<el-table-column prop="key" label="key" />
|
||||
<el-table-column prop="result" label="缓存数据" />
|
||||
<el-table-column prop="addTime" label="缓存时间" />
|
||||
<el-table-column v-if="checkPermission(['admin','YXCACHE_ALL','YXCACHE_EDIT','YXCACHE_DELETE'])" label="操作" width="150px" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button v-permission="['ADMIN','YXCACHE_ALL','YXCACHE_EDIT']" size="mini" type="primary" icon="el-icon-edit" @click="edit(scope.row)"/>
|
||||
<el-button v-permission="['admin','YXCACHE_ALL','YXCACHE_EDIT']" size="mini" type="primary" icon="el-icon-edit" @click="edit(scope.row)" />
|
||||
<el-popover
|
||||
v-permission="['ADMIN','YXCACHE_ALL','YXCACHE_DELETE']"
|
||||
:ref="scope.row.key"
|
||||
v-permission="['admin','YXCACHE_ALL','YXCACHE_DELETE']"
|
||||
placement="top"
|
||||
width="180">
|
||||
width="180"
|
||||
>
|
||||
<p>确定删除本条数据吗?</p>
|
||||
<div style="text-align: right; margin: 0">
|
||||
<el-button size="mini" type="text" @click="$refs[scope.row.key].doClose()">取消</el-button>
|
||||
<el-button :loading="delLoading" type="primary" size="mini" @click="subDelete(scope.row.key)">确定</el-button>
|
||||
</div>
|
||||
<el-button slot="reference" type="danger" icon="el-icon-delete" size="mini"/>
|
||||
<el-button slot="reference" type="danger" icon="el-icon-delete" size="mini" />
|
||||
</el-popover>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@ -45,13 +47,14 @@
|
||||
style="margin-top: 8px;"
|
||||
layout="total, prev, pager, next, sizes"
|
||||
@size-change="sizeChange"
|
||||
@current-change="pageChange"/>
|
||||
@current-change="pageChange"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del } from '@/api/yxCache'
|
||||
import eForm from './form'
|
||||
export default {
|
||||
@ -59,7 +62,7 @@ export default {
|
||||
mixins: [initData],
|
||||
data() {
|
||||
return {
|
||||
delLoading: false,
|
||||
delLoading: false
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
@ -4,105 +4,105 @@
|
||||
<div class="ibox-content clearfix">
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="8">
|
||||
<div class="view-wrapper col-sm-4">
|
||||
<div class="mobile-header">公众号</div>
|
||||
<section class="view-body">
|
||||
<div class="time-wrapper"><span class="time">9:36</span></div>
|
||||
</section>
|
||||
<div class="menu-footer">
|
||||
<ul class="flex">
|
||||
<li v-for="(menu, index) in menus" :class="{active:menu === checkedMenu}">
|
||||
<span @click="activeMenu(menu,index,null)" ><i class="icon-sub"></i>{{ menu.name || '一级菜单' }}</span>
|
||||
<div class="sub-menu">
|
||||
<ul>
|
||||
<li v-for="(child, cindex) in menu.subButtons" :class="{active:child === checkedMenu}">
|
||||
<span @click="activeMenu(child,cindex,index)">{{ child.name || '二级菜单' }}</span>
|
||||
</li>
|
||||
<li v-if="menu.subButtons.length < 5" @click="addChild(menu,index)"><i class="icon-add"></i></li>
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
<li v-if="menus.length < 3" @click="addMenu()"><i class="icon-add"></i></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<div class="control-wrapper menu-control col-sm-8" v-show="checkedMenuId !== null">
|
||||
<section>
|
||||
<div class="control-main">
|
||||
<h3 class="popover-title">菜单名称 <a class="fr" href="javascript:void(0);" @click="delMenu">删除</a></h3>
|
||||
<p class="tips-txt">已添加子菜单,仅可设置菜单名称。</p>
|
||||
<div class="menu-content control-body">
|
||||
<form action="">
|
||||
<div class="form-group clearfix">
|
||||
<label for="" class="el-form-item__label" style="width: 80px;">菜单名称</label>
|
||||
<div class="col-sm-9 group-item">
|
||||
<input type="text" placeholder="菜单名称" style="width: 370px;" class="el-input__inner" v-model="checkedMenu.name">
|
||||
<div class="view-wrapper col-sm-4">
|
||||
<div class="mobile-header">公众号</div>
|
||||
<section class="view-body">
|
||||
<div class="time-wrapper"><span class="time">9:36</span></div>
|
||||
</section>
|
||||
<div class="menu-footer">
|
||||
<ul class="flex">
|
||||
<li v-for="(menu, index) in menus" :class="{active:menu === checkedMenu}">
|
||||
<span @click="activeMenu(menu,index,null)"><i class="icon-sub" />{{ menu.name || '一级菜单' }}</span>
|
||||
<div class="sub-menu">
|
||||
<ul>
|
||||
<li v-for="(child, cindex) in menu.subButtons" :class="{active:child === checkedMenu}">
|
||||
<span @click="activeMenu(child,cindex,index)">{{ child.name || '二级菜单' }}</span>
|
||||
</li>
|
||||
<li v-if="menu.subButtons.length < 5" @click="addChild(menu,index)"><i class="icon-add" /></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group clearfix">
|
||||
<label class="el-form-item__label" style="width: 80px;" for="">规则状态</label>
|
||||
<div class="group-item col-sm-9">
|
||||
<select style="width: 370px;" class="el-input__inner" name="" id="" v-model="checkedMenu.type">
|
||||
<option value="click">关键字</option>
|
||||
<option value="view">跳转网页</option>
|
||||
<option value="miniprogram">小程序</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menu-control-box">
|
||||
<!-- 关键字 -->
|
||||
<div class="keywords item" :class="{show:checkedMenu.type=='click'}">
|
||||
<span class="el-form-item__label">关键字</span>
|
||||
<input type="text" placeholder="请输入关键字" class="form-control" v-model="checkedMenu.key">
|
||||
|
||||
</div>
|
||||
<!-- 跳转地址 -->
|
||||
<div class="url item" :class="{show:checkedMenu.type=='view'}">
|
||||
<span class="el-form-item__label">跳转地址</span>
|
||||
<input type="text" v-model="checkedMenu.url" placeholder="请输入跳转地址" class="form-control">
|
||||
<p class="text-left"></p>
|
||||
</div>
|
||||
<!-- 小程序 -->
|
||||
<div class="wrchat-app item" :class="{show:checkedMenu.type=='miniprogram'}">
|
||||
<div class="list">
|
||||
<span class="el-form-item__label">appId</span>
|
||||
<input class="form-control" v-model="checkedMenu.appId" type="text" />
|
||||
</div>
|
||||
<div class="list">
|
||||
<span class="el-form-item__label">备用网页url</span>
|
||||
<input class="form-control" v-model="checkedMenu.url" type="text" />
|
||||
</div>
|
||||
<div class="list">
|
||||
<span class="el-form-item__label">小程序路径</span>
|
||||
<input class="form-control" v-model="checkedMenu.pagePath" type="text" />
|
||||
</div>
|
||||
</div>
|
||||
<!-- 多客服 -->
|
||||
<div class="service item">
|
||||
<p>回复内容</p>
|
||||
<textarea cols="60" rows="10"></textarea>
|
||||
</li>
|
||||
<li v-if="menus.length < 3" @click="addMenu()"><i class="icon-add" /></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<div v-show="checkedMenuId !== null" class="control-wrapper menu-control col-sm-8">
|
||||
<section>
|
||||
<div class="control-main">
|
||||
<h3 class="popover-title">菜单名称 <a class="fr" href="javascript:void(0);" @click="delMenu">删除</a></h3>
|
||||
<p class="tips-txt">已添加子菜单,仅可设置菜单名称。</p>
|
||||
<div class="menu-content control-body">
|
||||
<form action="">
|
||||
<div class="form-group clearfix">
|
||||
<label for="" class="el-form-item__label" style="width: 80px;">菜单名称</label>
|
||||
<div class="col-sm-9 group-item">
|
||||
<input v-model="checkedMenu.name" type="text" placeholder="菜单名称" style="width: 370px;" class="el-input__inner">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group clearfix">
|
||||
<label class="el-form-item__label" style="width: 80px;" for="">规则状态</label>
|
||||
<div class="group-item col-sm-9">
|
||||
<select id="" v-model="checkedMenu.type" style="width: 370px;" class="el-input__inner" name="">
|
||||
<option value="click">关键字</option>
|
||||
<option value="view">跳转网页</option>
|
||||
<option value="miniprogram">小程序</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menu-control-box">
|
||||
<!-- 关键字 -->
|
||||
<div class="keywords item" :class="{show:checkedMenu.type=='click'}">
|
||||
<span class="el-form-item__label">关键字</span>
|
||||
<input v-model="checkedMenu.key" type="text" placeholder="请输入关键字" class="form-control">
|
||||
|
||||
</div>
|
||||
<!-- 跳转地址 -->
|
||||
<div class="url item" :class="{show:checkedMenu.type=='view'}">
|
||||
<span class="el-form-item__label">跳转地址</span>
|
||||
<input v-model="checkedMenu.url" type="text" placeholder="请输入跳转地址" class="form-control">
|
||||
<p class="text-left" />
|
||||
</div>
|
||||
<!-- 小程序 -->
|
||||
<div class="wrchat-app item" :class="{show:checkedMenu.type=='miniprogram'}">
|
||||
<div class="list">
|
||||
<span class="el-form-item__label">appId</span>
|
||||
<input v-model="checkedMenu.appId" class="form-control" type="text">
|
||||
</div>
|
||||
<div class="list">
|
||||
<span class="el-form-item__label">备用网页url</span>
|
||||
<input v-model="checkedMenu.url" class="form-control" type="text">
|
||||
</div>
|
||||
<div class="list">
|
||||
<span class="el-form-item__label">小程序路径</span>
|
||||
<input v-model="checkedMenu.pagePath" class="form-control" type="text">
|
||||
</div>
|
||||
</div>
|
||||
<!-- 多客服 -->
|
||||
<div class="service item">
|
||||
<p>回复内容</p>
|
||||
<textarea cols="60" rows="10" />
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<div class="ibox-content submit">
|
||||
<button class="el-button el-button--primary" @click="submit">保存发布</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content submit">
|
||||
<button class="el-button el-button--primary" @click="submit">保存发布</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del, add, get } from '@/api/yxCache'
|
||||
import eForm from './form'
|
||||
import { Message } from 'element-ui'
|
||||
@ -113,16 +113,16 @@ export default {
|
||||
return {
|
||||
delLoading: false,
|
||||
menus: [],
|
||||
checkedMenu:{
|
||||
type:'click',
|
||||
name:''
|
||||
checkedMenu: {
|
||||
type: 'click',
|
||||
name: ''
|
||||
},
|
||||
checkedMenuId:null,
|
||||
parentMenuId:null
|
||||
checkedMenuId: null,
|
||||
parentMenuId: null
|
||||
}
|
||||
},
|
||||
created() {
|
||||
get().then(res=>{
|
||||
get().then(res => {
|
||||
this.menus = JSON.parse(res.result)
|
||||
})
|
||||
},
|
||||
@ -166,124 +166,124 @@ export default {
|
||||
}
|
||||
_this.dialog = true
|
||||
},
|
||||
defaultMenusData:function(){
|
||||
defaultMenusData: function() {
|
||||
return {
|
||||
type:'click',
|
||||
name:'',
|
||||
subButtons:[]
|
||||
};
|
||||
type: 'click',
|
||||
name: '',
|
||||
subButtons: []
|
||||
}
|
||||
},
|
||||
defaultChildData:function(){
|
||||
defaultChildData: function() {
|
||||
return {
|
||||
type:'click',
|
||||
name:''
|
||||
};
|
||||
type: 'click',
|
||||
name: ''
|
||||
}
|
||||
},
|
||||
addMenu:function(){
|
||||
if(!this.check()) return false;
|
||||
var data = this.defaultMenusData(),id = this.menus.length;
|
||||
this.menus.push(data);
|
||||
this.checkedMenu = data;
|
||||
this.checkedMenuId = id;
|
||||
this.parentMenuId = null;
|
||||
addMenu: function() {
|
||||
if (!this.check()) return false
|
||||
var data = this.defaultMenusData(); var id = this.menus.length
|
||||
this.menus.push(data)
|
||||
this.checkedMenu = data
|
||||
this.checkedMenuId = id
|
||||
this.parentMenuId = null
|
||||
},
|
||||
addChild:function(menu,index){
|
||||
if(!this.check()) return false;
|
||||
var data = this.defaultChildData(),id = menu.subButtons.length;
|
||||
menu.subButtons.push(data);
|
||||
this.checkedMenu = data;
|
||||
this.checkedMenuId = id;
|
||||
this.parentMenuId = index;
|
||||
addChild: function(menu, index) {
|
||||
if (!this.check()) return false
|
||||
var data = this.defaultChildData(); var id = menu.subButtons.length
|
||||
menu.subButtons.push(data)
|
||||
this.checkedMenu = data
|
||||
this.checkedMenuId = id
|
||||
this.parentMenuId = index
|
||||
},
|
||||
delMenu:function(){
|
||||
console.log(this.parentMenuId);
|
||||
this.parentMenuId === null ?
|
||||
this.menus.splice(this.checkedMenuId,1) : this.menus[this.parentMenuId].subButtons.splice(this.checkedMenuId,1);
|
||||
this.parentMenuId = null;
|
||||
this.checkedMenu = {};
|
||||
this.checkedMenuId = null;
|
||||
delMenu: function() {
|
||||
console.log(this.parentMenuId)
|
||||
this.parentMenuId === null
|
||||
? this.menus.splice(this.checkedMenuId, 1) : this.menus[this.parentMenuId].subButtons.splice(this.checkedMenuId, 1)
|
||||
this.parentMenuId = null
|
||||
this.checkedMenu = {}
|
||||
this.checkedMenuId = null
|
||||
},
|
||||
activeMenu:function(menu,index,pid){
|
||||
if(!this.check()) return false;
|
||||
pid === null ?
|
||||
(this.checkedMenu = menu) : (this.checkedMenu = this.menus[pid].subButtons[index],this.parentMenuId = pid);
|
||||
this.checkedMenuId=index
|
||||
activeMenu: function(menu, index, pid) {
|
||||
if (!this.check()) return false
|
||||
pid === null
|
||||
? (this.checkedMenu = menu) : (this.checkedMenu = this.menus[pid].subButtons[index], this.parentMenuId = pid)
|
||||
this.checkedMenuId = index
|
||||
},
|
||||
check:function(){
|
||||
if(this.checkedMenuId === null) return true;
|
||||
if(!this.checkedMenu.name){
|
||||
//$eb.message('请输入按钮名称!');
|
||||
check: function() {
|
||||
if (this.checkedMenuId === null) return true
|
||||
if (!this.checkedMenu.name) {
|
||||
// $eb.message('请输入按钮名称!');
|
||||
this.$message({
|
||||
message: '请输入按钮名称',
|
||||
type: 'error',
|
||||
duration: 1000,
|
||||
onClose: () => {
|
||||
//this.init()
|
||||
// this.init()
|
||||
}
|
||||
})
|
||||
return false;
|
||||
return false
|
||||
}
|
||||
if(this.checkedMenu.type == 'click' && !this.checkedMenu.key){
|
||||
//$eb.message('请输入关键字!');
|
||||
if (this.checkedMenu.type == 'click' && !this.checkedMenu.key) {
|
||||
// $eb.message('请输入关键字!');
|
||||
this.$message({
|
||||
message: '请输入关键字',
|
||||
type: 'error',
|
||||
duration: 1000,
|
||||
onClose: () => {
|
||||
//this.init()
|
||||
// this.init()
|
||||
}
|
||||
})
|
||||
return false;
|
||||
return false
|
||||
}
|
||||
if(this.checkedMenu.type == 'view' && !this.checkedMenu.url){
|
||||
this.$message({
|
||||
if (this.checkedMenu.type == 'view' && !this.checkedMenu.url) {
|
||||
this.$message({
|
||||
message: '请输入跳转地址',
|
||||
type: 'error',
|
||||
duration: 1000,
|
||||
onClose: () => {
|
||||
//this.init()
|
||||
// this.init()
|
||||
}
|
||||
})
|
||||
|
||||
return false;
|
||||
return false
|
||||
}
|
||||
if(this.checkedMenu.type == 'miniprogram'
|
||||
&& (!this.checkedMenu.appId
|
||||
|| !this.checkedMenu.pagePath
|
||||
|| !this.checkedMenu.url)){
|
||||
//$eb.message('请填写完整小程序配置!');
|
||||
if (this.checkedMenu.type == 'miniprogram' &&
|
||||
(!this.checkedMenu.appId ||
|
||||
!this.checkedMenu.pagePath ||
|
||||
!this.checkedMenu.url)) {
|
||||
// $eb.message('请填写完整小程序配置!');
|
||||
this.$message({
|
||||
message: '请填写完整小程序配置',
|
||||
type: 'error',
|
||||
duration: 1000,
|
||||
onClose: () => {
|
||||
//this.init()
|
||||
// this.init()
|
||||
}
|
||||
})
|
||||
return false;
|
||||
return false
|
||||
}
|
||||
return true;
|
||||
return true
|
||||
},
|
||||
submit:function(){
|
||||
// this.$message.error('错了哦,这是一条错误消息')
|
||||
//return false;
|
||||
if(!this.check()) return false
|
||||
//console.log(this.menus.length)
|
||||
if(!this.menus.length){
|
||||
submit: function() {
|
||||
// this.$message.error('错了哦,这是一条错误消息')
|
||||
// return false;
|
||||
if (!this.check()) return false
|
||||
// console.log(this.menus.length)
|
||||
if (!this.menus.length) {
|
||||
this.$message({
|
||||
message: '请添加菜单',
|
||||
type: 'error',
|
||||
duration: 1000,
|
||||
duration: 1000
|
||||
})
|
||||
return false;
|
||||
return false
|
||||
}
|
||||
add({buttons:this.menus}).then(function (res) {
|
||||
add({ buttons: this.menus }).then(function(res) {
|
||||
console.log(555)
|
||||
Message({message: '添加成功',type: 'success'})
|
||||
}).catch(function(err){
|
||||
//$eb.message('error',err);
|
||||
//this.$message.error('错了哦,这是一条错误消息');
|
||||
//Message({message: "2222",type: 'error'})
|
||||
Message({ message: '添加成功', type: 'success' })
|
||||
}).catch(function(err) {
|
||||
// $eb.message('error',err);
|
||||
// this.$message.error('错了哦,这是一条错误消息');
|
||||
// Message({message: "2222",type: 'error'})
|
||||
})
|
||||
}
|
||||
}
|
||||
@ -316,16 +316,12 @@ export default {
|
||||
|
||||
#app .layout-ceiling-main a{ color:#9ba7b5}
|
||||
|
||||
|
||||
|
||||
#table-list .mp-search-wrapper{ float: right; margin-left: 12px; }
|
||||
|
||||
#table-list .mp-header-wrapper{ overflow: hidden; }
|
||||
|
||||
#table-list .mp-header-wrapper h1{ padding-left:15px; float: left; font-size: 18px; line-height: 24px; padding-bottom: 20px; font-weight: 400; color: #464c5b; }
|
||||
|
||||
|
||||
|
||||
.mp-form{ padding: 20px 20px 20px 0; }
|
||||
|
||||
.mp-form .ivu-tree li{ margin: 0; }
|
||||
@ -350,16 +346,12 @@ export default {
|
||||
|
||||
.mp-form .add-submit-item .ivu-btn{ position: fixed; left: 0; bottom: 0; border-radius: 0; }
|
||||
|
||||
|
||||
|
||||
.vertical-center-modal .ivu-modal{ top: 0; }
|
||||
|
||||
.vertical-center-modal .ivu-modal-header{ z-index: 9; position: relative; }
|
||||
|
||||
.vertical-center-modal .ivu-modal-close{ z-index: 10; }
|
||||
|
||||
|
||||
|
||||
.wechat-reply-wrapper .fl{ float: left; }
|
||||
.wechat-reply-wrapper .fr{ float: right; }
|
||||
.wechat-reply-wrapper .clearfix:after{ content:"."; display:block; height:0; visibility:hidden; clear:both; }
|
||||
@ -394,14 +386,11 @@ export default {
|
||||
.view-wrapper .view-body .view-item .vn-content .con-item-list .list-tit-info{ width: 70%; line-height: 1.5; word-wrap:break-word; }
|
||||
.view-wrapper .view-body .view-item .vn-content .con-item-list .list-pic{ width: 20%; min-height: 50px; background-size: cover; background-position: center center; }
|
||||
|
||||
|
||||
|
||||
/* 音乐 */
|
||||
.view-wrapper .view-body .view-item.music-box .box-content{ position: relative; width: 100%; background: #080; color: #fff; border-color: #080; }
|
||||
.view-wrapper .view-body .view-item.music-box .box-content p{ width: 75%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
|
||||
.view-wrapper .view-body .view-item.music-box .box-content .music-icon{ position: absolute; right: 11px; top: 50%; width: 30px; height: 30px; background: #0a0; text-align: center; line-height: 30px; margin-top: -15px; font-size: 16px; }
|
||||
|
||||
|
||||
.view-wrapper .view-body .view-item.music-box .box-content:after{ display: none; }
|
||||
.view-wrapper .view-body .view-item.music-box .box-content:before{ border-top: 10px solid #080; }
|
||||
/* 视频 */
|
||||
|
@ -2,19 +2,19 @@
|
||||
<el-dialog :append-to-body="true" :close-on-click-modal="false" :before-close="cancel" :visible.sync="dialog" :title="isAdd ? '新增' : '编辑'" width="500px">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px">
|
||||
<el-form-item label="关键字" prop="key">
|
||||
<el-input v-model="form.key" style="width: 370px;"/>
|
||||
<el-input v-model="form.key" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="回复类型" >
|
||||
<el-input v-model="form.type" style="width: 370px;"/>
|
||||
<el-form-item label="回复类型">
|
||||
<el-input v-model="form.type" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="回复数据" >
|
||||
<el-input v-model="form.data" style="width: 370px;"/>
|
||||
<el-form-item label="回复数据">
|
||||
<el-input v-model="form.data" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="0=不可用 1 =可用" >
|
||||
<el-input v-model="form.status" style="width: 370px;"/>
|
||||
<el-form-item label="0=不可用 1 =可用">
|
||||
<el-input v-model="form.status" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="是否隐藏" >
|
||||
<el-input v-model="form.hide" style="width: 370px;"/>
|
||||
<el-form-item label="是否隐藏">
|
||||
<el-input v-model="form.hide" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
@ -47,7 +47,7 @@ export default {
|
||||
rules: {
|
||||
key: [
|
||||
{ required: true, message: 'please enter', trigger: 'blur' }
|
||||
],
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -1,120 +1,120 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<div class="wechat-reply-wrapper">
|
||||
<div class="ibox-title"><p>{{msg}}</p></div>
|
||||
<div class="ibox-content clearfix">
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="8">
|
||||
<div class="ibox-title"><p>{{ msg }}</p></div>
|
||||
<div class="ibox-content clearfix">
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="8">
|
||||
<div class="view-wrapper col-sm-4">
|
||||
<div class="mobile-header">公众号</div>
|
||||
<section class="view-body" style="overflow:scroll;">
|
||||
<div class="time-wrapper"><span class="time">9:36</span></div>
|
||||
<div class="view-item text-box clearfix" :class="{show:type=='text'}">
|
||||
<div class="avatar fl"><img src="../../../assets/wechat/head.gif" /></div>
|
||||
<div class="avatar fl"><img src="../../../assets/wechat/head.gif"></div>
|
||||
<div class="box-content fl">
|
||||
{{dataGroup.text.content}}
|
||||
{{ dataGroup.text.content }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="view-item news-box" :class="{show:type=='news'}" v-if="dataGroup.news.length >0">
|
||||
<div class="vn-content" v-if="dataGroup.news.length ==1">
|
||||
<div class="vn-title">{{dataGroup.news[0].title}}</div>
|
||||
<div class="vn-time">{{dataGroup.news[0].date}}</div>
|
||||
<div class="vn-picture" :style="{backgroundImage: 'url('+dataGroup.news[0].image+')'}"></div>
|
||||
<div class="vn-picture-info">{{dataGroup.news[0].description}}</div>
|
||||
<div v-if="dataGroup.news.length >0" class="view-item news-box" :class="{show:type=='news'}">
|
||||
<div v-if="dataGroup.news.length ==1" class="vn-content">
|
||||
<div class="vn-title">{{ dataGroup.news[0].title }}</div>
|
||||
<div class="vn-time">{{ dataGroup.news[0].date }}</div>
|
||||
<div class="vn-picture" :style="{backgroundImage: 'url('+dataGroup.news[0].image+')'}" />
|
||||
<div class="vn-picture-info">{{ dataGroup.news[0].description }}</div>
|
||||
<div class="vn-more">
|
||||
<a :href="dataGroup.news[0].url">阅读原文</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="vn-content" v-else>
|
||||
<div v-else class="vn-content">
|
||||
<div class="con-item-box">
|
||||
<div class="vn-picture" :style="{backgroundImage: 'url('+dataGroup.news[0].image+')'}"></div>
|
||||
<div class="first-title">{{dataGroup.news[0].title}}</div>
|
||||
<div class="vn-picture" :style="{backgroundImage: 'url('+dataGroup.news[0].image+')'}" />
|
||||
<div class="first-title">{{ dataGroup.news[0].title }}</div>
|
||||
</div>
|
||||
<div class="con-item-list clearfix" v-for="(newinfos,index) in dataGroup.news" v-if="index>0">
|
||||
<div class="list-tit-info fl">{{newinfos.title}}</div>
|
||||
<div class="list-pic fr" :style="{backgroundImage: 'url('+newinfos.image+')'}"></div>
|
||||
<div v-for="(newinfos,index) in dataGroup.news" v-if="index>0" class="con-item-list clearfix">
|
||||
<div class="list-tit-info fl">{{ newinfos.title }}</div>
|
||||
<div class="list-pic fr" :style="{backgroundImage: 'url('+newinfos.image+')'}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="view-item text-box clearfix" :class="{show:type=='image'}">
|
||||
<div class="avatar fl"><img src="../../../assets/wechat/head.gif" /></div>
|
||||
<div class="avatar fl"><img src="../../../assets/wechat/head.gif"></div>
|
||||
<div class="box-content fl">
|
||||
<img class="picbox" :src="dataGroup.image.src" alt="" />
|
||||
<img class="picbox" :src="dataGroup.image.src" alt="">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
</section>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<div class="control-wrapper col-sm-8">
|
||||
<section>
|
||||
<form action="" method="post" enctype="multipart/form-data">
|
||||
<div class="control-title">{{msg}}</div>
|
||||
<div class="control-body">
|
||||
<div class="form-group clearfix">
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="4">
|
||||
<label class="col-sm-2 control-label tips" for="">规则状态</label>
|
||||
</el-col>
|
||||
<el-col :span="16">
|
||||
<div class="group-item">
|
||||
<div class="radio i-checks" style="display:inline;margin-left: 5px;">
|
||||
<label class="" style="padding-left: 0;">
|
||||
<input style="position: relative;top: 1px;left: 3px;" checked="checked" v-model="status" type="radio" value="1" name="status">
|
||||
启用</label>
|
||||
</div>
|
||||
<div class="radio i-checks" style="display:inline;margin-left: 10px;">
|
||||
<label class="" style="padding-left: 0;">
|
||||
<input style="position: relative;top: 1px;left: 3px;" type="radio" value="0" v-model="status" name="status">
|
||||
禁用
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<div class="form-group clearfix">
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="4">
|
||||
<label class="col-sm-2 tips" for="">消息类型</label>
|
||||
</el-col>
|
||||
<el-col :span="16">
|
||||
<div class="col-sm-10 group-item">
|
||||
<select class="form-control m-b" v-model="type" name="account">
|
||||
<option value="text">文字消息</option>
|
||||
</select>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<div class="control-main">
|
||||
<!-- 文字 -->
|
||||
<div class="control-item control-main-txt" :class="{show:type=='text'}">
|
||||
<section>
|
||||
<form action="" method="post" enctype="multipart/form-data">
|
||||
<div class="control-title">{{ msg }}</div>
|
||||
<div class="control-body">
|
||||
<div class="form-group clearfix">
|
||||
<label class="col-sm-2 tips" for="">规则内容</label>
|
||||
<div class="col-sm-10 group-item">
|
||||
<textarea v-model="dataGroup.text.content" name="" id="" cols="30" rows="10" placeholder="请输入内容"></textarea>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="4">
|
||||
<label class="col-sm-2 control-label tips" for="">规则状态</label>
|
||||
</el-col>
|
||||
<el-col :span="16">
|
||||
<div class="group-item">
|
||||
<div class="radio i-checks" style="display:inline;margin-left: 5px;">
|
||||
<label class="" style="padding-left: 0;">
|
||||
<input v-model="status" style="position: relative;top: 1px;left: 3px;" checked="checked" type="radio" value="1" name="status">
|
||||
启用</label>
|
||||
</div>
|
||||
<div class="radio i-checks" style="display:inline;margin-left: 10px;">
|
||||
<label class="" style="padding-left: 0;">
|
||||
<input v-model="status" style="position: relative;top: 1px;left: 3px;" type="radio" value="0" name="status">
|
||||
禁用
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<div class="form-group clearfix">
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="4">
|
||||
<label class="col-sm-2 tips" for="">消息类型</label>
|
||||
</el-col>
|
||||
<el-col :span="16">
|
||||
<div class="col-sm-10 group-item">
|
||||
<select v-model="type" class="form-control m-b" name="account">
|
||||
<option value="text">文字消息</option>
|
||||
</select>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<div class="control-main">
|
||||
<!-- 文字 -->
|
||||
<div class="control-item control-main-txt" :class="{show:type=='text'}">
|
||||
<div class="form-group clearfix">
|
||||
<label class="col-sm-2 tips" for="">规则内容</label>
|
||||
<div class="col-sm-10 group-item">
|
||||
<textarea id="" v-model="dataGroup.text.content" name="" cols="30" rows="10" placeholder="请输入内容" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 图片 -->
|
||||
<div class="control-item control-main-picture" :class="{show:type=='image'}">
|
||||
<div class="form-group clearfix">
|
||||
<pic-upload v-model="dataGroup.image.src" style="width: 500px;" />
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 图片 -->
|
||||
<div class="control-item control-main-picture" :class="{show:type=='image'}">
|
||||
<div class="form-group clearfix">
|
||||
<pic-upload v-model="dataGroup.image.src" style="width: 500px;"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="text-align: center;"><button type="button" class="el-button el-button--primary" @click="submit">提交</button></div>
|
||||
</form>
|
||||
</section>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<div style="text-align: center;"><button type="button" class="el-button el-button--primary" @click="submit">提交</button></div>
|
||||
</form>
|
||||
</section>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -122,7 +122,7 @@
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del, add, get } from '@/api/yxWechatReply'
|
||||
import eForm from './form'
|
||||
import picUpload from '@/components/pic-upload'
|
||||
@ -138,20 +138,20 @@ export default {
|
||||
type: 'text',
|
||||
textBox: '',
|
||||
pic: '',
|
||||
key:'',
|
||||
dataGroup:{
|
||||
text:{
|
||||
content:''
|
||||
key: '',
|
||||
dataGroup: {
|
||||
text: {
|
||||
content: ''
|
||||
},
|
||||
image:{
|
||||
src:''
|
||||
image: {
|
||||
src: ''
|
||||
},
|
||||
voice:{
|
||||
src:''
|
||||
voice: {
|
||||
src: ''
|
||||
},
|
||||
news:[]
|
||||
news: []
|
||||
},
|
||||
uploadColl: function () {
|
||||
uploadColl: function() {
|
||||
},
|
||||
uploadLink: '',
|
||||
result: null
|
||||
@ -162,6 +162,24 @@ export default {
|
||||
this.init()
|
||||
})
|
||||
},
|
||||
mounted: function() {
|
||||
this.key = 'subscribe'
|
||||
this.msg = '编辑关注回复'
|
||||
get().then(rese => {
|
||||
this.result = rese
|
||||
this.type = rese.type
|
||||
this.status = rese.status
|
||||
const newData = JSON.parse(rese.data)
|
||||
if (rese.type == 'image') {
|
||||
this.dataGroup.image.src = newDatasrc
|
||||
} else if (rese.type == 'text') {
|
||||
this.dataGroup.text.content = newData.content
|
||||
}
|
||||
if (this.used_key) {
|
||||
this.keyword = this.result.key
|
||||
}
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
checkPermission,
|
||||
beforeInit() {
|
||||
@ -205,54 +223,27 @@ export default {
|
||||
}
|
||||
_this.dialog = true
|
||||
},
|
||||
submit: function(){
|
||||
if(!this.check()) return false;
|
||||
submit: function() {
|
||||
if (!this.check()) return false
|
||||
|
||||
add({key:this.key,status:this.status,data:this.dataGroup[this.type],type:this.type}).then(function (res) {
|
||||
Message({message: '设置成功',type: 'success'})
|
||||
}).catch(function(err){
|
||||
//Message({message: err,type: 'error'})
|
||||
add({ key: this.key, status: this.status, data: this.dataGroup[this.type], type: this.type }).then(function(res) {
|
||||
Message({ message: '设置成功', type: 'success' })
|
||||
}).catch(function(err) {
|
||||
// Message({message: err,type: 'error'})
|
||||
})
|
||||
},
|
||||
check: function(){
|
||||
var dataGroup = this.dataGroup;
|
||||
switch (this.type){
|
||||
check: function() {
|
||||
var dataGroup = this.dataGroup
|
||||
switch (this.type) {
|
||||
case 'text':
|
||||
if(dataGroup.text.content == '')
|
||||
return this.returnError('请输入文字消息内容');
|
||||
break;
|
||||
if (dataGroup.text.content == '') { return this.returnError('请输入文字消息内容') }
|
||||
break
|
||||
case 'image':
|
||||
if(dataGroup.image.src == '')
|
||||
return this.returnError('请上传图片');
|
||||
break;
|
||||
if (dataGroup.image.src == '') { return this.returnError('请上传图片') }
|
||||
break
|
||||
}
|
||||
return true;
|
||||
},
|
||||
returnError:function(err){
|
||||
$eb.message('error',err);
|
||||
return false;
|
||||
return true
|
||||
}
|
||||
},
|
||||
mounted: function () {
|
||||
this.key = "subscribe"
|
||||
this.msg = "编辑关注回复";
|
||||
get().then(rese=>{
|
||||
this.result = rese
|
||||
this.type = rese.type;
|
||||
this.status = rese.status;
|
||||
let newData = JSON.parse(rese.data)
|
||||
if(rese.type == 'image') {
|
||||
this.dataGroup.image.src = newDatasrc;
|
||||
}else if(rese.type == 'text'){
|
||||
this.dataGroup.text.content = newData.content;
|
||||
}
|
||||
if(this.used_key){
|
||||
this.keyword = this.result.key;
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@ -283,16 +274,12 @@ export default {
|
||||
|
||||
#app .layout-ceiling-main a{ color:#9ba7b5}
|
||||
|
||||
|
||||
|
||||
#table-list .mp-search-wrapper{ float: right; margin-left: 12px; }
|
||||
|
||||
#table-list .mp-header-wrapper{ overflow: hidden; }
|
||||
|
||||
#table-list .mp-header-wrapper h1{ padding-left:15px; float: left; font-size: 18px; line-height: 24px; padding-bottom: 20px; font-weight: 400; color: #464c5b; }
|
||||
|
||||
|
||||
|
||||
.mp-form{ padding: 20px 20px 20px 0; }
|
||||
|
||||
.mp-form .ivu-tree li{ margin: 0; }
|
||||
@ -317,16 +304,12 @@ export default {
|
||||
|
||||
.mp-form .add-submit-item .ivu-btn{ position: fixed; left: 0; bottom: 0; border-radius: 0; }
|
||||
|
||||
|
||||
|
||||
.vertical-center-modal .ivu-modal{ top: 0; }
|
||||
|
||||
.vertical-center-modal .ivu-modal-header{ z-index: 9; position: relative; }
|
||||
|
||||
.vertical-center-modal .ivu-modal-close{ z-index: 10; }
|
||||
|
||||
|
||||
|
||||
.wechat-reply-wrapper .fl{ float: left;margin-left: 10px; }
|
||||
.wechat-reply-wrapper .fr{ float: right; }
|
||||
.wechat-reply-wrapper .clearfix:after{ content:"."; display:block; height:10px; visibility:hidden; clear:both; }
|
||||
@ -361,14 +344,11 @@ export default {
|
||||
.view-wrapper .view-body .view-item .vn-content .con-item-list .list-tit-info{ width: 70%; line-height: 1.5; word-wrap:break-word; }
|
||||
.view-wrapper .view-body .view-item .vn-content .con-item-list .list-pic{ width: 20%; min-height: 50px; background-size: cover; background-position: center center; }
|
||||
|
||||
|
||||
|
||||
/* 音乐 */
|
||||
.view-wrapper .view-body .view-item.music-box .box-content{ position: relative; width: 100%; background: #080; color: #fff; border-color: #080; }
|
||||
.view-wrapper .view-body .view-item.music-box .box-content p{ width: 75%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
|
||||
.view-wrapper .view-body .view-item.music-box .box-content .music-icon{ position: absolute; right: 11px; top: 50%; width: 30px; height: 30px; background: #0a0; text-align: center; line-height: 30px; margin-top: -15px; font-size: 16px; }
|
||||
|
||||
|
||||
.view-wrapper .view-body .view-item.music-box .box-content:after{ display: none; }
|
||||
.view-wrapper .view-body .view-item.music-box .box-content:before{ border-top: 10px solid #080; }
|
||||
/* 视频 */
|
||||
|
@ -1,19 +1,19 @@
|
||||
<template>
|
||||
<el-dialog :append-to-body="true" :close-on-click-modal="false" :before-close="cancel" :visible.sync="dialog" :title="isAdd ? '新增' : '编辑'" width="500px">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px">
|
||||
<el-form-item label="模板编号" >
|
||||
<el-input v-model="form.tempkey" style="width: 370px;"/>
|
||||
<el-form-item label="模板编号">
|
||||
<el-input v-model="form.tempkey" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="模板名" >
|
||||
<el-input v-model="form.name" style="width: 370px;"/>
|
||||
<el-form-item label="模板名">
|
||||
<el-input v-model="form.name" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="回复内容" >
|
||||
<el-input v-model="form.content" style="width: 370px;" rows="5" type="textarea"/>
|
||||
<el-form-item label="回复内容">
|
||||
<el-input v-model="form.content" style="width: 370px;" rows="5" type="textarea" />
|
||||
</el-form-item>
|
||||
<el-form-item label="模板ID" >
|
||||
<el-input v-model="form.tempid" style="width: 370px;"/>
|
||||
<el-form-item label="模板ID">
|
||||
<el-input v-model="form.tempid" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="状态" >
|
||||
<el-form-item label="状态">
|
||||
<el-radio v-model="form.status" :label="1">可用</el-radio>
|
||||
<el-radio v-model="form.status" :label="0">禁用</el-radio>
|
||||
</el-form-item>
|
||||
|
@ -5,23 +5,24 @@
|
||||
<!-- 新增 -->
|
||||
<div style="display: inline-block;margin: 0px 2px;">
|
||||
<el-button
|
||||
v-permission="['ADMIN','YXWECHATTEMPLATE_ALL','YXWECHATTEMPLATE_CREATE']"
|
||||
v-permission="['admin','YXWECHATTEMPLATE_ALL','YXWECHATTEMPLATE_CREATE']"
|
||||
class="filter-item"
|
||||
size="mini"
|
||||
type="primary"
|
||||
icon="el-icon-plus"
|
||||
@click="add">新增</el-button>
|
||||
@click="add"
|
||||
>新增</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<!--表单组件-->
|
||||
<eForm ref="form" :is-add="isAdd"/>
|
||||
<eForm ref="form" :is-add="isAdd" />
|
||||
<!--表格渲染-->
|
||||
<el-table v-loading="loading" :data="data" size="small" style="width: 100%;">
|
||||
<el-table-column prop="id" label="模板id"/>
|
||||
<el-table-column prop="tempkey" label="模板编号"/>
|
||||
<el-table-column prop="name" label="模板名"/>
|
||||
<el-table-column prop="content" label="回复内容"/>
|
||||
<el-table-column prop="tempid" label="模板ID"/>
|
||||
<el-table-column prop="id" label="模板id" />
|
||||
<el-table-column prop="tempkey" label="模板编号" />
|
||||
<el-table-column prop="name" label="模板名" />
|
||||
<el-table-column prop="content" label="回复内容" />
|
||||
<el-table-column prop="tempid" label="模板ID" />
|
||||
<el-table-column prop="status" label="状态">
|
||||
<template slot-scope="scope">
|
||||
<div>
|
||||
@ -30,20 +31,21 @@
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column v-if="checkPermission(['ADMIN','YXWECHATTEMPLATE_ALL','YXWECHATTEMPLATE_EDIT','YXWECHATTEMPLATE_DELETE'])" label="操作" width="150px" align="center">
|
||||
<el-table-column v-if="checkPermission(['admin','YXWECHATTEMPLATE_ALL','YXWECHATTEMPLATE_EDIT','YXWECHATTEMPLATE_DELETE'])" label="操作" width="150px" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button v-permission="['ADMIN','YXWECHATTEMPLATE_ALL','YXWECHATTEMPLATE_EDIT']" size="mini" type="primary" icon="el-icon-edit" @click="edit(scope.row)"/>
|
||||
<el-button v-permission="['admin','YXWECHATTEMPLATE_ALL','YXWECHATTEMPLATE_EDIT']" size="mini" type="primary" icon="el-icon-edit" @click="edit(scope.row)" />
|
||||
<el-popover
|
||||
v-permission="['ADMIN','YXWECHATTEMPLATE_ALL','YXWECHATTEMPLATE_DELETE']"
|
||||
:ref="scope.row.id"
|
||||
v-permission="['admin','YXWECHATTEMPLATE_ALL','YXWECHATTEMPLATE_DELETE']"
|
||||
placement="top"
|
||||
width="180">
|
||||
width="180"
|
||||
>
|
||||
<p>确定删除本条数据吗?</p>
|
||||
<div style="text-align: right; margin: 0">
|
||||
<el-button size="mini" type="text" @click="$refs[scope.row.id].doClose()">取消</el-button>
|
||||
<el-button :loading="delLoading" type="primary" size="mini" @click="subDelete(scope.row.id)">确定</el-button>
|
||||
</div>
|
||||
<el-button slot="reference" type="danger" icon="el-icon-delete" size="mini"/>
|
||||
<el-button slot="reference" type="danger" icon="el-icon-delete" size="mini" />
|
||||
</el-popover>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@ -55,13 +57,14 @@
|
||||
style="margin-top: 8px;"
|
||||
layout="total, prev, pager, next, sizes"
|
||||
@size-change="sizeChange"
|
||||
@current-change="pageChange"/>
|
||||
@current-change="pageChange"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del } from '@/api/yxWechatTemplate'
|
||||
import eForm from './form'
|
||||
|
||||
@ -70,7 +73,7 @@ export default {
|
||||
mixins: [initData],
|
||||
data() {
|
||||
return {
|
||||
delLoading: false,
|
||||
delLoading: false
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
@ -1,74 +1,74 @@
|
||||
<template>
|
||||
<el-dialog :append-to-body="true" :close-on-click-modal="false" :before-close="cancel" :visible.sync="dialog" :title="isAdd ? '新增' : '编辑'" width="500px">
|
||||
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px">
|
||||
<el-form-item label="只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段" >
|
||||
<el-input v-model="form.unionid" style="width: 370px;"/>
|
||||
<el-form-item label="只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段">
|
||||
<el-input v-model="form.unionid" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户的标识,对当前公众号唯一" >
|
||||
<el-input v-model="form.openid" style="width: 370px;"/>
|
||||
<el-form-item label="用户的标识,对当前公众号唯一">
|
||||
<el-input v-model="form.openid" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="小程序唯一身份ID" >
|
||||
<el-input v-model="form.routineOpenid" style="width: 370px;"/>
|
||||
<el-form-item label="小程序唯一身份ID">
|
||||
<el-input v-model="form.routineOpenid" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户的昵称" >
|
||||
<el-input v-model="form.nickname" style="width: 370px;"/>
|
||||
<el-form-item label="用户的昵称">
|
||||
<el-input v-model="form.nickname" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户头像" >
|
||||
<el-input v-model="form.headimgurl" style="width: 370px;"/>
|
||||
<el-form-item label="用户头像">
|
||||
<el-input v-model="form.headimgurl" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户的性别,值为1时是男性,值为2时是女性,值为0时是未知" >
|
||||
<el-input v-model="form.sex" style="width: 370px;"/>
|
||||
<el-form-item label="用户的性别,值为1时是男性,值为2时是女性,值为0时是未知">
|
||||
<el-input v-model="form.sex" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户所在城市" >
|
||||
<el-input v-model="form.city" style="width: 370px;"/>
|
||||
<el-form-item label="用户所在城市">
|
||||
<el-input v-model="form.city" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户的语言,简体中文为zh_CN" >
|
||||
<el-input v-model="form.language" style="width: 370px;"/>
|
||||
<el-form-item label="用户的语言,简体中文为zh_CN">
|
||||
<el-input v-model="form.language" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户所在省份" >
|
||||
<el-input v-model="form.province" style="width: 370px;"/>
|
||||
<el-form-item label="用户所在省份">
|
||||
<el-input v-model="form.province" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户所在国家" >
|
||||
<el-input v-model="form.country" style="width: 370px;"/>
|
||||
<el-form-item label="用户所在国家">
|
||||
<el-input v-model="form.country" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="公众号运营者对粉丝的备注,公众号运营者可在微信公众平台用户管理界面对粉丝添加备注" >
|
||||
<el-input v-model="form.remark" style="width: 370px;"/>
|
||||
<el-form-item label="公众号运营者对粉丝的备注,公众号运营者可在微信公众平台用户管理界面对粉丝添加备注">
|
||||
<el-input v-model="form.remark" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户所在的分组ID(兼容旧的用户分组接口)" >
|
||||
<el-input v-model="form.groupid" style="width: 370px;"/>
|
||||
<el-form-item label="用户所在的分组ID(兼容旧的用户分组接口)">
|
||||
<el-input v-model="form.groupid" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户被打上的标签ID列表" >
|
||||
<el-input v-model="form.tagidList" style="width: 370px;"/>
|
||||
<el-form-item label="用户被打上的标签ID列表">
|
||||
<el-input v-model="form.tagidList" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户是否订阅该公众号标识" >
|
||||
<el-input v-model="form.subscribe" style="width: 370px;"/>
|
||||
<el-form-item label="用户是否订阅该公众号标识">
|
||||
<el-input v-model="form.subscribe" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="关注公众号时间" >
|
||||
<el-input v-model="form.subscribeTime" style="width: 370px;"/>
|
||||
<el-form-item label="关注公众号时间">
|
||||
<el-input v-model="form.subscribeTime" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="添加时间" >
|
||||
<el-input v-model="form.addTime" style="width: 370px;"/>
|
||||
<el-form-item label="添加时间">
|
||||
<el-input v-model="form.addTime" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="一级推荐人" >
|
||||
<el-input v-model="form.stair" style="width: 370px;"/>
|
||||
<el-form-item label="一级推荐人">
|
||||
<el-input v-model="form.stair" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="二级推荐人" >
|
||||
<el-input v-model="form.second" style="width: 370px;"/>
|
||||
<el-form-item label="二级推荐人">
|
||||
<el-input v-model="form.second" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="一级推荐人订单" >
|
||||
<el-input v-model="form.orderStair" style="width: 370px;"/>
|
||||
<el-form-item label="一级推荐人订单">
|
||||
<el-input v-model="form.orderStair" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="二级推荐人订单" >
|
||||
<el-input v-model="form.orderSecond" style="width: 370px;"/>
|
||||
<el-form-item label="二级推荐人订单">
|
||||
<el-input v-model="form.orderSecond" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="佣金" >
|
||||
<el-input v-model="form.nowMoney" style="width: 370px;"/>
|
||||
<el-form-item label="佣金">
|
||||
<el-input v-model="form.nowMoney" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="小程序用户会话密匙" >
|
||||
<el-input v-model="form.sessionKey" style="width: 370px;"/>
|
||||
<el-form-item label="小程序用户会话密匙">
|
||||
<el-input v-model="form.sessionKey" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="用户类型" >
|
||||
<el-input v-model="form.userType" style="width: 370px;"/>
|
||||
<el-form-item label="用户类型">
|
||||
<el-input v-model="form.userType" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
|
@ -5,56 +5,58 @@
|
||||
<!-- 新增 -->
|
||||
<div style="display: inline-block;margin: 0px 2px;">
|
||||
<el-button
|
||||
v-permission="['ADMIN','YXWECHATUSER_ALL','YXWECHATUSER_CREATE']"
|
||||
v-permission="['admin','YXWECHATUSER_ALL','YXWECHATUSER_CREATE']"
|
||||
class="filter-item"
|
||||
size="mini"
|
||||
type="primary"
|
||||
icon="el-icon-plus"
|
||||
@click="add">新增</el-button>
|
||||
@click="add"
|
||||
>新增</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<!--表单组件-->
|
||||
<eForm ref="form" :is-add="isAdd"/>
|
||||
<eForm ref="form" :is-add="isAdd" />
|
||||
<!--表格渲染-->
|
||||
<el-table v-loading="loading" :data="data" size="small" style="width: 100%;">
|
||||
<el-table-column prop="uid" label="微信用户id"/>
|
||||
<el-table-column prop="unionid" label="只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段"/>
|
||||
<el-table-column prop="openid" label="用户的标识,对当前公众号唯一"/>
|
||||
<el-table-column prop="routineOpenid" label="小程序唯一身份ID"/>
|
||||
<el-table-column prop="nickname" label="用户的昵称"/>
|
||||
<el-table-column prop="headimgurl" label="用户头像"/>
|
||||
<el-table-column prop="sex" label="用户的性别,值为1时是男性,值为2时是女性,值为0时是未知"/>
|
||||
<el-table-column prop="city" label="用户所在城市"/>
|
||||
<el-table-column prop="language" label="用户的语言,简体中文为zh_CN"/>
|
||||
<el-table-column prop="province" label="用户所在省份"/>
|
||||
<el-table-column prop="country" label="用户所在国家"/>
|
||||
<el-table-column prop="remark" label="公众号运营者对粉丝的备注,公众号运营者可在微信公众平台用户管理界面对粉丝添加备注"/>
|
||||
<el-table-column prop="groupid" label="用户所在的分组ID(兼容旧的用户分组接口)"/>
|
||||
<el-table-column prop="tagidList" label="用户被打上的标签ID列表"/>
|
||||
<el-table-column prop="subscribe" label="用户是否订阅该公众号标识"/>
|
||||
<el-table-column prop="subscribeTime" label="关注公众号时间"/>
|
||||
<el-table-column prop="addTime" label="添加时间"/>
|
||||
<el-table-column prop="stair" label="一级推荐人"/>
|
||||
<el-table-column prop="second" label="二级推荐人"/>
|
||||
<el-table-column prop="orderStair" label="一级推荐人订单"/>
|
||||
<el-table-column prop="orderSecond" label="二级推荐人订单"/>
|
||||
<el-table-column prop="nowMoney" label="佣金"/>
|
||||
<el-table-column prop="sessionKey" label="小程序用户会话密匙"/>
|
||||
<el-table-column prop="userType" label="用户类型"/>
|
||||
<el-table-column v-if="checkPermission(['ADMIN','YXWECHATUSER_ALL','YXWECHATUSER_EDIT','YXWECHATUSER_DELETE'])" label="操作" width="150px" align="center">
|
||||
<el-table-column prop="uid" label="微信用户id" />
|
||||
<el-table-column prop="unionid" label="只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段" />
|
||||
<el-table-column prop="openid" label="用户的标识,对当前公众号唯一" />
|
||||
<el-table-column prop="routineOpenid" label="小程序唯一身份ID" />
|
||||
<el-table-column prop="nickname" label="用户的昵称" />
|
||||
<el-table-column prop="headimgurl" label="用户头像" />
|
||||
<el-table-column prop="sex" label="用户的性别,值为1时是男性,值为2时是女性,值为0时是未知" />
|
||||
<el-table-column prop="city" label="用户所在城市" />
|
||||
<el-table-column prop="language" label="用户的语言,简体中文为zh_CN" />
|
||||
<el-table-column prop="province" label="用户所在省份" />
|
||||
<el-table-column prop="country" label="用户所在国家" />
|
||||
<el-table-column prop="remark" label="公众号运营者对粉丝的备注,公众号运营者可在微信公众平台用户管理界面对粉丝添加备注" />
|
||||
<el-table-column prop="groupid" label="用户所在的分组ID(兼容旧的用户分组接口)" />
|
||||
<el-table-column prop="tagidList" label="用户被打上的标签ID列表" />
|
||||
<el-table-column prop="subscribe" label="用户是否订阅该公众号标识" />
|
||||
<el-table-column prop="subscribeTime" label="关注公众号时间" />
|
||||
<el-table-column prop="addTime" label="添加时间" />
|
||||
<el-table-column prop="stair" label="一级推荐人" />
|
||||
<el-table-column prop="second" label="二级推荐人" />
|
||||
<el-table-column prop="orderStair" label="一级推荐人订单" />
|
||||
<el-table-column prop="orderSecond" label="二级推荐人订单" />
|
||||
<el-table-column prop="nowMoney" label="佣金" />
|
||||
<el-table-column prop="sessionKey" label="小程序用户会话密匙" />
|
||||
<el-table-column prop="userType" label="用户类型" />
|
||||
<el-table-column v-if="checkPermission(['admin','YXWECHATUSER_ALL','YXWECHATUSER_EDIT','YXWECHATUSER_DELETE'])" label="操作" width="150px" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button v-permission="['ADMIN','YXWECHATUSER_ALL','YXWECHATUSER_EDIT']" size="mini" type="primary" icon="el-icon-edit" @click="edit(scope.row)"/>
|
||||
<el-button v-permission="['admin','YXWECHATUSER_ALL','YXWECHATUSER_EDIT']" size="mini" type="primary" icon="el-icon-edit" @click="edit(scope.row)" />
|
||||
<el-popover
|
||||
v-permission="['ADMIN','YXWECHATUSER_ALL','YXWECHATUSER_DELETE']"
|
||||
:ref="scope.row.uid"
|
||||
v-permission="['admin','YXWECHATUSER_ALL','YXWECHATUSER_DELETE']"
|
||||
placement="top"
|
||||
width="180">
|
||||
width="180"
|
||||
>
|
||||
<p>确定删除本条数据吗?</p>
|
||||
<div style="text-align: right; margin: 0">
|
||||
<el-button size="mini" type="text" @click="$refs[scope.row.uid].doClose()">取消</el-button>
|
||||
<el-button :loading="delLoading" type="primary" size="mini" @click="subDelete(scope.row.uid)">确定</el-button>
|
||||
</div>
|
||||
<el-button slot="reference" type="danger" icon="el-icon-delete" size="mini"/>
|
||||
<el-button slot="reference" type="danger" icon="el-icon-delete" size="mini" />
|
||||
</el-popover>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@ -66,13 +68,14 @@
|
||||
style="margin-top: 8px;"
|
||||
layout="total, prev, pager, next, sizes"
|
||||
@size-change="sizeChange"
|
||||
@current-change="pageChange"/>
|
||||
@current-change="pageChange"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import checkPermission from '@/utils/permission'
|
||||
import initData from '@/mixins/initData'
|
||||
import initData from '@/mixins/crud'
|
||||
import { del } from '@/api/yxWechatUser'
|
||||
import eForm from './form'
|
||||
export default {
|
||||
@ -80,7 +83,7 @@ export default {
|
||||
mixins: [initData],
|
||||
data() {
|
||||
return {
|
||||
delLoading: false,
|
||||
delLoading: false
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
Reference in New Issue
Block a user