whyclxw
2025-04-17 92efd8906a1af014079e9a11b45d99df91ffd72d
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,7 +115,13 @@
        linf.setModel(0);
        linf.setLockOpenCount(0);
        int flag=mapper.insert(linf);
        if(flag==1){//添加成功
        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();
@@ -124,11 +134,33 @@
                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();
        }
        return new Response().set(1,true);
    }
    //获取当前及放下最大的锁id
    private int getMaxLockId(Integer stationId) {