基于javaweb+mysql的springboot超市进销存管理系统(java+springboot+html+layui+echarts+mysql+maven)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SpringBoot超市进销存管理系统(java+springboot+html+layui+echarts+mysql+maven)
项目介绍
超市进销存管理系统,分为管理员与普通员工两种角色;
管理员主要功能包括:
员工管理:员工的添加、编辑、删除;
普通员工主要功能包括:
供应商管理:供应商的添加、删除、修改;
商品管理:商品种类管理、商品信息管理;
库存管理;
订单管理;
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
4.数据库:MySql 5.7版本; 7.lombok 注:一定要安装,否则会有问题;
技术栈
-
后端:SpringBoot+Mybatis
-
前端:Html+jQuery+Layui+echarts
使用说明
管理员访问地址:http://localhost:8085/admin
员工访问地址:http://localhost:8085
/**
*/
@RestController
@RequestMapping(value = "/order")
public class OrderController {
private OrderService orderServiceImpl;
public OrderController(OrderService orderServiceImpl) {
this.orderServiceImpl = orderServiceImpl;
}
@PostMapping(value = "/addOrder")
public int addOrder(Order order, HttpServletRequest request) {
HttpSession session = request.getSession();
Employee emp = (Employee) session.getAttribute("emp");
order.setCreater(emp.getName());
order.setUpdater(emp.getName());
return orderServiceImpl.addOrder(order);
}
@PostMapping(value = "/delOrder/{id}")
public int delOrder(@PathVariable("id") int id) {
return orderServiceImpl.delOrder(id);
}
@PostMapping(value = "/updateOrder")
public int updateOrder(Order order, HttpServletRequest request) {
HttpSession session = request.getSession();
Employee emp = (Employee) session.getAttribute("emp");
order.setUpdater(emp.getName());
return orderServiceImpl.updateOrder(order);
}
@GetMapping(value = "/findAllOrdersByPage")
public PageInfo<Order> findAllOrdersByPage(PageInfo<Order> info,
@RequestParam(value = "no", defaultValue = "") String no) {
return orderServiceImpl.findAllOrdersByPage(info, no);
}
@GetMapping(value = "/findById/{id}")
public Order findById(@PathVariable("id") int id) {
return orderServiceImpl.findById(id);
}
public List<String> findAllGoodsByName(@RequestParam(value = "name", defaultValue = "") String name) {
return goodsServiceImpl.findAllGoodsByName(name);
}
}
/**
*/
@RestController
@RequestMapping(value = "/emp")
public class EmpController {
private Logger logger = LoggerFactory.getLogger(EmpController.class);
private final EmpService empServiceImpl;
public EmpController(EmpService empServiceImpl) {
this.empServiceImpl = empServiceImpl;
}
@PostMapping(value = "/login")
public int login(HttpServletRequest request, @RequestParam("name") String name,
@RequestParam("password") String password) {
HttpSession session = request.getSession();
Employee employee = new Employee();
employee.setName(name);
employee.setLock(1);
Employee emp = empServiceImpl.findEmpByCondition(employee);
if (emp != null && emp.getPassword().equals(Md5Tools.numberMd5(password))) {
session.setAttribute("emp", emp);
logger.info("【{}】登录成功,正在进行跳转······", emp.getName());
return GlobalConstant.SUCCESS;
}
return GlobalConstant.ERROR;
}
@PostMapping(value = "/addEmp")
}
/**
*/
@RestController
@RequestMapping(value = "/provider")
public class ProviderController {
private Logger logger = LoggerFactory.getLogger(ProviderController.class);
private ProviderService providerServiceImpl;
public ProviderController(ProviderService providerServiceImpl) {
this.providerServiceImpl = providerServiceImpl;
}
@PostMapping(value = "/addProvider")
public int addProvider(Provider provider) {
return providerServiceImpl.addProvider(provider);
}
@PostMapping(value = "/delProvider/{id}")
public int delProvider(@PathVariable("id") String id) {
return providerServiceImpl.delProvider(id);
}
@PostMapping(value = "/updateProvider")
public int updateProvider(Provider provider) {
return providerServiceImpl.updateProvider(provider);
}
@GetMapping(value = "/findById/{id}")
public Provider findById(@PathVariable("id") int id) {
*/
@RestController
@RequestMapping(value = "/goods")
public class GoodsController {
private Logger logger = LoggerFactory.getLogger(GoodsController.class);
private GoodsService goodsServiceImpl;
public GoodsController(GoodsService goodsServiceImpl) {
this.goodsServiceImpl = goodsServiceImpl;
}
@PostMapping(value = "/addGoodsType")
public int addGoodsType(GoodsType type) {
return goodsServiceImpl.addGoodsType(type);
}
@PostMapping(value = "/delGoodsType/{id}")
public int delGoodsType(@PathVariable("id") String id) {
return goodsServiceImpl.delGoodsType(id);
}
@PostMapping(value = "/updateGoodsType")
public int updateGoodsType(GoodsType type) {
return goodsServiceImpl.updateGoodsType(type);
}
@GetMapping(value = "/findById/{id}")
public GoodsType findById(@PathVariable("id") String id) {
return goodsServiceImpl.findById(id);
}
@GetMapping(value = "/findByName")
public GoodsType findByName(@RequestParam("name") String name) {
return goodsServiceImpl.findByName(name);
}
@GetMapping(value = "/findAllByPage")
public PageInfo<GoodsType> findAllByPage(PageInfo<GoodsType> info,
@RequestParam(value = "name", defaultValue = "") String name) {
return goodsServiceImpl.findAllByPage(info, name);
}
@GetMapping(value = "/getEcharts")
public Map<String, Object> getGoodsTypeEcharts() {
return goodsServiceImpl.getGoodsTypeEcharts();
@GetMapping(value = "/logout")
public String logout(HttpServletRequest request) {
HttpSession session = request.getSession();
Employee employee = (Employee) session.getAttribute("emp");
if (employee != null) {
session.removeAttribute("user");
session.invalidate();
logger.info("员工【{}】已退出登录,即将跳转", employee.getName());
}
return "redirect:/";
}
}
/**
*/
@RestController
@RequestMapping(value = "/provider")
public class ProviderController {
private Logger logger = LoggerFactory.getLogger(ProviderController.class);
private ProviderService providerServiceImpl;
public ProviderController(ProviderService providerServiceImpl) {
this.providerServiceImpl = providerServiceImpl;
}
@PostMapping(value = "/addProvider")
public int addProvider(Provider provider) {
return providerServiceImpl.addProvider(provider);
}
private GoodsService goodsServiceImpl;
public GoodsController(GoodsService goodsServiceImpl) {
this.goodsServiceImpl = goodsServiceImpl;
}
@PostMapping(value = "/addGoodsType")
public int addGoodsType(GoodsType type) {
return goodsServiceImpl.addGoodsType(type);
}
@PostMapping(value = "/delGoodsType/{id}")
public int delGoodsType(@PathVariable("id") String id) {
return goodsServiceImpl.delGoodsType(id);
}
@PostMapping(value = "/updateGoodsType")
public int updateGoodsType(GoodsType type) {
return goodsServiceImpl.updateGoodsType(type);
}
@GetMapping(value = "/findById/{id}")
public GoodsType findById(@PathVariable("id") String id) {
return goodsServiceImpl.findById(id);
}
@GetMapping(value = "/findByName")
public GoodsType findByName(@RequestParam("name") String name) {
return goodsServiceImpl.findByName(name);
}
@GetMapping(value = "/findAllByPage")
public PageInfo<GoodsType> findAllByPage(PageInfo<GoodsType> info,
@RequestParam(value = "name", defaultValue = "") String name) {
return goodsServiceImpl.findAllByPage(info, name);
}
@GetMapping(value = "/getEcharts")
public Map<String, Object> getGoodsTypeEcharts() {
return goodsServiceImpl.getGoodsTypeEcharts();
}
@RequestParam(value = "id", defaultValue = "") String id) {
return warehouseServiceImpl.findAllWarehouseByPage(info, id);
}
}
/**
*/
@RestController
@RequestMapping(value = "/goods")
public class GoodsController {
private Logger logger = LoggerFactory.getLogger(GoodsController.class);
private GoodsService goodsServiceImpl;
public GoodsController(GoodsService goodsServiceImpl) {
this.goodsServiceImpl = goodsServiceImpl;
}
@PostMapping(value = "/addGoodsType")
public int addGoodsType(GoodsType type) {
return goodsServiceImpl.addGoodsType(type);
}
@PostMapping(value = "/delGoodsType/{id}")
public int delGoodsType(@PathVariable("id") String id) {
return goodsServiceImpl.delGoodsType(id);
}
@PostMapping(value = "/updateGoodsType")
public int updateGoodsType(GoodsType type) {
return goodsServiceImpl.updateGoodsType(type);
}
}
@PostMapping(value = "/delGoods/{id}")
public int delGoods(@PathVariable("id") int id) {
return goodsServiceImpl.delGoods(id);
}
@PostMapping(value = "/updateGoods")
public int updateGoods(Goods goods) {
return goodsServiceImpl.updateGoods(goods);
}
@GetMapping(value = "/findGoodsByPage")
public PageInfo<Goods> findGoodsByPage(PageInfo<Goods> info,
@RequestParam(value = "type", defaultValue = "") String type,
@RequestParam(value = "name", defaultValue = "") String name) {
return goodsServiceImpl.findGoodsByPage(info, type, name);
}
@GetMapping(value = "/findGoodsById/{id}")
public Goods findGoodsById(@PathVariable("id") int id) {
return goodsServiceImpl.findGoodsById(id);
}
@GetMapping(value = "/findAllGoodsByName")
public List<String> findAllGoodsByName(@RequestParam(value = "name", defaultValue = "") String name) {
return goodsServiceImpl.findAllGoodsByName(name);
}
}
/**
@GetMapping(value = "/isLogin")
@ResponseBody
public Admin isLogin(HttpServletRequest request) {
HttpSession session = request.getSession();
return (Admin) session.getAttribute("admin");
}
@GetMapping(value = "/logout")
public String logout(HttpServletRequest request) {
HttpSession session = request.getSession();
session.removeAttribute("admin");
session.invalidate();
logger.info("管理员已退出登录");
return "redirect:/admin";
}
}
/**
*/
@RestController
@RequestMapping(value = "/order")
public class OrderController {
private OrderService orderServiceImpl;
public OrderController(OrderService orderServiceImpl) {
this.orderServiceImpl = orderServiceImpl;
}
@PostMapping(value = "/addOrder")
public int addOrder(Order order, HttpServletRequest request) {
HttpSession session = request.getSession();
Employee emp = (Employee) session.getAttribute("emp");
order.setCreater(emp.getName());
order.setUpdater(emp.getName());
return orderServiceImpl.addOrder(order);
}
@PostMapping(value = "/delOrder/{id}")
/**
* 管理员模块
*
*/
@Controller
@RequestMapping(value = "/admin")
public class AdminController {
private Logger logger = LoggerFactory.getLogger(AdminController.class);
private AdminService adminServiceImpl;
public AdminController(AdminService adminServiceImpl) {
this.adminServiceImpl = adminServiceImpl;
}
@GetMapping(value = "")
public String toAdmin() {
return "admin/login";
}
@GetMapping(value = "/emp")
public String toEmp() {
return "admin/emp";
}
@PostMapping(value = "/login")
@ResponseBody
public int login(HttpServletRequest request, @RequestParam("name") String name,
@RequestParam("password") String password) {
HttpSession session = request.getSession();
Admin admin = adminServiceImpl.findAdminByNameAndPwd(name, password);
if (admin != null) {
session.setAttribute("admin", admin);
@GetMapping(value = "/findById/{id}")
public GoodsType findById(@PathVariable("id") String id) {
return goodsServiceImpl.findById(id);
}
@GetMapping(value = "/findByName")
public GoodsType findByName(@RequestParam("name") String name) {
return goodsServiceImpl.findByName(name);
}
@GetMapping(value = "/findAllByPage")
public PageInfo<GoodsType> findAllByPage(PageInfo<GoodsType> info,
@RequestParam(value = "name", defaultValue = "") String name) {
return goodsServiceImpl.findAllByPage(info, name);
}
@GetMapping(value = "/getEcharts")
public Map<String, Object> getGoodsTypeEcharts() {
return goodsServiceImpl.getGoodsTypeEcharts();
}
@GetMapping(value = "/findAllType")
public List<GoodsType> findAllType() {
return goodsServiceImpl.findAllType();
}
@PostMapping(value = "/addGoods")
public int addGoods(Goods goods) {
return goodsServiceImpl.addGoods(goods);
}
@PostMapping(value = "/delGoods/{id}")
public int delGoods(@PathVariable("id") int id) {
return goodsServiceImpl.delGoods(id);
}
@PostMapping(value = "/updateGoods")
public int updateGoods(Goods goods) {
return goodsServiceImpl.updateGoods(goods);
}
@GetMapping(value = "/findGoodsByPage")
public PageInfo<Goods> findGoodsByPage(PageInfo<Goods> info,
@RequestParam(value = "type", defaultValue = "") String type,
@RequestParam(value = "name", defaultValue = "") String name) {
return goodsServiceImpl.findGoodsByPage(info, type, name);
}
@GetMapping(value = "/findGoodsById/{id}")
public Goods findGoodsById(@PathVariable("id") int id) {
public int login(HttpServletRequest request, @RequestParam("name") String name,
@RequestParam("password") String password) {
HttpSession session = request.getSession();
Employee employee = new Employee();
employee.setName(name);
employee.setLock(1);
Employee emp = empServiceImpl.findEmpByCondition(employee);
if (emp != null && emp.getPassword().equals(Md5Tools.numberMd5(password))) {
session.setAttribute("emp", emp);
logger.info("【{}】登录成功,正在进行跳转······", emp.getName());
return GlobalConstant.SUCCESS;
}
return GlobalConstant.ERROR;
}
@PostMapping(value = "/addEmp")
public int addEmp(Employee employee, HttpServletRequest request) {
HttpSession session = request.getSession();
Admin admin = (Admin) session.getAttribute("admin");
employee.setCreater(admin.getName());
employee.setUpdater(admin.getName());
return empServiceImpl.addEmp(employee);
}
@PostMapping(value = "/delEmp/{id}")
public int delEmp(@PathVariable("id") String id) {
return empServiceImpl.delEmp(id);
}
@PostMapping(value = "/updateEmp")
public int updateEmp(Employee employee, HttpServletRequest request) {
HttpSession session = request.getSession();
Admin admin = (Admin) session.getAttribute("admin");
employee.setCreater(admin.getName());
employee.setUpdater(admin.getName());
return empServiceImpl.updateEmp(employee);
}
@GetMapping(value = "/findAll")
public PageInfo<Employee> findAll(PageInfo<Employee> info,
@RequestParam(value = "name", defaultValue = "") String name) {
return empServiceImpl.findAll(info, name);
}
@GetMapping(value = "/findById/{id}")
public Employee findById(@PathVariable("id") int id) {
return empServiceImpl.findEmpByCondition(new Employee(id));
}
@GetMapping(value = "/findByName")
public Employee findByName(Employee employee) {
return empServiceImpl.findEmpByCondition(employee);
}
/**
*/
@RestController
@RequestMapping(value = "/order")
public class OrderController {
private OrderService orderServiceImpl;
public OrderController(OrderService orderServiceImpl) {
this.orderServiceImpl = orderServiceImpl;
}
@PostMapping(value = "/addOrder")
public int addOrder(Order order, HttpServletRequest request) {
HttpSession session = request.getSession();
Employee emp = (Employee) session.getAttribute("emp");
order.setCreater(emp.getName());
order.setUpdater(emp.getName());
return orderServiceImpl.addOrder(order);
}
@PostMapping(value = "/delOrder/{id}")
public int delOrder(@PathVariable("id") int id) {
return orderServiceImpl.delOrder(id);
}
@PostMapping(value = "/updateOrder")
public int updateOrder(Order order, HttpServletRequest request) {
HttpSession session = request.getSession();
Employee emp = (Employee) session.getAttribute("emp");
order.setUpdater(emp.getName());
return orderServiceImpl.updateOrder(order);
}
@GetMapping(value = "/findAllOrdersByPage")
public PageInfo<Order> findAllOrdersByPage(PageInfo<Order> info,
private final EmpService empServiceImpl;
public EmpController(EmpService empServiceImpl) {
this.empServiceImpl = empServiceImpl;
}
@PostMapping(value = "/login")
public int login(HttpServletRequest request, @RequestParam("name") String name,
@RequestParam("password") String password) {
HttpSession session = request.getSession();
Employee employee = new Employee();
employee.setName(name);
employee.setLock(1);
Employee emp = empServiceImpl.findEmpByCondition(employee);
if (emp != null && emp.getPassword().equals(Md5Tools.numberMd5(password))) {
session.setAttribute("emp", emp);
logger.info("【{}】登录成功,正在进行跳转······", emp.getName());
return GlobalConstant.SUCCESS;
}
return GlobalConstant.ERROR;
}
@PostMapping(value = "/addEmp")
public int addEmp(Employee employee, HttpServletRequest request) {
HttpSession session = request.getSession();
Admin admin = (Admin) session.getAttribute("admin");
employee.setCreater(admin.getName());
employee.setUpdater(admin.getName());
return empServiceImpl.addEmp(employee);
}
@PostMapping(value = "/delEmp/{id}")
public int delEmp(@PathVariable("id") String id) {
return empServiceImpl.delEmp(id);
}
@PostMapping(value = "/updateEmp")
public int updateEmp(Employee employee, HttpServletRequest request) {
HttpSession session = request.getSession();
Admin admin = (Admin) session.getAttribute("admin");
employee.setCreater(admin.getName());
employee.setUpdater(admin.getName());
@PostMapping(value = "/login")
@ResponseBody
public int login(HttpServletRequest request, @RequestParam("name") String name,
@RequestParam("password") String password) {
HttpSession session = request.getSession();
Admin admin = adminServiceImpl.findAdminByNameAndPwd(name, password);
if (admin != null) {
session.setAttribute("admin", admin);
logger.info("【{}】登录成功,正在跳转中···", admin.getName());
return GlobalConstant.SUCCESS;
}
return GlobalConstant.ERROR;
}
@GetMapping(value = "/isLogin")
@ResponseBody
public Admin isLogin(HttpServletRequest request) {
HttpSession session = request.getSession();
return (Admin) session.getAttribute("admin");
}
@GetMapping(value = "/logout")
public String logout(HttpServletRequest request) {
HttpSession session = request.getSession();
session.removeAttribute("admin");
session.invalidate();
logger.info("管理员已退出登录");
return "redirect:/admin";
}
}
/**
private GoodsService goodsServiceImpl;
public GoodsController(GoodsService goodsServiceImpl) {
this.goodsServiceImpl = goodsServiceImpl;
}
@PostMapping(value = "/addGoodsType")
public int addGoodsType(GoodsType type) {
return goodsServiceImpl.addGoodsType(type);
}
@PostMapping(value = "/delGoodsType/{id}")
public int delGoodsType(@PathVariable("id") String id) {
return goodsServiceImpl.delGoodsType(id);
}
@PostMapping(value = "/updateGoodsType")
public int updateGoodsType(GoodsType type) {
return goodsServiceImpl.updateGoodsType(type);
}
@GetMapping(value = "/findById/{id}")
public GoodsType findById(@PathVariable("id") String id) {
return goodsServiceImpl.findById(id);
}
@GetMapping(value = "/findByName")
public GoodsType findByName(@RequestParam("name") String name) {
return goodsServiceImpl.findByName(name);
}
@GetMapping(value = "/findAllByPage")
public PageInfo<GoodsType> findAllByPage(PageInfo<GoodsType> info,
@RequestParam(value = "name", defaultValue = "") String name) {
return goodsServiceImpl.findAllByPage(info, name);
}
@GetMapping(value = "/getEcharts")
public Map<String, Object> getGoodsTypeEcharts() {
return goodsServiceImpl.getGoodsTypeEcharts();
}
@GetMapping(value = "/findAllType")
public List<GoodsType> findAllType() {
@RequestParam(value = "no", defaultValue = "") String no) {
return orderServiceImpl.findAllOrdersByPage(info, no);
}
@GetMapping(value = "/findById/{id}")
public Order findById(@PathVariable("id") int id) {
return orderServiceImpl.findById(id);
}
}
/**
*/
@Controller
public class UrlController {
private Logger logger = LoggerFactory.getLogger(UrlController.class);
@GetMapping(value = "/")
public String toLogin() {
return "login";
}
@GetMapping(value = "/provider")
public String provider() {
return "provider";
}
@GetMapping(value = "/type")
public String type() {
return "goods/type";
}