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;
}
}