随着社会经济的发展,企业的经营管理也随着不断进步,企业竞争的焦点不单是资金、资源和人才的竞争,还包括自身管理的提高,成本的降低。超市管理 已经成为企业管理的重要内容,在传统的人工超市管理中,管理人员需要花费大 量的时间在货物的统计中,致使工作效率低下。现今随着计算机使用的普及和技术的发展,利用计算机实现超市管理已经成为共识。目前,大型超市作为社会零售业态中最为重要的组成部分,处于社会零售商业 进入高速发展的轨道阶段,其在社会经济发展的作用日益明显。国内各大大型基本 上都拥有自己的社会网,将社会超市管理纳入网络管理系统,实现实际业务需求, 提高管理水平和工作效率,具有十分重要的现实意义。
生鲜超市管理系统的是典型的信息管理系统,主要由货物信息管理模块、出库 管理模块、订单管理模块、系统设置模块构成。使用B/S三层架构设计,利用MVC模式的数据接口对数据库进行操作。本系统的主要特点在于通过利用Web的方式实现了超市管理的扩展,为用户提供了多渠道的接入方式。并且预留升级空间,功能扩展性大。操作界面简捷,适合不同层次人员使用。针对B/S模式的特点,相应增 强了系统的安全性设计。
本文主要介绍生鲜超市管理系统的分析、设计和实现。针对超市管理自身的特点 从体系结构、系统分析设计、数据库设计等方面进行考虑,目的是建立一个安全稳定、扩展方便、维护便利的应用系统。重点介绍了对信息管理模块、出库管理模块和系统设置模块进行的分析和设计及实现过程。系统安装使用后改善了原先手工录入的繁琐,提高了工作效率,达到了系统 设计目标,由于使用B/S架构和模块化设计,系统的功能可以随着使用的需求不 断增加和完善。
【556】基于springboot生鲜超市管理系统源码和论文
关键词:生鲜超市管理系统;B/S ssm架构;mysql
package com.bs.yzm.controller;
import com.bs.yzm.entity.vo.CategoryCountVO;
import com.bs.yzm.entity.vo.OrderCategoryCountVO;
import com.bs.yzm.entity.vo.SupplierCategoryVO;
import com.bs.yzm.service.intf.UserService;
import com.bs.yzm.service.intf.YzmCategoryService;
import com.bs.yzm.service.intf.YzmOrderService;
import com.bs.yzm.service.intf.YzmProductService;
import com.bs.yzm.service.intf.YzmSupplierCategoryService;
import com.bs.yzm.service.intf.YzmSupplierService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import javax.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author pzh
* createTime:2021/12/01/14:04
*/
@Slf4j
@RestController
@RequestMapping("api/count")
@Api(tags = "统计操作接口")
public class StatisticalController {
@Resource
private UserService userService;
@Resource
private YzmOrderService yzmOrderService;
@Resource
private YzmProductService yzmProductService;
@Resource
private YzmSupplierService yzmSupplierService;
@Resource
private YzmCategoryService yzmCategoryService;
@Resource
private YzmSupplierCategoryService yzmSupplierCategoryService;
@GetMapping("/users")
@ApiOperation("返回订单总数")
public ResponseEntity<Integer> getUserCount() {
return new ResponseEntity<>(userService.count(), HttpStatus.OK);
}
@GetMapping("/orders")
@ApiOperation("返回订单总数")
public ResponseEntity<Integer> getOrderCount() {
return new ResponseEntity<>(yzmOrderService.count(), HttpStatus.OK);
}
@GetMapping("/products")
@ApiOperation("返回订单总数")
public ResponseEntity<Integer> getProductCount() {
return new ResponseEntity<>(yzmProductService.count(), HttpStatus.OK);
}
@GetMapping("/suppliers")
@ApiOperation("返回订单总数")
public ResponseEntity<Integer> getSupplierCount() {
return new ResponseEntity<>(yzmSupplierService.count(), HttpStatus.OK);
}
@GetMapping("/category/product")
@ApiOperation("返回订单总数")
public ResponseEntity<List<CategoryCountVO>> selectCategoryProductCount() {
return new ResponseEntity<>(yzmCategoryService.selectCategoryCountVO(), HttpStatus.OK);
}
@GetMapping("/category/order")
@ApiOperation("返回订单总数")
public ResponseEntity<List<OrderCategoryCountVO>> selectOrderCategoryCount() {
return new ResponseEntity<>(yzmOrderService.selectCategoryCountVO(), HttpStatus.OK);
}
@GetMapping("/supplier/category")
@ApiOperation("返回订单总数")
public ResponseEntity<List<SupplierCategoryVO>> selectSupplierCategoryCount() {
return new ResponseEntity<>(yzmSupplierCategoryService.selectSupplierCategoryCountList(),
HttpStatus.OK);
}
}
package com.bs.yzm.controller;
import com.bs.yzm.entity.common.LayPage;
import com.bs.yzm.entity.dto.ProductFormDto;
import com.bs.yzm.entity.dto.ProductSearchDto;
import com.bs.yzm.entity.vo.YzmProductVo;
import com.bs.yzm.service.intf.YzmProductService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import javax.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
* @author pzh
* createTime:2022/01/26/9:37
*/
@Slf4j
@RestController
@Api(tags = "产品模块操作接口")
@RequestMapping("api/v1/product")
public class ProductController {
@Resource
private YzmProductService yzmProductService;
@GetMapping("/list")
@ApiOperation("返回供应商详情分页接口")
public LayPage<YzmProductVo> selectSupplierList(
@RequestParam Integer page, @RequestParam Integer limit) {
log.info("page is {},limit is {}", page, limit);
return yzmProductService.selectPageList(page, limit);
}
@PostMapping()
@ApiOperation("添加生鲜接口")
public ResponseEntity<Boolean> insertFresh(
@RequestBody ProductFormDto productFormDto) {
return new ResponseEntity<>(yzmProductService.saveProduceByCategory(productFormDto.convertProduct()),
HttpStatus.OK);
}
@PostMapping("/update")
@ApiOperation("更新供应商信息")
public ResponseEntity<Boolean> updateProduct(
@RequestBody ProductFormDto productFormDto) {
return new ResponseEntity<>(yzmProductService.updateById(productFormDto.convertProduct()),
HttpStatus.OK);
}
@PostMapping("/search")
@ApiOperation("根据不同条件查询供应商信息")
public LayPage<YzmProductVo> searchSupplier(@RequestBody ProductSearchDto productSearchDto) {
return yzmProductService.searchByProductCondition(productSearchDto);
}
@PostMapping("/del")
@ApiOperation("删除产品信息")
public ResponseEntity<Boolean> deleteProduct(@RequestBody List<Long> productIdList) {
return new ResponseEntity<>(yzmProductService.removeByIds(productIdList), HttpStatus.OK);
}
}
package com.bs.yzm.controller;
import com.bs.yzm.entity.common.LayPage;
import com.bs.yzm.entity.dto.NOrderDto;
import com.bs.yzm.entity.dto.OrderFormDto;
import com.bs.yzm.entity.dto.OrderSearchDto;
import com.bs.yzm.entity.pojo.YzmOrder;
import com.bs.yzm.entity.vo.OrderPageVO;
import com.bs.yzm.service.intf.YzmOrderService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import javax.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
* @author pzh
*/
@Slf4j
@RestController
@Api(tags = "供应商模块操作接口")
@RequestMapping("api/v1/order")
public class OrderController {
@Resource
private YzmOrderService yzmOrderService;
@GetMapping("/list")
@ApiOperation("返回订单详情分页接口")
public LayPage<OrderPageVO> selectSupplierList(
@RequestParam Integer page, @RequestParam Integer limit) {
log.info("page is {},limit is {}", page, limit);
return yzmOrderService.selectPageList(page, limit);
}
@PostMapping("/search")
@ApiOperation("根据不同条件查询订单")
public LayPage<OrderPageVO> searchOrder(@RequestBody OrderSearchDto orderSearchDto) {
return yzmOrderService.searchByOrderCondition(orderSearchDto);
}
@PostMapping("/update")
@ApiOperation("更新订单")
public ResponseEntity<Boolean> updateOrder(
@RequestBody OrderFormDto orderFormDto) {
YzmOrder yzmOrder = new YzmOrder();
BeanUtils.copyProperties(orderFormDto, yzmOrder);
return new ResponseEntity<>(yzmOrderService.updateById(yzmOrder), HttpStatus.OK);
}
@PostMapping("/del")
@ApiOperation("删除订单")
public ResponseEntity<Boolean> deleteOrder(@RequestBody List<Long> idList) {
log.info("delete order id list is {}", idList);
return new ResponseEntity<>(yzmOrderService.removeByIds(idList), HttpStatus.OK);
}
@PostMapping("")
@ApiOperation("创建订单")
public ResponseEntity<Boolean> createOrder(@RequestBody NOrderDto nOrderDto) {
return new ResponseEntity<>(yzmOrderService.createOrder(nOrderDto), HttpStatus.OK);
}
}