国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java 實戰項目之疫情防控管理系統詳解

Java 實戰項目之疫情防控管理系統詳解

2022-03-10 00:57每日小新 Java教程

讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰中才能獲得能力的提升,本篇文章手把手帶你用Java實現一個疫情防控管理系統,大家可以在過程中查缺補漏,提升水平

 

基于java疫情防控管理系統

項目介紹:通過對依社區為單位進行人群的管理,以及疫苗的情況,包括小區狀況,通過RBAC進行角色與用戶之間的權限管理。

項目:環境-IDEA、Mysql數據庫,Tomcat服務器,SpringMVC,SpringBoot,AOP,攔截器,過濾器,全局異常,RBAC權限控制等。

 

1、登錄模塊(注冊)

Java 實戰項目之疫情防控管理系統詳解

Java 實戰項目之疫情防控管理系統詳解

核心代碼:service層

@Service
public class UserService extends BaseService<User,Integer> {
    @Resource
    //引入dao層
    private UserMapper userMapper;

    @Resource
    private UserRoleMapper userRoleMapper;

    @Resource
    private CommunityMapper communityMapper;


    //用戶登錄
    public UserModel userLogin(String userName,String userPwd){
        //對輸入的賬號密碼進行判斷,是否符合格式
        checkUserLoginParam(userName,userPwd);

        //通過對數據庫的查詢,查看用戶是否存在
        User temp =  userMapper.queryUserByUserName(userName);
        AssertUtil.isTrue(temp == null,"用戶不存在");

        //判斷用戶的密碼是否正確,拿數據庫查詢到的用戶密碼和用戶輸入的用戶密碼進行equest比較
        checkUserPwd(userPwd,temp.getUserPwd());

        //返回目標對象  對密碼進行加密
        return builderUserInfo(temp);
    }


    /**
     * //對輸入的賬號密碼進行判斷  是否符合格式
     * @param userName   賬號
     * @param userPwd    密碼
     */
    //對輸入的賬號密碼進行判斷,是否符合格式
    private void checkUserLoginParam(String userName, String userPwd) {
        //用戶非空
        AssertUtil.isTrue(StringUtils.isBlank(userName),"用戶名不能為空");

        //密碼非空
        AssertUtil.isTrue(StringUtils.isBlank(userPwd),"密碼不能為空");
    }



    /**
     * //判斷密碼是否正確
     * @param userPwd   用戶輸入的密碼
     * @param userPwd1  數據庫查出來的密碼
     */
    //判斷用戶的密碼是否正確,拿數據庫查詢到的用戶密碼和用戶輸入的用戶密碼進行equest比較
    private void checkUserPwd(String userPwd, String userPwd1) {
        //對用戶輸入的密碼進行加密
        userPwd = Md5Util.encode(userPwd);

        AssertUtil.isTrue(!(userPwd.equals(userPwd1)),"密碼不正確");



    }

    /**
     *
     * @param temp 當前登錄對象
     * @return
     */
    //對密碼進行加密  返回目標對象
    private UserModel builderUserInfo(User temp) {
        UserModel userModel = new UserModel();
        //為用戶密碼進行加密
        userModel.setUserIdStr(UserIDBase64.encoderUserID(temp.getId()));
        userModel.setUserName(temp.getUserName());
        userModel.setTrueName(temp.getTrueName());
        return userModel;

    }


    /**
     *
     * @param userId                 當前Cookie存儲的用戶dId
     * @param oldPassword           舊密碼
     * @param newPassword           新密碼
     * @param confirmPassword            確認密碼
     */
    //修改密碼
    @Transactional(propagation = Propagation.REQUIRED)
    public void updateUserPassword(Integer userId, String oldPassword, String newPassword, String confirmPassword) {
        //通過Id獲取user對象
        User user = userMapper.selectByPrimaryKey(userId);
        //參數校驗 (用戶,舊密碼,新密碼,確認密碼)
        checkPasswordParams(user,oldPassword,newPassword,confirmPassword);

        //默認參數設置,把用戶輸入的新密碼  加密 添加進去
        user.setUserPwd(Md5Util.encode(newPassword));

        //執行更新操作
        AssertUtil.isTrue(userMapper.updateByPrimaryKeySelective(user)<1,"修改密碼失敗");
    }


