基于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)
){
Map<String, Object> ret = new HashMap<String, Object>();
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("username", username);
queryMap.put("roleId", roleId);
queryMap.put("sex", sex);
queryMap.put("offset", page.getOffset());
queryMap.put("pageSize", page.getRows());
ret.put("rows", userService.findList(queryMap));
ret.put("total", userService.getTotal(queryMap));
return ret;
}
/**
* 添加用户
* @param user
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> add(User user){
Map<String, String> ret = new HashMap<String, String>();
if(user == null){
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;
}
if(user.getRoleId() == null){
ret.put("type", "error");
ret.put("msg", "请选择所属角色!");
return ret;
}
if(isExist(user.getUsername(), 0l)){
ret.put("type", "error");
ret.put("msg", "该用户名已经存在,请重新输入!");
return ret;
}
/**
* 添加进货退货单信息
* @param orderInReback
* @return
*/
@RequestMapping(value="add",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> add(String productList,OrderInReback orderInReback,HttpServletRequest request){
Map<String, String> ret = new HashMap<String, String>();
if(StringUtils.isEmpty(productList)){
ret.put("type", "error");
ret.put("msg", "请至少选择一个商品信息!");
return ret;
}
if(orderInReback == null){
ret.put("type", "error");
ret.put("msg", "请填写正确的进货退货单信息!");
return ret;
}
JSONArray productArray = JSONArray.fromObject(productList);
float money = 0;
int num = 0;
List<Stock> stockList = new ArrayList<Stock>();
for(int i = 0; i < productArray.size(); i++){
JSONObject jsonObject = productArray.getJSONObject(i);
OrderInRebackDetail orderInRebackDetail = new OrderInRebackDetail();
orderInRebackDetail.setProductName(jsonObject.getString("name"));
orderInRebackDetail.setProductNum(jsonObject.getInt("productNum"));
orderInRebackDetail.setPrice(Float.valueOf(jsonObject.getString("price")));
orderInRebackDetail.setMoney(orderInRebackDetail.getPrice() * orderInRebackDetail.getProductNum());
orderInReback.getOrderInRebackDetailList().add(orderInRebackDetail);
money += orderInRebackDetail.getMoney();
num += orderInRebackDetail.getProductNum();
Stock stock = new Stock();
stock.setProductId(Long.valueOf(jsonObject.getInt("id")+""));
stock.setProductNum(orderInRebackDetail.getProductNum());
stock.setCreateTime(new Date());
stock.setSellNum(0);
stockList.add(stock);
}
float money = 0;
int num = 0;
List<Stock> stockList = new ArrayList<Stock>();
for(int i = 0; i < productArray.size(); i++){
JSONObject jsonObject = productArray.getJSONObject(i);
OrderInRebackDetail orderInRebackDetail = new OrderInRebackDetail();
orderInRebackDetail.setProductName(jsonObject.getString("name"));
orderInRebackDetail.setProductNum(jsonObject.getInt("productNum"));
orderInRebackDetail.setPrice(Float.valueOf(jsonObject.getString("price")));
orderInRebackDetail.setMoney(orderInRebackDetail.getPrice() * orderInRebackDetail.getProductNum());
orderInReback.getOrderInRebackDetailList().add(orderInRebackDetail);
money += orderInRebackDetail.getMoney();
num += orderInRebackDetail.getProductNum();
Stock stock = new Stock();
stock.setProductId(Long.valueOf(jsonObject.getInt("id")+""));
stock.setProductNum(orderInRebackDetail.getProductNum());
stock.setCreateTime(new Date());
stock.setSellNum(0);
stockList.add(stock);
}
orderInReback.setMoney(money);
orderInReback.setProductNum(num);
User admin = (User)request.getSession().getAttribute("admin");
orderInReback.setOperator(admin.getUsername());
orderInReback.setCreateTime(new Date());
if(orderInRebackService.add(orderInReback) <= 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(OrderInReback orderInReback){
Map<String, String> ret = new HashMap<String, String>();
if(orderInReback == null){
ret.put("type", "error");
ret.put("msg", "请选择正确的进货退货单信息!");
return ret;
}
orderInReback.setStatus(1);
}
}
package com.demo.controller;
/**
* 供应商管理控制器
*
*/
@RequestMapping("/admin/supplier")
@Controller
public class SupplierController {
@Autowired
private SupplierService supplierService;
/**
* 供应商管理列表页面
* @param model
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.GET)
public ModelAndView list(ModelAndView model){
model.setViewName("supplier/list");
return model;
}
/**
* 模糊搜索分页获取供应商信息
* @return
/**
* 商品库存管理控制器
*
*/
@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)
public void afterCompletion(HttpServletRequest arg0,
HttpServletResponse arg1, Object arg2, Exception arg3)
throws Exception {
// TODO Auto-generated method stub
}
@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));
}
queryMap.put("offset", page.getOffset());
queryMap.put("pageSize", page.getRows());
ret.put("total", orderInRebackService.getTotal(queryMap));
ret.put("rows", orderInRebackService.findList(queryMap));
return ret;
}
/**
* 添加进货退货单信息
* @param orderInReback
* @return
*/
@RequestMapping(value="add",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> add(String productList,OrderInReback orderInReback,HttpServletRequest request){
Map<String, String> ret = new HashMap<String, String>();
if(StringUtils.isEmpty(productList)){
ret.put("type", "error");
ret.put("msg", "请至少选择一个商品信息!");
return ret;
}
if(orderInReback == null){
ret.put("type", "error");
ret.put("msg", "请填写正确的进货退货单信息!");
return ret;
}
JSONArray productArray = JSONArray.fromObject(productList);
float money = 0;
int num = 0;
List<Stock> stockList = new ArrayList<Stock>();
for(int i = 0; i < productArray.size(); i++){
JSONObject jsonObject = productArray.getJSONObject(i);
OrderInRebackDetail orderInRebackDetail = new OrderInRebackDetail();
orderInRebackDetail.setProductName(jsonObject.getString("name"));
orderInRebackDetail.setProductNum(jsonObject.getInt("productNum"));
orderInRebackDetail.setPrice(Float.valueOf(jsonObject.getString("price")));
orderInRebackDetail.setMoney(orderInRebackDetail.getPrice() * orderInRebackDetail.getProductNum());
orderInReback.getOrderInRebackDetailList().add(orderInRebackDetail);
money += orderInRebackDetail.getMoney();
num += orderInRebackDetail.getProductNum();
Stock stock = new Stock();
stock.setProductId(Long.valueOf(jsonObject.getInt("id")+""));
stock.setProductNum(orderInRebackDetail.getProductNum());
stock.setCreateTime(new Date());
stock.setSellNum(0);
stockList.add(stock);
}
*/
@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);
}
if(productNum != null){
queryMap.put("productNum", productNum);
}
queryMap.put("offset", page.getOffset());
queryMap.put("pageSize", page.getRows());
ret.put("total", stockService.getTotal(queryMap));
ret.put("rows", stockService.findList(queryMap));
return ret;
}
/**
* 编辑商品库存信息
* @param stock
* @return
*/
@RequestMapping(value="edit",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,
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;
}
/**
* 上传图片
* @param photo
* @param request
* @return
*/
@RequestMapping(value="/upload_photo",method=RequestMethod.POST)
@ResponseBody
if(roleService.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;
}
/**
* 获取所有的菜单信息
* @return
*/
@RequestMapping(value="/get_all_menu",method=RequestMethod.POST)
@ResponseBody
public List<Menu> getAllMenu(){
Map<String, Object> queryMap = new HashMap<String, Object>();
queryMap.put("offset", 0);
queryMap.put("pageSize", 99999);
return menuService.findList(queryMap);
}
/**
* 添加权限
* @param ids
* @return
*/
@RequestMapping(value="/add_authority",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> addAuthority(
@RequestParam(name="ids",required=true) String ids,
@RequestParam(name="roleId",required=true) Long roleId
){
Map<String,String> ret = new HashMap<String, String>();
}
stockService.edit(existStock);
}
}
}
}
package com.demo.controller;
/**
* 销售单管理控制器
*
*/
@RequestMapping("/admin/sell")
/**
* 商品管理控制器
*
*/
@RequestMapping("/admin/product")
@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;
}
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(OrderInReback orderInReback){
Map<String, String> ret = new HashMap<String, String>();
if(orderInReback == null){
ret.put("type", "error");
ret.put("msg", "请选择正确的进货退货单信息!");
return ret;
}
orderInReback.setStatus(1);
if(orderInRebackService.edit(orderInReback) <= 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);
}
}
package com.demo.controller;
/**
* 销售退货单管理控制器
*
*/
@RequestMapping("/admin/sell_reback")
@Controller
public class SellRebackController {
@Autowired
private SellRebackService sellRebackService;
@Autowired
private StockService stockService;
/**
* 销售退货单管理列表页面
* @param model
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.GET)
request.getSession().setAttribute(cpachaType, generatorVCode);
BufferedImage generatorRotateVCodeImage = cpachaUtil.generatorRotateVCodeImage(generatorVCode, true);
try {
ImageIO.write(generatorRotateVCodeImage, "gif", response.getOutputStream());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package com.demo.controller;
/**
* 用户管理控制器
*
*/
@RequestMapping("/admin/user")
@Controller
public class UserController {
@Autowired
private UserService userService;
@Autowired
private RoleService roleService;
/**
* 用户列表页面
* @param model
* @return
*/
@RequestMapping(value="/list",method=RequestMethod.GET)
public ModelAndView list(ModelAndView model){
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(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);
}
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;
}
/**
* 上传图片
* @param photo
* @param request
* @return
*/
@RequestMapping(value="/upload_photo",method=RequestMethod.POST)
@ResponseBody
public Map<String, String> uploadPhoto(MultipartFile photo,HttpServletRequest request){
Map<String, String> ret = new HashMap<String, String>();
if(photo == null){
ret.put("type", "error");
ret.put("msg", "选择要上传的文件!");
return ret;
}
if(photo.getSize() > 1024*1024*1024){
ret.put("type", "error");
ret.put("msg", "文件大小不能超过10M!");
return ret;
}
//获取文件后缀
String suffix = photo.getOriginalFilename().substring(photo.getOriginalFilename().lastIndexOf(".")+1,photo.getOriginalFilename().length());
if(!"jpg,jpeg,gif,png".toUpperCase().contains(suffix.toUpperCase())){
ret.put("type", "error");
ret.put("msg", "请选择jpg,jpeg,gif,png格式的图片!");
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 {
//将文件保存至指定目录
* @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;
}
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.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){
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
public Map<String, String> add(Product product){
@RequestMapping("/admin/log")
@Controller
public class LogController {
@Autowired
private LogService logService;
/**
* 日志列表页面
* @param model
* @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>();
/**
* 系统操作类控制器
*
*/
@Controller
@RequestMapping("/system")
public class SystemController {
@Autowired
if(!"jpg,jpeg,gif,png".toUpperCase().contains(suffix.toUpperCase())){
ret.put("type", "error");
ret.put("msg", "请选择jpg,jpeg,gif,png格式的图片!");
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;
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);
}
}
}
}
package com.demo.controller;
// 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;
}
if("".equals(msg)){
msg = "全部导入成功";
}
ret.put("type", "success");
ret.put("msg", msg);
return ret;
}
private String addProductByFile(Long supplierId,InputStream inputStream){
String msg = "";
try {
HSSFWorkbook hssfWorkbook = new HSSFWorkbook(inputStream);
HSSFSheet sheetAt = hssfWorkbook.getSheetAt(0);
//去掉表头,送第二行开始读
if(sheetAt.getLastRowNum() <= 0){
msg = "文件内容为空!";
}
System.out.println(sheetAt.getLastRowNum());
for(int rowIndex = 1; rowIndex <= sheetAt.getLastRowNum(); rowIndex++){
HSSFRow row = sheetAt.getRow(rowIndex);
Product product = new Product();
if(row.getCell(0) == null){
msg += "第" + (rowIndex+1) + "行商品名称为空,跳过!\n";
continue;
}
String name = row.getCell(0).getStringCellValue();
product.setName(name);
product.setPlace(row.getCell(1) == null ? "" : row.getCell(1).getStringCellValue());
product.setSpec(row.getCell(2) == null ? "" : row.getCell(2).getStringCellValue());
product.setPk(row.getCell(3) == null ? "" : row.getCell(3).getStringCellValue());
product.setUnit(row.getCell(4) == null ? "" : row.getCell(4).getStringCellValue());
if(row.getCell(5) == null){
msg += "第" + (rowIndex+1) + "行商品价格为空,跳过!\n";
continue;
}
try {
Double priceDouble = row.getCell(5).getNumericCellValue();
float price = Float.valueOf(priceDouble+"");
product.setPrice(price);
} catch (Exception e) {
// TODO: handle exception
msg += "第" + (rowIndex+1) + "行商品价格格式错误,跳过!\n";