智慧保安后台管理-外网项目备份
Administrator
2022-01-05 548c15acd182735a75fa8aa447e28645b6a36970
变更派遣修改,保安员年龄计算修改
3 files modified
221 ■■■■ changed files
src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java 200 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/mapper/UserMapper.xml 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java 20 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
@@ -375,66 +375,154 @@
        dispatcher.setUpdateTime(new Date());
        //查询当前派遣记录
        Dispatcher dispatcher1 = dispatcherService.getById(dispatcher.getId());
        //判断派遣单位类型,如果是医院,学校,银行等单位,则派遣人员年龄不应大于50岁
        DispatcherUnit dispatcherUnit = dispatcherUnitService.getById(dispatcher.getDispatcherUnitId());
        if (!dispatcher1.getUserIds().equals(dispatcher.getUserIds())) {
            //修改原保安人员的派遣状态
            //查询原保安人员的派遣记录,是否存在多条未结束派遣的
            Dispatcher dispatcher2 = new Dispatcher();
            dispatcher2.setUserIds(dispatcher1.getUserIds());
            dispatcher2.setStatus(0);
            List<Dispatcher> dispatcherList = dispatcherService.list(Condition.getQueryWrapper(dispatcher2));
            User user = new User();
            user.setId(Long.parseLong(dispatcher1.getUserIds()));
            if (dispatcherList.size() == 1) {
                //用户状态改变
                user.setDispatch("1");
            } else {
                user.setDispatch("0");
            if (null!=dispatcherUnit.getDistrict() && !dispatcherUnit.getDistrict().equals("") && !dispatcherUnit.getDistrict().equals(-1)) {
                //判断
                if (dispatcherUnit.getDistrict().equals(1) ||
                    dispatcherUnit.getDistrict().equals(2) ||
                    dispatcherUnit.getDistrict().equals(3)) {
                    //查询保安员年龄
                    UserVO userVO = userService.getUserAgeById(Long.parseLong(dispatcher.getUserIds()));
                    if (userVO.getAge() > 50) {
                        throw new ServiceException("保安员["+ userVO.getCardid() +"]变更派遣失败!派遣到学校,医院,银行的保安员年龄应不超过50周岁!");
                    } else {
                        //修改原保安人员的派遣状态
                        //查询原保安人员的派遣记录,是否存在多条未结束派遣的
                        Dispatcher dispatcher2 = new Dispatcher();
                        dispatcher2.setUserIds(dispatcher1.getUserIds());
                        dispatcher2.setStatus(0);
                        List<Dispatcher> dispatcherList = dispatcherService.list(Condition.getQueryWrapper(dispatcher2));
                        User user = new User();
                        user.setId(Long.parseLong(dispatcher1.getUserIds()));
                        if (dispatcherList.size() == 1) {
                            //用户状态改变
                            user.setDispatch("1");
                        } else {
                            user.setDispatch("0");
                        }
                        //修改原保安人员用户信息
                        userService.updateById(user);
                        //修改当前保安人员的派遣状态
                        User user1 = new User();
                        user1.setId(Long.parseLong(dispatcher.getUserIds()));
                        user1.setDispatch("0");
                        userService.updateById(user1);
                        //修改派遣记录信息
                        status = dispatcherService.updateById(dispatcher);
                        //内网同步
                        String s1 =
                            "update blade_user set dispatch = " + "'" + user.getDispatch() + "'" +
                                " " + "where id = " + "'" + user.getId() + "';" +
                                "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
                                ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
                                ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
                                ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
                                ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
                                ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
                                ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
                                ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
                                " " + "where id = " + "'" + dispatcher.getId() + "';" +
                            "update blade_user set dispatch = " + "'" + user1.getDispatch() + "'" +
                                " " + "where id = " + "'" + user1.getId() + "'";
                        FtpUtil.sqlFileUpload(s1);
                    }
                }
            }else {
                //修改原保安人员的派遣状态
                //查询原保安人员的派遣记录,是否存在多条未结束派遣的
                Dispatcher dispatcher2 = new Dispatcher();
                dispatcher2.setUserIds(dispatcher1.getUserIds());
                dispatcher2.setStatus(0);
                List<Dispatcher> dispatcherList = dispatcherService.list(Condition.getQueryWrapper(dispatcher2));
                User user = new User();
                user.setId(Long.parseLong(dispatcher1.getUserIds()));
                if (dispatcherList.size() == 1) {
                    //用户状态改变
                    user.setDispatch("1");
                } else {
                    user.setDispatch("0");
                }
                //修改原保安人员用户信息
                userService.updateById(user);
                //修改当前保安人员的派遣状态
                User user1 = new User();
                user1.setId(Long.parseLong(dispatcher.getUserIds()));
                user1.setDispatch("0");
                userService.updateById(user1);
                //修改派遣记录信息
                status = dispatcherService.updateById(dispatcher);
                //内网同步
                String s1 =
                    "update blade_user set dispatch = " + "'" + user.getDispatch() + "'" +
                        " " + "where id = " + "'" + user.getId() + "';" +
                        "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
                        ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
                        ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
                        ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
                        ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
                        ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
                        ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
                        ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
                        " " + "where id = " + "'" + dispatcher.getId() + "';" +
                        "update blade_user set dispatch = " + "'" + user1.getDispatch() + "'" +
                        " " + "where id = " + "'" + user1.getId() + "'";
                FtpUtil.sqlFileUpload(s1);
            }
            //修改原保安人员用户信息
            userService.updateById(user);
            //修改当前保安人员的派遣状态
            User user1 = new User();
            user1.setId(Long.parseLong(dispatcher.getUserIds()));
            user1.setDispatch("0");
            userService.updateById(user1);
            //修改派遣记录信息
            status = dispatcherService.updateById(dispatcher);
            //内网同步
            String s1 =
                "update blade_user set dispatch = " + "'" + user.getDispatch() + "'" +
                    " " + "where id = " + "'" + user.getId() + "';" +
                    "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
                    ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
                    ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
                    ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
                    ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
                    ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
                    ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
                    ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
                    " " + "where id = " + "'" + dispatcher.getId() + "';" +
                    "update blade_user set dispatch = " + "'" + user1.getDispatch() + "'" +
                    " " + "where id = " + "'" + user1.getId() + "'";
            FtpUtil.sqlFileUpload(s1);
        }else {
            //没有修改保安员,只修改了派遣时间等信息
            //修改
            status = dispatcherService.updateById(dispatcher);
            if (null!=dispatcherUnit.getDistrict() && !dispatcherUnit.getDistrict().equals("") && !dispatcherUnit.getDistrict().equals(-1)) {
                //判断
                if (dispatcherUnit.getDistrict().equals(1) ||
                    dispatcherUnit.getDistrict().equals(2) ||
                    dispatcherUnit.getDistrict().equals(3)) {
                    //查询保安员年龄
                    UserVO userVO = userService.getUserAgeById(Long.parseLong(dispatcher.getUserIds()));
                    if (userVO.getAge() > 50) {
                        throw new ServiceException("保安员[" + userVO.getCardid() + "]变更派遣失败!派遣到学校,医院,银行的保安员年龄应不超过50周岁!");
                    } else {
                        //没有修改保安员,只修改了派遣时间等信息
                        //修改
                        status = dispatcherService.updateById(dispatcher);
            //内网同步
            String s1 =
                "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
                    ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
                    ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
                    ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
                    ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
                    ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
                    ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
                    ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
                    " " + "where id = " + "'" + dispatcher.getId() + "'";
            FtpUtil.sqlFileUpload(s1);
                        //内网同步
                        String s1 =
                            "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
                                ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
                                ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
                                ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
                                ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
                                ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
                                ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
                                ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
                                " " + "where id = " + "'" + dispatcher.getId() + "'";
                        FtpUtil.sqlFileUpload(s1);
                    }
                }
            }else {
                //没有修改保安员,只修改了派遣时间等信息
                //修改
                status = dispatcherService.updateById(dispatcher);
                //内网同步
                String s1 =
                    "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
                        ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
                        ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
                        ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
                        ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
                        ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
                        ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
                        ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
                        " " + "where id = " + "'" + dispatcher.getId() + "'";
                FtpUtil.sqlFileUpload(s1);
            }
        }
        return R.status(status);
    }
