基于JAVA+SpringMVC+Mybatis+Vue+MYSQL的医药销售管理系统
创始人
2024-03-02 00:00:58
0

项目介绍

药品一直以来在人类生活中扮演着非常重要的角色,随着时代的飞速发展,人们基本已经告别了那个缺医少药的年代,各大药房基本随处都可以购买,但是很多时候因为没有时间或者在药店很难找到自己想要购买的药品,所以很多人选择了直接在网上购药,然后通过邮寄的方式直接将药品送到自己手里。

本系统从实际情况出发,并考虑用户的实际问题,采用当前比较流行的java语言来进行程序的设计,在数据库存储方面主要是使用mysql来进行存储通过本系统可以让患者尽快的找到所需的药品,并进行在线购买。

药品购买平台分为前台和后台两部分,其中前台部分主要是给用户使用的包括注册登录,查看药品信息,将药品加入到购物车,结算管理,订单管理,个人信息管理等功能;后台部分主要包括分类信息管理,药品信息管理,用户信息管理,订单信息管理等功能,通过这些功能可以让用户更加方便的找到所需的药品并进行购买,让管理员可以方便快捷的对订单信息进行管理。

本系统主要的研究内容有:
(1)走访长期用药人群,了解人们对药品购物的具体需求以及药品购买平台的具体流程,做出一定的思维导图。
(2)结合在校所学的java以及软件设计等相关知识,得出系统的详细设计和实现,最后对系统进行测试,测试完成之后最终交付用户使用。
(3)研究药品购买平台所需实现的功能,根据功能深入研究业务流程相关内容,对系统的每一个之间的关系和逻辑代码进行编写。

在这里插入图片描述通过本系统用户能够快速的找到所需的药品,并可以在登录后加入购物车,在结算后可以在订单中看到自己的订单信息等操作。本系统具体内容如下:
前台部分功能
1.注册登录,通过注册登录实现在线订餐的功能。
2.药品分类,用户可以通过点击不同药品分类,从而快速的找到自己所需的药品。
3.药品信息,用户可以通过搜索等方式找到自己所需的药品,并可以在登录后将其加入购物车。
4.购物车管理,用户在将药品加入购物车后可以对购物车的内容进行删除和结算等操作。
5.订单管理,用户可以在订单管理中对自己购买的药品进行管理操作
6.个人信息管理,用户可以对自己的个人信息进行管理。

后台部分功能
1.用户信息管理,对网站的注册用户进行管理。
2.分类信息管理,管理员可以对药品的分类信息进行管理,包括分类的增删改查等操作。
3.药品管理,管理员可以对药品的基本信息进行管理,方便用户订餐。
4.订单管理,对用户的订单进行管理。
5.修改密码,修改自己的个人密码。

开发环境

开发语言:Java
数据库 :MySQL
系统架构:B/S
后端框架:SSM
前端框架:Vue
开发工具:IDEA或者Eclipse,JDK1.8,Maven

系统截图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

部分代码

package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
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;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.ShangpinxinxiEntity;
import com.entity.view.ShangpinxinxiView;import com.service.ShangpinxinxiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;/*** 药品信息* 后端接口*/
@RestController
@RequestMapping("/shangpinxinxi")
public class ShangpinxinxiController {@Autowiredprivate ShangpinxinxiService shangpinxinxiService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map params,ShangpinxinxiEntity shangpinxinxi,HttpServletRequest request){EntityWrapper ew = new EntityWrapper();PageUtils page = shangpinxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpinxinxi), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map params,ShangpinxinxiEntity shangpinxinxi, HttpServletRequest request){EntityWrapper ew = new EntityWrapper();PageUtils page = shangpinxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpinxinxi), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( ShangpinxinxiEntity shangpinxinxi){EntityWrapper ew = new EntityWrapper();ew.allEq(MPUtil.allEQMapPre( shangpinxinxi, "shangpinxinxi"));return R.ok().put("data", shangpinxinxiService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(ShangpinxinxiEntity shangpinxinxi){EntityWrapper< ShangpinxinxiEntity> ew = new EntityWrapper< ShangpinxinxiEntity>();ew.allEq(MPUtil.allEQMapPre( shangpinxinxi, "shangpinxinxi"));ShangpinxinxiView shangpinxinxiView =  shangpinxinxiService.selectView(ew);return R.ok("查询汉服信息成功").put("data", shangpinxinxiView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){ShangpinxinxiEntity shangpinxinxi = shangpinxinxiService.selectById(id);shangpinxinxi.setClicknum(shangpinxinxi.getClicknum()+1);shangpinxinxi.setClicktime(new Date());shangpinxinxiService.updateById(shangpinxinxi);return R.ok().put("data", shangpinxinxi);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){ShangpinxinxiEntity shangpinxinxi = shangpinxinxiService.selectById(id);shangpinxinxi.setClicknum(shangpinxinxi.getClicknum()+1);shangpinxinxi.setClicktime(new Date());shangpinxinxiService.updateById(shangpinxinxi);return R.ok().put("data", shangpinxinxi);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody ShangpinxinxiEntity shangpinxinxi, HttpServletRequest request){shangpinxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(shangpinxinxi);shangpinxinxiService.insert(shangpinxinxi);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody ShangpinxinxiEntity shangpinxinxi, HttpServletRequest request){shangpinxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(shangpinxinxi);shangpinxinxiService.insert(shangpinxinxi);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody ShangpinxinxiEntity shangpinxinxi, HttpServletRequest request){//ValidatorUtils.validateEntity(shangpinxinxi);shangpinxinxiService.updateById(shangpinxinxi);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){shangpinxinxiService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,@PathVariable("type") String type,@RequestParam Map map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper wrapper = new EntityWrapper();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = shangpinxinxiService.selectCount(wrapper);return R.ok().put("count", count);}/*** 前端智能排序*/@IgnoreAuth@RequestMapping("/autoSort")public R autoSort(@RequestParam Map params,ShangpinxinxiEntity shangpinxinxi, HttpServletRequest request,String pre){EntityWrapper ew = new EntityWrapper();Map newMap = new HashMap();Map param = new HashMap();Iterator> it = param.entrySet().iterator();while (it.hasNext()) {Map.Entry entry = it.next();String key = entry.getKey();String newKey = entry.getKey();if (pre.endsWith(".")) {newMap.put(pre + newKey, entry.getValue());} else if (StringUtils.isEmpty(pre)) {newMap.put(newKey, entry.getValue());} else {newMap.put(pre + "." + newKey, entry.getValue());}}params.put("sort", "clicknum");params.put("order", "desc");PageUtils page = shangpinxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpinxinxi), params), params));return R.ok().put("data", page);}}

相关内容

热门资讯

AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWR报告解读 WORKLOAD REPOSITORY PDB report (PDB snapshots) AW...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
群晖外网访问终极解决方法:IP... 写在前面的话 受够了群晖的quickconnet的小水管了,急需一个新的解决方法&#x...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
Azure构建流程(Power... 这可能是由于配置错误导致的问题。请检查构建流程任务中的“发布构建制品”步骤,确保正确配置了“Arti...