From 96510a549bfb313920bf297b28089c4cf57f0146 Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期四, 15 五月 2025 14:01:16 +0800 Subject: [PATCH] 权限管理 --- src/main/java/com/whyc/service/LockInfService.java | 119 +++++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 83 insertions(+), 36 deletions(-) diff --git a/src/main/java/com/whyc/service/LockInfService.java b/src/main/java/com/whyc/service/LockInfService.java index 16ad820..9030345 100644 --- a/src/main/java/com/whyc/service/LockInfService.java +++ b/src/main/java/com/whyc/service/LockInfService.java @@ -10,6 +10,7 @@ import com.whyc.dto.RealDto; import com.whyc.dto.Response; import com.whyc.mapper.*; +import com.whyc.pojo.plus_inf.LockAddress; import com.whyc.pojo.plus_inf.LockInf; import com.whyc.pojo.plus_inf.StationInf; import com.whyc.pojo.plus_lock_ram.LockIdcard; @@ -42,10 +43,17 @@ private BaojigroupUsrMapper bjUserMapper; @Autowired(required = false) + private BaojigroupService baojiService; + + @Autowired(required = false) private BaojigroupMapper bjMapper; @Autowired(required = false) private LockIdcardMapper idcardMapper; + + @Autowired(required = false) + private LockAddressMapper addressMapper; + @Autowired private ProcessSurveyService processSurveyService; @@ -63,6 +71,16 @@ int lockId=0; if(sinf!=null){ stationId=sinf.getStationId(); + //鏍规嵁閿佸悕鍒ゆ柇鏈烘埧涓嬫槸鍚﹀瓨鍦ㄥ悓鍚嶉攣 + QueryWrapper wrapper1=new QueryWrapper(); + wrapper1.eq("station_id",stationId); + wrapper1.eq("lock_name",lockInf.getLockName()); + wrapper1.eq("del_flag",0); + wrapper1.last("limit 1"); + LockInf judgeLock=mapper.selectOne(wrapper1); + if (judgeLock!=null){ + return new Response().set(1,false,"褰撳墠鏈烘埧涓嬪凡缁忓瓨鍦ㄥ悓鍚嶉攣"); + } //鑾峰彇褰撳墠鏈�澶х殑閿� lockId=getMaxLockId(stationId); if(lockId==0){ @@ -114,14 +132,22 @@ linf.setLastUpdateTime(new Date()); linf.setModel(0); linf.setLockOpenCount(0); + linf.setLockIp(lockInf.getLockIp()); int flag=mapper.insert(linf); if(flag==1){//娣诲姞鎴愬姛(鍖呮満缁勬搷浣�) insertInbaoji(stationId,lockId); + //閿佺殑榛樿浣嶇疆鎻掑叆涓�0 + LockAddress lockAddress=new LockAddress(); + lockAddress.setStationId(stationId); + lockAddress.setLockId(lockId); + lockAddress.setScreenFlag(0); + lockAddress.setAddressFlag(0); + addressMapper.insert(lockAddress); } return new Response().set(1,true); } //鍖呮満缁勬搷浣� - private void insertInbaoji(Integer stationId,Integer lockId){ + public void insertInbaoji(Integer stationId,Integer lockId){ //閲嶅惎绾跨▼骞跺皢閿佸姞鍒板綋鍓嶄汉鐨勫寘鏈虹粍 UserInf uinf= ActionUtil.getUser(); QueryWrapper wrapper1=new QueryWrapper(); @@ -147,6 +173,7 @@ wrapper4.eq("baoji_name","榛樿鍖呮満缁�"); wrapper4.last("limit 1"); group=bjMapper.selectOne(wrapper4); + baojiService.insertNeiZhi(group.getId()); } BaojigroupUsr bjUsr=new BaojigroupUsr(); bjUsr.setUid(uinf.getUid()); @@ -163,7 +190,7 @@ processSurveyService.setUpThreadRestart(); } //鑾峰彇褰撳墠鍙婃斁涓嬫渶澶х殑閿乮d - private int getMaxLockId(Integer stationId) { + public int getMaxLockId(Integer stationId) { int lockId=mapper.getMaxLockId(stationId); return lockId; } @@ -186,7 +213,18 @@ public Response delLock(Integer lockId) { UpdateWrapper wrapper=new UpdateWrapper(); wrapper.eq("lock_id",lockId); - mapper.delete(wrapper); + wrapper.set("del_flag",1);//鍒犻櫎鏃舵爣璁颁负1 + int flag=mapper.update((LockInf) ActionUtil.objeNull,wrapper); + if(flag==1){ + //鍒犻櫎鍖呮満缁勪笅璁板綍 + UpdateWrapper wrapper1=new UpdateWrapper(); + wrapper1.eq("lock_id",lockId); + bjLockMapper.delete(wrapper1); + //绉婚櫎address + UpdateWrapper wrapper2=new UpdateWrapper(); + wrapper2.eq("lock_id",lockId); + addressMapper.delete(wrapper2); + } return new Response().set(1,true); } //淇敼閿� @@ -208,6 +246,7 @@ if(lockInf.getScreenFlag()!=null){ wrapper.set("screen_flag",lockInf.getScreenFlag()); } + if(lockInf.getLongitude()!=null){ wrapper.set("longitude",lockInf.getLongitude()); } @@ -215,16 +254,16 @@ wrapper.set("latitude",lockInf.getLatitude()); } mapper.update((LockInf) ActionUtil.objeNull,wrapper); + if(lockInf.getLockIp()!=null){ + UpdateWrapper wrapper1=new UpdateWrapper(); + wrapper1.set("lock_ip",lockInf.getLockIp()); + wrapper1.eq("station_id",lockInf.getStationId()); + mapper.update((LockInf) ActionUtil.objeNull,wrapper1); + processSurveyService.setUpThreadRestart(); + } return new Response().set(1,true); } - //鏌ヨ鎵�鏈夐攣鍚嶄俊鎭�(鐢ㄤ簬涓嬫媺) - /*public Response getLinf() { - List<LockInf> list=mapper.selectList(null); - List<String> lnameList = list.stream() - .map(LockInf::getLockName) // 鎻愬彇鍚嶅瓧 - .collect(Collectors.toList()); // 杞崲涓哄垪琛� - return new Response().setII(1,list!=null,lnameList,"鏌ヨ鎵�鏈夐攣鍚嶄俊鎭�(鐢ㄤ簬涓嬫媺)"); - }*/ + //鏌ヨ灞忔煖鐨勫叏閮ㄧ被鍨�(涓嬫媺) public Response getScreenType(Integer uid) { @@ -246,35 +285,43 @@ map.put("closeNum",0); map.put("unLoadNum",0); //鏍规嵁dto涓璼tationid鍜屽寘鏈虹粍id鏌ヨ鍑虹鐞嗙殑lockid - List<Integer> lockIdList=bjLockMapper.getLocIdByStationidAndBjId(dto.getStationId(),dto.getBaojiId()); - List<LockInf> linfs=mapper.getRealLock(lockIdList); - if(linfs!=null&&linfs.size()>0){ - map.put("sumLinf",linfs.size()); - Map<Integer, List<LockInf>> onlinemap = linfs.stream().collect(Collectors.groupingBy(LockInf::getLockOnline)); - for (Integer state : onlinemap.keySet()) { - if(state==0){ - map.put("offLineNum", onlinemap.get(0).size());//绂荤嚎 + try { + List<Integer> lockIdList=bjLockMapper.getLocIdByStationidAndBjId(dto.getStationId(),dto.getBaojiId()); + List<LockInf> linfs=mapper.getRealLock(lockIdList); + //鍖呮満缁勪笅閿佺殑浣嶇疆淇℃伅 + List<LockAddress> addressList=addressMapper.getAddressList(lockIdList); + //鏈烘埧涓嬫墍鏈夐攣鐨勪綅缃� + List<LockAddress> AllAddressList=addressMapper.getAllAddress(dto.getStationId()); + if(linfs!=null&&linfs.size()>0){ + map.put("sumLinf",linfs.size()); + Map<Integer, List<LockInf>> onlinemap = linfs.stream().collect(Collectors.groupingBy(LockInf::getLockOnline)); + for (Integer state : onlinemap.keySet()) { + if(state==0){ + map.put("offLineNum", onlinemap.get(0).size());//绂荤嚎 + } + if(state==1){ + map.put("onlineNum", onlinemap.get(1).size());//鍦ㄧ嚎 + } } - if(state==1){ - map.put("onlineNum", onlinemap.get(1).size());//鍦ㄧ嚎 + Map<Integer, List<LockInf>> openmap = linfs.stream().collect(Collectors.groupingBy(LockInf::getLockState)); + for (Integer open : openmap.keySet()) { + if(open==0){ + map.put("closeNum", openmap.get(0).size());//闂攣 + } + if(open==1){ + map.put("openNum", openmap.get(1).size());//寮�閿� + } + if(open==-1){ + map.put("unLoadNum", openmap.get(-1).size());//鏈畨瑁� + } } } - Map<Integer, List<LockInf>> openmap = linfs.stream().collect(Collectors.groupingBy(LockInf::getLockState)); - for (Integer open : openmap.keySet()) { - if(open==0){ - map.put("closeNum", openmap.get(0).size());//闂攣 - } - if(open==1){ - map.put("openNum", openmap.get(1).size());//寮�閿� - } - if(open==-1){ - map.put("unLoadNum", openmap.get(-1).size());//鏈畨瑁� - } - } + PageInfo pageInfo= PageInfoUtils.list2PageInfo(linfs, dto.getPageNum(), dto.getPageSize()); + map.put("pageInfo",pageInfo); + return new Response().setIV(1,linfs!=null,map,addressList,AllAddressList,"瀹炴椂鑾峰彇鑾峰彇鍖哄煙涓嬫墍鏈夐攣鐨勭姸鎬�"); + } catch (Exception e) { + return new Response().set(1,false,"瀹炴椂鑾峰彇鑾峰彇鍖哄煙涓嬫墍鏈夐攣鐨勭姸鎬�"); } - PageInfo pageInfo= PageInfoUtils.list2PageInfo(linfs, dto.getPageNum(), dto.getPageSize()); - map.put("pageInfo",pageInfo); - return new Response().setII(1,linfs!=null,map,"瀹炴椂鑾峰彇鑾峰彇鍖哄煙涓嬫墍鏈夐攣鐨勭姸鎬�"); } //鏌ヨ閿佺殑淇℃伅鍜宨d鍗� public Response getLockId(LockIdDto dto) { -- Gitblit v1.9.1