00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 package org.openmobileis.examples.mycrm.terminal.services;
00026
00027 import java.io.IOException;
00028
00029 import javax.servlet.ServletException;
00030 import javax.servlet.http.HttpServletRequest;
00031 import javax.servlet.http.HttpServletResponse;
00032
00033 import org.openmobileis.common.intl.IntlResourceManager;
00034 import org.openmobileis.common.util.collection.Array;
00035 import org.openmobileis.common.util.exception.DatabaseException;
00036 import org.openmobileis.examples.mycrm.data.Account;
00037 import org.openmobileis.examples.mycrm.data.fodb.AccountFactory;
00038 import org.openmobileis.services.TemplateService;
00039 import org.openmobileis.services.common.ServiceManager;
00040 import org.openmobileis.services.navigation.NavigationBarService;
00041
00042 import freemarker.template.SimpleHash;
00043 import freemarker.template.SimpleList;
00044 import freemarker.template.SimpleScalar;
00045 import freemarker.template.TemplateModelRoot;
00046
00055 public final class SearchAccountService extends TemplateService implements NavigationBarService {
00056
00060 public SearchAccountService() {
00061 super();
00062 }
00063
00064
00065
00066
00067
00068
00069
00070
00071 public String runTemplate(HttpServletRequest req, HttpServletResponse res, TemplateModelRoot templateData) throws ServletException, IOException {
00072 String name = req.getParameter("searchname");
00073 if (name != null) {
00074 try {
00075
00076 Array accountlist = AccountFactory.getManager().getAccountByName(name);
00077
00078
00079 SimpleList showList = new SimpleList();
00080 SimpleHash dataStruct;
00081 for (int i = 0; i < accountlist.size(); i++) {
00082 dataStruct = new SimpleHash();
00083 Account account = (Account)accountlist.get(i);
00084 dataStruct.put("id", account.getId());
00085 dataStruct.put("name", account.getName());
00086 dataStruct.put("city", account.getCity());
00087 showList.add(dataStruct);
00088 }
00089 templateData.put("accountlist", showList);
00090 templateData.put("searchname", new SimpleScalar(name));
00091
00092
00093 } catch (DatabaseException ex) {
00094 throw new ServletException(ex);
00095 }
00096 }
00097 return "crm/searchaccount.htm";
00098 }
00099
00100
00101
00102
00103
00104
00105 public String getServiceUri() {
00106 return ServiceManager.getManager().getServiceBaseURI() + "/crm/searchaccount";
00107 }
00108
00109
00110
00111
00112
00113 public String getNavigationBarLabel(HttpServletRequest req) {
00114 return IntlResourceManager.getManager().getLocalizedProperty("mycrm.searchaccountservicenavbar", "Search Account");
00115 }
00116
00117 public boolean displayFormExitMessage() {
00118 return false;
00119 }
00120
00121 public boolean displayRecursive() {
00122 return false;
00123 }
00124
00125 }