package com.opentravelsoft.action.manage.order; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import com.opentravelsoft.action.ManageAction; import com.opentravelsoft.entity.Booking; import com.opentravelsoft.entity.Employee; import com.opentravelsoft.entity.Team; import com.opentravelsoft.service.order.BookingService; import com.opentravelsoft.service.setting.EmployeeService; import com.opentravelsoft.util.LabelValueBean; /** * * @author <a herf="mailto:zhangsitao@gmail.com">Steven Zhang</a> * @version $Revision: 1.2 $ $Date: 2009/04/10 07:47:32 $ */ public class BookingSearchAction extends ManageAction { private static final long serialVersionUID = -7625855842902512964L; @Autowired private BookingService bookingService; @Autowired private EmployeeService employeeService; private List<Employee> employeeList; private List<Team> teamList; /** 是否占位列表[1:已占位、2:未占位、%:所有] */ private List<LabelValueBean> cfmList; /** 列表[Y:已读订单、N:未读订单] */ private List<LabelValueBean> readList; /** 列表[Y:已取消、N:未取消] */ private List<LabelValueBean> delList; // ------------------------------------------------------------------------- // 检索条件 /** 订单号 */ private String kenReserveNo; /** 专管员 */ private int kenUserId; /** 部门 */ private int kenTeamId; /** 线路名 */ private String kenLineName; /** 出团日期 -开始 */ private Date kenStartDatePeriod; /** 出团日期 -截止 */ private Date kenEndDatePeriod; /** 预订日期 起始时间 */ private Date kenReserveStart; /** 预订日期 截止时间 */ private Date kenReserveEnd; /** 客户名 */ private String kenAgent; /** 客人姓名 */ private String kenTourist; /** 销售员 */ private String kenSalesman; /** 是否占位 */ private String kenCfm = "%"; /** 是否已读 */ private String kenRead; /** 是否取消 */ private String kenDel; // ------------------------------------------------------------------------- /** 合计人数 */ private int totalPax = 0; /** 合计确认人数 */ private int totalConfirmPax = 0; /** 应收款 */ private BigDecimal totalExpense = new BigDecimal(0); /** 已付费用 */ private BigDecimal totalPay = new BigDecimal(0); /** 未付费用 */ private BigDecimal totalUnPay = new BigDecimal(0); // ------------------------------------------------------------------------- private String[] nameNo; private List<Booking> bookings = new ArrayList<Booking>(); public String input() throws Exception { Employee user = getUser(); teamList = bookingService.getOperatorTeamList(); if (teamList.size() > 0) kenTeamId = teamList.get(0).getTeamId(); kenUserId = user.getUserId(); employeeList = employeeService.getUserByTeam(kenTeamId); cfmList = getCodeList("ebiz_book_state"); readList = getCodeList("ebiz_yes_no"); delList = getCodeList("ebiz_yes_no"); return SUCCESS; } public String submit() throws Exception { bookings = bookingService.roFind(kenLineName, kenTeamId, kenUserId, kenStartDatePeriod, kenEndDatePeriod, kenReserveStart, kenReserveEnd, kenTourist, kenAgent, kenSalesman, kenCfm, kenRead, kenDel, kenReserveNo); if (null != bookings) currentPage(bookings.size()); for (int i = 0; i < bookings.size(); i++) { Booking book = bookings.get(i); totalPax = totalPax + book.getPax(); totalConfirmPax = totalConfirmPax + book.getConfirmPax(); totalExpense = totalExpense.add(book.getDbamt()); totalPay = totalPay.add(book.getPayCosts()); totalUnPay = totalExpense.subtract(totalPay); } employeeList = employeeService.getUserByTeam(kenTeamId); teamList = bookingService.getOperatorTeamList(); cfmList = getCodeList("ebiz_book_state"); readList = getCodeList("ebiz_yes_no"); delList = getCodeList("ebiz_yes_no"); return SUCCESS; } /* * (non-Javadoc) * * @see com.opentravelsoft.BaseAction#getMoveCount() */ protected int getMoveCount() { // 返回记录行数/页 return 20; } public String getKenReserveNo() { return kenReserveNo; } public void setKenReserveNo(String kenReserveNo) { this.kenReserveNo = kenReserveNo; } public Date getKenEndDatePeriod() { return kenEndDatePeriod; } public void setKenEndDatePeriod(Date kenEndDatePeriod) { this.kenEndDatePeriod = kenEndDatePeriod; } public String getKenRouteName() { return kenLineName; } public void setKenRouteName(String kenRouteName) { this.kenLineName = kenRouteName; } public Date getKenStartDatePeriod() { return kenStartDatePeriod; } public void setKenStartDatePeriod(Date kenStartDatePeriod) { this.kenStartDatePeriod = kenStartDatePeriod; } public List<Team> getTeamList() { return teamList; } public List<Employee> getEmployeeList() { return employeeList; } public int getKenDepartmentNo() { return kenTeamId; } public void setKenDepartmentNo(int teamId) { this.kenTeamId = teamId; } public int getKenUserId() { return kenUserId; } public void setKenUserId(int kenUserId) { this.kenUserId = kenUserId; } public String getKenAgent() { return kenAgent; } public void setKenAgent(String kenAgent) { this.kenAgent = kenAgent; } public String getKenSalesman() { return kenSalesman; } public void setKenSalesman(String kenSalesman) { this.kenSalesman = kenSalesman; } public Date getKenReserveStart() { return kenReserveStart; } public void setKenReserveStart(Date kenReserveStart) { this.kenReserveStart = kenReserveStart; } public Date getKenReserveEnd() { return kenReserveEnd; } public void setKenReserveEnd(Date kenReserveEnd) { this.kenReserveEnd = kenReserveEnd; } public String getKenTourist() { return kenTourist; } public void setKenTourist(String kenTourist) { this.kenTourist = kenTourist; } public List<Booking> getBookings() { return bookings; } public int getTotalPax() { return totalPax; } public int getTotalConfirmPax() { return totalConfirmPax; } public BigDecimal getTotalExpense() { return totalExpense; } public BigDecimal getTotalPay() { return totalPay; } public String[] getNameNo() { return nameNo; } public void setNameNo(String[] nameNo) { this.nameNo = nameNo; } public BigDecimal getTotalUnPay() { return totalUnPay; } public void setTotalUnPay(BigDecimal totalUnPay) { this.totalUnPay = totalUnPay; } public String getKenCfm() { return kenCfm; } public void setKenCfm(String kenCfm) { this.kenCfm = kenCfm; } public String getKenRead() { return kenRead; } public void setKenRead(String kenRead) { this.kenRead = kenRead; } public String getKenDel() { return kenDel; } public void setKenDel(String kenDel) { this.kenDel = kenDel; } public List<LabelValueBean> getCfmList() { return cfmList; } public List<LabelValueBean> getReadList() { return readList; } public List<LabelValueBean> getDelList() { return delList; } }