赞
踩
基于JAVA+Vue+SpringBoot+MySQL的网上药店系统,包含了药品类型模块、药品档案模块、药品收藏模块、药品订单模块、药品资讯模块,还包含系统自带的用户管理、部门管理、角色管理、菜单管理、日志管理、数据字典管理、文件管理、图表展示等基础模块,网上药店系统基于角色的访问控制,给药店管理员、消费者使用,可将权限精确到按钮级别,您可以自定义角色并分配权限,系统适合设计精确的权限约束需求。
网上药店系统的功能性需求主要包含数据中心模块、药品类型模块、药品档案模块、药品订单模块、药品收藏模块和药品资讯模块这六大模块,系统是基于浏览器运行的web管理后端。
数据中心模块包含了网上药店系统的系统基础配置,如登录用户的管理、运营公司组织架构的管理、用户菜单权限的管理、系统日志的管理、公用文件云盘的管理。
其中登录用户管理模块,由管理员负责运维工作,管理员可以对登录用户进行增加、删除、修改、查询操作。
组织架构,指的是高校的组织架构,该模块适用于管理这些组织架构的部门层级和教师的部门归属情况。
用户菜单权限管理模块,用于管理不同权限的用户,拥有哪些具体的菜单权限。
系统日志的管理,用于维护用户登入系统的记录,方便定位追踪用户的操作情况。
公用云盘管理模块,用于统一化维护网上药店系统中的图片,如合同签订文件、合同照片等等。
不同的药品有着不同的类型,适合不同的患者使用,所以需要建立药品类型模块,药品类型的数据包括类型名称、类型状态、排序值、备注、创建人、创建时间、更新人、更新时间,管理员可以新增、删除、编辑和条件查询药品类型数据,用户可以查询管理员发布的药品类型数据。
药品是网上药店系统的核心实体,需要建立药品档案模块对管理员发布的药品数据进行管理,药品的字段包括药品名称、药品类型、药品介绍、药品图片、创建人、创建时间、更新人、更新时间,管理员可以新增、删除、编辑和条件查询药品数据,用户可以查询管理员发布的药品数据。
有了药品的数据之后,用户就可以对齐进行购买下单操作,药品订单的数据包括药品、下单状态、下单数量、付款状态、创建人、创建时间、更新人、更新时间,用户可以对药品进行加购、下单和付款操作,管理员可以对用户发起的药品订单进行条件查询。
为了更好的满足用户的个性化需求,网上药店系统支持用户对药品进行收藏,以便于快速的选择药品,药品收藏字段包括药品ID、药品名称、药品介绍、药品图片、收藏人、收藏时间、更新人、更新时间,用户可以对药品进行收藏、取消收藏操作,管理员可以查询用户的药品收藏数据。
为了更好的和用户去做交互,网上药店系统支持留言功能,留言的字段包括留言内容、留言人、留言时间、状态、备注、回复内容、回复时间、回复人,用户可以对药品发起留言,管理员可以对其进行回复,或进行删除留言操作。
@RequestMapping(value = "/getByPage", method = RequestMethod.GET) @ApiOperation(value = "查询药品") public Result<IPage<DishVariety>> getByPage(@ModelAttribute DishVariety dishVariety ,@ModelAttribute PageVo page){ QueryWrapper<DishVariety> qw = new QueryWrapper<>(); if(!ZwzNullUtils.isNull(dishVariety.getTitle())) { qw.like("title",dishVariety.getTitle()); } if(!ZwzNullUtils.isNull(dishVariety.getType())) { qw.eq("type",dishVariety.getType()); } if(!ZwzNullUtils.isNull(dishVariety.getContent())) { qw.like("content",dishVariety.getContent()); } IPage<DishVariety> data = iDishVarietyService.page(PageUtil.initMpPage(page),qw); User currUser = securityUtil.getCurrUser(); for (DishVariety vo : data.getRecords()) { QueryWrapper<DishCollect> collQw = new QueryWrapper<>(); collQw.eq("collect_id",currUser.getId()); collQw.eq("dish_id",vo.getId()); vo.setCollectFlag(iDishCollectService.count(collQw)); QueryWrapper<DishOrder> orderQw = new QueryWrapper<>(); orderQw.eq("dish_id",vo.getId()); orderQw.eq("status","已加购"); orderQw.last("limit 1"); DishOrder order = iDishOrderService.getOne(orderQw); vo.setBuyNumber(order == null ? BigDecimal.ZERO : order.getNumber()); } return new ResultUtil<IPage<DishVariety>>().setData(data); }
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询药品类型")
public Result<IPage<DishType>> getByPage(@ModelAttribute DishType dishType ,@ModelAttribute PageVo page){
QueryWrapper<DishType> qw = new QueryWrapper<>();
if(!ZwzNullUtils.isNull(dishType.getTitle())) {
qw.like("title",dishType.getTitle());
}
if(!ZwzNullUtils.isNull(dishType.getStatus())) {
qw.eq("status",dishType.getStatus());
}
IPage<DishType> data = iDishTypeService.page(PageUtil.initMpPage(page),qw);
return new ResultUtil<IPage<DishType>>().setData(data);
}
@RequestMapping(value = "/addOne", method = RequestMethod.GET) @ApiOperation(value = "新增收藏") public Result<DishCollect> addOne(@RequestParam String id){ DishVariety dish = iDishVarietyService.getById(id); if(dish == null) { return ResultUtil.error("药品不存在"); } User currUser = securityUtil.getCurrUser(); QueryWrapper<DishCollect> qw = new QueryWrapper<>(); qw.eq("dish_id",id); qw.eq("collect_id",currUser.getId()); if(iDishCollectService.count(qw) > 0L) { return ResultUtil.success(); } DishCollect dishCollect = new DishCollect(); dishCollect.setDishId(dish.getId()); dishCollect.setTitle(dish.getTitle()); dishCollect.setType(dish.getType()); dishCollect.setContent(dish.getContent()); dishCollect.setImage(dish.getImage()); dishCollect.setPrice(dish.getPrice()); dishCollect.setCollectId(currUser.getId()); dishCollect.setCollectName(currUser.getNickname()); dishCollect.setCollectTime(DateUtil.now()); iDishCollectService.saveOrUpdate(dishCollect); return ResultUtil.success(); }
@RequestMapping(value = "/addOne", method = RequestMethod.GET) @ApiOperation(value = "加购") public Result<DishOrder> addOne(@RequestParam String id, @RequestParam BigDecimal number){ DishVariety dish = iDishVarietyService.getById(id); if(dish == null) { return ResultUtil.error("药品不存在"); } User currUser = securityUtil.getCurrUser(); QueryWrapper<DishOrder> qw = new QueryWrapper<>(); qw.eq("dish_id",dish.getId()); qw.eq("status","已加购"); qw.eq("order_id",currUser.getId()); qw.last("limit 1"); DishOrder order = iDishOrderService.getOne(qw); if(order != null) { order.setNumber(order.getNumber().add(number)); iDishOrderService.saveOrUpdate(order); return ResultUtil.success(); } DishOrder o = new DishOrder(); o.setDishId(dish.getId()); o.setTitle(dish.getTitle()); o.setType(dish.getType()); o.setContent(dish.getContent()); o.setImage(dish.getImage()); o.setPrice(dish.getPrice()); o.setStatus("已加购"); o.setNumber(number); o.setOrderId(currUser.getId()); o.setOrderName(currUser.getNickname()); o.setOrderTime(DateUtil.now()); iDishOrderService.saveOrUpdate(o); return ResultUtil.success(); }
@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增药品留言")
public Result<Message> insert(Message message){
User currUser = securityUtil.getCurrUser();
message.setUserId(currUser.getId());
message.setUserName(currUser.getNickname());
message.setUserTime(DateUtil.now());
message.setReplyContent("");
message.setReplyName("");
message.setReplyTime("");
message.setReplyId("");
iMessageService.saveOrUpdate(message);
return new ResultUtil<Message>().setData(message);
}
下载本系统代码或使用本系统的用户,必须同意以下内容,否则请勿下载!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。