package com.opentravelsoft.action.manage.product; import java.util.ArrayList; import java.util.List; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import com.opensymphony.xwork2.ActionContext; import com.opentravelsoft.action.ManageAction; import com.opentravelsoft.common.SessionKeyParams; import com.opentravelsoft.entity.Line; import com.opentravelsoft.entity.Sight; import com.opentravelsoft.service.product.LineSightService; /** * 线路包含景点 * * @author <a herf="mailto:zhangsitao@gmail.com">Steven Zhang</a> * @version $Revision: 1.1 $ $Date: 2009/03/01 16:23:55 $ */ public class LineSightAction extends ManageAction { private static final long serialVersionUID = 7671898914387730451L; @Autowired private LineSightService lineSightService; private Line line; private String[] selectedSights; private List<Sight> sightList; private List<Sight> searchList = new ArrayList<Sight>(); public String input() throws Exception { Map<String, Object> session = ActionContext.getContext().getSession(); line = (Line) session.get(SessionKeyParams.EBIZ_CURRENT_ROUTE); sightList = lineSightService.roGetLineSights(line.getLineNo()); searchList = lineSightService.roGetDestinationSights(line.getLineNo()); for (int i = 0; i < searchList.size(); i++) { Sight dts = searchList.get(i); if (dts.getCnNote().length() > 100) dts.setCnNote(dts.getCnNote().substring(0, 100) + "..."); for (Sight sight : sightList) { if (dts.getSightNo().equals(sight.getSightNo())) dts.setChecked("true"); } } if (searchList.size() == 0) addActionMessage("线路的目的地没有选择或该目的地没有包含的景点."); return INPUT; } public String submit() throws Exception { line = (Line) ActionContext.getContext().getSession() .get(SessionKeyParams.EBIZ_CURRENT_ROUTE); List<Sight> list = new ArrayList<Sight>(); Sight sight = null; for (int i = 0; i < selectedSights.length; i++) { sight = new Sight(); sight.setSightNo(selectedSights[i]); list.add(sight); } lineSightService.txSaveSights(list, line.getLineNo()); addActionMessage("线路景点保存成功."); return SUCCESS; } public Line getLine() { return line; } public void setCheck(String[] sights) { this.selectedSights = sights.clone(); } public List<Sight> getSearchList() { return searchList; } }