Java项目:药品进货销售仓储信息管理系统(java+SSM+JS+HTML+JSP+mysql)

源码获取:俺的博客首页 "资源" 里下载!

项目介绍

管理员角色包含以下功能:
管理员登录,用户信息管理,个人信息管理,药品信息管理,药品类别信息管理,选购药品管理,订单管理,订单记录管理,库存信息管理,进货记录管理等功能。

操作员角色包含以下功能:
操作员登录,药品管理,类别管理,销售订单管理,进货管理等功能。


环境需要

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.数据库:MySql 5.7版本;


技术栈

1. 后端:Spring+SpringMVC+Mybatis
2. 前端:HTML+CSS+JavaScript+jsp


使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
4. 运行项目,输入localhost:8080/ 登录

 

 

 

 

 

 

 

用户管理控制层:

@Controller
@RequestMapping(value = "user/user", method = {RequestMethod.POST})
public class UserController {

    @Autowired
    UserService userService;

    /**
     * 登录Controller
     * @param request HttpServletRequest 对象
     * @param username 用户名
     * @param password 密码
     * @return Map 返回相关状态
     * @throws Exception 异常
     */
    @RequestMapping(value = "login")
    public @ResponseBody
    Map<String, String> login(HttpServletRequest request, @RequestParam(value = "username", defaultValue = "") String username,
                              @RequestParam(value = "password", defaultValue = "") String password) throws Exception {
        System.out.println("username: " + username + ", password: " + password);
        User user = userService.loginCheck(username, password);
        Map<String, String> resultMap =new HashMap<String, String>();
        if (user != null) {
            request.getSession().setAttribute("userid", user.getUid());
            request.getSession().setAttribute("username", user.getUsername());
            request.getSession().setAttribute("identity", "user");
            resultMap.put("state", "success");
        } else {
            resultMap.put("state", "fail");
            resultMap.put("reason", ErrorInfoUtil.getErrorInfo("user.login.check.null"));
        }
        return resultMap;
    }

    /**
     * 获取指定用户ID的用户信息
     * @param userIds 用户ID数组
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "getSomeUser")
    public @ResponseBody
    Map<String, Object> getSomeUser(@RequestParam(value = "userIds[]") String[] userIds) throws Exception {
        List<User> users = userService.getSomeUser(userIds);
        Map<String, Object> result = new HashMap<String, Object>();
        if (users.size() > 0) {
            result.put("state", "success");
            result.put("result", users);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

    /**
     * 获取用户总量
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "getUserCount")
    public @ResponseBody
    Map<String, Object> getUserCount() throws Exception {
        int count = userService.count();
        Map<String, Object> result = new HashMap<String, Object>();
        if (count > 0) {
            result.put("state", "success");
            result.put("result", count);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

    /**
     * 获取指定数量的用户信息
     * @param offset 偏移量
     * @param limit 限制返回条数
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "getLimitUser")
    public @ResponseBody
    Map<String, Object> getLimitUser(@RequestParam(value = "offset") int offset,
                                       @RequestParam(value = "limit") int limit) throws Exception {
        List<User> userList = userService.getLimitUser(offset, limit);
        Map<String, Object> result = new HashMap<String, Object>();
        if (userList.size() > 0) {
            result.put("state", "success");
            result.put("result", userList);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

    /**
     * 根据用户ID更新用户信息
     * @param user 新的用户信息
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "updateUserById")
    public @ResponseBody
    Map<String, Object> updateUserById(@RequestBody User user) throws Exception {
        int updateCount = userService.updateById(user);
        Map<String, Object> result = new HashMap<String, Object>();
        if (updateCount > 0) {
            result.put("state", "success");
            result.put("result", updateCount);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

    /**
     * 根据用户ID数组删除一些用户信息
     * @param userIds 用户ID数组
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "deleteSomeUser")
    public @ResponseBody
    Map<String, Object> deleteSomeUser(@RequestParam(value = "userIds[]") String[] userIds) throws Exception {
        int deleteNum = userService.deleteSomeUser(userIds);
        Map<String, Object> result = new HashMap<String, Object>();
        if (deleteNum > 0) {
            result.put("state", "success");
            result.put("result", deleteNum);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

    /**
     * 添加用户
     * @param user 用户信息
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = {"addUser", "registerUser"})
    public @ResponseBody
    Map<String, Object> addUser(@RequestBody User user) throws Exception {
        int addCount = userService.addUser(user);
        Map<String, Object> result = new HashMap<String, Object>();
        if (addCount > 0) {
            result.put("state", "success");
            result.put("result", addCount);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

    /**
     * 根据用户ID更新用户密码
     * @param uid 用户ID
     * @param originalPasswd 原密码
     * @param newPasswd 新密码
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "updateUserPasswdById")
    public @ResponseBody
    Map<String, Object> updateUserPasswdById(@RequestParam(value = "uid", defaultValue = "") String uid,
                                             @RequestParam(value = "originalPasswd", defaultValue = "") String originalPasswd,
                                             @RequestParam(value = "newPasswd", defaultValue = "") String newPasswd) throws Exception {
        int updateCount = userService.updatePasswdById(uid, originalPasswd, newPasswd);
        Map<String, Object> result = new HashMap<String, Object>();
        if (updateCount > 0) {
            result.put("state", "success");
            result.put("result", updateCount);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

    /**
     * 获取当前登录用户
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "getCurrentUser")
    public @ResponseBody
    Map<String, Object> getCurrentUser(HttpServletRequest request) throws Exception {
        String userId = (String) request.getSession().getAttribute("userid");
        User user = null;
        if (userId != null && !"".equals(userId)) {
            user = userService.getUserById(userId);
        }
        Map<String, Object> result = new HashMap<String, Object>();
        if (user != null) {
            result.put("state", "success");
            result.put("result", user);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

}

后台管理员管理控制层:

@Controller
@RequestMapping(value = "user/admin", method = {RequestMethod.POST})
public class AdminController {

    @Autowired
    AdminService adminService;

    /**
     * 登录Controller
     * @param request HttpServletRequest 对象
     * @param username 用户名
     * @param password 密码
     * @return Map 返回相关状态
     * @throws Exception 异常
     */
    @RequestMapping(value = "login")
    public @ResponseBody
    Map<String, String> login(HttpServletRequest request, @RequestParam(value = "username", defaultValue = "") String username,
                              @RequestParam(value = "password", defaultValue = "") String password) throws Exception {
        Admin admin = adminService.loginCheck(username, password);
        Map<String, String> resultMap =new HashMap<String, String>();
        if (admin != null) {
            request.getSession().setAttribute("userid", admin.getUid());
            request.getSession().setAttribute("username", admin.getUsername());
            request.getSession().setAttribute("identity", "admin");
            resultMap.put("state", "success");
        } else {
            resultMap.put("state", "fail");
            resultMap.put("reason", ErrorInfoUtil.getErrorInfo("user.login.check.null"));
        }
        return resultMap;
    }