    //修改密碼的參數校驗
    private void checkPasswordParams(User user, String oldPassword, String newPassword, String confirmPwd) {
        //用戶不能為空  (不存在)
        AssertUtil.isTrue(null == user,"用戶不存在");
        //原始密碼  非空
        System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
        AssertUtil.isTrue(StringUtils.isBlank(oldPassword),"原始密碼不能為空");
        //原始密碼是否和數據庫查詢到的密碼一致
        AssertUtil.isTrue(!(Md5Util.encode(oldPassword).equals(user.getUserPwd())),"原始密碼不正確");
        //新密碼不能為空
        AssertUtil.isTrue(StringUtils.isBlank(newPassword),"新密碼不能為空");
        //新密碼和原始密碼不能相同
        AssertUtil.isTrue(oldPassword.equals(newPassword),"新密碼不能和原始密碼相同");
        //確認密碼非空
        AssertUtil.isTrue(StringUtils.isBlank(confirmPwd),"確認密碼不能為空");
        //確認密碼需要和新密碼一致
        AssertUtil.isTrue(!(newPassword.equals(confirmPwd)),"新密碼和確認密碼不一致");
    }

    /**
     * 多條件分頁查詢用戶數據
     * @param query
     * @return
     */
    public Map<String, Object> queryUserByParams (UserQuery query) {
        Map<String, Object> map = new HashMap<>();
        PageHelper.startPage(query.getPage(), query.getLimit());
        PageInfo<User> pageInfo = new PageInfo<>(userMapper.selectByParams(query));
        map.put("code",0);
        map.put("msg", "");
        map.put("count", pageInfo.getTotal());
        map.put("data", pageInfo.getList());
        System.out.println("執行完畢");
        return map;
    }

    /**
     * 添加用戶
     * @param user
     */
    @Transactional(propagation = Propagation.REQUIRED)
    public void saveUser(User user){
        //參數校驗
        checkParams(user.getUserName(),user.getComId(),user.getVc());
        //設置默認參數
        user.setCreateDate(new Date());
        user.setUpdateDate(new Date());
        user.setUserPwd(Md5Util.encode("123456"));
        //執行添加,判斷結果
        AssertUtil.isTrue(userMapper.insertSelective(user)==null,"用戶添加失敗!");
        relaionUserRole(user.getId(),user.getRoleIds());
        AssertUtil.isTrue(communityMapper.addNumByComId(user.getComId())<1, "社區用戶添加失敗");
    }

    /**
     * 用戶更新,修改
     * @param user
     */
    @Transactional(propagation = Propagation.REQUIRED)
    public void updateUser(User user){
        //1.參數校驗
        //通過用戶id獲取用戶對象
        User temp=userMapper.selectByPrimaryKey(user.getId());
        //判斷對象是否存在
        AssertUtil.isTrue(temp==null,"待更新記錄不存在");
        //驗證參數
        checkParams1(user.getUserName(),user.getComId(),user.getVc());
        //2.設置默認參數
        user.setUpdateDate(new Date());
        //3.執行更新,返回結果
        AssertUtil.isTrue(userMapper.updateByPrimaryKeySelective(user)<1,"用戶更新失敗!");
        relaionUserRole(user.getId(),user.getRoleIds());
    }

    private void checkParams(String userName, Integer comId, Integer vc) {
        AssertUtil.isTrue(StringUtils.isBlank(userName),"用戶名不能為空");
        //驗證用戶是否存在
        User temp=userMapper.queryUserByUserName(userName);
        AssertUtil.isTrue(temp!=null,"用戶名已存在");
        AssertUtil.isTrue(comId==null,"請輸入所在社區");
        AssertUtil.isTrue(vc==null,"請選擇疫苗接種狀況");
    }

    private void checkParams1(String userName, Integer comId, Integer vc) {
        AssertUtil.isTrue(StringUtils.isBlank(userName),"用戶名不能為空");
        //驗證用戶是否存在
        AssertUtil.isTrue(comId==null,"請輸入所在社區");
        AssertUtil.isTrue(vc==null,"請選擇疫苗接種狀況");
    }

