基于javaweb+mysql的ssm农产品水果店销售管理系统(java+jsp+ssm+javabean+mysql+tomcat)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
农产品店、水果店等管理产品与销售、进货等信息
技术框架
JavaBean MVC JSP SSM(Spring SpringMVC MyBatis) MySQL EasyUI JavaScript
基于javaweb+mysql的SSM农产品水果店销售管理系统(java+jsp+ssm+javabean+mysql+tomcat)
sell.setMoney(money);
sell.setProductNum(num);
User admin = (User)request.getSession().getAttribute("admin");
sell.setOperator(admin.getUsername());
sell.setCreateTime(new Date());
if(sellService.add(sell) <= 0){
ret.put("type", "error");
ret.put("msg", "添加失败,请联系管理员!");
return ret;
}
//进行库存调整操作
updateStock(stockList);
ret.put("type", "success");
ret.put("msg", "添加成功!");
return ret;
}
/**
* 编辑销售单信息
* @param product
* @return
*/
@RequestMapping(value="edit",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> edit(Sell sell){
Map<String, String> ret = new HashMap<String, String>();
if(sell == null){
ret.put("type", "error");
ret.put("msg", "请选择正确的销售单信息!");
return ret;
}
sell.setStatus(1);
if(sellService.edit(sell) <= 0){
ret.put("type", "error");
ret.put("msg", "编辑失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "编辑成功!");
return ret;
}
/**
* 商品库存调整
* @param stockList
*/
* @param username
* @param id
* @return
*/
private boolean isExist(String username,Long id){
User user = userService.findByUsername(username);
if(user == null)return false;
if(user.getId().longValue() == id.longValue())return false;
return true;
}
}
package com.demo.controller;
/**
* 进货退货单管理控制器
* 编辑供应商信息
* @param supplier
* @return
*/
@RequestMapping(value="edit",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> edit(Supplier supplier){
Map<String, String> ret = new HashMap<String, String>();
if(supplier == null){
ret.put("type", "error");
ret.put("msg", "请填写正确的供应商信息!");
return ret;
}
if(StringUtils.isEmpty(supplier.getName())){
ret.put("type", "error");
ret.put("msg", "请填写供应商名称!");
return ret;
}
if(StringUtils.isEmpty(supplier.getTel())){
ret.put("type", "error");
ret.put("msg", "请填写供应商电话!");
return ret;
}
if(StringUtils.isEmpty(supplier.getContactName())){
ret.put("type", "error");
ret.put("msg", "请填写供应商联系人!");
return ret;
}
if(StringUtils.isEmpty(supplier.getContactPhone())){
ret.put("type", "error");
ret.put("msg", "请填写供应商联系人手机号!");
return ret;
}
if(StringUtils.isEmpty(supplier.getAddress())){
ret.put("type", "error");
ret.put("msg", "请填写供应商地址!");
return ret;
}
if(supplierService.edit(supplier) <= 0){
ret.put("type", "error");
ret.put("msg", "编辑失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "添加成功!");
return ret;
}
/**
* 删除指定id的供应商
* @param id
* @return
*/
// return ret;
// }
if(user.getRoleId() == null){
ret.put("type", "error");
ret.put("msg", "请选择所属角色!");
return ret;
}
if(isExist(user.getUsername(), user.getId())){
ret.put("type", "error");
ret.put("msg", "该用户名已经存在,请重新输入!");
return ret;
}
if(userService.edit(user) <= 0){
ret.put("type", "error");
ret.put("msg", "用户添加失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "角色添加成功!");
return ret;
}
/**
* 批量删除用户
* @param ids
* @return
*/
@RequestMapping(value="/delete",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> delete(String ids){
Map<String, String> ret = new HashMap<String, String>();
if(StringUtils.isEmpty(ids)){
ret.put("type", "error");
ret.put("msg", "选择要删除的数据!");
return ret;
}
if(ids.contains(",")){
ids = ids.substring(0,ids.length()-1);
}
if(userService.delete(ids) <= 0){
ret.put("type", "error");
ret.put("msg", "用户删除失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "用户删除成功!");
return ret;
}
/**
return ret;
}
if(StringUtils.isEmpty(supplier.getContactPhone())){
ret.put("type", "error");
ret.put("msg", "请填写供应商联系人手机号!");
return ret;
}
if(StringUtils.isEmpty(supplier.getAddress())){
ret.put("type", "error");
ret.put("msg", "请填写供应商地址!");
return ret;
}
if(supplierService.add(supplier) <= 0){
ret.put("type", "error");
ret.put("msg", "添加失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "添加成功!");
return ret;
}
/**
* 编辑供应商信息
* @param supplier
* @return
*/
@RequestMapping(value="edit",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> edit(Supplier supplier){
Map<String, String> ret = new HashMap<String, String>();
if(supplier == null){
ret.put("type", "error");
ret.put("msg", "请填写正确的供应商信息!");
return ret;
}
if(StringUtils.isEmpty(supplier.getName())){
ret.put("type", "error");
ret.put("msg", "请填写供应商名称!");
return ret;
}
if(StringUtils.isEmpty(supplier.getTel())){
ret.put("type", "error");
ret.put("msg", "请填写供应商电话!");
return ret;
}
/**
* 销售单管理控制器
*
*/
@RequestMapping("/admin/sell")
@Controller
public class SellController {
@Autowired
private SellService sellService;
@Autowired
private StockService stockService;
/**
* 销售单管理列表页面
* @param model
* @return
/**
* 模糊搜索分页获取供应商信息
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.POST)
@ResponseBody
public Map<String, Object> getList(
@RequestParam(name="name",defaultValue="") String name,Page page
){
Map<String, Object> ret = new HashMap<String, Object>();
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("name", name);
queryMap.put("offset", page.getOffset());
queryMap.put("pageSize", page.getRows());
ret.put("total", supplierService.getTotal(queryMap));
ret.put("rows", supplierService.findList(queryMap));
return ret;
}
/**
* 添加供应商信息
* @param supplier
* @return
*/
@RequestMapping(value="add",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> add(Supplier supplier){
Map<String, String> ret = new HashMap<String, String>();
if(supplier == null){
ret.put("type", "error");
ret.put("msg", "请填写正确的供应商信息!");
return ret;
}
if(StringUtils.isEmpty(supplier.getName())){
ret.put("type", "error");
ret.put("msg", "请填写供应商名称!");
return ret;
}
if(StringUtils.isEmpty(supplier.getTel())){
ret.put("type", "error");
ret.put("msg", "请填写供应商电话!");
return ret;
}
/**
* 添加日志
* @param user
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> add(Log log){
Map<String, String> ret = new HashMap<String, String>();
if(log == null){
ret.put("type", "error");
ret.put("msg", "请填写正确的日志信息!");
return ret;
}
if(StringUtils.isEmpty(log.getContent())){
ret.put("type", "error");
ret.put("msg", "请填写日志内容!");
return ret;
}
log.setCreateTime(new Date());
if(logService.add(log) <= 0){
ret.put("type", "error");
ret.put("msg", "日志添加失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "日志添加成功!");
return ret;
}
/**
* 批量删除日志
* @param ids
* @return
*/
@RequestMapping(value="/delete",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> delete(String ids){
Map<String, String> ret = new HashMap<String, String>();
if(StringUtils.isEmpty(ids)){
ret.put("type", "error");
sell.setMoney(money);
sell.setProductNum(num);
User admin = (User)request.getSession().getAttribute("admin");
sell.setOperator(admin.getUsername());
sell.setCreateTime(new Date());
if(sellService.add(sell) <= 0){
ret.put("type", "error");
ret.put("msg", "添加失败,请联系管理员!");
return ret;
}
//进行库存调整操作
updateStock(stockList);
ret.put("type", "success");
ret.put("msg", "添加成功!");
return ret;
}
/**
* 编辑销售单信息
* @param product
* @return
*/
@RequestMapping(value="edit",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> edit(Sell sell){
Map<String, String> ret = new HashMap<String, String>();
if(sell == null){
ret.put("type", "error");
ret.put("msg", "请选择正确的销售单信息!");
return ret;
}
sell.setStatus(1);
if(sellService.edit(sell) <= 0){
ret.put("type", "error");
ret.put("msg", "编辑失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "编辑成功!");
return ret;
}
}
String savePath = request.getServletContext().getRealPath("/") + "/resources/upload/";
File savePathFile = new File(savePath);
if(!savePathFile.exists()){
//若不存在改目录,则创建目录
savePathFile.mkdir();
}
String filename = new Date().getTime()+"."+suffix;
try {
//将文件保存至指定目录
photo.transferTo(new File(savePath+filename));
}catch (Exception e) {
// TODO Auto-generated catch block
ret.put("type", "error");
ret.put("msg", "保存文件异常!");
e.printStackTrace();
return ret;
}
ret.put("type", "success");
ret.put("msg", "用户删除成功!");
ret.put("filepath",request.getServletContext().getContextPath() + "/resources/upload/" + filename );
return ret;
}
/**
* 判断该用户名是否存在
* @param username
* @param id
* @return
*/
private boolean isExist(String username,Long id){
User user = userService.findByUsername(username);
if(user == null)return false;
if(user.getId().longValue() == id.longValue())return false;
return true;
}
}
package com.demo.controller;
public class ProductController {
@Autowired
private SupplierService supplierService;
@Autowired
private ProductService productService;
/**
* 商品管理列表页面
* @param model
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.GET)
public ModelAndView list(ModelAndView model){
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("offset", 0);
queryMap.put("pageSize", 9999);
model.addObject("supplierList", supplierService.findList(queryMap));
model.setViewName("product/list");
return model;
}
/**
* 模糊搜索分页获取商品信息
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.POST)
@ResponseBody
public Map<String, Object> getList(
@RequestParam(name="supplierId",required=false) Long supplierId,
@RequestParam(name="name",defaultValue="") String name,Page page
){
Map<String, Object> ret = new HashMap<String, Object>();
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("name", name);
if(supplierId != null){
queryMap.put("supplierId", supplierId);
}
queryMap.put("offset", page.getOffset());
queryMap.put("pageSize", page.getRows());
ret.put("total", productService.getTotal(queryMap));
ret.put("rows", productService.findList(queryMap));
return ret;
}
/**
* 添加商品信息
* @param product
* @return
*/
@RequestMapping(value="add",method=RequestMethod.POST)
@ResponseBody
/**
* 进货单管理控制器
*
*/
@RequestMapping("/admin/order_in")
@Controller
public class OrderInController {
@Autowired
private ProductService productService;
@Autowired
private OrderInService orderInService;
@Autowired
private StockService stockService;
/**
* 进货单管理列表页面
* @param model
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.GET)
public ModelAndView list(ModelAndView model){
model.setViewName("order_in/list");
return model;
}
/**
* 模糊搜索分页获取进货单信息
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.POST)
@ResponseBody
public Map<String, Object> getList(
@RequestParam(name="payType",required=false) Integer payType,
@RequestParam(name="status",required=false) Integer status,
@RequestParam(name="minMoney",required=false) Float minMoney,
@RequestParam(name="maxMoney",required=false) Float maxMoney,
@RequestParam(name="operator",defaultValue="") String operator,Page page
){
Map<String, Object> ret = new HashMap<String, Object>();
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("operator", operator);
if(payType != null){
/**
* 商品库存管理控制器
*
*/
@RequestMapping("/admin/stock")
@Controller
public class StockController {
@Autowired
private StockService stockService;
@Autowired
private SupplierService supplierService;
/**
* 商品库存管理列表页面
* @param model
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.GET)
public ModelAndView list(ModelAndView model){
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("offset", 0);
queryMap.put("pageSize", 9999);
model.addObject("supplierList", supplierService.findList(queryMap));
model.setViewName("stock/list");
return model;
}
/**
* 模糊搜索分页获取商品库存信息
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.POST)
@ResponseBody
public Map<String, Object> getList(
@RequestParam(name="productNum",required=false) Integer productNum,
@RequestParam(name="supplierId",required=false) Long supplierId,
@RequestParam(name="productName",defaultValue="") String productName,Page page
){
Map<String, Object> ret = new HashMap<String, Object>();
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("productName", productName);
if(supplierId != null){
queryMap.put("supplierId", supplierId);
/**
* 系统操作类控制器
*
*/
@Controller
@RequestMapping("/system")
public class SystemController {
@Autowired
private UserService userService;
@Autowired
private RoleService roleService;
@Autowired
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.GET)
public ModelAndView list(ModelAndView model){
model.setViewName("log/list");
return model;
}
/**
* 获取日志列表
* @param page
* @param content
* @param roleId
* @param sex
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.POST)
@ResponseBody
public Map<String, Object> getList(Page page,
@RequestParam(name="content",required=false,defaultValue="") String content
){
Map<String, Object> ret = new HashMap<String, Object>();
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("content", content);
queryMap.put("offset", page.getOffset());
queryMap.put("pageSize", page.getRows());
ret.put("rows", logService.findList(queryMap));
ret.put("total", logService.getTotal(queryMap));
return ret;
}
/**
* 添加日志
* @param user
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> add(Log log){
Map<String, String> ret = new HashMap<String, String>();
if(log == null){
ret.put("type", "error");
ret.put("msg", "请填写正确的日志信息!");
return ret;
}
if(StringUtils.isEmpty(log.getContent())){
ret.put("type", "error");
ret.put("msg", "请填写日志内容!");
ret.put("type", "error");
ret.put("msg", "请填写正确的菜单信息!");
return ret;
}
if(StringUtils.isEmpty(menu.getName())){
ret.put("type", "error");
ret.put("msg", "请填写菜单名称!");
return ret;
}
if(StringUtils.isEmpty(menu.getIcon())){
ret.put("type", "error");
ret.put("msg", "请填写菜单图标类!");
return ret;
}
if(menu.getParentId() == null){
menu.setParentId(0l);
}
if(menuService.add(menu) <= 0){
ret.put("type", "error");
ret.put("msg", "添加失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "添加成功!");
return ret;
}
/**
* 菜单修改
* @param menu
* @return
*/
@RequestMapping(value="/edit",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> edit(Menu menu){
Map<String, String> ret = new HashMap<String, String>();
if(menu == null){
ret.put("type", "error");
ret.put("msg", "请选择正确的菜单信息!");
return ret;
}
*/
@RequestMapping(value="edit",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> edit(Stock stock){
Map<String, String> ret = new HashMap<String, String>();
if(stock == null){
ret.put("type", "error");
ret.put("msg", "请填写正确的商品库存信息!");
return ret;
}
if(stock.getProductNum() < 0){
ret.put("type", "error");
ret.put("msg", "商品库存数量不能小于0!");
return ret;
}
if(stockService.edit(stock) <= 0){
ret.put("type", "error");
ret.put("msg", "编辑失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "添加成功!");
return ret;
}
/**
* 删除指定id的商品库存
* @param id
* @return
*/
@RequestMapping(value="/delete",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> delete(Long id){
Map<String, String> ret = new HashMap<String, String>();
if(id == null){
ret.put("type", "error");
ret.put("msg", "请选择要删除的商品库存!");
return ret;
}
try {
if(stockService.delete(id) <= 0){
ret.put("type", "error");
ret.put("msg", "删除失败,请联系管理员!");
return ret;
}
} catch (Exception e) {
// TODO: handle exception
ret.put("type", "error");
ret.put("msg", "该商品库存下存在关联的入库或销售信息,请先将商品库存关联信息删除!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "删除成功!");
return ret;
/**
* 进货退货单管理控制器
*
*/
@RequestMapping("/admin/order_in_reback")
@Controller
public class OrderInRebackController {
@Autowired
private ProductService productService;
@Autowired
private OrderInRebackService orderInRebackService;
@Autowired
private StockService stockService;
/**
* 进货退货单管理列表页面
* @param model
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.GET)
public ModelAndView list(ModelAndView model){
model.setViewName("order_in_reback/list");
return model;
}
/**
* 模糊搜索分页获取进货退货单信息
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.POST)
@ResponseBody
public Map<String, Object> getList(
}
if(supplierService.edit(supplier) <= 0){
ret.put("type", "error");
ret.put("msg", "编辑失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "添加成功!");
return ret;
}
/**
* 删除指定id的供应商
* @param id
* @return
*/
@RequestMapping(value="/delete",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> delete(Long id){
Map<String, String> ret = new HashMap<String, String>();
if(id == null){
ret.put("type", "error");
ret.put("msg", "请选择要删除的供应商!");
return ret;
}
try {
if(supplierService.delete(id) <= 0){
ret.put("type", "error");
ret.put("msg", "删除失败,请联系管理员!");
return ret;
}
} catch (Exception e) {
// TODO: handle exception
ret.put("type", "error");
ret.put("msg", "该供应商下存在商品信息,请先将商品信息删除!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "删除成功!");
return ret;
}
}
package com.demo.controller;
*
*/
@RequestMapping("/admin/stats")
@Controller
public class StatsController {
@Autowired
private SellService sellService;
@Autowired
private SellRebackService sellRebackService;
/**
* 统计页面
* @param model
* @return
*/
@RequestMapping(value="stats",method=RequestMethod.GET)
public ModelAndView stats(ModelAndView model){
model.setViewName("stats/stats");
return model;
}
/**
* 获取统计数据
* @param type
* @return
*/
@RequestMapping(value = "/get_stats",method = RequestMethod.POST)
@ResponseBody
public Map<String, Object> getStats(
@RequestParam(name="type",defaultValue="statsDay") String type
){
Map<String, Object> ret = new HashMap<String, Object>();
switch (type) {
case "statsDay":{
ret.put("sellData", sellService.getStats("%Y-%m-%d"));
ret.put("sellRebackData", sellRebackService.getStats("%Y-%m-%d"));
break;
}
case "statsMonth":{
ret.put("sellData", sellService.getStats("%Y-%m"));
ret.put("sellRebackData", sellRebackService.getStats("%Y-%m"));
break;
}
case "statsYear":{
ret.put("sellData", sellService.getStats("%Y"));
ret.put("sellRebackData", sellRebackService.getStats("%Y"));
break;
}
default:{
ret.put("sellData", sellService.getStats("%Y-%m-%d"));
public Map<String, Object> getList(
@RequestParam(name="payType",required=false) Integer payType,
@RequestParam(name="status",required=false) Integer status,
@RequestParam(name="minMoney",required=false) Float minMoney,
@RequestParam(name="maxMoney",required=false) Float maxMoney,
@RequestParam(name="operator",defaultValue="") String operator,Page page
){
Map<String, Object> ret = new HashMap<String, Object>();
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("operator", operator);
if(payType != null){
queryMap.put("payType", payType);
}
if(status != null){
queryMap.put("status", status);
}
if(minMoney != null){
queryMap.put("minMoney", minMoney);
}
if(maxMoney != null){
queryMap.put("maxMoney", maxMoney);
}
queryMap.put("offset", page.getOffset());
queryMap.put("pageSize", page.getRows());
ret.put("total", sellRebackService.getTotal(queryMap));
ret.put("rows", sellRebackService.findList(queryMap));
return ret;
}
/**
* 添加销售退货单信息
* @param sell
* @return
*/
@RequestMapping(value="add",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> add(String productList,SellReback sell,HttpServletRequest request){
Map<String, String> ret = new HashMap<String, String>();
if(StringUtils.isEmpty(productList)){
ret.put("type", "error");
ret.put("msg", "请至少选择一个商品信息!");
return ret;
}
if(sell == null){
ret.put("type", "error");
ret.put("msg", "请填写正确的销售退货单信息!");
Authority authority = new Authority();
authority.setMenuId(Long.valueOf(id));
authority.setRoleId(roleId);
authorityService.add(authority);
}
ret.put("type", "success");
ret.put("msg", "权限编辑成功!");
return ret;
}
/**
* 获取某个角色的所有权限
* @param roleId
* @return
*/
@RequestMapping(value="/get_role_authority",method=RequestMethod.POST)
@ResponseBody
public List<Authority> getRoleAuthority(
@RequestParam(name="roleId",required=true) Long roleId
){
return authorityService.findListByRoleId(roleId);
}
}
package com.demo.controller;
* 编辑销售退货单信息
* @param product
* @return
*/
@RequestMapping(value="edit",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> edit(SellReback sell){
Map<String, String> ret = new HashMap<String, String>();
if(sell == null){
ret.put("type", "error");
ret.put("msg", "请选择正确的销售退货单信息!");
return ret;
}
sell.setStatus(1);
if(sellRebackService.edit(sell) <= 0){
ret.put("type", "error");
ret.put("msg", "编辑失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "编辑成功!");
return ret;
}
/**
* 商品库存调整
* @param stockList
*/
private void updateStock(List<Stock> stockList){
for(Stock stock : stockList){
Stock existStock = stockService.findByProductId(stock.getProductId());
if(existStock!= null){
//更新商品库存数量
existStock.setProductNum(existStock.getProductNum() + stock.getProductNum());
if(existStock.getProductNum() < 0){
existStock.setProductNum(0);
}
stockService.edit(existStock);
}
}
}
}
if(StringUtils.isEmpty(role.getName())){
ret.put("type", "error");
ret.put("msg", "请填写角色名称!");
return ret;
}
if(roleService.add(role) <= 0){
ret.put("type", "error");
ret.put("msg", "角色添加失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "角色添加成功!");
return ret;
}
/**
* 角色修改
* @param role
* @return
*/
@RequestMapping(value="/edit",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> edit(Role role){
Map<String, String> ret = new HashMap<String, String>();
if(role == null){
ret.put("type", "error");
ret.put("msg", "请填写正确的角色信息!");
return ret;
}
if(StringUtils.isEmpty(role.getName())){
ret.put("type", "error");
ret.put("msg", "请填写角色名称!");
return ret;
}
if(roleService.edit(role) <= 0){
ret.put("type", "error");
ret.put("msg", "角色修改失败,请联系管理员!");
return ret;
}
ret.put("type", "success");
ret.put("msg", "角色修改成功!");
return ret;
}
/**
* 删除角色信息
}
@Override
public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1,
Object arg2, ModelAndView arg3) throws Exception {
// TODO Auto-generated method stub
}
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response,
Object arg2) throws Exception {
// TODO Auto-generated method stub
String requestURI = request.getRequestURI();
Object admin = request.getSession().getAttribute("admin");
if(admin == null){
//表示未登录或者登录失效
System.out.println("链接"+requestURI+"进入拦截器!");
String header = request.getHeader("X-Requested-With");
//判断是否是ajax请求
if("XMLHttpRequest".equals(header)){
//表示是ajax请求
Map<String, String> ret = new HashMap<String, String>();
ret.put("type", "error");
ret.put("msg", "登录会话超时或还未登录,请重新登录!");
response.getWriter().write(JSONObject.fromObject(ret).toString());
return false;
}
//表示是普通链接跳转,直接重定向到登录页面
response.sendRedirect(request.getServletContext().getContextPath() + "/system/login");
return false;
}
//获取菜单id
String mid = request.getParameter("_mid");
if(!StringUtils.isEmpty(mid)){
List<Menu> allThirdMenu = MenuUtil.getAllThirdMenu((List<Menu>)request.getSession().getAttribute("userMenus"), Long.valueOf(mid));
request.setAttribute("thirdMenuList", allThirdMenu);
}
return true;
}
}
package com.demo.controller;
* @param user
* @param cpacha
* @return
*/
@RequestMapping(value="/login",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> loginAct(User user,String cpacha,HttpServletRequest request){
Map<String, String> ret = new HashMap<String, String>();
if(user == null){
ret.put("type", "error");
ret.put("msg", "请填写用户信息!");
return ret;
}
if(StringUtils.isEmpty(cpacha)){
ret.put("type", "error");
ret.put("msg", "请填写验证码!");
return ret;
}
if(StringUtils.isEmpty(user.getUsername())){
ret.put("type", "error");
ret.put("msg", "请填写用户名!");
return ret;
}
if(StringUtils.isEmpty(user.getPassword())){
ret.put("type", "error");
ret.put("msg", "请填写密码!");
return ret;
}
Object loginCpacha = request.getSession().getAttribute("loginCpacha");
if(loginCpacha == null){
ret.put("type", "error");
ret.put("msg", "会话超时,请刷新页面!");
return ret;
}
if(!cpacha.toUpperCase().equals(loginCpacha.toString().toUpperCase())){
ret.put("type", "error");
ret.put("msg", "验证码错误!");
logService.add("用户名为"+user.getUsername()+"的用户登录时输入验证码错误!");
return ret;
}
User findByUsername = userService.findByUsername(user.getUsername());
if(findByUsername == null){
ret.put("type", "error");
ret.put("msg", "该用户名不存在!");
logService.add("登录时,用户名为"+user.getUsername()+"的用户不存在!");
return ret;
}