计算机毕业设计-基于Java+SSM架构的药房药品采购集中管理系统项目开发实战(附源码+论文)

大家好!我是程序员一帆,感谢您阅读本文,欢迎一键三连哦。

💞当前专栏:Java毕业设计

精彩专栏推荐👇🏻👇🏻👇🏻

🎀 Python毕业设计
🌎微信小程序毕业设计

开发环境

  • 开发语言:Java
  • 框架:ssm
  • JDK版本:JDK1.8
  • 服务器:tomcat7
  • 数据库:mysql 5.7
  • 数据库工具:Navicat12
  • 开发软件:eclipse/myeclipse/idea
  • Maven包:Maven3.3.9
  • 浏览器:谷歌浏览器

源码下载地址:

https://download.csdn.net/download/m0_46388260/89271091

论文目录

【如需全文请按文末获取联系】
在这里插入图片描述
在这里插入图片描述

一、项目简介

使用Java语言进行编码,使用Mysql创建数据表保存本系统产生的数据。系统可以提供信息显示和相应服务,系统可以实现采购订单管理,配送订单管理,结算订单管理,退货订单管理以及药品信息管理等功能。

二、系统设计

2.1软件功能模块设计

管理员增删改查卫生局,卫生院,卫生室,药品供应商,药品以及区域信息,统计药品库存。
在这里插入图片描述
卫生局审核采购订单和配送订单,对药品库存,采购订单,结算订单和退货订单进行统计。
在这里插入图片描述
卫生院审核采购订单,查看配送订单,查看结算订单,采购订单,退货订单的统计报表。
在这里插入图片描述
卫生室结算配送订单并在线支付,或者对配送订单进行退货。
在这里插入图片描述
药品供应商对审核通过的采购订单进行配送,管理配送订单,查看退货订单。
在这里插入图片描述

2.2数据库设计

(1)下图是管理员实体和其具备的属性。
在这里插入图片描述
(2)下图是卫生局实体和其具备的属性。
在这里插入图片描述
(3)下图是卫生院实体和其具备的属性。
在这里插入图片描述
(4)下图是卫生室实体和其具备的属性。
在这里插入图片描述
(5)下图为上述各实体间相互之间的关系。
在这里插入图片描述

三、系统项目部分截图

3.1管理员功能实现

卫生局管理
管理员进入指定功能操作区之后可以管理卫生局。其页面见下图。管理员增删改查卫生局信息。
在这里插入图片描述
统计药品信息
管理员进入指定功能操作区之后可以统计药品信息。其页面见下图。管理员查看各种药品对应的库存数量。
在这里插入图片描述
卫生院管理
管理员进入指定功能操作区之后可以管理卫生院。其页面见下图。管理员增删改查卫生院信息。
在这里插入图片描述

3.2卫生局功能实现

采购订单管理
卫生局进入指定功能操作区之后可以管理采购订单。其页面见下图。卫生局对采购订单进行审核,统计采购订单。
在这里插入图片描述
配送订单管理
卫生局进入指定功能操作区之后可以管理配送订单。其页面见下图。卫生局审核配送订单,提交药品名称查询配送订单。
在这里插入图片描述
统计结算订单
卫生局进入指定功能操作区之后可以统计结算订单。其页面见下图。卫生局查看各个卫生室对应的结算金额信息。
在这里插入图片描述

3.3卫生院功能实现

配送订单
卫生院进入指定功能操作区之后可以查看配送订单。其页面见下图。卫生院查看配送订单详情,查询配送订单。
在这里插入图片描述
统计采购订单
卫生院进入指定功能操作区之后可以查看采购订单统计报表。其页面见下图。卫生院查看各个卫生室对应的采购数量。
在这里插入图片描述

3.4卫生室功能实现

配送订单管理
卫生室进入指定功能操作区之后可以管理配送订单。其页面见下图。卫生室在当前页面可以结算订单或对订单进行退货。
在这里插入图片描述
结算订单管理
卫生室进入指定功能操作区之后可以管理结算订单。其页面见下图。卫生室支付订单,查询结算订单。
在这里插入图片描述
退货订单管理
卫生室进入指定功能操作区之后可以管理退货订单。其页面见下图。卫生室查询退货订单,删除退货订单,查看退货订单明细。
在这里插入图片描述