    /**
     * 获取管理员总量
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "getAdminCount")
    public @ResponseBody
    Map<String, Object> getAdminCount() throws Exception {
        int count = adminService.count();
        Map<String, Object> result = new HashMap<String, Object>();
        if (count > 0) {
            result.put("state", "success");
            result.put("result", count);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

    /**
     * 获取指定数量的管理员信息
     * @param offset 偏移量
     * @param limit 限制返回条数
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "getLimitAdmin")
    public @ResponseBody
    Map<String, Object> getLimitAdmin(@RequestParam(value = "offset") int offset,
                                     @RequestParam(value = "limit") int limit) throws Exception {
        List<Admin> adminList = adminService.getLimitAdmin(offset, limit);
        Map<String, Object> result = new HashMap<String, Object>();
        if (adminList.size() > 0) {
            result.put("state", "success");
            result.put("result", adminList);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

    /**
     * 根据管理员ID更新管理员信息
     * @param admin 新的管理员信息
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "updateAdminById")
    public @ResponseBody
    Map<String, Object> updateAdminById(@RequestBody Admin admin) throws Exception {
        int updateCount = adminService.updateById(admin);
        Map<String, Object> result = new HashMap<String, Object>();
        if (updateCount > 0) {
            result.put("state", "success");
            result.put("result", updateCount);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

    /**
     * 根据管理员ID数组删除一些管理员信息
     * @param adminIds 管理员ID数组
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "deleteSomeAdmin")
    public @ResponseBody
    Map<String, Object> deleteSomeAdmin(@RequestParam(value = "adminIds[]") String[] adminIds) throws Exception {
        int deleteNum = adminService.deleteSomeAdmin(adminIds);
        Map<String, Object> result = new HashMap<String, Object>();
        if (deleteNum > 0) {
            result.put("state", "success");
            result.put("result", deleteNum);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

    /**
     * 添加管理员
     * @param admin 用户信息
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "addAdmin")
    public @ResponseBody
    Map<String, Object> addAdmin(@RequestBody Admin admin) throws Exception {
        int addCount = adminService.addAdmin(admin);
        Map<String, Object> result = new HashMap<String, Object>();
        if (addCount > 0) {
            result.put("state", "success");
            result.put("result", addCount);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

    /**
     * 根据管理员ID更新用户密码
     * @param uid 管理员ID
     * @param originalPasswd 原密码
     * @param newPasswd 新密码
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "updateAdminPasswdById")
    public @ResponseBody
    Map<String, Object> updateAdminPasswdById(@RequestParam(value = "uid", defaultValue = "") String uid,
                                             @RequestParam(value = "originalPasswd", defaultValue = "") String originalPasswd,
                                             @RequestParam(value = "newPasswd", defaultValue = "") String newPasswd) throws Exception {
        int updateCount = adminService.updatePasswdById(uid, originalPasswd, newPasswd);
        Map<String, Object> result = new HashMap<String, Object>();
        if (updateCount > 0) {
            result.put("state", "success");
            result.put("result", updateCount);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

}

药品管理控制层:

@Controller
@RequestMapping(value = "medicine/medicine", method = {RequestMethod.POST})
public class MedicineController {

    @Autowired
    MedicineService medicineService;

    /**
     * 获取指定数量的药品信息
     * @param offset 偏移量
     * @param limit 返回限制条数
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "getFilteredLimitMedicine")
    public @ResponseBody
    Map<String, Object> getFilteredLimitMedicine(@RequestParam(value = "medTypeId", defaultValue = "") String medTypeId,
                                                 @RequestParam(value = "offset") int offset,
                                         @RequestParam(value = "limit") int limit) throws Exception {
        medTypeId = "".equals(medTypeId) ? null : medTypeId;
        List<Medicine> medicines = medicineService.getFilteredLimitMedicine(medTypeId, offset, limit);
        Map<String, Object> result = new HashMap<String, Object>();
        if (medicines.size() > 0) {
            result.put("state", "success");
            result.put("result", medicines);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

    /**
     * 获取指定ID的药品信息
     * @param medicineIds String[] 药品ID数组
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "getSomeMedicine")
    public @ResponseBody
    Map<String, Object> getSomeMedicine(@RequestParam(value = "medicineIds[]") String[] medicineIds) throws Exception {
        List<Medicine> medicines = medicineService.getSomeMedicine(medicineIds);
        Map<String, Object> result = new HashMap<String, Object>();
        if (medicines.size() > 0) {
            result.put("state", "success");
            result.put("result", medicines);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

    /**
     * 获取药品总量
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "getMedicineCount")
    public @ResponseBody
    Map<String, Object> getMedicineCount() throws Exception {
        int count = medicineService.count();
        Map<String, Object> result = new HashMap<String, Object>();
        if (count > 0) {
            result.put("state", "success");
            result.put("result", count);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

    /**
     * 根据药品ID更新药品信息
     * @param medicine 新的药品信息
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "updateMedicineById")
    public @ResponseBody
    Map<String, Object> updateMedicineById(@RequestBody Medicine medicine) throws Exception {
        int updateCount = medicineService.updateById(medicine);
        Map<String, Object> result = new HashMap<String, Object>();
        if (updateCount > 0) {
            result.put("state", "success");
            result.put("result", updateCount);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

    /**
     * 根据药品ID数组删除一些药品信息
     * @param medicineIds 药品ID数组
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "deleteSomeMedicine")
    public @ResponseBody
    Map<String, Object> deleteSomeMedicine(@RequestParam(value = "medicineIds[]") String[] medicineIds) throws Exception {
        int deleteNum = medicineService.deleteSomeMedicine(medicineIds);
        Map<String, Object> result = new HashMap<String, Object>();
        if (deleteNum > 0) {
            result.put("state", "success");
            result.put("result", deleteNum);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

    /**
     * 添加药品
     * @param medicine 药品信息
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "addMedicine")
    public @ResponseBody
    Map<String, Object> addMedicine(@RequestBody Medicine medicine) throws Exception {
        int addCount = medicineService.addMedicine(medicine);
        Map<String, Object> result = new HashMap<String, Object>();
        if (addCount > 0) {
            result.put("state", "success");
            result.put("result", addCount);
        } else {
            result.put("state", "fail");
            result.put("reason", 0);
        }
        return result;
    }

    /**
     * 药品图片上传
     * @param medicinePic 药品图片
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "addMedicinePic")
    public @ResponseBody
    Map<String, Object> addMedicinePic(HttpServletRequest request,
            @RequestParam("medicinePic") MultipartFile medicinePic) throws Exception {
        Map<String, Object> result = new HashMap<String, Object>();
        String imgPath = medicineService.uploadFile(request, medicinePic);
        System.out.println("upload img path: " + imgPath);
        if (imgPath != null) {
            result.put("state", "success");
            result.put("result", imgPath);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

    /**
     * 根据过滤条件过滤查询药品总数
     * @param medicine 药品过滤信息
     * @return Map 返回相关状态及信息
     * @throws Exception 异常
     */
    @RequestMapping(value = "getFilteredMedicineCount")
    public @ResponseBody
    Map<String, Object> getFilteredMedicineCount(@RequestBody Medicine medicine) throws Exception {
        System.out.println("getFilteredMedicineCount --- medicine: " + medicine);
        Map<String, Object> result = new HashMap<String, Object>();
        int count = medicineService.getFilteredCount(medicine);
        if (count > 0) {
            result.put("state", "success");
            result.put("result", count);
        } else {
            result.put("state", "fail");
            result.put("reason", null);
        }
        return result;
    }

}

源码获取:俺的博客首页 "资源" 里下载!

猜你喜欢

转载自blog.csdn.net/yuyecsdn/article/details/125080199