whyclxw
2025-04-17 92efd8906a1af014079e9a11b45d99df91ffd72d
修改添加锁时加入到当前人所在的包机组
1个文件已修改
64 ■■■■ 已修改文件
src/main/java/com/whyc/service/LockInfService.java 64 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/LockInfService.java
@@ -13,6 +13,7 @@
import com.whyc.pojo.plus_inf.LockInf;
import com.whyc.pojo.plus_inf.StationInf;
import com.whyc.pojo.plus_lock_ram.LockIdcard;
import com.whyc.pojo.plus_user.Baojigroup;
import com.whyc.pojo.plus_user.BaojigroupLock;
import com.whyc.pojo.plus_user.BaojigroupUsr;
import com.whyc.pojo.plus_user.UserInf;
@@ -39,6 +40,9 @@
    @Autowired(required = false)
    private BaojigroupUsrMapper bjUserMapper;
    @Autowired(required = false)
    private BaojigroupMapper bjMapper;
    @Autowired(required = false)
    private LockIdcardMapper idcardMapper;
@@ -111,25 +115,53 @@
        linf.setModel(0);
        linf.setLockOpenCount(0);
        int flag=mapper.insert(linf);
        if(flag==1){//添加成功
            //重启线程并将锁加到当前人的包机组
            UserInf uinf= ActionUtil.getUser();
            QueryWrapper wrapper1=new QueryWrapper();
            wrapper1.eq("uid",uinf.getUid());
            List<BaojigroupUsr> groupIdList=bjUserMapper.selectList(wrapper1);
            List<BaojigroupLock> baojigroupList=new ArrayList();
            if(groupIdList!=null&&groupIdList.size()>0){
                BaojigroupLock bjLock=new BaojigroupLock();
                bjLock.setStationId(stationId);
                bjLock.setLockId(lockId);
                bjLock.setBaojiId(groupIdList.get(0).getBaojiId());
                baojigroupList.add(bjLock);
            }
            bjLockMapper.insertBatchSomeColumn(baojigroupList);
            processSurveyService.setUpThreadRestart();
        if(flag==1){//添加成功(包机组操作)
            insertInbaoji(stationId,lockId);
        }
        return new Response().set(1,true);
    }
    //包机组操作
    private void insertInbaoji(Integer stationId,Integer lockId){
        //重启线程并将锁加到当前人的包机组
        UserInf uinf= ActionUtil.getUser();
        QueryWrapper wrapper1=new QueryWrapper();
        wrapper1.eq("uid",uinf.getUid());
        List<BaojigroupUsr> groupIdList=bjUserMapper.selectList(wrapper1);
        List<BaojigroupLock> baojigroupList=new ArrayList();
        if(groupIdList!=null&&groupIdList.size()>0){
            BaojigroupLock bjLock=new BaojigroupLock();
            bjLock.setStationId(stationId);
            bjLock.setLockId(lockId);
            bjLock.setBaojiId(groupIdList.get(0).getBaojiId());
            baojigroupList.add(bjLock);
        }else{//人对应没有包机组先创建自己的默认包机组
            QueryWrapper wrapper3=new QueryWrapper();
            wrapper3.eq("baoji_name","默认包机组");
            wrapper3.last("limit 1");
            Baojigroup group=bjMapper.selectOne(wrapper3);
            if(group==null){
                Baojigroup bj=new Baojigroup();
                bj.setBaojiName("默认包机组");
                bjMapper.insert(bj);
                QueryWrapper wrapper4=new QueryWrapper();
                wrapper4.eq("baoji_name","默认包机组");
                wrapper4.last("limit 1");
                group=bjMapper.selectOne(wrapper4);
            }
            BaojigroupUsr bjUsr=new BaojigroupUsr();
            bjUsr.setUid(uinf.getUid());
            bjUsr.setBaojiId(group.getId());
            bjUserMapper.insert(bjUsr);
            BaojigroupLock bjLock=new BaojigroupLock();
            bjLock.setStationId(stationId);
            bjLock.setLockId(lockId);
            bjLock.setBaojiId(group.getId());
            baojigroupList.add(bjLock);
        }
        bjLockMapper.insertBatchSomeColumn(baojigroupList);
        processSurveyService.setUpThreadRestart();
    }
    //获取当前及放下最大的锁id
    private int getMaxLockId(Integer stationId) {
        int lockId=mapper.getMaxLockId(stationId);