    @Transactional(propagation = Propagation.REQUIRED)
    public void deleteUser(Integer[] ids){
        AssertUtil.isTrue(ids==null||ids.length==0,"請選擇您要刪除的記錄");
        for (int id:ids){
            User user=userMapper.selectByPrimaryKey(id);
            AssertUtil.isTrue(communityMapper.subNumByComId(user.getComId())!=ids.length, "社區用戶刪除失敗");
        }
        AssertUtil.isTrue(deleteBatch(ids) != ids.length,"用戶角色刪除失敗");
    }


    /*SZC*/
    /**
     * 用戶注冊
     * @param userName
     * @param password1
     * @param password2
     * @param icon
     */
    public void registerUser(String userName, String password1, String password2, String icon) {
        // 參數校驗
        checkRegister(userName, password1, password2, icon);
        // 實例化user
        User user = new User();
        //設置默認參數
        user.setUserName(userName);
        user.setUserPwd(Md5Util.encode(password1));
        user.setUserPhone(icon);
        user.setCreateDate(new Date());
        user.setUpdateDate(new Date());
        // 執行方法
        AssertUtil.isTrue(userMapper.insertSelective(user)<1, "用戶添加失敗");
    }

    /**
     * 用戶注冊的參數校驗
     * @param userName
     * @param password1
     * @param password2
     * @param icon
     */
    private void checkRegister(String userName, String password1, String password2, String icon) {
        // 用戶名不為空
        AssertUtil.isTrue(StringUtils.isBlank(userName), "請輸入用戶名");
        // 判斷用戶名是否存在
        User user1 = userMapper.selectByName(userName);
        AssertUtil.isTrue(user1!=null, "該用戶已存在");
        // 判斷手機號是否存在
        User user2 = userMapper.selectByPhone(icon);
        AssertUtil.isTrue(user2!=null, "該手機號已注冊過賬號");
        // 密碼不為空
        AssertUtil.isTrue(StringUtils.isBlank(password1), "請輸入密碼");
        // 確認密碼不為空
        AssertUtil.isTrue(StringUtils.isBlank(password2), "請輸入確認密碼");
        // 密碼長度校驗
        AssertUtil.isTrue(password1.length()<6 || password1.length()>12, "密碼長度為6-12位");
        // 密碼和確認密碼相等
        AssertUtil.isTrue(!password1.equals(password2), "確認密碼與密碼不一致");
        // 手機號合法
        AssertUtil.isTrue(!PhoneUtil.isMobile(icon), "請輸入正確的手機號");
    }

    /**
     * 刪除用戶原先的角色,并重新賦予新的角色
     * @param userId
     * @param roleIds
     */
    private void relaionUserRole(int userId, String roleIds) {
        // 通過id獲取用戶的角色數量
        int count = userRoleMapper.countUserRoleByUserId(userId);
        // count>0  說明用戶原先有角色  先刪除所有的角色
        if (count>0) {
            AssertUtil.isTrue(userRoleMapper.deleteUserRoleByUserId(userId)!=count, "用戶角色刪除失敗");
        }
        // 傳入的角色信息不為空 添加新的角色
        if (StringUtils.isNoneBlank(roleIds)) {
            // 將傳入的roleIds轉成字符串數組
            String[] roleStrIds = roleIds.split(",");
            // 用來存放用戶的角色信息
            List<UserRole> roleList = new ArrayList<>();
            // 遍歷roleIds
            for (String rid : roleStrIds) {
                // 準備對象
                UserRole userRole = new UserRole();
                userRole.setUserId(userId);
                userRole.setRoleId(Integer.parseInt(rid));
                userRole.setCreateDate(new Date());
                userRole.setUpdateDate(new Date());
                roleList.add(userRole);
            }
            AssertUtil.isTrue(userRoleMapper.insertBatch(roleList) != roleList.size(), "用戶角色分配失敗");
        }

    }

}


Java 實戰項目之疫情防控管理系統詳解

 

2、今日疫情模塊

Java 實戰項目之疫情防控管理系統詳解

Java 實戰項目之疫情防控管理系統詳解

