import { request } from '@/utils' // ==================== 菜品分类管理 ==================== /** 查询分类树(仅启用,用于左侧导航和下拉) */ export function getDishTypeTree() { return request.get('/restaurant/dishType/tree') } /** 查询分类列表(平铺,支持名称和状态筛选) */ export function getDishTypeList(params) { return request.get('/restaurant/dishType/list', { params }) } /** 查询分类详情 */ export function getDishTypeDetail(id) { return request.get('/restaurant/dishType/detail', { params: { id } }) } /** 新增分类 */ export function createDishType(data) { return request.post('/restaurant/dishType', data) } /** 修改分类 */ export function updateDishType(data) { return request.put('/restaurant/dishType', data) } /** 删除分类 */ export function deleteDishType(id) { return request.post('/restaurant/dishType/remove', null, { params: { id } }) } /** 切换分类状态 */ export function toggleDishTypeStatus(id) { return request.post('/restaurant/dishType/toggleStatus', null, { params: { id } }) } // ==================== 菜品库管理 ==================== /** 分页查询菜品 */ export function getDishPage(params) { return request.get('/restaurant/dish/page', { params }) } /** 查询菜品详情 */ export function getDishDetail(id) { return request.get('/restaurant/dish/detail', { params: { id } }) } /** 新增菜品 */ export function createDish(data) { return request.post('/restaurant/dish', data) } /** 修改菜品 */ export function updateDish(data) { return request.put('/restaurant/dish', data) } /** 删除菜品 */ export function deleteDish(id) { return request.post('/restaurant/dish/remove', null, { params: { id } }) } /** 切换菜品状态 */ export function toggleDishStatus(id) { return request.post('/restaurant/dish/toggleStatus', null, { params: { id } }) } // ==================== 包房管理 ==================== /** 查询包房列表(不分页) */ export function getDishRoomList(params) { return request.get('/restaurant/dishRoom/list', { params }) } /** 查询包房详情 */ export function getDishRoomDetail(id) { return request.get('/restaurant/dishRoom/detail', { params: { id } }) } /** 保存包房(新增/修改) */ export function saveDishRoom(data) { return request.post('/restaurant/dishRoom/save', data) } /** 删除包房 */ export function deleteDishRoom(id) { return request.post('/restaurant/dishRoom/remove', null, { params: { id } }) } /** 切换包房状态 */ export function toggleDishRoomStatus(id) { return request.post('/restaurant/dishRoom/toggleStatus', null, { params: { id } }) } // ==================== 菜单管理 ==================== /** 查询当前菜单全部菜品(不分页,树形表格用) */ export function getMenuAllDishList() { return request.get('/restaurant/dishMenu/allDishList') } /** 查询当前菜单菜品列表(分页) */ export function getMenuDishList(params) { return request.get('/restaurant/dishMenu/list', { params }) } /** 查询历史菜单列表(分页) */ export function getMenuHistoryList(params) { return request.get('/restaurant/dishMenu/historyList', { params }) } /** 查询历史菜单菜品详情(分页) */ export function getMenuHistoryDetailList(params) { return request.get('/restaurant/dishMenu/historyDetailList', { params }) } /** 查询可添加菜品列表 */ export function getMenuAvailableDishList(dishName) { return request.get('/restaurant/dishMenu/availableDishList', { params: { dishName } }) } /** 查询点单菜品列表 */ export function getMenuOrderDishList(params) { return request.get('/restaurant/dishMenu/orderDishList', { params }) } /** 查询点单分类列表 */ export function getMenuOrderTypeList() { return request.get('/restaurant/dishMenu/orderTypeList') } /** 添加菜品到菜单 */ export function addMenuDishes(data) { return request.post('/restaurant/dishMenu/addDishes', data) } /** 全量保存菜单菜品 */ export function saveMenuDishes(data) { return request.post('/restaurant/dishMenu/saveDishes', data) } /** 修改菜单菜品价格 */ export function updateMenuPrice(data) { return request.post('/restaurant/dishMenu/updatePrice', data) } /** 删除菜单菜品 */ export function deleteMenuDish(id) { return request.post('/restaurant/dishMenu/remove', null, { params: { id } }) } /** 更新菜单(归档旧版本) */ export function updateMenu(remark) { return request.post('/restaurant/dishMenu/updateMenu', null, { params: { remark } }) } // ==================== 点菜订单 ==================== /** 分页查询订单列表 */ export function getOrderPage(params) { return request.get('/restaurant/dishOrder/page', { params }) } /** 查询订单详情 */ export function getOrderDetail(id) { return request.get('/restaurant/dishOrder/detail', { params: { id } }) } /** 查询包房当前订单 */ export function getCurrentOrder(roomId) { return request.get('/restaurant/dishOrder/current', { params: { roomId } }) } /** 提交订单(下单/加菜/退菜/结账) */ export function submitOrder(data) { return request.post('/restaurant/dishOrder/submit', data) } /** 取消订单 */ export function cancelOrder(id) { return request.post('/restaurant/dishOrder/cancel', null, { params: { id } }) } /** 导出订单列表(配置驱动,返回文件流) */ export function exportOrder(data) { return request({ method: 'post', url: '/restaurant/dishOrder/export', data, responseType: 'blob', rawResponse: true, encrypt: false, }) } // ==================== 挂账客户 ==================== /** 分页查询挂账客户 */ export function getCreditPage(params) { return request.get('/restaurant/creditCustomer/page', { params }) } /** 查询挂账客户详情 */ export function getCreditDetail(id) { return request.get('/restaurant/creditCustomer/detail', { params: { id } }) } /** 保存挂账客户(新增/修改) */ export function saveCreditCustomer(data) { return request.post('/restaurant/creditCustomer/save', data) } /** 删除挂账客户 */ export function deleteCreditCustomer(id) { return request.post('/restaurant/creditCustomer/remove', null, { params: { id } }) } /** 切换挂账状态 */ export function toggleCreditStatus(id) { return request.post('/restaurant/creditCustomer/toggleStatus', null, { params: { id } }) } /** 提交挂账客户审批(审批人按流程节点配置自适应,仅指定人模式需传 approverId) */ export function submitCreditApproval(id, data) { return request.post('/restaurant/creditCustomer/submit', data, { params: { id } }) } /** 查询提交端是否需要选择审批人(老板节点仍用 bossId 变量表达式时为 true) */ export function checkCreditApproverSelection() { return request.get('/restaurant/creditCustomer/requiresApproverSelection') } /** 加载审批人(老板)候选用户列表,仅在指定人模式下使用 */ export function listApproverUsers(params = {}) { return request.get('/system/user/page', { params: { pageNum: 1, pageSize: 50, ...params } }) } /** 初始化挂账客户审批流程模型(部署 BPMN) */ export function initCreditApprovalFlow() { return request.post('/restaurant/creditCustomer/initFlow') }