Java项目:医药进销存系统(java+SSM+JSP+Layui+jQuery+Maven+mysql)
源码获取:博客首页 "资源" 里下载!功能介绍医药进销存系统,主要功能包括:公告管理:发布公告、公告列表;生产管理:订单列表、增加生产、订单日志;分店采购:分店审核、采购;总店仓库:出库管理、仓库列表、入库管理;分店管理:分店库存、分店列表、分店财务;商品管理:原材料、药效、商品列表、药品类型;总店采购:采购列表、采购审核;合同管理:合同类型管理、合同列表;会员管理:会员列表;质检:质检;权限管理
源码获取:博客首页 "资源" 里下载!
功能介绍
医药进销存系统,主要功能包括:
公告管理:发布公告、公告列表;
生产管理:订单列表、增加生产、订单日志;
分店采购:分店审核、采购;
总店仓库:出库管理、仓库列表、入库管理;
分店管理:分店库存、分店列表、分店财务;
商品管理:原材料、药效、商品列表、药品类型;
总店采购:采购列表、采购审核;
合同管理:合同类型管理、合同列表;
会员管理:会员列表;
质检:质检;
权限管理:人员管理、模块管理、部门管理、角色管理;
审核管理:财务审核、生产审核、采购审核;
分店销售:销售统计图、订单批发审核、订单列表、分店销售;
该项目共有49张表,功能比较复杂;
其他管理:供货商管理,新增、搜索、编辑、删除;
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目
6.数据库:MySql 5.7版本;
技术栈
1. 后端:Spring SpringMVC MyBatis
2. 前端:JSP+Layui+jQuery
运行说明
1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行;
3. 将项目中db.properties和spring.xml配置文件中的数据库配置改为自己的配置;
4. 运行项目,输入http://localhost:8080/medicine/page/login.jsp 登录
用户登录管理控制层:
@RestController
@RequestMapping("/user")
@CrossOrigin
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/login")
public AjaxInfo login(@RequestBody User user, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
System.out.println(session.getId());
User user1 = userService.findUser(user);
if (user1 != null) {
ajaxInfo.setCode(user1.getUserRight());
ajaxInfo.setMsg("登陆成功!");
ajaxInfo.setData(user1.getUserName());
session.setAttribute("userName", user1.getUserName());
System.out.println(session.getAttribute("userName"));
} else {
ajaxInfo.setCode(-1);
ajaxInfo.setMsg("账号或密码错误!");
}
return ajaxInfo;
}
@RequestMapping("/logout")
public String login(HttpSession session) {
System.out.println(session.getId());
System.out.println(session.getAttribute("userName"));
session.removeAttribute("userName");
return "success";
}
@RequestMapping("/registUser")
public AjaxInfo regist(@RequestBody User user, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
User userByAcc = userService.getUserByAcc(user.getUserAcc());
if (session.getAttribute("userName") != null) {
if (userByAcc == null) {
userService.registUser(user);
ajaxInfo.setMsg("注册成功!");
} else {
ajaxInfo.setMsg("账号已存在!请重新输入~");
}
return ajaxInfo;
} else {
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/queryUser")
public AjaxInfo queryUser(@RequestBody User user, HttpSession session) {
System.out.println(user);
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
User userByAcc = userService.getUserByAcc(user.getUserAcc());
if (userByAcc == null||userByAcc.getUserRight()!=2) {
ajaxInfo.setMsg("该取药员不存在,请重新输入!");
ajaxInfo.setCode(-1);
} else {
ajaxInfo.setMsg("查询成功!");
ajaxInfo.setCode(0);
ajaxInfo.setData(userByAcc);
}
return ajaxInfo;
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/deleteUser")
public AjaxInfo deleteUser(@RequestBody User user, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
userService.deleteUser(user.getUserAcc());
ajaxInfo.setMsg("删除成功!");
} else {
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/registBuyer")
public AjaxInfo registBuyer(@RequestBody Buyer buyer, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
System.out.println("======"+buyer);
Buyer buyerByUserId = userService.getBuyerById(buyer.getBuyerId());
if (session.getAttribute("userName") != null) {
if (buyerByUserId == null) {
userService.registBuyer(buyer);
ajaxInfo.setMsg("注册成功!");
} else {
ajaxInfo.setMsg("ID已存在!");
}
return ajaxInfo;
} else {
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/queryBuyer")
public AjaxInfo queryBuyer(@RequestBody Buyer buyer, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
System.out.println(buyer);
if (session.getAttribute("userName") != null) {
Buyer buyer1 = userService.getBuyerById(buyer.getBuyerId());
if (buyer1 == null) {
ajaxInfo.setMsg("该采购员不存在,请重新输入!");
ajaxInfo.setCode(-1);
} else {
ajaxInfo.setMsg("查询成功!");
ajaxInfo.setData(buyer1);
ajaxInfo.setCode(0);
}
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
System.out.println("================="+ajaxInfo.getCode());
return ajaxInfo;
}
@RequestMapping("/deleteBuyer")
public AjaxInfo deleteBuyer(@RequestBody Buyer buyer, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
userService.deleteBuyer(buyer.getBuyerId());
ajaxInfo.setMsg("删除成功!");
} else {
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/updateBuyer")
public AjaxInfo updateBuyer(@RequestBody Buyer buyer, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
userService.updateBuyer(buyer);
ajaxInfo.setMsg("更新成功!");
} else {
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
}
后台管理控制层:
@RestController
@CrossOrigin
@RequestMapping("/admin")
public class AdminController {
@Autowired
private AdminService adminService;
@RequestMapping("/insertStorage")
public AjaxInfo insertStroage(@RequestBody Instorage instorage, HttpSession session) {
System.out.println(instorage);
AjaxInfo ajaxInfo = new AjaxInfo();
Instorage in = new Instorage();
if (session.getAttribute("userName") != null) {
Medicine med = adminService.getMedicineBymedId(instorage.getMedId());
SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm");
Date date = new Date();
in.setMedId(instorage.getMedId());
in.setBuyerId(instorage.getBuyerId());
in.setInDate(time.format(date));
in.setInStorageNum(instorage.getInStorageNum());
if (med == null) {
ajaxInfo.setCode(-1);
ajaxInfo.setMsg("入库失败,该药品不存在!");
} else {
adminService.insertInstorage(in);
adminService.updateMedStorage(instorage.getMedId(), instorage.getInStorageNum()+med.getMedStorage());
ajaxInfo.setMsg("入库成功~");
ajaxInfo.setCode(0);
}
return ajaxInfo;
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/insertMedicine")
public AjaxInfo insertMedicine(@RequestBody Medicine medicine, HttpSession session) {
System.out.println(medicine);
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
Medicine med = adminService.getMedicineBymedId(medicine.getMedId());
if (med == null) {
adminService.insertMedicine(medicine);
ajaxInfo.setMsg("插入信息成功~");
ajaxInfo.setCode(0);
} else {
ajaxInfo.setMsg("该药品已存在~");
ajaxInfo.setCode(-1);
}
return ajaxInfo;
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/queryMedicine")
public AjaxInfo queryMedicine(@RequestBody Medicine medicine, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
Medicine med = adminService.getMedicineBymedId(medicine.getMedId());
if (med == null) {
ajaxInfo.setMsg("该药品不存在,请重新输入!");
ajaxInfo.setCode(-1);
} else {
ajaxInfo.setMsg("查询成功!");
ajaxInfo.setData(med);
ajaxInfo.setCode(0);
System.out.println(med);
}
return ajaxInfo;
} else {
ajaxInfo.setMsg("权限不足!请先登录~");
ajaxInfo.setCode(-2);
}
return ajaxInfo;
}
@RequestMapping("/updateMedicine")
public AjaxInfo updateMedicine(@RequestBody Medicine medicine, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
adminService.updateMedicine(medicine);
ajaxInfo.setMsg("更新成功!");
ajaxInfo.setCode(0);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/deleteMedicine")
public AjaxInfo deleteMedicine(@RequestBody Medicine medicine, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
adminService.deleteMedicine(medicine.getMedId());
ajaxInfo.setMsg("删除成功!");
ajaxInfo.setCode(0);
} else {
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/insertFactory")
public AjaxInfo insertFactory(@RequestBody Factory factory, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
Factory fId = adminService.getFactoryByfactoryId(factory.getFactoryId());
if (fId == null) {
adminService.insertFactory(factory);
ajaxInfo.setMsg("插入信息成功~");
ajaxInfo.setCode(0);
} else {
ajaxInfo.setMsg("该药厂已存在~");
ajaxInfo.setCode(-1);
}
return ajaxInfo;
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/queryFactory")
public AjaxInfo queryFactory(@RequestBody Factory factory, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
Factory fId = adminService.getFactoryByfactoryId(factory.getFactoryId());
if (fId == null) {
ajaxInfo.setMsg("该药厂不存在,请重新输入!");
ajaxInfo.setCode(-1);
} else {
ajaxInfo.setMsg("查询成功!");
ajaxInfo.setData(fId);
ajaxInfo.setCode(0);
System.out.println(fId);
}
return ajaxInfo;
} else {
ajaxInfo.setMsg("权限不足!请先登录~");
ajaxInfo.setCode(-2);
}
return ajaxInfo;
}
@RequestMapping("/updateFactory")
public AjaxInfo updateFactory(@RequestBody Factory factory, HttpSession session) {
System.out.println(factory);
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
adminService.updateFactory(factory);
ajaxInfo.setMsg("更新成功!");
ajaxInfo.setCode(0);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/deleteFactory")
public AjaxInfo deleteFactory(@RequestBody Factory factory, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
adminService.deleteFactory(factory.getFactoryId());
ajaxInfo.setMsg("删除成功!");
ajaxInfo.setCode(0);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
}
查询管理控制层:
@RestController
@CrossOrigin
@RequestMapping("/query")
public class QueryController {
@Autowired
private QueryService queryService;
@RequestMapping("/queryMedicine")
public AjaxInfo queryMedicine(HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
List<Medicine> medicines = queryService.queryMedicine();
ajaxInfo.setCode(0);
ajaxInfo.setMsg("查询成功");
ajaxInfo.setData(medicines);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/queryFactory")
public AjaxInfo queryFactory(HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
List<Factory> factories = queryService.queryFactory();
ajaxInfo.setCode(0);
ajaxInfo.setData(factories);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/queryBuyer")
public AjaxInfo queryBuyer1(HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
List<Buyer> buyers = queryService.queryBuyer();
ajaxInfo.setCode(0);
ajaxInfo.setData(buyers);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/showInRecord")
public AjaxInfo showInRecord(MedicineTable medicineTable,HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
int page=(medicineTable.getPage()-1)*medicineTable.getLimit();
medicineTable.setPage(page);
List<ShowInRecord> inRecord = queryService.getInRecord(medicineTable);
ajaxInfo.setCount(queryService.getInRecordCount(medicineTable));
ajaxInfo.setCode(0);
ajaxInfo.setData(inRecord);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/showOutRecord")
public AjaxInfo queryBuyer(MedicineTable medicineTable,HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
if (session.getAttribute("userName") != null) {
int page=(medicineTable.getPage()-1)*medicineTable.getLimit();
medicineTable.setPage(page);
List<ShowOutRecord> outRecord = queryService.getOutRecord(medicineTable);
ajaxInfo.setCount(queryService.getOutRecordCount(medicineTable));
ajaxInfo.setCode(0);
ajaxInfo.setData(outRecord);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/queryMedicineByName")
public AjaxInfo queryMedicineByName(MedicineTable medicineTable, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
System.out.println(medicineTable);
if (session.getAttribute("userName") != null) {
int page=(medicineTable.getPage()-1)*medicineTable.getLimit();
medicineTable.setPage(page);
List<Medicine> medicines = queryService.queryMedicineByName(medicineTable);
ajaxInfo.setMsg("查询成功");
ajaxInfo.setCount(queryService.queryMedicineByNameCount(medicineTable));
ajaxInfo.setCode(0);
ajaxInfo.setData(medicines);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/queryFactoryByName")
public AjaxInfo queryFactoryByName(MedicineTable medicineTable, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
System.out.println(medicineTable);
if (session.getAttribute("userName") != null) {
int page=(medicineTable.getPage()-1)*medicineTable.getLimit();
medicineTable.setPage(page);
List<Factory> factories = queryService.queryFactoryByName(medicineTable);
ajaxInfo.setMsg("查询成功");
ajaxInfo.setCount(queryService.queryFactoryByNameCount(medicineTable));
ajaxInfo.setCode(0);
ajaxInfo.setData(factories);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/queryBuyerByName")
public AjaxInfo queryBuyerByName(MedicineTable medicineTable, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
System.out.println(medicineTable);
if (session.getAttribute("userName") != null) {
int page=(medicineTable.getPage()-1)*medicineTable.getLimit();
medicineTable.setPage(page);
List<Buyer> buyers = queryService.queryBuyerByName(medicineTable);
ajaxInfo.setMsg("查询成功");
ajaxInfo.setCount(queryService.queryBuyerByNameCount(medicineTable));
ajaxInfo.setCode(0);
ajaxInfo.setData(buyers);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
@RequestMapping("/queryUserByName")
public AjaxInfo queryUserByName(MedicineTable medicineTable, HttpSession session) {
AjaxInfo ajaxInfo = new AjaxInfo();
System.out.println(medicineTable);
if (session.getAttribute("userName") != null) {
int page=(medicineTable.getPage()-1)*medicineTable.getLimit();
medicineTable.setPage(page);
List<User> users = queryService.queryUserByName(medicineTable);
ajaxInfo.setMsg("查询成功");
ajaxInfo.setCount(queryService.queryUserByNameCount(medicineTable));
ajaxInfo.setCode(0);
ajaxInfo.setData(users);
} else {
ajaxInfo.setCode(-2);
ajaxInfo.setMsg("权限不足!请先登录~");
}
return ajaxInfo;
}
}
源码获取:博客首页 "资源" 里下载!
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)