package com.zy.asrs.service; import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.IService; import com.zy.asrs.entity.MonthlySettle; import com.zy.asrs.entity.result.MonthlySettleResultVO; import com.zy.asrs.entity.result.MonthlySettleStatisticsVO; import java.util.Date; public interface MonthlySettleService extends IService { /** * 获取最近的月结记录 */ MonthlySettle getLatestSettle(); /** * 获取下一个月结的起始日期 */ Date getNextStartDate(); /** * 获取最晚月结记录的结束日期 */ Date getLatestEndDate(); /** * 检查月结时间范围内是否有未完成的订单 */ boolean hasUnfinishedOrders(Date startDate, Date endDate); /** * 发起月结 */ MonthlySettleResultVO startSettle(Date startDate, Date endDate, Long userId); /** * 获取月结统计信息 */ MonthlySettleStatisticsVO getSettleStatistics(Long settleId); /** * 分页查询月结列表 */ Page getPage(Page page); /** * 删除月结记录 */ void deleteSettle(Long settleId); }