周大生会员

{{ user.employeeName }} {{ user.employeeCode }} · {{ scopeText(user.dataScope) }}
退出登录

{{ pageTitle }}

{{ nowText }} · 版本 1.151 · 2026-11-09
{{ err }}
{{ okMsg }}
可见会员总数
{{ home.memberCount }}
数据范围
{{ scopeText(user.dataScope) }}
当前门店
{{ user.storeId || '-' }}
服务状态
{{ health.db==='up' ? '正常' : '异常' }}

快速开始

1. 点击左侧「新建会员」录入第一位会员
2. 点击「会员查询」按卡号 / 手机 / 姓名检索
3. 在查询结果里点「积分」可增减积分并自动留痕

业务规则:会员信息全店/跨店可查,每位会员标注「初次注册门店」;门店经营数据统计各自独立

会员检索

会员信息全店可查(不限门店);「注册门店」为该会员初次办卡的门店

查询中…

查询结果({{ members.length }} 条)

会员卡号姓名手机等级 可用积分累计消费注册门店注册时间操作
{{ m.memberCard }} {{ m.memberName }} {{ m.memberPhone || '-' }} {{ m.levelName || '-' }} {{ m.availablePoints }} {{ m.totalConsume }} {{ m.registrationStoreName || ('店' + m.registrationStoreId) }} {{ (m.createdAt||'').substring(0,10) }}
暂无数据,试试其他关键词

新建会员

不能建档 需要上级审核

{{ dup.message }}

点击下方按钮将提交审核申请,待店长/管理员通过后方可建卡。

未发现重复会员

查重规则:身份证号相同 → 直接拒绝;手机号相同或姓名+生日相同 → 需上级审核通过; 会员信息全店可查,建档时记录「初次注册门店」。

