后端(补齐前端已入口但无接口的模块): - Coupon 控制器:center 领券中心 / my 我的券(未使用·已使用·已过期+计数)/ receive 领取 含库存与过期校验、重复领取拦截、领券后自动发消息 - Message 控制器:index 列表(分类筛选)/ read 单条已读 / readAll 全部已读 / unread 角标 支持 user 与 master 两种归属 前端(对应页面,全部接真接口): - pages/address/list 服务地址:列表 / 新增·编辑弹层 / 设为默认 / 删除 - pages/coupon/coupon 领券中心 + 我的券(双 Tab + 状态筛选 + 计数) - pages/message/message 消息中心:分类 / 未读圆点 / 点开自动已读 / 全部已读 / 跳订单 - mine.vue 三个入口(地址·优惠券·消息)由「开发中」改为真实路由 - merchant/workbench 服务地址入口接真实路由 - 首页 TabBar「消息」接入消息中心 - api.js 新增 coupon/message 共 7 个接口 后台登录页(UI 与前端主色调统一): - 左侧橙金渐变品牌区:logo 徽标 + 「优匠优服」立体字 + slogan + 460万+/99.9%/1762万 平台实力 + 保障条 - 右侧白色登录卡:橙色渐变按钮、圆角输入框、错误提示条 - 保留 FastAdmin 全部挂钩(token/验证码/keeplogin/@AdminLoginFormBegin 等 14 项) 验证:5 套用例 178 项断言全通过(47+65+27+24+15),配置自检 8/8
79 行
3.3 KiB
JavaScript
79 行
3.3 KiB
JavaScript
/**
|
|
* 接口清单(与后端 application/api/controller 一一对应)
|
|
*/
|
|
import { get, post } from './request';
|
|
|
|
export default {
|
|
/* ---------- 鉴权 ---------- */
|
|
login: (data) => post('/auth/login', data, { silent: true }),
|
|
wxLogin: (data) => post('/auth/wxlogin', data, { silent: true }),
|
|
switchRole: (data) => post('/auth/switchRole', data),
|
|
profile: () => get('/auth/profile'),
|
|
|
|
/* ---------- 首页 / 服务 ---------- */
|
|
home: () => get('/home/index', {}, { silent: true }),
|
|
cats: () => get('/home/cats'),
|
|
services: (data) => get('/home/services', data),
|
|
serviceDetail: (id) => get('/home/detail', { id: id }),
|
|
calc: (data) => get('/home/calc', data),
|
|
|
|
/* ---------- 地址 ---------- */
|
|
addressList: () => get('/address/index'),
|
|
addressDetail: (id) => get('/address/detail', { id: id }),
|
|
addressSave: (data) => post('/address/save', data),
|
|
addressDelete: (id) => post('/address/delete', { id: id }),
|
|
addressDefault: (id) => post('/address/setDefault', { id: id }),
|
|
|
|
/* ---------- 订单(用户端) ---------- */
|
|
orderCreate: (data) => post('/order/create', data),
|
|
orderPay: (data) => post('/order/pay', data),
|
|
orderCancel: (data) => post('/order/cancel', data),
|
|
orderVerify: (data) => post('/order/verify', data),
|
|
orderList: (data) => get('/order/index', data),
|
|
orderDetail: (id) => get('/order/detail', { id: id }),
|
|
|
|
/* ---------- 师傅端 ---------- */
|
|
masterApply: (data) => post('/master/apply', data),
|
|
masterInfo: () => get('/master/info'),
|
|
masterHall: (data) => get('/master/hall', data),
|
|
masterGrab: (data) => post('/master/grab', data),
|
|
masterOrders: (data) => get('/master/orders', data),
|
|
masterContact: (data) => post('/master/contact', data),
|
|
masterSchedule: (data) => post('/master/schedule', data),
|
|
masterArrive: (data) => post('/master/arrive', data),
|
|
masterStart: (data) => post('/master/startJob', data),
|
|
masterFinish: (data) => post('/master/finish', data),
|
|
masterIncome: () => get('/master/income'),
|
|
masterToggle: (data) => post('/master/toggleWork', data),
|
|
masterCredit: () => get('/master/credit'),
|
|
masterAppeals: () => get('/master/appeals'),
|
|
masterAppeal: (data) => post('/master/appeal', data),
|
|
masterQuotes: () => get('/master/quotes'),
|
|
masterQuote: (data) => post('/master/quote', data),
|
|
masterWithdraw: (data) => post('/master/withdraw', data),
|
|
|
|
/* ---------- 评价 ---------- */
|
|
reviewCreate: (data) => post('/review/create', data),
|
|
reviewList: (masterId) => get('/review/masterList', { master_id: masterId }),
|
|
|
|
/* ---------- 优惠券 ---------- */
|
|
couponCenter: () => get('/coupon/center'),
|
|
couponMy: (data) => get('/coupon/my', data),
|
|
couponReceive: (data) => post('/coupon/receive', data),
|
|
|
|
/* ---------- 消息中心 ---------- */
|
|
messageList: (data) => get('/message/index', data),
|
|
messageRead: (data) => post('/message/read', data),
|
|
messageReadAll: (data) => post('/message/readAll', data),
|
|
messageUnread: (data) => get('/message/unread', data),
|
|
|
|
/* ---------- 商家端 ---------- */
|
|
merchantApply: (data) => post('/merchant/apply', data),
|
|
merchantInfo: () => get('/merchant/info'),
|
|
merchantUpdate: (data) => post('/merchant/update', data),
|
|
merchantBills: () => get('/merchant/bills'),
|
|
merchantInvoices: () => get('/merchant/invoices'),
|
|
merchantInvoice: (data) => post('/merchant/invoice', data),
|
|
merchantBindBatch: (data) => post('/merchant/bindBatch', data)
|
|
};
|