1、
package com.zrkc.crm.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.zrkc.crm.model.AccessGroup;
import com.zrkc.crm.service.AccessGroupService;
import com.zrkc.crm.util.DataModel;
import com.zrkc.crm.util.Pager;
@Controller
@RequestMapping("accessGroup")
public class AccessController {
@Autowired
private AccessGroupService accessGroupService;
public void setAccessGroupService(AccessGroupService accessGroupService) {
this.accessGroupService = accessGroupService;
}
@RequestMapping("/accessGroupList")
public ModelAndView findProductTypeList(Pager pager,String isDel,Integer[] accessGroup_id,AccessGroup accessGroup,String exportType,HttpServletResponse response){
if(exportType!=null && !exportType.equals("")){
//导出
accessGroupService.exportExcel(exportType,pager,accessGroup_id,accessGroup,response);
return null;
}
ModelAndView mav = new ModelAndView();
if("del".equals(isDel)){
//删除操作
accessGroupService.deleteAccessGroup(accessGroup_id);
}
DataModel<AccessGroup> dm = accessGroupService.findList(pager,accessGroup);
//将查询的数据集合绑定到ModelAndView
List<AccessGroup> rows = dm.getRows();
mav.addObject("accessGroupList", rows);
//将分页相关的数据 绑定到ModelAndView
mav.addObject("pager", dm.getPager());
mav.setViewName("/jsp/accessGroup/accessGroupList.jsp");
return mav;
}
@RequestMapping("toAddAccessGroup")
public ModelAndView toAddAccessGroup(){
ModelAndView mav = new ModelAndView("/jsp/accessGroup/accessGroupAdd.jsp");
return mav;
}
@RequestMapping("addOrUpdateAccessGroup")
public ModelAndView addOrUpdateProductType(AccessGroup accessGroup,Integer edit_id){
System.out.println("1111111111111111111111111111");
if(edit_id==null){
//新建 保存
ModelAndView mav = new ModelAndView("/jsp/accessGroup/accessGroupAdd.jsp");
System.out.println("22222222222222222222222222");
accessGroupService.saveAccessGroup(accessGroup);
mav.addObject("suc", "新建成功");
return mav;
}else{
//修改 保存
accessGroup.setId(edit_id);
accessGroupService.updateAccessGroup(accessGroup);
ModelAndView mav = new ModelAndView("/jsp/accessGroup/accessGroupAdd.jsp");
mav.addObject("suc", "修改成功");
return mav;
}
}
@RequestMapping("toUpdateAccessGroup")
public ModelAndView toUpdateAccessGroup(Integer accessGroupId){
ModelAndView mav = new ModelAndView("/jsp/accessGroup/accessGroupAdd.jsp");
AccessGroup accessGroup = accessGroupService.findAccessGroupById(accessGroupId);
mav.addObject("accessGroup", accessGroup);
return mav;
}
@RequestMapping("SetAccessGroup")
public ModelAndView optionTreeWidnow1(Integer accessGroupId){
ModelAndView mav = new ModelAndView("/jsp/accessGroup/setAccessGroup.jsp");
String tree= accessGroupService.findTree(accessGroupId);
mav.addObject("treeStr", tree);
mav.addObject("accessGroupId",accessGroupId);
return mav;
}
@RequestMapping("toSetAccessGroup")
public ModelAndView optionTreeWidnow(Integer accessGroupId,int [] userGroupId){
for (int i : userGroupId) {
System.out.println(i+"===========================");
}
accessGroupService.updateTree(accessGroupId,userGroupId);
ModelAndView mav = new ModelAndView("/jsp/accessGroup/setAccessGroup.jsp");
String tree= accessGroupService.findTree(accessGroupId);
mav.addObject("treeStr", tree);
mav.addObject("accessGroupId",accessGroupId);
return mav;
}
}
2、
public void exportExcel(String exportType, Pager pager,
Integer[] accessGroup_id, AccessGroup accessGroup,
HttpServletResponse response) {
List<AccessGroup> list = null;
if("excel_all".equals(exportType)){
// 导出所有的
list = accessGroupDao.findAllAccessGroup();
}else if("excel_page".equals(exportType)){
//导出当前页的
list = accessGroupDao.findAccessGroupByPage2(pager.getFrom(), pager.getPageSize(), accessGroup);
}else if("excel_selected".equals(exportType)){
//导出选中的
if(accessGroup_id!=null && accessGroup_id.length>0){
list = accessGroupDao.findSelectedAccessGroup(accessGroup_id);
}
}
//导出 JXL api操作
WritableWorkbook workbook = null;
OutputStream out = null;
try {
response.setCharacterEncoding("UTF-8");
//添加 请求消息头
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename="
+ new String("查询权限.xls".getBytes("utf-8"), "iso-8859-1"));
out = response.getOutputStream();
workbook = Workbook.createWorkbook(out);
WritableSheet sheet = workbook.createSheet("查询权限", 0);
//设置表头一行(名称 编码 备注 )
sheet.addCell(new Label(0, 0, "名称"));
if(list!=null){
// 在第一行第一列中添加文字
int cIndex = 1;// 行
// 通过循环的方式填充excel的正文数据
for (int i=0;i<list.size();i++) {
AccessGroup pt = list.get(i);
int col = 0;// 列
sheet.addCell(new Label(col++, cIndex, pt.getName()));
cIndex++;
}
}
workbook.write();
workbook.close();
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
3、
//导出选中的
<select id="findSelectedAccessGroup" resultType="AccessGroup">
select id,name from s_access_group where id in
<foreach collection="ids" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
</select>