审核已通过(审批单 #{{ approvedReviewId }}),再次点击即可正式建档。 放弃该审批单

建卡审核 (当前账号无审批权限,仅可查看自己提交的申请)

暂无记录

#申请人/门店待建会员重复情况 状态提交时间操作
{{ r.id }} {{ r.applicantName }}
{{ r.applicantStoreName }}
{{ r.applyName }}
{{ r.applyPhone }}
{{ dupTypeText(r.dupType) }}
已有:{{ r.dupMemberName }}
{{ r.dupMemberCard }}
待审核 已通过 已驳回
{{ r.reviewerName }}
{{ r.reviewRemark }}
{{ (r.createdAt||'').substring(0,16) }} —

退货审批 仅处理开单「退货明细」提交的待审批申请;开单页负责提交,本页只审批。销售红冲走冲正中心,两者审批/审计分离;退货率不含冲正。 刷新

待审批

暂无退货记录

退货单号原票据会员退货金额回冲积分原因状态发起/审核操作
{{ x.returnNo }}
{{ (x.createdAt||'').substring(0,16) }}
{{ x.receiptNo || '—' }} {{ x.memberName }}
{{ x.memberCard }}
¥{{ x.returnAmount }} {{ x.returnPoints>0 ? ('-'+x.returnPoints) : '—' }} {{ x.reason }} 待审核 已通过 已驳回 {{ x.requesterName }}
{{ x.reviewerName || '待审' }}

角色权限管理 勾选每个角色能用的功能;未勾选的菜单和按钮对该角色完全隐藏 刷新

改动保存后【立即生效】,该角色的在线账号无需重新登录。 超级管理员角色受系统保护,不可修改。

角色数据范围功能权限员工数操作
{{ r.roleName }}
{{ r.roleCode }}
{{ scopeText(r.dataScope) }} (无任何功能权限) {{ r.empCount }} 人 系统保护

票据查询 输入或扫描票据编号,调出电子小票(顾客退换货、查账核对用)

{{ rc.err }}

没有找到该票据编号的记录。请核对票据编号是否输入正确。

票据编号消费日期会员商品实付门店操作
{{ x.receiptNo || '—' }} {{ x.purchaseDate }} {{ x.memberName || '—' }}
{{ x.memberCard }}
{{ x.productName }} ¥{{ x.purchasePrice }} {{ x.storeName || '—' }}
周 大 生 珠 宝
{{ rc.cur.storeName || '—' }}
销售凭证 / 电子小票
已 退 货
票据编号{{ rc.cur.receiptNo || '—' }}
系统单号{{ rc.cur.billNo }}
交易时间{{ rc.cur.purchaseDate }} {{ (rc.cur.createdAt||'').substring(11,19) }}
会员{{ rc.cur.memberName || '—' }}
会员卡号{{ rc.cur.memberCard || '—' }}
手机号{{ rc.cur.memberPhone || '—' }}
商品名称{{ rc.cur.productName }}
赠品{{ rc.cur.giftSummary }}(¥0.00)
商品编码{{ rc.cur.productCompanyCode || rc.cur.productBarcode }}
商品金重{{ fmtWeight(rc.cur.itemWeight) }}g
原价¥{{ fmtMoney(rc.cur.originalPrice) }}
折扣率{{ ticketDiscountLabel(rc.cur) }}
优惠金额-¥{{ fmtMoney(rc.cur.discountAmount) }}
旧金采购金额¥{{ fmtMoney(rc.cur.oldGoldPurchaseAmount) }}
门店应付旧金款¥{{ fmtMoney(rc.cur.oldGoldPayable) }}({{ oldGoldMethodLabel(rc.cur.oldGoldPayMethod) }})
积分抵扣-¥{{ (Number(rc.cur.pointsUsed)/100).toFixed(2) }}({{ rc.cur.pointsUsed }} 分)
实付金额¥{{ fmtMoney(rc.cur.purchasePrice) }}
支付方式 现金 ¥{{ rc.cur.payCash }} · 刷卡 ¥{{ rc.cur.payCard }} · 微信 ¥{{ rc.cur.payWechat }} · 支付宝 ¥{{ rc.cur.payAlipay }}
积分变动 获得 +{{ rc.cur.pointsEarned }} 使用 -{{ rc.cur.pointsUsed }} 无
备注{{ rc.cur.remark || '—' }}
经办人:{{ rc.cur.employeeName || '—' }} 录入时间:{{ (rc.cur.createdAt||'').substring(0,16) }}
实物照片({{ rc.cur.photoList.length }} 张)
票据照片
旧金实物照片({{ photoArr(rc.cur.recyclePhotos).length }} 张)
称重/秤显示照片({{ photoArr(rc.cur.recycleWeightPhotos).length }} 张)
旧金回收单/登记凭证({{ photoArr(rc.cur.recycleVoucherPhotos).length }} 张)
付款凭证({{ photoArr(rc.cur.recyclePaymentPhotos).length }} 张)
身份证正面(敏感,仅授权可看)
身份证反面(敏感,仅授权可看)
该笔消费已办理退货
退货请在开单「退货明细」提交

本小票为系统电子凭证,可用于退换货与账务核对。

待升级会员 达到积分门槛即自动升级;此处可查看待升级名单并手动执行 刷新

当前没有达到升级门槛的会员

会员手机当前等级累计积分可升级至升级礼操作
{{ c.memberName }}
{{ c.memberCard }}
{{ c.memberPhone || '—' }} {{ c.oldLevelName }} {{ c.totalPoints }} {{ c.newLevelName }} {{ c.upgradeGift || '—' }}

升级记录

暂无升级记录

时间会员等级变化当时积分升级礼操作人
{{ (g.createdAt||'').substring(0,16) }} {{ g.memberName }}
{{ g.memberCard }}
{{ g.fromLevelName }} → {{ g.toLevelName }} {{ g.totalPoints }} {{ g.upgradeGift || '—' }} {{ g.operatorName || '系统自动' }}

生日提醒 提前 7 天与生日当天各生成一条提醒;店长认领后负责联系并确认是否进店 刷新

本店有 {{ bd.counts.storePending }} 条生日提醒待店长认领

仅显示分派给你的提醒;本店待认领数量见横幅

加载中…

{{ bd.err }}
会员手机生日类型门店 状态负责人已联系已进店操作
{{ r.memberName }}
{{ r.memberCard }}
{{ r.memberPhone || '—' }} {{ r.birthdayDate }} {{ r.remindType==='today' ? '当天' : '提前7天' }} {{ r.storeName || '—' }} 待认领 已认领 已升级 已关闭 {{ r.assignedEmployeeName || r.claimedByName || '—' }} ✓— ✓— —
该分类暂无生日提醒

会员档案 ← 返回查询

{{ md.member.memberName }} {{ md.member.levelName }} 已停用
{{ md.member.memberCard }}
{{ md.member.memberPhone || '未留手机' }} · 生日 {{ md.member.birthday }} · 标签 {{ md.member.tags }}
可用积分
{{ md.member.availablePoints }}
累计积分
{{ md.member.totalPoints }}
累计消费
¥{{ md.member.totalConsume }}
消费次数
{{ md.member.totalCount }}
积分欠账
{{ md.member.pointsDeficit || 0 }}
初次注册门店{{ md.member.registrationStoreName || ('店' + md.member.registrationStoreId) }}  经办:{{ md.member.registrationEmployeeName || '—' }}
建档时间{{ (md.member.createdAt||'').substring(0,16) }}
最后消费{{ md.member.lastConsumeDate || '暂无消费' }}
备注{{ md.member.remark }}

消费记录({{ md.records.length }} 条) 可查看 {{ md.viewDays }} 天内

{{ md.err }}

票据编号消费日期业务类型商品金额积分实拍门店/录入操作
{{ r.receiptNo || '—' }}
{{ r.billNo }}
BILLNUM {{ r.historyBillNo }}
{{ r.purchaseDate }} {{ bizLabel(r.businessType) }} {{ r.productName }}
{{ fmtWeight(r.itemWeight) }}g
赠品:{{ r.giftSummary }}(¥0)
¥{{ fmtMoney(r.businessType==='history' ? r.goodsAmount : r.purchasePrice) }}
历史补录金额(无现金)
差额 ¥{{ fmtMoney(r.reversalDifference) }}
{{ ticketDiscountLabel(r) }} · 优惠¥{{ fmtMoney(r.discountAmount) }}
旧金采购¥{{ fmtMoney(r.oldGoldPurchaseAmount) }} / 应付¥{{ fmtMoney(r.oldGoldPayable) }}
+{{ r.pointsEarned }}-{{ r.pointsUsed }}— {{ r.photoCount }} 张— {{ r.storeName }}
录入:{{ r.employeeName }}

该会员暂无消费记录(或超出你可查看的时间范围)

消费记录 可查看 {{ rec.viewDays>0 ? rec.viewDays+' 天' : '全部' }} 内的记录

本页列表:共 {{ rec.total }} 条 · 第 {{ rec.page }} / {{ rec.totalPages || 1 }} 页 · 本页合计 ¥{{ rec.totalAmount || '0.00' }} · 待审批 {{ rec.pendingCount || 0 }} · 已冲正 {{ rec.reversedCount || 0 }}

销售总额
¥{{ fmtMoney(rec.salesAmount) }}
含已冲正原单
销售冲正(红冲)
{{ rec.reversalCount }} 笔 / ¥{{ fmtMoney(rec.reversalAmount) }}
作废原单并反向,不是退货退款
退货退款
{{ rec.returnCount }} 笔 / ¥{{ fmtMoney(rec.returnAmount) }}
来自退货单,不含冲正
退货率
{{ rec.returnRate }}%
退货退款金额 / 销售总额,不含冲正
票据编号消费日期业务类型会员商品金额实拍票据门店/录入操作
{{ r.receiptNo || '—' }}
{{ r.billNo }}
BILLNUM {{ r.historyBillNo }}
{{ r.purchaseDate }} {{ bizLabel(r.businessType) }}
{{ r.pendingReversalStatus==='approved' ? '待执行' : '待审批' }}已作废已冲正正常
{{ r.memberName }}
{{ r.memberCard }}
{{ r.productName }}
{{ fmtWeight(r.itemWeight) }}g
赠品:{{ r.giftSummary }}(¥0)
¥{{ fmtMoney(r.businessType==='history' ? r.goodsAmount : r.purchasePrice) }}
历史补录金额(无现金)
差额 ¥{{ fmtMoney(r.reversalDifference) }}
{{ ticketDiscountLabel(r) }} · 优惠¥{{ fmtMoney(r.discountAmount) }}
旧金采购¥{{ fmtMoney(r.oldGoldPurchaseAmount) }} / 应付¥{{ fmtMoney(r.oldGoldPayable) }}
{{ r.photoCount }} 张— 有— {{ r.storeName }}
录入:{{ r.employeeName }}
第 {{ rec.page }} / {{ rec.totalPages || 1 }} 页

没有符合条件的记录

销售单头 按现有功能字段

销售金额¥{{ fmtMoney(bSalesTotal()) }}
旧料金重{{ fmtWeight(bOldWeight()) }}g
旧料抵值¥{{ fmtMoney(bOldValue()) }}
应收¥{{ fmtMoney(bReceivable()) }}
门店应付旧金款¥{{ fmtMoney(bOldGoldPayable()) }}
差额{{ bDiff().toFixed(2) }}
获得积分{{ bPointsEarned() }}
×
×
退货照片区 退货凭证 *必填(顾客签字的退货单);切换页签不会清空
旧料回收照片 按类别上传;身份证正反面必拍且仅管理员/授权审批可查看;切换销售/兑换不会清空已传照片
{{ rec.err }}
商品条形码 / 公司商品编码 / 证书编号
扫码枪回车;同一条码多件重复扫
{{ nr.scanMsg }}
商品编码/证书匹配到多个商品,请选择(不会自动加行):
序号商品编码名称金重件重金价工费 结算价商品实付抵扣后实付操作
尚无商品:请在上方输入/扫描商品条形码后回车添加。
{{ nr.rd.err }}
{{ nr.rd.msg }}
{{ p.receiptNo || p.billNo }} {{ p.memberName }} · {{ p.memberCard }} {{ p.purchaseDate }} ¥{{ p.purchasePrice }} {{ (p.items||[]).length }} 件可选
未找到可退原单(已退/无权限/无匹配)
原单 {{ nr.rd.selected.receiptNo || nr.rd.selected.billNo }} · {{ nr.rd.selected.memberName }} 选择退货商品;数量固定 1(一行一件)
{{ it.barcode || '无条码' }} {{ it.productName || '原单商品' }}
¥{{ rdTotal().toFixed(2) }}
兑新兑旧(销售)/ 旧料回收 按克录入;成色仅记录;调整金额只影响抵值

兑新兑旧仅对「按克黄金」生效:只按按克商品金重计算可抵,按件/一口价商品正常计价、不参与1:1;纯按件黄金请走旧料回收作价。金单价为整单按克商品加权平均,只读;超重仍顾客拿走/门店收购。
回收:金单价=员工手填回收价;抵值金额=旧金重×金单价+旧金重×增值−旧金重×折旧+调整金额;成色只记录、不参与算价。 调整金额/备注在行末「详情」里填;旧料不要求编码/本店商品档案;旧料按克计算;品牌类型无数据,不显示。

勾选序号成色金重(g)抵值金重金单价 增值(按克) 折旧(按克) 抵值金额 超重处理 超重收购价 操作详情
{{ oldEmptyText() }}
行合计:¥{{ oldTotal().toFixed(2) }} 抵值金额
本单赠品({{ nr.gift.items.length }})
赠品金额0,不参与销售金额/折扣/积分
{{ nr.gift.addErr }}
{{ nr.gift.addMsg }}
赠品条码赠品名称数量金额操作
{{ g.barcode }} {{ g.goodsName }} ¥0.00
赠品发放记录(本地缓存只读)
~ 数据来自宝如行同步快照,不写回原系统
{{ nr.gift.err }}
{{ nr.gift.msg }}
销售单号行赠品数量实收门店时间
{{ g.billNo }} {{ g.rowNo }} {{ g.goodsName }}
{{ g.barcode }}
{{ g.amount }}{{ g.unit || '' }} ¥{{ g.realMoney }} {{ g.shopCode }} {{ (g.enterTime||'').substring(0,16) }}
本次开单暂无赠品信息。

A 快捷录入(管理员)

用于维修/补差/其他收入/历史补录/紧急兜底;必须填写原因并审计;不允许商品行/旧料。

{{ nr.member.memberName || '未选择' }}(先在上方选择会员)

消费记录查看范围配置

这里设置的天数是硬上限:下级账号最多只能查到这么久以内的消费记录,即使他自己改日期也看更早的。 填 0 表示不限。

角色查看范围

按角色限制可查看的历史消费天数。

角色最多可查看说明
超级管理员
天
0 = 不限
运营管理员
天
按 data_scope=all 判定
店长
天
本店范围
营业员
天
仅本人录入
照片上传设置

控制消费记录照片的数量与压缩上限。

张
超过数量的照片将无法上传。
KB
上传前按此上限压缩,保证票据清晰。
销售冲正设置

仅最高管理员可修改;超时单需逐笔特批并记录原因。

天
默认 30 天;超过时限普通角色不可发起,super 可单笔特批。
{{ rec.err }}

手机动态码(第二因素)

给这个账号加一道只有你手机能过的门:开启后密码正确还不够,还要再输一次手机验证器上的 6 位数字。 门店员工的登录方式不受任何影响。

{{ sec.status.enabled ? '已启用' : (sec.status.pendingSetup ? '密钥已生成,尚未启用' : '未启用') }} · 绑定于 {{ sec.status.boundAt }} · 剩余恢复码 {{ sec.status.recoveryLeft }} 枚 · 已允许免密登录
{{ sec.err }}
{{ sec.ok }}
第 1 步:把密钥加到手机验证器

手机装任意验证器(Google Authenticator / Microsoft Authenticator / 各家"身份验证器"都行) → 选择「手动输入设置密钥」→ 粘贴下面的密钥。类型选 TOTP / 6 位 / 30 秒。

密钥只在本页显示,刷新就看不到了;重新生成会让旧密钥立刻失效。

第 2 步:输入手机上的 6 位数字完成启用
⚠️ 恢复码 —— 只显示这一次,请立刻抄下来放好

手机丢了或换手机时,用其中一枚代替动态码登录。每枚只能用一次。

{{ c }}
管理

危险操作硬件授权(U 盘 / U 盾)

用于拦住「重置密码 / 新建改员工 / 改角色权限」这三类操作:不插 U 盘就不放行。 授权工具在你电脑桌面 —— 第一次先双击「生成U盘密钥」,以后每次双击「危险操作授权」。 门禁开关由服务器端的文件控制(这样别人就算偷到管理员会话,也关不掉它)。

{{ sec.status.gateEnabled ? '已启用' : '未启用(危险操作不拦)' }}
{{ sec.status.armed ? ('有效,剩余 ' + sec.status.armedRemainSec + ' 秒') : '无' }}
密钥标识备注注册时间操作
{{ k.keyId }} {{ k.label }} {{ k.createdAt }}

还没有注册任何 U 盘密钥。插上 U 盘 → 双击桌面「生成U盘密钥」即可(详见桌面同目录的「说明.md」)。

员工账号管理

工号姓名角色门店状态最近登录操作
{{ e.employeeCode }} {{ e.employeeName }}
{{ e.phone }}
{{ e.roleName }}
{{ scopeText(e.dataScope) }}
{{ e.storeName || '—' }} {{ e.status===1?'启用':'停用' }} {{ e.lastLoginTime || '从未' }}

门店管理

编码门店名称地址电话员工会员状态操作
{{ s.storeCode }} {{ s.storeName }} {{ s.storeAddress }} {{ s.storePhone }} {{ s.empCount }} {{ s.memberCount }} {{ s.status===1?'启用':'停用' }}

会员等级规则

等级积分区间折扣率积分倍率升级礼会员数操作
{{ l.levelName }} {{ l.minPoints }} ~ {{ l.maxPoints || '不限' }} {{ l.discountRate }} ({{ (l.discountRate/10).toFixed(1) }}折) {{ l.pointsRate }} {{ l.upgradeGift || '—' }} {{ l.memberCount }}

折扣率 100 = 不打折;95 = 9.5 折。积分倍率 0.05 = 每消费 1 元得 0.05 分。

操作日志

时间操作人模块内容
{{ g.createdAt }} {{ g.employeeName }} {{ g.moduleName }} {{ g.operationDesc }}

暂无日志