收银员权限控制器设置详解
生成时间:2026年5月15日
文件:/www/wwwroot/lingshou/Application/Retail/Controller/CashierController.class.php
表:retail_cashier
一、控制器方法概览
| 方法 |
用途 |
index |
收银机管理首页 |
lists |
收银员列表 |
addCashier |
添加收银员 |
editadCashier |
编辑收银员信息 |
delCashier |
删除收银员 |
permiset |
获取权限设置 |
permisetsub |
提交权限设置 |
model |
收银机模板列表 |
setModel |
设置收银机模板 |
shiftingdetail |
交接班明细 |
cashierMoneyTotal |
收银员资金统计 |
cashierSearch |
收银员搜索 |
cashierExport |
收银员导出 |
二、添加收银员设置项(addCashier)
基本信息
| 字段 |
说明 |
必填 |
验证 |
mobile |
手机号(登录账号) |
是 |
11位手机号,唯一 |
password |
登录密码 |
是 |
6-16位 |
name |
收银员姓名 |
是 |
- |
positionid |
岗位ID |
否 |
- |
自动创建
| 字段 |
说明 |
来源 |
jobnum |
工号 |
自动生成,格式:1+3位序号(如1001) |
storeid |
门店ID |
当前登录门店 |
merchantid |
商户ID |
当前登录商户 |
addtime |
添加时间 |
当前时间戳 |
关联创建
添加收银员时,系统会自动在 retail_guide 表创建对应导购员记录。
三、编辑收银员设置项(editadCashier)
| 字段 |
说明 |
验证规则 |
mobile |
手机号 |
唯一(不含当前ID) |
jobnum |
工号 |
唯一(不含当前ID) |
name |
姓名 |
- |
password |
密码 |
不修改则留空,修改则6-16位 |
修改密码影响
修改密码后会清除该收银员的登录缓存,并通过WebSocket通知客户端重新登录。
四、权限设置项详解(permisetsub)
4.1 退款相关
| 字段 |
类型 |
说明 |
作用范围 |
canrefund |
tinyint |
退款权限:1=禁用,2=启用 |
控制是否能发起退款 |
refundcode |
varchar(30) |
退款密码 |
6位数字,退款时验证 |
is_refund_order_recall |
tinyint |
退款订单撤回:1=允许,2=禁止 |
是否可撤回已退款订单 |
refund_order_recall_permission_code |
varchar |
退款撤回权限码 |
退款撤回时验证 |
4.2 充值相关
| 字段 |
类型 |
说明 |
作用范围 |
canrecharge |
tinyint |
充值权限:1=禁用,2=启用 |
控制是否能给会员充值 |
rechargecode |
varchar(30) |
充值密码 |
6位数字,充值时验证 |
customviprecharge |
tinyint |
自定义会员充值:1=禁用,2=启用 |
是否允许自定义充值金额 |
4.3 会员管理
| 字段 |
类型 |
说明 |
作用范围 |
modifymem |
tinyint |
修改会员信息:1=禁用,2=启用 |
是否允许修改会员资料 |
modifymemcode |
varchar |
修改会员信息密码 |
修改会员信息时验证 |
modify_plus_mem |
tinyint |
修改PLUS会员:1=禁用,2=启用 |
是否允许修改PLUS会员 |
4.4 收银功能
| 字段 |
类型 |
说明 |
作用范围 |
code_auth |
tinyint |
授权码总权限:0=不需要,1=需要 |
所有需授权操作的总开关 |
cash_model |
tinyint |
收银模式 |
收银方式配置 |
cashier_show_other_sell |
tinyint |
查看其他收银员销售:1=显示,2=隐藏 |
是否可见同门店其他收银员订单 |
cashier_add_goods |
tinyint |
收银时添加商品:1=允许,2=禁止 |
收银过程中能否临时添加商品 |
print_time |
int |
小票打印次数 |
默认打印份数 |
salesdiction |
tinyint |
销售明细打印:1=是,2=否 |
小票是否显示销售明细 |
preferential |
tinyint |
优惠显示:1=显示,0=隐藏 |
小票是否显示优惠信息 |
4.5 打折权限
| 字段 |
类型 |
说明 |
作用范围 |
manual_discount |
tinyint |
手动打折:0=关闭,1=开启 |
是否允许手动打折 |
manual_min_discount |
float |
最低折扣比例 |
0-1之间,如0.8表示8折 |
manual_max_amount |
float |
最多优惠金额 |
单次最多优惠金额上限 |
4.6 赠品权限
| 字段 |
类型 |
说明 |
作用范围 |
goods_gifts_auth |
tinyint |
赠品权限:0=关闭,1=开启 |
是否允许赠送赠品 |
goods_gifts_num |
decimal |
赠品最大数量 |
赠品数量上限(最大9999) |
4.7 商品管理
| 字段 |
类型 |
说明 |
作用范围 |
is_goods_manage |
tinyint |
商品管理权限:1=开启,2=关闭 |
收银端商品管理总开关 |
goods_manage_edit |
tinyint |
编辑商品权限:1=开启,2=关闭 |
能否编辑商品信息 |
goods_manage_del |
tinyint |
删除商品权限:1=开启,2=关闭 |
能否删除商品 |
goods_manage_operate |
tinyint |
批量操作权限:1=开启,2=关闭 |
能否批量修改商品 |
edit_goods_price |
tinyint |
修改商品价格:1=开启,2=关闭 |
收银时能否改价 |
goods_cost_price_enable |
tinyint |
显示成本价 |
是否显示商品成本价 |
4.8 货流管理
| 字段 |
类型 |
说明 |
作用范围 |
goods_flow_manage |
tinyint |
货流管理权限:1=开启,2=关闭 |
能否操作货流单据 |
4.9 其他权限
| 字段 |
类型 |
说明 |
作用范围 |
is_scales_author |
tinyint |
传秤权限:1=开启,2=关闭 |
能否使用电子秤 |
show_purchase_price |
tinyint |
显示采购价:1=显示,2=隐藏 |
能否查看采购价格 |
push_state |
tinyint |
消息推送:1=开启,2=关闭 |
是否接收消息推送 |
openid |
varchar |
微信OpenID |
绑定微信通知 |
is_goods_manage |
tinyint |
商品管理 |
收银端商品管理 |
is_ocr_goods_number |
tinyint |
OCR商品数量 |
是否允许拍照识别数量 |
is_order_attachment |
tinyint |
订单附件 |
能否添加订单附件 |
4.10 订单操作
| 字段 |
类型 |
说明 |
作用范围 |
is_order_goods_picking |
tinyint |
订单商品挑拨:1=允许,0=禁止 |
能否挑拨订单商品 |
is_settle_statement_look |
tinyint |
查看结算单:1=允许,0=禁止 |
能否查看结算单 |
is_revocation_order |
tinyint |
作废订单:1=允许,0=禁止 |
能否作废订单 |
is_cut_price_type |
tinyint |
改价类型:1=允许,0=禁止 |
能否修改订单价格类型 |
is_cut_price_type_permission_code |
varchar |
改价权限码 |
改价时验证 |
4.11 扩展权限(extends字段JSON)
| 字段 |
类型 |
默认值 |
说明 |
goods_inventory_modify |
tinyint |
2(关闭) |
小助手库存修改 |
cashier_purchase_order_enable |
tinyint |
2(关闭) |
采购单权限 |
voice_recognition_enable |
tinyint |
1(开启) |
语音识别权限 |
goods_flow_manage |
tinyint |
2(关闭) |
货流管理权限 |
五、字段速查表
权限开关(1=开启/允许,2=关闭/禁止)
| 字段 |
开启值 |
关闭值 |
| canrefund |
2 |
1 |
| canrecharge |
2 |
1 |
| modifymem |
2 |
1 |
| modify_plus_mem |
2 |
1 |
| manual_discount |
1 |
0 |
| goods_gifts_auth |
1 |
0 |
| cashier_show_other_sell |
1 |
2 |
| cashier_add_goods |
1 |
2 |
| show_purchase_price |
1 |
2 |
密码字段
| 字段 |
长度限制 |
用途 |
| refundcode |
6-30位 |
退款密码 |
| rechargecode |
6-30位 |
充值密码 |
| modifymemcode |
- |
修改会员密码 |
| refund_order_recall_permission_code |
6-30位 |
退款撤回权限码 |
| is_cut_price_type_permission_code |
- |
改价权限码 |
六、权限验证流程
退款流程
1. 收银员发起退款 → 判断canrefund
├── canrefund=1 → 无权退款
└── canrefund=2 → 验证refundcode
├── 退款码正确 → 执行退款
└── 退款码错误 → 退款失败
充值流程
1. 收银员发起充值 → 判断canrecharge
├── canrecharge=1 → 无权充值
└── canrecharge=2 → 验证rechargecode
├── 充值码正确 → 执行充值
└── 充值码错误 → 充值失败
七、零售端 vs 收银端权限对比
| 权限项 |
零售端(门店) |
收银端(个人) |
| 退款权限 |
门店设置 |
收银员个人设置 |
| 退款密码 |
无 |
有(canrefund+refundcode) |
| 充值权限 |
门店设置 |
收银员个人设置 |
| 充值密码 |
无 |
有(canrecharge+rechargecode) |
| 手动打折 |
门店设置 |
个人最低折扣限制 |
| 赠品权限 |
门店设置 |
个人数量限制 |