核心代碼Service

@Service
public class ConfirmedService extends BaseService<Confirmed,Integer> {

    @Resource
    //引入ConfirmedMapper
    private ConfirmedMapper confirmedMapper;

    @Resource
    //引入user表
    private UserMapper userMapper;

    @Resource
    //引入user表
    private CommunityMapper  communityMapper;

    //角色的條件查詢以及 分頁
    public Map<String,Object> findRoleByParam(ConfirmedQuery confirmedQuery){
        //實例化對象
        Map<String,Object> map = new HashMap<>();
        //實例化分頁單位
        PageHelper.startPage(confirmedQuery.getPage(), confirmedQuery.getLimit());
        //開始分頁
        PageInfo<Confirmed> rlist = new PageInfo<>(selectByParams(confirmedQuery));
        map.put("code",0);
        map.put("msg","success");
        map.put("count",rlist.getTotal());
        map.put("data",rlist.getList());
        //返回Map
        return map;
    }


    @Transactional(propagation = Propagation.REQUIRED)           //涉及到事務   就需要此注解
    //用戶模塊的添加
    public void addUser(Confirmed user) {
        //1、參數校驗
        checkConfirmed(user.getTrueName(),user.getState());

        if (user.getComId().equals("浦東區")){
            user.setComId(1);
        }
        if (user.getComId().equals("黃浦區")){
            user.setComId(2);
        }
        if (user.getComId().equals("松江區")){
            user.setComId(3);
        }
        if (user.getComId().equals("徐匯區")){
            user.setComId(4);
        }
        if (user.getComId().equals("虹口區")){
            user.setComId(5);
        }

        //查詢user表中是否存在此人  不存在   添加上去  設置默認值
        User temp =  userMapper.selectByPhone(user.getTcPhone());
       //   手機號查詢用戶
        if (temp != null){
            //健康狀態改成2    如果user表里面已經有了的情況下
            userMapper.updateUserHealthById(temp.getUserPhone());
            //默認值  確診表中的userId字段
            user.setUserId(temp.getId());

        }else {          //表里沒有這個人的時候  添加 這個用戶  新建一個user對象
            User u = new User();
            //真實姓名
            u.setTrueName(user.getTrueName());
            //名字
            u.setUserName(user.getTrueName());
            //設置密碼  默認值  :123456
            u.setUserPwd(Md5Util.encode("123456"));

            //設置社區ID
            u.setComId(user.getComId());

            //手機號  唯一
            u.setUserPhone(user.getTcPhone());
            u.setEcPhone(user.getTcPhone());
            u.setHealth("2");
            //創建時間
            u.setCreateDate(new Date());
            //修改時間
            u.setUpdateDate(new Date());

            //添加用戶是否成功
            AssertUtil.isTrue(userMapper.insertSelective(u)<1,"插入用戶失敗");

            //給確診人員添加其  userId
            Integer userId =  userMapper.selectById(user.getTcPhone());
            user.setUserId(userId);
        }

        //2、默認值設置
        //確診日期
        user.setCreateDate(new Date());

        //添加是否成功
        AssertUtil.isTrue(insertSelective(user)<1,"添加失敗");

        //relaionUserRole(user.getId(),user.getComId());


    }


    @Transactional(propagation = Propagation.REQUIRED)           //涉及到事務   就需要此注解
    //用戶模塊的修改
    public void changeUser(Confirmed user) {
        //通過id獲取用戶信息
        Confirmed temp = confirmedMapper.selectByPrimaryKey(user.getId());
        //判斷用戶信息是否存在
        AssertUtil.isTrue(temp == null,"當前用戶不存在");

        //校驗參數
        changeConfirmed(user.getTrueName(),user.getTcPhone(),user.getState());

        //修改是否成功  完整版
        //AssertUtil.isTrue(updateByPrimaryKeySelective(user)<1,"修改失敗了");


        //修改是否成功  完整版
        AssertUtil.isTrue(confirmedMapper.uBPKS(user)<1,"修改失敗了");

    }

