486 行
22 KiB
HTML
可执行文件
486 行
22 KiB
HTML
可执行文件
<!DOCTYPE html>
|
|
<html>
|
|
<!--[1.8.77]-->
|
|
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>权限</title>
|
|
<link rel="stylesheet" type="text/css" href="__PUBLIC__/Retail/css/myscroll.css" />
|
|
<link rel="stylesheet" href="__PUBLIC__/vue/element-ui.css">
|
|
<style>
|
|
[v-cloak] {
|
|
display: none;
|
|
}
|
|
|
|
body,
|
|
html {
|
|
margin: 0;
|
|
}
|
|
|
|
body {
|
|
padding: 20px 30px 80px;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.footerBox {
|
|
position: fixed;
|
|
bottom: 0;
|
|
left: 0;
|
|
background-color: #F8F8F8;
|
|
z-index: 1000;
|
|
width: 100%;
|
|
height: 60px;
|
|
border-top: 1px solid #eee;
|
|
display: flex;
|
|
flex-direction: row;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
.tip {
|
|
color: #aaa;
|
|
font-style: normal;
|
|
font-size: 13px;
|
|
}
|
|
|
|
.small-input {
|
|
width: 190px;
|
|
margin-left: 10px;
|
|
}
|
|
|
|
.el-input-group__append,
|
|
.el-input-group__prepend {
|
|
padding: 0 8px;
|
|
}
|
|
|
|
.el-input-group--prepend .el-input__inner {
|
|
min-width: 120px;
|
|
}
|
|
|
|
.el-form-item-long {
|
|
width: 100%;
|
|
}
|
|
|
|
.item-ma {
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-items: center;
|
|
align-items: center;
|
|
}
|
|
|
|
.item-load {
|
|
display: flex;
|
|
justify-items: center;
|
|
align-items: center;
|
|
}
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
<div id="cashierJur" v-cloak v-loading="loading">
|
|
<el-form :model="ruleForm" :rules="rules" size="mini" label-width="230px" :inline="true" ref="ruleForm">
|
|
<div>
|
|
<el-form-item label="退款权限">
|
|
<el-switch v-model="ruleForm.canrefund" inactive-value="1" active-value="2">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item prop="refundcode">
|
|
<el-input clearable class="small-input" v-model="ruleForm.refundcode" placeholder="权限码">
|
|
<template slot="prepend">权限码</template>
|
|
</el-input>
|
|
</el-form-item>
|
|
</div>
|
|
|
|
<div>
|
|
<el-form-item label="充值权限">
|
|
<el-switch v-model="ruleForm.canrecharge" inactive-value="1" active-value="2">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item prop="rechargecode">
|
|
<el-input clearable class="small-input" v-model="ruleForm.rechargecode" placeholder="权限码">
|
|
<template slot="prepend">权限码</template>
|
|
</el-input>
|
|
<span class="tip">该设权限仅针对现金充值</span>
|
|
</el-form-item>
|
|
</div>
|
|
|
|
<div>
|
|
<el-form-item label="编辑会员资料权限">
|
|
<el-switch v-model="ruleForm.modifymem" inactive-value="1" active-value="2">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item prop="modifymemcode">
|
|
<el-input clearable class="small-input" v-model="ruleForm.modifymemcode" placeholder="权限码">
|
|
<template slot="prepend">权限码</template>
|
|
</el-input>
|
|
<span class="tip">该设置基于门店是否能操作会员的权限上才有效</span>
|
|
</el-form-item>
|
|
</div>
|
|
|
|
<el-form-item label="新增或编辑常规会员成为Plus会员" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.modify_plus_mem" inactive-value="1" active-value="2">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item label="收银自定义会员赠送金额权限" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.customviprecharge" inactive-value="1" active-value="2">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item label="打印销售明细" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.salesdiction" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item label="打印次数" class="el-form-item-long">
|
|
<el-input clearable class="small-input" v-model="ruleForm.print_time"
|
|
oninput="value=this.value.replace(/^[0]|\D/,'')" placeholder="数量">
|
|
<template slot="prepend">数量</template>
|
|
</el-input>
|
|
<span class="tip">下单完成后打印订单的次数</span>
|
|
</el-form-item>
|
|
<el-form-item label="收银机结算整单打折" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.preferential" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item label="查看所有订单" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.cashier_show_other_sell" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
<span class="tip">在收银机的店内流水处是否能看到其他收银员的订单</span>
|
|
</el-form-item>
|
|
<el-form-item label="添加商品" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.cashier_add_goods" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
<span class="tip">该设置基于门店新增商品权限及查看进价权限上才有效,目前仅有收银机与助手使用该权限</span>
|
|
</el-form-item>
|
|
<div>
|
|
<el-form-item label="单品手动折扣">
|
|
<el-switch v-model="ruleForm.manual_discount" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item prop="manual_min_discount">
|
|
<el-input clearable class="small-input" v-model="ruleForm.manual_min_discount"
|
|
placeholder="0.01~0.99">
|
|
<template slot="prepend">最低折扣值</template>
|
|
</el-input>
|
|
</el-form-item>
|
|
<el-form-item prop="manual_max_amount">
|
|
<el-input clearable class="small-input" v-model="ruleForm.manual_max_amount" placeholder="0.01+">
|
|
<template slot="prepend">最高优惠金额</template>
|
|
</el-input>
|
|
</el-form-item>
|
|
<span class="tip">最高优惠金额不填写则不限制</span>
|
|
</div>
|
|
|
|
<div>
|
|
<el-form-item label="收银员赠送商品">
|
|
<el-switch v-model="ruleForm.goods_gifts_auth" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item>
|
|
<el-input clearable class="small-input" v-model="ruleForm.goods_gifts_num"
|
|
oninput="value=this.value.replace(/^[0]|\D/,'')" placeholder="0+">
|
|
<template slot="prepend">单笔最高可赠数量</template>
|
|
</el-input>
|
|
</el-form-item>
|
|
</div>
|
|
|
|
<el-form-item label="收银机传称" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.is_scales_author" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
<span class="tip">是否开启在收银机商品传称的功能权限</span>
|
|
</el-form-item>
|
|
<el-form-item label="收银机商品改价" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.edit_goods_price" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
<span class="tip">收银机修改商品价格权限,该设置基于门店修改商品价格权限</span>
|
|
</el-form-item>
|
|
<el-form-item label="商品管理权限" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.is_goods_manage" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
<span class="tip">在助手端是否可以查看商品管理页面</span>
|
|
</el-form-item>
|
|
<el-form-item label="编辑商品权限" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.goods_manage_edit" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
<span class="tip">在助手端商品管理是否可以编辑商品</span>
|
|
</el-form-item>
|
|
<el-form-item label="删除商品权限" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.goods_manage_del" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
<span class="tip">在助手端商品管理是否可以删除商品</span>
|
|
</el-form-item>
|
|
<el-form-item label="批量修改商品" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.goods_manage_operate" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
<span class="tip">在助手端商品管理是否可以批量修改商品</span>
|
|
</el-form-item>
|
|
|
|
<el-form-item label="线上订单推送" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.push_state" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
<el-button type="text" plain @click="showBindWx=true">
|
|
<span v-if="!bind_wx_state">点击绑定微信</span>
|
|
<span v-else>更换绑定的微信</span>
|
|
</el-button>
|
|
<span class="tip" v-if="!bind_wx_state">未绑定收银员微信,绑定后才能收到订单推送</span>
|
|
</el-form-item>
|
|
<template v-if="plug.credit">
|
|
<el-form-item label="进行赊账/还款" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.credit_money_manage" inactive-value="1" active-value="2">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item label="管理赊账用户" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.credit_user_manage" inactive-value="1" active-value="2">
|
|
</el-switch>
|
|
</el-form-item>
|
|
</template>
|
|
<el-form-item label="添加无码商品" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.use_no_code_goods" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item label="删除离线数据" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.del_out_line_data" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item label="查看其他门店库存" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.other_store_goods" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
</el-form-item>
|
|
<el-form-item label="收银抹零权限" class="el-form-item-long">
|
|
<el-switch v-model="ruleForm.small_changes_state" inactive-value="2" active-value="1">
|
|
</el-switch>
|
|
</el-form-item>
|
|
</el-form>
|
|
|
|
<div class="footerBox">
|
|
<el-button type="primary" @click="submitSet">立即提交</el-button>
|
|
</div>
|
|
|
|
<el-dialog title="扫码绑定微信" :modal-append-to-body="false" width="300px" :visible.sync="showBindWx"
|
|
:close-on-press-escape="false" :close-on-click-modal="false">
|
|
<div class="item-ma">
|
|
<div class="item-load">
|
|
<div class="item-code" v-qrcode="{'value':qrCode}"></div>
|
|
</div>
|
|
<div class="item-icon">
|
|
<p class="item-p">打开微信,扫一扫绑定</p>
|
|
</div>
|
|
</div>
|
|
</el-dialog>
|
|
</div>
|
|
</body>
|
|
<script src="__PUBLIC__/jquery/js/jquery-3.2.1.min.js"></script>
|
|
<script src="__PUBLIC__/vue/js/vue2.5.16.js"></script>
|
|
<script src="__PUBLIC__/vue/element-ui.js"></script>
|
|
<script type="text/javascript" src="/Public/receipt/Qrcode.js"></script>
|
|
<script type="text/javascript">
|
|
Vue.directive('qrcode', function (el, binding) {
|
|
el.innerHTML = "";
|
|
var text = binding.value.value;
|
|
if (text) {
|
|
new QRCode(el, {
|
|
text: text,
|
|
width: 200,
|
|
height: 200,
|
|
colorDark: "#000000",
|
|
colorLight: "#ffffff",
|
|
correctLevel: QRCode.CorrectLevel.H
|
|
});
|
|
}
|
|
});
|
|
new Vue({
|
|
el: '#cashierJur',
|
|
data: function () {
|
|
let _this = this;
|
|
return {
|
|
ruleForm: {
|
|
canrefund: '1',
|
|
refundcode: '',
|
|
canrecharge: '1',
|
|
rechargecode: '',
|
|
modifymem: '1',
|
|
modifymemcode: '',
|
|
modify_plus_mem: '1',
|
|
cash_model: '1',
|
|
print_time: '1',
|
|
salesdiction: '1',
|
|
preferential: '0',
|
|
customviprecharge: '1',
|
|
cashier_show_other_sell: '1',
|
|
cashier_add_goods: '1',
|
|
manual_discount: '0',
|
|
manual_min_discount: null,
|
|
manual_max_amount: null,
|
|
goods_gifts_auth: '0',
|
|
goods_gifts_num: null,
|
|
credit_user_manage: '1',
|
|
credit_money_manage: '1',
|
|
push_state: '1',
|
|
|
|
is_scales_author: '1',
|
|
edit_goods_price: '2',
|
|
is_goods_manage: '2',//商品管理权限
|
|
goods_manage_edit: '2',//编辑商品权限
|
|
goods_manage_del: '2',//删除商品权限
|
|
goods_manage_operate: '2',//批量修改商品权限
|
|
use_no_code_goods: '2', //添加无码商品权限
|
|
del_out_line_data: '2', //删除离线数据权限
|
|
other_store_goods: '2', //查看其他门店库存权限
|
|
small_changes_state: '2', //抹零权限
|
|
},
|
|
rules: {
|
|
print_time: [{message: '请输入打印次数', required: true, trigger: 'change'}],
|
|
refundcode: [{message: '请填写权限码', required: false, trigger: 'change'}, {
|
|
validator: function (rule, value, callback) {
|
|
if (!value && _this.ruleForm.canrefund == 2) {
|
|
callback(new Error("请填写权限码"));
|
|
} else {
|
|
callback();
|
|
}
|
|
}, trigger: 'change'
|
|
}],
|
|
rechargecode: [{message: '请填写权限码', required: false, trigger: 'change'}, {
|
|
validator: function (rule, value, callback) {
|
|
if (!value && _this.ruleForm.canrecharge == 2) {
|
|
callback(new Error("请填写权限码"));
|
|
} else {
|
|
callback();
|
|
}
|
|
}, trigger: 'change'
|
|
}],
|
|
modifymemcode: [{message: '请填写权限码', required: false, trigger: 'change'}, {
|
|
validator: function (rule, value, callback) {
|
|
if (!value && _this.ruleForm.modifymem == 2) {
|
|
callback(new Error("请填写权限码"));
|
|
} else {
|
|
callback();
|
|
}
|
|
}, trigger: 'change'
|
|
}],
|
|
manual_min_discount: [{message: '折扣值有误', required: false, trigger: 'change'}, {
|
|
validator: function (rule, value, callback) {
|
|
var reg = /^[+]{0,1}(\d+)$|^[+]{0,1}(\d+\.\d{0,2})$/
|
|
if (value !== '' && value !== null && (!reg.test(value) || value * 1 <= 0 || value * 1 > 0.99)) {
|
|
callback(new Error("折扣值有误"));
|
|
} else if (_this.ruleForm.manual_discount == 1 && !value) {
|
|
callback(new Error("请输入最低折扣"));
|
|
} else {
|
|
callback();
|
|
}
|
|
}, trigger: 'change'
|
|
}],
|
|
manual_max_amount: [{message: '优惠金额有误', required: false, trigger: 'change'}, {
|
|
validator: function (rule, value, callback) {
|
|
var reg = /^[+]{0,1}(\d+)$|^[+]{0,1}(\d+\.\d{0,2})$/
|
|
if (value !== '' && value !== null && (!reg.test(value) || value * 1 <= 0)) {
|
|
callback(new Error("优惠金额有误"));
|
|
} else {
|
|
callback();
|
|
}
|
|
}, trigger: 'change'
|
|
}],
|
|
goods_gifts_num: [{message: '请输入单笔订单最高赠品数', required: false, trigger: 'change'}, {
|
|
validator: function (rule, value, callback) {
|
|
var reg = /^[+](\d+)$/
|
|
if ((value !== '' && value !== null || _this.ruleForm.goods_gifts_auth == 1) && (!reg.test(value) || value * 1 <= 0)) {
|
|
callback(new Error("单笔订单最高赠品数有误"));
|
|
} else {
|
|
callback();
|
|
}
|
|
}, trigger: 'change'
|
|
}],
|
|
},
|
|
showBindWx: false,
|
|
qrCode: '',
|
|
plug: {
|
|
credit: false,
|
|
},
|
|
bind_wx_state: false,
|
|
loading: true,
|
|
}
|
|
},
|
|
methods: {
|
|
submitSet() {
|
|
this.$refs['ruleForm'].validate((valid) => {
|
|
if (!valid) {
|
|
this.$message({message: '请检查参数', type: 'warning'});
|
|
return false;
|
|
}
|
|
this.$confirm("保存后收银机需要重新登录才会生效哦", "确认保存以上设置吗?", {
|
|
confirmButtonText: '保存',
|
|
cancelButtonText: '取消',
|
|
type: 'info'
|
|
}).then(() => {
|
|
this.$loading({
|
|
lock: true,
|
|
text: '保存中,请等待',
|
|
spinner: 'el-icon-loading',
|
|
background: 'rgba(255, 255, 255, 0.3)'
|
|
});
|
|
|
|
$.ajax({
|
|
url: "{:U('permisetsub')}",
|
|
type: "post",
|
|
data: {
|
|
id: this.id,
|
|
...this.ruleForm
|
|
},
|
|
success: (res) => {
|
|
this.$loading().close();
|
|
if (res.status == 1) {
|
|
this.$message({
|
|
message: res.msg,
|
|
type: 'success',
|
|
duration: 1000,
|
|
onclose: () => {
|
|
var index = parent.layer.getFrameIndex(window.name);
|
|
parent.layer.close(index);
|
|
}
|
|
});
|
|
} else {
|
|
this.$message.error(res.msg ? res.msg : '保存失败');
|
|
}
|
|
},
|
|
error: () => {
|
|
this.$loading().close();
|
|
this.$message.error('请求发生错误');
|
|
}
|
|
});
|
|
}).catch(() => {
|
|
})
|
|
});
|
|
|
|
},
|
|
getSetting() {
|
|
$.ajax({
|
|
url: "{:U('permiset')}",
|
|
type: "post",
|
|
data: {
|
|
id: this.id,
|
|
},
|
|
success: (res) => {
|
|
this.loading = false;
|
|
if (res.status == 1) {
|
|
this.ruleForm = res.data.info;
|
|
this.qrCode = res.data.code_url;
|
|
this.plug = res.data.plug;
|
|
this.bind_wx_state = res.data.bind_wx_state;
|
|
} else {
|
|
this.$message.error(res.msg ? res.msg : '获取收银员信息失败');
|
|
}
|
|
},
|
|
error: (error) => {
|
|
this.loading = false;
|
|
console.log(error);
|
|
this.$message.error('请求发生错误');
|
|
}
|
|
});
|
|
}
|
|
},
|
|
created() {
|
|
this.id = decodeURIComponent((new RegExp('[?|&]id=' + '([^&;]+?)(&|#|;|$)').exec(window.location.search) || [, ""])[1].replace(/\+/g, '%20')) || null;
|
|
this.getSetting();
|
|
}
|
|
})
|
|
|
|
</script>
|
|
|
|
</html> |