1、实现功能界面
2、相关数据库表单
3、ibatis_team_players.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> <sqlMap> <select id="selectTeamPlayers" resultClass="java.util.HashMap"> <![CDATA[ SELECT name, user_type, industry, phone, usga, years, clothes_size, glove_size, shoe_size FROM t_team_user WHERE team_id=#team_id# AND visit_state=1 ]]> </select> </sqlMap>
ibatis_team_list.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> <sqlMap> <select id="selectProvice" resultClass="java.util.HashMap"> <![CDATA[ SELECT pro_id, name FROM t_province ]]> </select> <select id="selectTeamInfoFromProvice" resultClass="java.util.HashMap" > <![CDATA[ SELECT t_team.name, t_team_user.name AS team_leader, mobile, address, approve_state FROM t_team LEFT JOIN t_team_user ON t_team.team_id=t_team_user.team_id WHERE pro_id=#pro_id# AND t_team_user.user_type=1 AND t_team.state<>9 AND t_team.approve_state<>0 ]]> </select> <update id="updateTeamVisitState" > <![CDATA[ UPDATE t_team SET approve_state=#approve_state# WHERE team_id=#team_id# AND state<>9 AND approve_state<>0 ]]> </update> </sqlMap>
4、TeamPlayersDao.java
package com.enjoy.golf.dao; import java.sql.SQLException; import java.util.HashMap; import java.util.List; import java.util.Map; import org.springframework.stereotype.Repository; @Repository public class TeamPlayersDao extends BaseDao{ public List<Object> selectTeamPlayers(int team_id) throws SQLException{ Map<String,Object> map = new HashMap<String, Object>(); map.put("team_id", team_id); return this.getSqlMapClientTemplate().queryForList("selectTeamPlayers",map); } }
TeamListDao.java
package com.enjoy.golf.dao; import java.sql.SQLException; import java.util.HashMap; import java.util.List; import java.util.Map; import org.springframework.stereotype.Repository; @Repository public class TeamListDao extends BaseDao{ public List selectProvince() throws SQLException{ return this.getSqlMapClient().queryForList("selectProvice"); } public Map<String,Object> selectTeamInfoFromProvice(int pro_id){ Map<String,Object> map = new HashMap<String, Object>(); map.put("pro_id", pro_id); return (Map)this.getSqlMapClientTemplate().queryForObject("selectTeamInfoFromProvice",map); } public int updateTeamVisitState(int team_id,int approve_state){ Map<String,Object> map = new HashMap<String, Object>(); map.put("team_id", team_id); map.put("approve_state", approve_state); return this.getSqlMapClientTemplate().update("updateTeamVisitState",map); } }
5、TeamPlayersService.java
package com.enjoy.golf.service; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.nio.charset.Charset; import java.sql.SQLException; import java.util.Arrays; import java.util.Iterator; import java.util.List; import java.util.Map; import javax.annotation.Resource; import org.springframework.stereotype.Service; import com.csvreader.CsvWriter; import com.enjoy.golf.dao.TeamPlayersDao; @Service public class TeamPlayersService { @Resource TeamPlayersDao teamplayersDao; //下载球员列表 public byte[] downloadTeamPlayers(int team_id) throws SQLException, IOException{ ByteArrayOutputStream out = new ByteArrayOutputStream(); StringBuilder sb = new StringBuilder(); CsvWriter cw = new CsvWriter(out,',',Charset.forName("UTF-8")); String[] titles = new String[]{"队员名","角色","行业","电话","差点","球龄","衣服","手套","鞋子"}; sb.append(Arrays.toString(titles)); System.out.println(sb.toString()); cw.writeRecord(titles); List<Object> list = teamplayersDao.selectTeamPlayers(team_id); Iterator<Object> it = list.iterator(); while(it.hasNext()){ Object obj = it.next(); String[] datas = new String[titles.length]; Map<String,Object> map = (Map)obj; datas[0] = map.get("name") == null?"":map.get("name").toString(); datas[1] = map.get("user_type") == null?"":map.get("user_type").toString(); datas[2] = map.get("industry") == null?"":map.get("industry").toString(); datas[3] = map.get("phone") == null?"":map.get("phone").toString(); datas[4] = map.get("usga") == null?"":map.get("usga").toString(); datas[5] = map.get("years") == null?"":map.get("years").toString(); datas[6] = map.get("clothes_size") == null?"":map.get("clothes_size").toString(); datas[7] = map.get("glove_size") == null?"":map.get("glove_size").toString(); datas[8] = map.get("shoe_size") == null?"":map.get("shoe_size").toString(); cw.writeRecord(datas); it.remove(); } cw.flush(); cw.close(); return out.toByteArray(); } //查询球员列表 public List<Object> selectTeamPlayers(int team_id) throws SQLException{ return (List<Object>) teamplayersDao.selectTeamPlayers(team_id); } }
TeamListService.java
package com.enjoy.golf.service; import java.sql.SQLException; import java.util.List; import java.util.Map; import javax.annotation.Resource; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.enjoy.golf.dao.TeamListDao; import com.enjoy.golf.po.golf.response.BaseResponse; @Service public class TeamListService { @Resource TeamListDao teamlistDao; @Transactional(readOnly = false) //查询所有省份 public List selectProvince() throws SQLException{ return teamlistDao.selectProvince(); } //查询所有省份下的球队信息 public Map<String,Object> selectTeamInfoFromProvice(int pro_id){ return teamlistDao.selectTeamInfoFromProvice(pro_id); } //修改球队验证状态 public BaseResponse updateTeamVisitState(int team_id,int approve_state){ return teamlistDao.updateTeamVisitState(team_id, approve_state)==1? new BaseResponse("0", "成功修改"): new BaseResponse("1","修改异常") ; } }
6、TeamPlayersController.java
package com.enjoy.golf.controller; import java.io.IOException; import java.sql.SQLException; import java.util.List; import javax.annotation.Resource; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import com.enjoy.golf.service.TeamPlayersService; @Controller @RequestMapping("teamplayers") public class TeamPlayersController { @Resource private TeamPlayersService teamplayersService; //查询球队球员列表 @RequestMapping(value = "players",method = RequestMethod.POST) public @ResponseBody List<Object> selectTeamPlayers( @RequestParam(defaultValue = "")int team_id) throws SQLException{ return teamplayersService.selectTeamPlayers(team_id); } //下载球队球员列表输出为.csv文件 @RequestMapping(value = "downloadplayers",method = RequestMethod.GET) public @ResponseBody ResponseEntity<byte[]> downloadTeamPlayers( @RequestParam(defaultValue = "")int team_id) throws SQLException, IOException{ String filename = "队员列表"; HttpHeaders headers = new HttpHeaders(); headers.setContentDispositionFormData("attachment", filename); headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); return new ResponseEntity<byte[]>(teamplayersService.downloadTeamPlayers(team_id), headers, HttpStatus.OK) ; } }
TeamListController.java
package com.enjoy.golf.controller; import java.sql.SQLException; import java.util.List; import java.util.Map; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestHeader; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; import com.enjoy.golf.po.golf.response.BaseResponse; import com.enjoy.golf.service.TeamListService; @Controller @RequestMapping("teamlist") public class TeamListController { @Resource private TeamListService teamlistService; //查询所有省份 @RequestMapping(value = "selectProvince",method = RequestMethod.POST) public @ResponseBody List selectProvince() throws SQLException{ return teamlistService.selectProvince(); } //查询所有省份下的球队信息 @RequestMapping(value = "selectTeamInfoFromProvice",method = RequestMethod.POST) public @ResponseBody Map<String,Object> selectProvince( @RequestParam(defaultValue = "")int pro_id){ return teamlistService.selectTeamInfoFromProvice(pro_id); } //修改球队验证状态 @RequestMapping(value = "updateTeamVisitState",method = RequestMethod.POST) public @ResponseBody BaseResponse updateTeamVisitState( @RequestParam(defaultValue = "")int team_id, @RequestParam(defaultValue = "")int approve_state ){ return teamlistService.updateTeamVisitState(team_id, approve_state); } @RequestMapping(value = "",method = RequestMethod.GET) public ModelAndView alter(HttpServletRequest request, @RequestHeader("User-Agent") String ua, String code, String state, String openfire, ModelAndView mav) { mav = new ModelAndView(""); mav.addObject("openfire", request.getParameter("openfire")); return mav; } }