    //修改的參數校驗
    private void changeConfirmed(String trueName, String tcPhone, Integer state) {
        //1、用戶名不能為空
        AssertUtil.isTrue(StringUtils.isBlank(trueName),"姓名不能為空");
        //2、當前狀態不能為空
        AssertUtil.isTrue(StringUtils.isBlank(tcPhone),"請輸入手機號");
        //3、當前狀態不能為空
        AssertUtil.isTrue(state<1 || state>4,"請選擇正確的狀態碼");
    }

    //用戶模塊的添加的參數校驗
    private void checkConfirmed(String trueName, Integer state) {
        //1、用戶名不能為空
        AssertUtil.isTrue(StringUtils.isBlank(trueName),"姓名不能為空");
        //2、當前狀態不能為空
        AssertUtil.isTrue(state<1 || state>3,"請選擇正確的狀態碼");
    }

    //添加社區時的校驗
    private void relaionUserRole(Integer id, Integer comId) {
        //準備集合  存儲對象
        List<Community> urlist = new ArrayList<>();

        //userId,roleId
        //判斷是否選擇了角色信息

        //只能選擇一個社區
        AssertUtil.isTrue(comId>1 || comId<1,"只能選擇一個社區");

        //通過社區表的 com_id    查詢到社區表的對應社區名
        communityMapper.selectaddresComId(comId);
        //添加

    }

    @Transactional(propagation = Propagation.REQUIRED)           //涉及到事務   就需要此注解
    //確診人員的批量刪除
    public void deleteUserByIds(Integer[] ids) {
        //要刪除記錄不能為空
        AssertUtil.isTrue(ids == null || ids.length==0,"請選擇要刪除的記錄");

        //修改user表的狀態碼
        for(Integer id: ids){
            Confirmed confirmed = confirmedMapper.selectId(id);
            System.out.println(id+ " -----------------" );
            System.out.println(confirmed.getTrueName());
            AssertUtil.isTrue(userMapper.updateById(confirmed.getUserId())<1,"修改失敗");
        }

        //刪除確診表的個人信息記錄
        AssertUtil.isTrue(deleteBatch(ids)!=ids.length,"刪除失敗");
    }

    //查詢所有社區
    public List<Map<String, Object>> queryComs() {
        return confirmedMapper.selectComs();
    }
   
}

 

3、防疫管理模塊

Java 實戰項目之疫情防控管理系統詳解

Java 實戰項目之疫情防控管理系統詳解

核心代碼Service:

@Service
public class CommunityService extends BaseService<Community,Integer> {
    @Resource
    private CommunityMapper communityMapper;

    /**
     * 多條件分頁查詢
     * @param query
     * @return
     */
    public Map<String,Object> queryComByParams(CommunityQuery query){
        Map<String,Object> map=new HashMap<>();
        //初始化分頁
        PageHelper.startPage(query.getPage(), query.getLimit());
        //開始分頁
        PageInfo<Community> pageInfo=new PageInfo<>(communityMapper.selectByParams(query));
        //準備數據
        map.put("code",0);
        map.put("msg","");
        map.put("count",pageInfo.getTotal());
        map.put("data",pageInfo.getList());
        return map;
    }

    //查詢所有角色信息
    public List<Map<String, Object>> findRoles(Integer userId) {
        return communityMapper.selectRoles(userId);
    }

}

//============================================================
@Service
public class VaccinationService {

    @Resource
    VaccinationMapper vaccinationMapper;

    /*多條件查詢*/
    public Map<String,Object> selectAll(VaccinationQuery vaccinationQuery) {
        //創建map
        Map<String,Object> map =new HashMap<String,Object>();
        //查數據并分頁
        PageHelper.startPage(vaccinationQuery.getPage(),vaccinationQuery.getLimit());
        PageInfo<Vaccination> pageInfo=new PageInfo<>(vaccinationMapper.selectByParams(vaccinationQuery));
        map.put("code",0);
        map.put("msg","success");
        map.put("data",pageInfo.getList());
        map.put("count",pageInfo.getTotal());

        return map;
    }
    /*通過ID獲取對象*/
    public Vaccination selectId(Integer id) {
        return vaccinationMapper.selectById(id);
    }

