package com.hp.school.controller;
import java.util.HashMap;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.util.StringUtils;
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.hp.school.entity.Grade;
import com.hp.school.entity.User;
import com.hp.school.page.Page;
import com.hp.school.service.GradeService;
@Controller
@RequestMapping("/grade")
/**
* 完成年级的增删改查 ,分页
* @author yuan
*
*/
public class GradeController {
@Autowired
private GradeService gradeService;
/**
* 跳转到年级 列表jsp页面
* @param model
* @return
*/
@RequestMapping("/list")
public ModelAndView list(ModelAndView model){
model.setViewName("grade/grade_list");
return model;
}
/**
* 添加年级
* @param user
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.POST)
@ResponseBody
public Map<String,String> add(Grade grade){
Map<String,String> map = new HashMap<String, String>();
if(StringUtils.isEmpty(grade.getName())){
map.put("type", "error");
map.put("msg", "年级名不能为空!");
return map;
}
int result = gradeService.add(grade);
if(result<=0){
map.put("type", "error");
map.put("msg", "年级保存失败!");
return map;
}
map.put("type", "success");
map.put("msg", "添加年级成功!");
return map;
}
/**
* 获取年级列表数据 -- 包含 条件查询 分页
* @return
*/
@RequestMapping(value="/get_list",method=RequestMethod.POST)
@ResponseBody
/**
* @param username 模糊查询条件
* @param page 分页类
* @return
*/
public Map<String,Object> getList(
@RequestParam(name="name",required=false,defaultValue="") String name,
Page page
){
Map<String,Object> map = new HashMap<>(); // 最终数据在这里
// 这个map 等同于 QueryBean
Map<String,Object> queryMap = new HashMap<>(); // 是一个查询条件类
//拼装 limit ?,?
queryMap.put("offset", page.getOffset());
queryMap.put("pageSize", page.getRows());
queryMap.put("name", "%"+name+"%");
map.put("rows", gradeService.getList(queryMap)); //比如查询的第2页显示的一个集合数据
map.put("total", gradeService.getTotal(queryMap)); //接收总数量
return map;
}
/**
* 编辑年级
* @param user
* @return
*/
@RequestMapping(value="/edit",method=RequestMethod.POST)
@ResponseBody
public Map<String,String> editUser(Grade grade){
Map<String,String> map = new HashMap<String, String>();
if(StringUtils.isEmpty(grade.getName())){
map.put("type", "error");
map.put("msg", "年级名不能为空!");
return map;
}
// 更新 /删除 /添加操作 最终 返回的是影响的行数
int result = gradeService.edit(grade);
if(result<=0){
map.put("type", "error");
map.put("msg", "年级编辑失败!");
return map;
}
map.put("type", "success");
map.put("msg", "编辑年级成功!");
return map;
}
/**
* 删除年级
* @param user
* @return
*
* delete from user where id in (23,24,17)
*/
@RequestMapping(value="/delete",method=RequestMethod.POST)
@ResponseBody
public Map<String,String> delete(
@RequestParam(name="ids[]",required=true)Integer[] ids){
Map<String,String> map = new HashMap<>();
// ids 非空判断 可以不写
//需将 数组id转成 23,24,17
String idsParam="";
for (Integer id : ids) {
idsParam += id+","; // 23,24,17,
}
idsParam = idsParam.substring(0, idsParam.length()-1);
try {
// 通过业务层 调用删除方法 , 根据返回值判断
int result = gradeService.delete(idsParam);
if (result <= 0) {
map.put("type", "error");
map.put("msg", "年级删除失败!");
return map;
}
} catch (Exception e) {
map.put("type", "error");
map.put("msg", "该年级下包含班级,请先删除班级 ,再删除年级!");
return map;
}
map.put("type", "success");
map.put("msg", "删除年级成功!");
return map;
}
}
最近下载更多
9632148963 LV1
2024年12月10日
skook7 LV2
2024年10月30日
hongdongdong LV14
2024年6月18日
潘潘123456 LV2
2023年12月30日
uni-code_0123 LV1
2023年8月4日
douhongwen LV1
2023年7月21日
ice_candy LV1
2023年6月19日
493240689 LV3
2023年6月3日
微信网友_6469820124057600 LV6
2023年5月30日
liuchang183 LV5
2023年4月22日
最近浏览更多
甜心冰淇淋 LV4
6月15日
微信网友_7520905278033920 LV1
5月22日
xianyu091012 LV5
2024年12月26日
571818771 LV3
2024年12月16日
84126415 LV2
2024年12月10日
565236523
2024年12月10日
暂无贡献等级
9632148963 LV1
2024年12月10日
moxiao
2024年12月3日
暂无贡献等级
asdfgh112
2024年7月4日
暂无贡献等级
时光海 LV2
2024年6月30日