src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -55,6 +55,7 @@
        select
        distinct
        bu.*,IF(mod(SUBSTR(bu.cardid,17,1),2),1,2) sexs,
        ifnull(TIMESTAMPDIFF(YEAR, SUBSTRING(bu.cardid, 7, 8), CURDATE()),0) AS age,
        sll.longitude,sll.latitude,
        bd.dept_name
        from
src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
@@ -185,11 +185,11 @@
            List<UserVO> userVOS = baseMapper.selectUserPagesByAge(page, user);
            //机构名称拼接
            userVOS.forEach(userVO -> {
                if (null != userVO.getCardid() && userVO.getCardid() != "") {
                    userVO.setAge(AgeUtil.idCardToAge(userVO.getCardid()));
                } else {
                    userVO.setAge(null);
                }
//                if (null != userVO.getCardid() && userVO.getCardid() != "") {
//                    userVO.setAge(AgeUtil.idCardToAge(userVO.getCardid()));
//                } else {
//                    userVO.setAge(null);
//                }
                if (null!=userVO.getDeptId()) {
                    List<String> list = baseMapper.getDeptName(userVO.getDeptId());
                    if (list.size() > 1) {
@@ -215,11 +215,11 @@
            List<UserVO> userVOS = baseMapper.selectUserPages(page, user);
            //机构名称拼接
            userVOS.forEach(userVO -> {
                if (null != userVO.getCardid() && userVO.getCardid() != "") {
                    userVO.setAge(AgeUtil.idCardToAge(userVO.getCardid()));
                } else {
                    userVO.setAge(null);
                }
//                if (null != userVO.getCardid() && userVO.getCardid() != "") {
//                    userVO.setAge(AgeUtil.idCardToAge(userVO.getCardid()));
//                } else {
//                    userVO.setAge(null);
//                }
                if (null!=userVO.getDeptId()) {
                    List<String> list = baseMapper.getDeptName(userVO.getDeptId());
                    if (list.size() > 1) {