    /*添加*/
    @Transactional(propagation = Propagation.REQUIRED)
    public void insertVaccination(Vaccination vaccination) {
        //審核
        checkOK(vaccination);
        vaccination.setFirstDate(new Date());
        vaccination.setSecondDate(new Date());
        //插入
        AssertUtil.isTrue(vaccinationMapper.insertSelective(vaccination)<1,"插入失敗");
    }

    private void checkOK(Vaccination vaccinatio){
        AssertUtil.isTrue(vaccinatio==null,"請輸入添加的角色");
        AssertUtil.isTrue(StringUtils.isBlank(vaccinatio.getTrueName()),"用戶名不能為空");
        AssertUtil.isTrue(StringUtils.isBlank(vaccinatio.getFirst()),"請填寫(是/否)");
        AssertUtil.isTrue(StringUtils.isBlank(vaccinatio.getSecond()),"請填寫(是/否)");
    }

    /*刪除*/
    public void delete(Integer[] ids) {
        AssertUtil.isTrue(ids==null||ids.length==0,"請選擇要刪除的用戶");
        AssertUtil.isTrue(vaccinationMapper.deleteVa(ids)!=ids.length,"刪除失敗~~~");
    }

    /*編輯*/
    public void updateVa(Vaccination vaccination) {
        checkOK(vaccination);
        if(vaccination.getFirst()==null||"否".equals(vaccination.getFirst())){
            vaccination.setFirstDate(null);
        }
        if(vaccination.getSecond()==null||"否".equals(vaccination.getSecond())){
            vaccination.setSecondDate(null);
        }
        if("是".equals(vaccination.getFirst())){
            vaccination.setFirstDate(new Date());
        }
        if("是".equals(vaccination.getSecond())){
            vaccination.setSecondDate(new Date());
        }
        AssertUtil.isTrue(vaccinationMapper.updateByPrimaryKeySelective(vaccination)<1,"修改失敗~");

    }
}

 

4、系統管理模塊

Java 實戰項目之疫情防控管理系統詳解

Java 實戰項目之疫情防控管理系統詳解

核心代碼:Service:

@Service
public class RoleService extends BaseService<Role,Integer> {


    @Autowired(required = false)
    RoleMapper roleMapper;

    @Autowired(required = false)
    RoleQuery roleQuery;

    @Resource
    private ModuleMapper moduleMapper;

    @Resource
    private PermissionMapper permissionMapper;

    /*多條件查詢*/
    public Map<String,Object> selectRole(RoleQuery roleQuery){
        //創建map
        Map<String,Object> map =new HashMap<String,Object>();
        //查數據并分頁
        PageHelper.startPage(roleQuery.getPage(),roleQuery.getLimit());
        PageInfo<Role> pageInfo=new PageInfo<>(roleMapper.selectByParams(roleQuery));
        map.put("code",0);
        map.put("msg","success");
        map.put("data",pageInfo.getList());
        map.put("count",pageInfo.getTotal());
        return map;
    }

    /*添加角色*/
    @Transactional(propagation = Propagation.REQUIRED)
    public void insertRole(Role role) {
        //審核
        checkRole(role);
        //添加
        role.setCreateDate(new Date());
        role.setUpdateDate(new Date());
        System.out.println("就差一點!!!!");
        AssertUtil.isTrue(insertSelective(role)<1,"添加失敗了呢~");
    }
    private void checkRole(Role role) {
        //是否為空
        AssertUtil.isTrue(role==null,"請輸入角色信息~");
        //判斷是否已經重復
        System.out.println("判斷");
        Role role1= roleMapper.selectByName(role.getRoleName());
        System.out.println("判斷結束");
        System.out.println(role1!=null);
        AssertUtil.isTrue(role1!=null,"已添加過啦~");
        System.out.println("退出@");
    }
    /*編輯角色*/
    @Transactional(propagation = Propagation.REQUIRED)
    public void updateRole(Role role) {
        role.setUpdateDate(new Date());
        AssertUtil.isTrue(updateByPrimaryKeySelective(role)<1,"編輯失敗啦~");
    }