3.5药品供应商功能实现

采购订单管理
药品供应商进入指定功能操作区之后可以管理采购订单。其页面见下图。药品供应商对审核通过的采购订单进行配送。
在这里插入图片描述
配送订单管理
药品供应商进入指定功能操作区之后可以管理配送订单。其页面见下图。药品供应商查看配送订单审核状态,可以修改,删除配送订单。
在这里插入图片描述

四、部分核心代码

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.TuihuodingdanEntity;
import com.entity.view.TuihuodingdanView;

import com.service.TuihuodingdanService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;


/**
 * 退货订单
 * 后端接口
 * @author 
 * @email 
 * @date 2021-04-08 10:53:03
 */
@RestController
@RequestMapping("/tuihuodingdan")
public class TuihuodingdanController {
    @Autowired
    private TuihuodingdanService tuihuodingdanService;
    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,TuihuodingdanEntity tuihuodingdan, 
		HttpServletRequest request){

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("weishengshi")) {
			tuihuodingdan.setWeishengshizhanghao((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<TuihuodingdanEntity> ew = new EntityWrapper<TuihuodingdanEntity>();
		PageUtils page = tuihuodingdanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, tuihuodingdan), params), params));
        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
	@IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,TuihuodingdanEntity tuihuodingdan, HttpServletRequest request){
        EntityWrapper<TuihuodingdanEntity> ew = new EntityWrapper<TuihuodingdanEntity>();
		PageUtils page = tuihuodingdanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, tuihuodingdan), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( TuihuodingdanEntity tuihuodingdan){
       	EntityWrapper<TuihuodingdanEntity> ew = new EntityWrapper<TuihuodingdanEntity>();
      	ew.allEq(MPUtil.allEQMapPre( tuihuodingdan, "tuihuodingdan")); 
        return R.ok().put("data", tuihuodingdanService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(TuihuodingdanEntity tuihuodingdan){
        EntityWrapper< TuihuodingdanEntity> ew = new EntityWrapper< TuihuodingdanEntity>();
 		ew.allEq(MPUtil.allEQMapPre( tuihuodingdan, "tuihuodingdan")); 
		TuihuodingdanView tuihuodingdanView =  tuihuodingdanService.selectView(ew);
		return R.ok("查询退货订单成功").put("data", tuihuodingdanView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        TuihuodingdanEntity tuihuodingdan = tuihuodingdanService.selectById(id);
        return R.ok().put("data", tuihuodingdan);
    }

    /**
     * 前端详情
     */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        TuihuodingdanEntity tuihuodingdan = tuihuodingdanService.selectById(id);
        return R.ok().put("data", tuihuodingdan);
    }
    



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody TuihuodingdanEntity tuihuodingdan, HttpServletRequest request){
    	tuihuodingdan.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(tuihuodingdan);

        tuihuodingdanService.insert(tuihuodingdan);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody TuihuodingdanEntity tuihuodingdan, HttpServletRequest request){
    	tuihuodingdan.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(tuihuodingdan);

        tuihuodingdanService.insert(tuihuodingdan);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody TuihuodingdanEntity tuihuodingdan, HttpServletRequest request){
        //ValidatorUtils.validateEntity(tuihuodingdan);
        tuihuodingdanService.updateById(tuihuodingdan);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        tuihuodingdanService.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<String, Object> 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<TuihuodingdanEntity> wrapper = new EntityWrapper<TuihuodingdanEntity>();
		if(map.get("remindstart")!=null) {
			wrapper.ge(columnName, map.get("remindstart"));
		}
		if(map.get("remindend")!=null) {
			wrapper.le(columnName, map.get("remindend"));
		}

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("weishengshi")) {
			wrapper.eq("weishengshizhanghao", (String)request.getSession().getAttribute("username"));
		}

		int count = tuihuodingdanService.selectCount(wrapper);
		return R.ok().put("count", count);
	}
	


}

获取源码或论文

如需对应的论文或源码,以及其他定制需求,也可以下方微❤联系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值