javacodeadmin/ruoyi-system/src/main/java/com/ruoyi/system/service/IOrderService.java

178 lines
4.7 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.ruoyi.system.service;
import java.util.List;
import java.util.Map;
import com.ruoyi.system.domain.AppleDoMain.OrderApple;
import com.ruoyi.system.domain.Order;
import com.ruoyi.system.domain.OrderTypeCount;
/**
* 服务订单Service接口
*
* @author ruoyi
* @date 2025-05-13
*/
public interface IOrderService
{
/**
* 查询服务订单
*
* @param id 服务订单主键
* @return 服务订单
*/
public Order selectOrderById(Long id);
/**
* 小程序查询服务订单列表
*
* @param orderApple 服务订单
* @return 服务订单集合
*/
public List<OrderApple> selectOrderAppleList(OrderApple orderApple);
public Order selectOrderByOrderId(String orderId);
/**
* 查询服务订单列表
*
* @param order 服务订单
* @return 服务订单集合
*/
public List<Order> selectOrderList(Order order);
public int selectCountOrderByUid(Long uid,Long status);
public int selectAllCountOrderByUid(Long uid);
/**
* 新增服务订单
*
* @param order 服务订单
* @return 结果
*/
public int insertOrder(Order order);
/**
* 修改服务订单
*
* @param order 服务订单
* @return 结果
*/
public int updateOrder(Order order);
/**
* 批量删除服务订单
*
* @param ids 需要删除的服务订单主键集合
* @return 结果
*/
public int deleteOrderByIds(Long[] ids);
/**
* 删除服务订单信息
*
* @param id 服务订单主键
* @return 结果
*/
public int deleteOrderById(Long id);
/**
* 统计指定用户和类型的订单数量
* @param uid 用户id
* @param type 订单类型
* @return 订单数量
*/
Integer selectOrderCountByBigtype(Long uid, Integer type);
// ========== 预约人数查询相关方法 ==========
/**
* 根据预约日期和时间段查询预约数量
*
* @param params 查询参数包含makeTime和makeHour
* @return 预约数量
*/
public Integer selectOrderCountByMakeTimeAndHour(Map<String, Object> params);
/**
* 根据预约日期查询所有预约订单
*
* @param params 查询参数包含makeTime
* @return 预约订单列表
*/
public List<Order> selectOrderListByMakeTime(Map<String, Object> params);
/**
* 根据预约日期和时间段查询预约订单列表
*
* @param params 查询参数包含makeTime和makeHour
* @return 预约订单列表
*/
public List<Order> selectOrderListByMakeTimeAndHour(Map<String, Object> params);
/**
* 查询指定日期范围内的预约统计
*
* @param params 查询参数包含startTime和endTime
* @return 预约统计列表
*/
public List<Map<String, Object>> selectOrderCountByDateRange(Map<String, Object> params);
/**
* 查询指定日期和时间段的预约详情
*
* @param params 查询参数包含makeTime和makeHour
* @return 预约订单列表
*/
public List<Order> selectOrderDetailByMakeTimeAndHour(Map<String, Object> params);
/**
* 查询用户指定日期的预约数量
*
* @param params 查询参数包含uid和makeTime
* @return 预约数量
*/
public Integer selectUserOrderCountByMakeTime(Map<String, Object> params);
/**
* 查询指定日期和时间段的用户预约
*
* @param params 查询参数包含uid、makeTime和makeHour
* @return 预约订单列表
*/
public List<Order> selectUserOrderByMakeTimeAndHour(Map<String, Object> params);
/**
* 查询预约时间冲突的订单
*
* @param params 查询参数包含makeTime、makeHour和excludeOrderId
* @return 冲突的订单列表
*/
public List<Order> selectConflictingOrders(Map<String, Object> params);
/**
* 查询指定日期所有时间段的预约统计
*
* @param params 查询参数包含makeTime
* @return 预约统计列表
*/
public List<Map<String, Object>> selectOrderCountByDate(Map<String, Object> params);
/**
* 查询指定日期和时间段的可用预约数量
*
* @param params 查询参数包含makeTime和makeHour
* @return 可用预约数量
*/
public Integer selectAvailableOrderCount(Map<String, Object> params);
/**
* 查询指定日期和时间段的预约用户列表
*
* @param params 查询参数包含makeTime和makeHour
* @return 预约用户列表
*/
public List<Map<String, Object>> selectOrderUsersByMakeTimeAndHour(Map<String, Object> params);
}