    /**
     * 刪除角色信息
     * @param role
     */
    @Transactional(propagation = Propagation.REQUIRED)
    public void deleteRole(Role role) {
        // 驗證
        AssertUtil.isTrue(role.getId()==null || selectByPrimaryKey(role.getId())==null, "待刪除角色不存在");
        // 設定默認值
        role.setUpdateDate(new Date());
        // 刪除角色綁定的權限資源
        int count = roleMapper.countPermissionByRoleId(role.getId());
        if (count>0) {
            int i = roleMapper.deletePermissionsByRoleId(role.getId());
            AssertUtil.isTrue(i!=count, "角色綁定的權限資源刪除失敗");
        }
        // 判斷是否成功
        AssertUtil.isTrue(roleMapper.updateRoleById(role.getId())<1, "角色刪除失敗");
    }

    /**
     * 查詢所有角色
     * @return
     */
    public List<Map<String, Object>> seleceAllRole(Integer userId) {
        return roleMapper.seleceAllRole(userId);
    }

    /**
     * 給角色添加權限
     * @param mids
     * @param roleId
     */
    @Transactional(propagation = Propagation.REQUIRED)
    public void addGrant(Integer[] mids, Integer roleId) {
        // 判斷roleId是否存在
        AssertUtil.isTrue(roleId==null || roleMapper.selectByPrimaryKey(roleId)==null, "待授權的角色不存在");
        // 統計當前角色的權限資源數量
        int count = roleMapper.countPermissionByRoleId(roleId);
        if (count>0) {
            // 如果角色存在權限資源,就全部刪除
            int num = roleMapper.deletePermissionsByRoleId(roleId);
            AssertUtil.isTrue(count!=num, "資源刪除失敗");
        }
        List<Permission> plist = new ArrayList<>();
        if (mids!=null && mids.length!=0) {
            // 遍歷mids
            for (Integer mid : mids) {
                // 實例化對象
                Permission permission = new Permission();
                // 設置數據
                permission.setRoleId(roleId);
                permission.setModuleId(mid);
                // 權限碼
                permission.setAclValue(moduleMapper.selectByPrimaryKey(mid).getOptValue());
                permission.setCreateDate(new Date());
                permission.setUpdateDate(new Date());
                // 添加到list
                plist.add(permission);
            }
        }
        AssertUtil.isTrue(permissionMapper.insertBatch(plist)!=plist.size(), "角色權限更新失敗");
    }
}

 

5、用戶模塊

Java 實戰項目之疫情防控管理系統詳解

Java 實戰項目之疫情防控管理系統詳解

核心代碼Service:

@Service
public class RoleService extends BaseService<Role,Integer> {

    @Autowired(required = false)
    RoleMapper roleMapper;

    @Autowired(required = false)
    RoleQuery roleQuery;

    @Resource
    private ModuleMapper moduleMapper;

    @Resource
    private PermissionMapper permissionMapper;

    /*多條件查詢*/
    public Map<String,Object> selectRole(RoleQuery roleQuery){
        //創建map
        Map<String,Object> map =new HashMap<String,Object>();
        //查數據并分頁
        PageHelper.startPage(roleQuery.getPage(),roleQuery.getLimit());
        PageInfo<Role> pageInfo=new PageInfo<>(roleMapper.selectByParams(roleQuery));
        map.put("code",0);
        map.put("msg","success");
        map.put("data",pageInfo.getList());
        map.put("count",pageInfo.getTotal());
        return map;
    }

    /*添加角色*/
    @Transactional(propagation = Propagation.REQUIRED)
    public void insertRole(Role role) {
        //審核
        checkRole(role);
        //添加
        role.setCreateDate(new Date());
        role.setUpdateDate(new Date());
        System.out.println("就差一點!!!!");
        AssertUtil.isTrue(insertSelective(role)<1,"添加失敗了呢~");
    }
    private void checkRole(Role role) {
        //是否為空
        AssertUtil.isTrue(role==null,"請輸入角色信息~");
        //判斷是否已經重復
        System.out.println("判斷");
        Role role1= roleMapper.selectByName(role.getRoleName());
        System.out.println("判斷結束");
        System.out.println(role1!=null);
        AssertUtil.isTrue(role1!=null,"已添加過啦~");
        System.out.println("退出@");
    }
    /*編輯角色*/
    @Transactional(propagation = Propagation.REQUIRED)
    public void updateRole(Role role) {
        role.setUpdateDate(new Date());
        AssertUtil.isTrue(updateByPrimaryKeySelective(role)<1,"編輯失敗啦~");
    }

