package com.mossle.org.rs; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.annotation.Resource; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import com.mossle.core.mapper.JsonMapper; import com.mossle.org.persistence.domain.OrgCompany; import com.mossle.org.persistence.domain.OrgDepartment; import com.mossle.org.persistence.manager.OrgCompanyManager; import com.mossle.org.persistence.manager.OrgDepartmentManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; @Component @Path("group") public class GroupResource { private static Logger logger = LoggerFactory.getLogger(GroupResource.class); private OrgDepartmentManager orgDepartmentManager; private OrgCompanyManager orgCompanyManager; private JsonMapper jsonMapper = new JsonMapper(); @GET @Path("search") @Produces(MediaType.APPLICATION_JSON) public Map<String, List<Map<String, Object>>> search() { Map<String, List<Map<String, Object>>> resultMap = new HashMap<String, List<Map<String, Object>>>(); List<Map<String, Object>> companies = new ArrayList<Map<String, Object>>(); List<Map<String, Object>> departments = new ArrayList<Map<String, Object>>(); resultMap.put("公司", companies); resultMap.put("部门", departments); for (OrgCompany orgCompany : orgCompanyManager.getAll()) { Map<String, Object> map = new HashMap<String, Object>(); companies.add(map); map.put("id", orgCompany.getId()); map.put("name", orgCompany.getName()); } for (OrgDepartment orgDepartment : orgDepartmentManager.getAll()) { Map<String, Object> map = new HashMap<String, Object>(); departments.add(map); map.put("id", orgDepartment.getId()); map.put("name", orgDepartment.getName()); } return resultMap; } // ~ ====================================================================== @Resource public void setOrgDepartmentManager( OrgDepartmentManager orgDepartmentManager) { this.orgDepartmentManager = orgDepartmentManager; } @Resource public void setOrgCompanyManager(OrgCompanyManager orgCompanyManager) { this.orgCompanyManager = orgCompanyManager; } }