——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7、Node.js≥14
开发工具
后端:eclipse/idea/myeclipse/sts等均可配置运行
前端:WebStorm/VSCode/HBuilderX等均可
❗没学过node.js的不要搞前后端分离项目
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SpringBoot便利店信息管理系统(java+springboot+mybaits+vue+elementui+mysql)
项目介绍
基于Springboot+vue实现的便利店信息管理系统
系统包含员工、管理员两个角色
员工:登录、个人中心、供应商信息管理、商品管理、收银管理等功能
管理员:登录、个人中心、基础数据管理、供应商信息管理、商品管理、采购管理、收银管理、员工管理等功能
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
4.数据库:MySql 5.7/8.0版本均可;
5.是否Maven项目:是;
技术栈
后端:SpringBoot+Mybaits
前端:Vue+elementui
使用说明
项目运行:
使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件;
使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令;
将项目中application.yml配置文件中的数据库配置改为自己的配置;
4.运行项目,在浏览器中输入地址:
后台登录页面
http://localhost:8080/bianlidian/admin/dist/index.html#/login
管理员账户:admin 密码:admin
员工:a1 密码:123456
文档结构展示:
登录展示页面:
供应商管理页面:
商品管理展示:
采购管理展示页面:
采购管理展示:
收报管理展示:
收报详情展示:
员工管理展示:
——————————CodeStart——————————
品类信息控制层:
/**
前端控制器
*/
@RestController
@RequestMapping(“/category”)
public class CategoryController {
@Autowired
private CategoryService categoryService;
/**
类别模糊查询
@param
@return
*/
@SysLog(“类别查询操作”)
@RequestMapping(“/categoryList”)
public DataGridViewResult categoryList(CategoryVO categoryVO) {
//创建分页信息 参数1 当前页 参数2 每页显示条数
IPage
QueryWrapper
queryWrapper.like(!StringUtils.isEmpty(categoryVO.getCatename()),”catename”, categoryVO.getCatename());
IPage
/**
logsIPage.getTotal() 总条数
logsIPage.getRecords() 分页记录列表
*/
return new DataGridViewResult(categoryIPage.getTotal(),categoryIPage.getRecords());
/**
类别批量删除
@param ids
@return
*/
@SysLog(“类别删除操作”)
@RequestMapping(“/deleteList”)
public Result deleteList(String ids) {
//将字符串拆分成数组
String[] idsStr = ids.split(“,”);
List
boolean bool = categoryService.removeByIds(list);
if(bool){
return Result.success(true,”200”,”删除成功!”);
return Result.error(false,null,”删除失败!”);
/**
添加类别信息
@param category
@return
*/
@SysLog(“类别添加操作”)
@PostMapping(“/addcategory”)
public Result addCategory(Category category){
boolean bool = categoryService.save(category);
if(bool){
return Result.success(true,”200”,”添加成功!”);
return Result.error(false,null,”添加失败!”);
/**
修改类别信息
@param category
@return
*/
@SysLog(“类别修改操作”)
@PostMapping(“/updatecategory”)
public Result updateCategory(Category category){
boolean bool = categoryService.updateById(category);
if(bool){
return Result.success(true,”200”,”修改成功!”);
return Result.error(false,null,”修改失败!”);
/**
删除单条数据
@param id
@return
*/
@SysLog(“类别删除操作”)
@RequestMapping(“/deleteOne”)
public Result deleteOne(int id) {
boolean bool = categoryService.removeById(id);
if(bool){
return Result.success(true,”200”,”删除成功!”);
return Result.error(false,null,”删除失败!”);
用户信息控制层:
/**
前端控制器
*/
@RestController
@RequestMapping(“/customer”)
public class CustomerController {
@Autowired
private CustomerService customerService;
/**
客户模糊查询
@param
@return
*/
@SysLog(“客户查询操作”)
@RequestMapping(“/customerList”)
public DataGridViewResult customerList(CustomerVO customerVO) {
//创建分页信息 参数1 当前页 参数2 每页显示条数
IPage
QueryWrapper
queryWrapper.like(!StringUtils.isEmpty(customerVO.getCustvip()),”custvip”, customerVO.getCustvip());
IPage
/**
logsIPage.getTotal() 总条数
logsIPage.getRecords() 分页记录列表
*/
return new DataGridViewResult(customerIPage.getTotal(),customerIPage.getRecords());
/**
客户批量删除
@param ids
@return
*/
@SysLog(“客户删除操作”)
@RequestMapping(“/deleteList”)
public Result deleteList(String ids) {
//将字符串拆分成数组
String[] idsStr = ids.split(“,”);
List
boolean bool = customerService.removeByIds(list);
if(bool){
return Result.success(true,”200”,”删除成功!”);
return Result.error(false,null,”删除失败!”);
/**
添加客户信息
@param customer
@return
*/
@SysLog(“客户添加操作”)
@PostMapping(“/addcustomer”)
public Result addCustomer(Customer customer){
String id = RandomStringUtils.randomAlphanumeric(10);
customer.setCustvip(id);
boolean bool = customerService.save(customer);
if(bool){
return Result.success(true,”200”,”添加成功!”);
return Result.error(false,null,”添加失败!”);
/**
修改客户信息
@param customer
@return
*/
@SysLog(“客户修改操作”)
@PostMapping(“/updatecustomer”)
public Result updateCustomer(Customer customer){
boolean bool = customerService.updateById(customer);
if(bool){
return Result.success(true,”200”,”修改成功!”);
return Result.error(false,null,”修改失败!”);
/**
删除单条数据
@param id
@return
*/
@SysLog(“客户删除操作”)
@RequestMapping(“/deleteOne”)
public Result deleteOne(int id) {
boolean bool = customerService.removeById(id);
if(bool){
return Result.success(true,”200”,”删除成功!”);
return Result.error(false,null,”删除失败!”);
/**
加载下拉框
@return
*/
@RequestMapping(“/loadAllCustomer”)
public DataGridViewResult loadAllCustomer(){
QueryWrapper
List
return new DataGridViewResult(list);
商品信息控制层:
/**
前端控制器
*/
@RestController
@RequestMapping(“/goods”)
public class GoodsController {
@Autowired
private GoodsService goodsService;
@Autowired
private ProviderService providerService;
@Autowired
private CategoryService categoryService;
/**
商品模糊查询
@param
@return
*/
@SysLog(“商品查询操作”)
@RequestMapping(“/goodsList”)
public DataGridViewResult goodsList(GoodsVO goodsVO) {
//创建分页信息 参数1 当前页 参数2 每页显示条数
IPage
QueryWrapper
queryWrapper.eq(goodsVO.getProviderid() != null && goodsVO.getProviderid() != 0, “providerid”, goodsVO.getProviderid());
queryWrapper.like(!StringUtils.isEmpty(goodsVO.getGname()), “gname”, goodsVO.getGname());
IPage
List
for (Goods goods : records) {
Provider provider = providerService.getById(goods.getProviderid());
if (null != provider) {
goods.setProvidername(provider.getProvidername());
return new DataGridViewResult(goodsIPage.getTotal(), records);
/**
添加商品信息
@param goods
@return
*/
@SysLog(“商品添加操作”)
@PostMapping(“/addgoods”)
public Result addGoods(Goods goods) {
String id = RandomStringUtils.randomAlphanumeric(8);
if (goods.getGoodsimg()!=null&&goods.getGoodsimg().endsWith(“_temp”)){
String newName = AppFileUtils.renameFile(goods.getGoodsimg());
goods.setGoodsimg(newName);
goods.setGnumbering(id);
boolean bool = goodsService.save(goods);
if (bool) {
return Result.success(true, “200”, “添加成功!”);
return Result.error(false, null, “添加失败!”);
/**
修改商品信息
@param goods
@return
*/
@SysLog(“商品修改操作”)
@PostMapping(“/updategoods”)
public Result updateGoods(Goods goods) {
//商品图片不是默认图片
if (!(goods.getGoodsimg()!=null&&goods.getGoodsimg().equals(Constast.DEFAULT_IMG))){
if (goods.getGoodsimg().endsWith(“_temp”)){
String newName = AppFileUtils.renameFile(goods.getGoodsimg());
goods.setGoodsimg(newName);
//删除原先的图片
String oldPath = goodsService.getById(goods.getGid()).getGoodsimg();
AppFileUtils.removeFileByPath(oldPath);
boolean bool = goodsService.updateById(goods);
if (bool) {
return Result.success(true, “200”, “修改成功!”);
return Result.error(false, null, “修改失败!”);
/**
删除单条数据
@param id
@return
*/
@SysLog(“商品删除操作”)
@RequestMapping(“/deleteOne”)
public Result deleteOne(int id) {
boolean bool = goodsService.removeById(id);
if (bool) {
return Result.success(true, “200”, “删除成功!”);
return Result.error(false, null, “删除失败!”);
/**
根据id查询当前商品拥有的类别
@param id
@return
*/
@RequestMapping(“/initGoodsByCategoryId”)
public DataGridViewResult initGoodsByCategoryId(int id) {
List<Map<String, Object>> mapList = null;
try {
//查询所有类别列表
mapList = categoryService.listMaps();
//根据商品id查询商品拥有的类别
Set
for (Map<String, Object> map : mapList) {
//定义标记 默认不选中
boolean flag = false;
int cateId = (int) map.get(“cateid”);
for (Integer cid : cateIdList) {
if (cid == cateId) {
flag = true;
break;
map.put(“LAY_CHECKED”, flag);
} catch (Exception e) {
e.printStackTrace();
return new DataGridViewResult(Long.valueOf(mapList.size()), mapList);
/**
根据商品id加载商品信息
@param goodsid
@return
*/
@GetMapping(“/loadGoodsById”)
public DataGridViewResult loadGoodsById(int goodsid) {
QueryWrapper
goodsQueryWrapper.eq(goodsid != 0, “gid”, goodsid);
Goods goods = goodsService.getById(goodsid);
return new DataGridViewResult(goods);
/**
为商品分配类别
@param categoryids
@param goodsid
@return
*/
@SysLog(“类别添加操作”)
@RequestMapping(“/saveGoodsCategory”)
public Result saveGoodsCategory(String categoryids, int goodsid) {
try {
if (goodsService.saveGoodsCategory(goodsid, categoryids)) {
return Result.success(true, null, “分配成功”);
} catch (Exception e) {
e.printStackTrace();
return Result.error(false, null, “分配失败”);
/**
加载下拉框
@return
*/
@RequestMapping(“/loadAllGoods”)
public DataGridViewResult loadAllGoods() {
QueryWrapper
List
return new DataGridViewResult(list);
/**
根据供应商查商品下拉框
@param providerid
@return
*/
@RequestMapping(“/loadGoodsByProvidreId”)
public DataGridViewResult loadGoodsByProvidreId(Integer providerid) {
QueryWrapper
goodsQueryWrapper.eq(providerid != null, “providerid”, providerid);
List
for (Goods goods : list) {
Provider provider = providerService.getById(goods.getProviderid());
if (null != provider) {
goods.setProvidername(provider.getProvidername());
return new DataGridViewResult(list);
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=231524512608201mw
https://javayms.pages.dev?id=231524512608201mw