    /**
     * 刪除角色信息
     * @param role
     */
    @Transactional(propagation = Propagation.REQUIRED)
    public void deleteRole(Role role) {
        // 驗證
        AssertUtil.isTrue(role.getId()==null || selectByPrimaryKey(role.getId())==null, "待刪除角色不存在");
        // 設定默認值
        role.setUpdateDate(new Date());
        // 刪除角色綁定的權限資源
        int count = roleMapper.countPermissionByRoleId(role.getId());
        if (count>0) {
            int i = roleMapper.deletePermissionsByRoleId(role.getId());
            AssertUtil.isTrue(i!=count, "角色綁定的權限資源刪除失敗");
        }
        // 判斷是否成功
        AssertUtil.isTrue(roleMapper.updateRoleById(role.getId())<1, "角色刪除失敗");
    }

    /**
     * 查詢所有角色
     * @return
     */
    public List<Map<String, Object>> seleceAllRole(Integer userId) {
        return roleMapper.seleceAllRole(userId);
    }

    /**
     * 給角色添加權限
     * @param mids
     * @param roleId
     */
    @Transactional(propagation = Propagation.REQUIRED)
    public void addGrant(Integer[] mids, Integer roleId) {
        // 判斷roleId是否存在
        AssertUtil.isTrue(roleId==null || roleMapper.selectByPrimaryKey(roleId)==null, "待授權的角色不存在");
        // 統計當前角色的權限資源數量
        int count = roleMapper.countPermissionByRoleId(roleId);
        if (count>0) {
            // 如果角色存在權限資源,就全部刪除
            int num = roleMapper.deletePermissionsByRoleId(roleId);
            AssertUtil.isTrue(count!=num, "資源刪除失敗");
        }
        List<Permission> plist = new ArrayList<>();
        if (mids!=null && mids.length!=0) {
            // 遍歷mids
            for (Integer mid : mids) {
                // 實例化對象
                Permission permission = new Permission();
                // 設置數據
                permission.setRoleId(roleId);
                permission.setModuleId(mid);
                // 權限碼
                permission.setAclValue(moduleMapper.selectByPrimaryKey(mid).getOptValue());
                permission.setCreateDate(new Date());
                permission.setUpdateDate(new Date());
                // 添加到list
                plist.add(permission);
            }
        }
        AssertUtil.isTrue(permissionMapper.insertBatch(plist)!=plist.size(), "角色權限更新失敗");
    }
}

大概就是這樣,管理系統,基本都差不多,比如圖書管理,CRM等,詳細源碼見文件上傳~

到此這篇關于Java 實戰項目之疫情防控管理系統詳解的文章就介紹到這了,更多相關Java 疫情防控管理系統內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/llAl_lAll/article/details/121065156

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 成人高清 | 插插射啊爱视频日a级 | 91在线一区 | 久久com| 日韩av免费在线观看 | 成人在线小视频 | 日韩国产欧美视频 | 欧洲成人在线 | 日日爽夜夜操 | 欧美人成在线 | 欧美亚洲一 | 91精品久久久久久久久 | 国产精品久久久久久久久久东京 | 国产美女久久 | 婷婷激情五月 | 亚洲一区二区av | 小泽玛丽娅 | 欧美1级| 欧美一级欧美三级在线观看 | 紧缚调教一区二区三区视频 | 九九热精品在线 | 四虎影院入口 | 日本一区二区高清视频 | 欧美一区在线看 | 精品成人一区二区三区 | 国产欧美精品区一区二区三区 | 麻豆二区 | 伊人av在线 | 九九香蕉视频 | 4虎tv| 韩国一区二区视频 | 亚洲性片 | 色噜噜狠狠一区二区三区狼国成人 | 国产一区www| 99在线播放 | 国产日产久久高清欧美一区 | 一区二区中文字幕 | 精品国产成人 | 麻豆网址| 欧美在线亚洲 | 日韩av高清在线 |