文件

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>