package com.opentravelsoft.providers; import java.util.Date; import java.util.List; import com.opentravelsoft.entity.Booking; import com.opentravelsoft.entity.Plan; import com.opentravelsoft.entity.TourOutBound; import com.opentravelsoft.entity.Tourist; import com.opentravelsoft.entity.product.Leader; public interface PlanDao extends GenericDao<Plan, String> { /** * 查找团(团处理、出境游名单打印) * * @param teamId 线路所属部门 * @param userId 线路专管员 * @param lineName 线路名称 * @param startDate 出发时间 * @param endDate 出发时间 * @return * */ public List<Plan> getTours(Integer teamId, Integer userId, String lineName, Date startDate, Date endDate); /** * 取得团基本信息 * * @param tourNo 团号 * @param actor 是否包含客人名单 * @return */ public Plan getTourInfo(String tourNo, boolean actor, boolean cost); // ------------------------------------------------------------------------- /** * 取得多团信息(包含人名单)<BR> * 出境游名单打印使用 * * @param tourNos 团号列表 * @return */ public List<Plan> getToursAndCustomer(String[] tourNos); /** * 取消团 * * @param tourNo * @return */ public int cancelTour(String tourNo, String note, int userId); /** * 如团信息中所登记的人数与实际客人不符,更新团信息 * * @param tour * @param note * @return */ public int saveTour(Plan tour, String note); /** * 取境外报团打印对象 * * @param tourNo 团号 * @param type * @return */ public List<TourOutBound> getOutBandObjectList(String tourNo, String type); /** * 保存境外报团名单 * * @param outBandObject */ public void saveOutBandObject(TourOutBound outBandObject); /** * 取团所对的领队 * * @param tourNo * @return */ public List<Tourist> getLeaders(String tourNo); /** * 修改团中客人信息及团人数信息 * * @param customerList * @param tourNo * @return */ public int modifyCustomerInfo(List<Tourist> customerList, String tourNo, String note, int userId); // ------------------------------------------------------------------------- public List<Booking> getBookList(String tourNo); /** * 制作单团核算 * * @param tour * @return */ public int makeTourAccounts(Plan tour); /** * 财务审核核算单 * * @param tourNo * @param uid * @return */ public Plan auditTourAccounts(String tourNo, int uid); /** * 修改订单应收帐款 * * @param bookList * @param uid * @return */ public List<Booking> mustPayModify(List<Booking> bookList, int uid); /** * 计调取团核算表及其成本明细 * * @param tourNo * @return */ public Plan opGetBalanceAndCost(String tourNo); /** * 授权修改单团核算 * * @param planNo * @param uid * @return */ public int authorizationModify(String planNo, int uid); // ----------------------------------------------------------------------- /** * 客人转为领队 * * @param tourNo 团号 * @param nameKey 客人数组 * @return */ public int arrangeLeader(String tourNo, String[] nameKey, int operator); public List<Leader> getLeaderList(); /** * 选择领队 * * @param tourNo * @param nameKey * @param sqe * @param operator * @return */ public int arrangeFromLeader(String tourNo, String[] nameKey, String[] sqe, Integer operator); public int cancelLeader(String tourNo, String[] nameKey, int uid); }