CameraServiceImpl.java 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502
  1. package com.fdkankan.ucenter.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  4. import com.fdkankan.common.constant.AppConstant;
  5. import com.fdkankan.common.exception.BusinessException;
  6. import com.fdkankan.ucenter.common.PageInfo;
  7. import com.fdkankan.common.util.DateUtil;
  8. import com.fdkankan.common.util.FileSizeUtil;
  9. import com.fdkankan.ucenter.common.constants.NacosProperty;
  10. import com.fdkankan.ucenter.constant.CameraConstant;
  11. import com.fdkankan.ucenter.constant.LoginConstant;
  12. import com.fdkankan.ucenter.entity.*;
  13. import com.fdkankan.ucenter.httpClient.service.LaserService;
  14. import com.fdkankan.ucenter.mapper.ICameraMapper;
  15. import com.fdkankan.ucenter.service.*;
  16. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  17. import com.fdkankan.ucenter.util.DateUserUtil;
  18. import com.fdkankan.ucenter.vo.request.CameraParam;
  19. import com.fdkankan.ucenter.vo.response.CameraAppVo;
  20. import com.fdkankan.ucenter.vo.response.CameraSpaceVo;
  21. import com.fdkankan.ucenter.vo.response.CameraVo;
  22. import com.fdkankan.ucenter.vo.response.GroupByCount;
  23. import org.apache.commons.lang3.StringUtils;
  24. import org.joda.time.DateTime;
  25. import org.joda.time.Days;
  26. import org.springframework.beans.factory.annotation.Autowired;
  27. import org.springframework.stereotype.Service;
  28. import java.util.*;
  29. import java.util.stream.Collectors;
  30. /**
  31. * <p>
  32. * 相机主表 服务实现类
  33. * </p>
  34. *
  35. * @author
  36. * @since 2022-07-04
  37. */
  38. @Service
  39. public class CameraServiceImpl extends ServiceImpl<ICameraMapper, Camera> implements ICameraService {
  40. @Autowired
  41. IUserService userService;
  42. @Autowired
  43. LaserService fdkkLaserService;
  44. @Autowired
  45. ISceneProService sceneProService;
  46. @Autowired
  47. ICameraSpaceService cameraSpaceService;
  48. @Autowired
  49. IUserIncrementService userIncrementService;
  50. @Autowired
  51. ISceneService sceneService;
  52. @Autowired
  53. ISceneResourceCameraService sceneResourceCameraService;
  54. @Autowired
  55. ISceneResourceService sceneResourceService;
  56. @Autowired
  57. ICameraDetailService cameraDetailService;
  58. @Autowired
  59. IScenePlusService scenePlusService;
  60. @Autowired
  61. ISceneCooperationService sceneCooperationService;
  62. @Autowired
  63. ICameraIncrementLogService cameraIncrementLogService;
  64. @Autowired
  65. IMailTemplateService mailTemplateService;
  66. @Autowired
  67. IIncrementTypeService incrementTypeService;
  68. @Autowired
  69. ICameraTypeService cameraTypeService;
  70. @Override
  71. public Camera getBySnCode(String snCode) {
  72. LambdaQueryWrapper<Camera> wrapper = new LambdaQueryWrapper<>();
  73. wrapper.eq(Camera::getSnCode,snCode);
  74. List<Camera> list = this.list(wrapper);
  75. if(list !=null && list.size() > 0){
  76. return list.get(0);
  77. }
  78. return null;
  79. }
  80. @Override
  81. public Camera getByWfiName(String snCode) {
  82. LambdaQueryWrapper<Camera> wrapper = new LambdaQueryWrapper<>();
  83. wrapper.eq(Camera::getWifiName,snCode);
  84. List<Camera> list = this.list(wrapper);
  85. if(list !=null && list.size() > 0){
  86. return list.get(0);
  87. }
  88. return null;
  89. }
  90. @Override
  91. public List<Camera> getCameraLikeSnCode(String snCode) {
  92. LambdaQueryWrapper<Camera> wrapper = new LambdaQueryWrapper<>();
  93. wrapper.like(Camera::getSnCode,snCode);
  94. return this.list(wrapper);
  95. }
  96. @Override
  97. public HashMap<Long, Camera> getByIds(List<Long> cameraIds) {
  98. HashMap<Long, Camera> map = new HashMap<>();
  99. if(cameraIds.size() >0){
  100. LambdaQueryWrapper<Camera> wrapper = new LambdaQueryWrapper<>();
  101. wrapper.in(Camera::getId,cameraIds);
  102. List<Camera> list = this.list(wrapper);
  103. list.forEach(entity -> map.put(entity.getId(),entity));
  104. }
  105. return map;
  106. }
  107. @Override
  108. public HashMap<String, Object> deadline(String username) {
  109. //7天内过期的集合
  110. List<CameraSpaceVo> cameraSpaceList = new ArrayList<>();
  111. //所有期限的集合
  112. List<CameraSpaceVo> cameraSpaceAll = new ArrayList<>();
  113. User user = userService.getByUserName(username);
  114. CameraParam param = new CameraParam();
  115. param.setPageNum(1);
  116. param.setPageSize(100);
  117. param.setUserId(user.getId());
  118. Page<CameraVo> page = this.getBaseMapper().pageList(new Page<>(param.getPageNum(),param.getPageSize()),param);
  119. List<Long> cameraIdList = page.getRecords().parallelStream().map(CameraVo::getId).collect(Collectors.toList());
  120. if(cameraIdList.size() >0){
  121. HashMap<Long, CameraSpaceVo> cameraSpaceMap = cameraSpaceService.getVoListByCameraIds(cameraIdList);
  122. for (CameraVo responseCamera : page.getRecords()) {
  123. CameraSpaceVo cameraSpace = cameraSpaceMap.get(responseCamera.getId());
  124. if(cameraSpace != null){
  125. DateTime dateTime = new DateTime(cameraSpace.getSpaceEndTime());
  126. cameraSpace.setSnCode(responseCamera.getSnCode());
  127. cameraSpace.setUsedSpace(Long.valueOf(responseCamera.getUsedSpace()));
  128. cameraSpace.setUsedSpaceStr(responseCamera.getUsedSpaceStr());
  129. cameraSpace.setTotalSpace(Double.parseDouble(responseCamera.getTotalSpace()));
  130. cameraSpace.setTotalSpaceStr(responseCamera.getTotalSpaceStr());
  131. Long space = cameraSpace.getSpace();
  132. cameraSpace.setSpace((long)FileSizeUtil.formetFileSize(space, FileSizeUtil.SIZETYPE_GB));
  133. cameraSpace.setSpaceStr(FileSizeUtil.formatFileSize(space));
  134. cameraSpace.setSpaceEndStr(DateUtil.date2String(cameraSpace.getSpaceEndTime(), DateUtil.YYYY_MM_DD_DATE_FORMAT));
  135. if(Days.daysBetween(new DateTime(), dateTime).getDays() < 7){
  136. cameraSpaceList.add(cameraSpace);
  137. cameraSpaceAll.add(cameraSpace);
  138. continue;
  139. }
  140. cameraSpaceAll.add(cameraSpace);
  141. }
  142. }
  143. }
  144. HashMap<String,Object> map = new HashMap<>();
  145. map.put("nickName", user.getNickName());
  146. if(cameraSpaceList.size() > 0){
  147. map.put("isExpire", true);
  148. Collections.sort(cameraSpaceList);
  149. map.put("cameraList", cameraSpaceList);
  150. return map;
  151. }
  152. map.put("isExpire", false);
  153. Collections.sort(cameraSpaceAll);
  154. map.put("cameraList", cameraSpaceAll);
  155. return map;
  156. }
  157. @Override
  158. public PageInfo pageList(CameraParam param) {
  159. User user = userService.getByUserName(param.getUserName());
  160. param.setUserId(user.getId());
  161. Page<CameraVo> page = this.getBaseMapper().pageList(new Page<>(param.getPageNum(),param.getPageSize()),param);
  162. List<Long> cameraIdList = page.getRecords().parallelStream().map(CameraVo::getId).collect(Collectors.toList());
  163. HashMap<Long,GroupByCount> sceneNumMap = new HashMap<>(); //场景数量,最后拍摄时间
  164. //HashMap<Long, CameraSpaceVo> cameraSpaceMap = new HashMap<>(); //到期时间
  165. HashMap<Long, UserIncrement> incrementMap = new HashMap<>(); //到期时间,是否过期
  166. if(cameraIdList.size() >0){
  167. sceneNumMap = sceneProService.findSceneNumByCameraIds(cameraIdList);
  168. //cameraSpaceMap = cameraSpaceService.getVoListByCameraIds(cameraIdList);
  169. incrementMap = userIncrementService.findByCameraIds(cameraIdList);
  170. }
  171. for (CameraVo responseCamera : page.getRecords()) {
  172. responseCamera.setCameraType(param.getCameraType());
  173. if (responseCamera.getType() != 0){
  174. if("GB".equals(responseCamera.getUnit())){
  175. responseCamera.setUsedSpaceStr(FileSizeUtil.formatFileSize(Long.parseLong(responseCamera.getUsedSpace())));
  176. responseCamera.setTotalSpaceStr(FileSizeUtil.formatFileSize(Long.parseLong(responseCamera.getTotalSpace())));
  177. String usedSpace = String.valueOf(FileSizeUtil.formetFileSize(Long.parseLong(responseCamera.getUsedSpace()), FileSizeUtil.SIZETYPE_GB));
  178. String totalSpace = String.valueOf(FileSizeUtil.formetFileSize(Long.parseLong(responseCamera.getTotalSpace()), FileSizeUtil.SIZETYPE_GB));
  179. responseCamera.setUsedSpace(usedSpace);
  180. responseCamera.setTotalSpace(totalSpace);
  181. }
  182. if("SP".equals(responseCamera.getUnit())){
  183. responseCamera.setUsedSpaceStr(responseCamera.getUsedSpace());
  184. responseCamera.setTotalSpaceStr(responseCamera.getTotalSpace());
  185. responseCamera.setUsedSpace(responseCamera.getUsedSpace());
  186. responseCamera.setTotalSpace(responseCamera.getTotalSpace());
  187. }
  188. }
  189. if(incrementMap.get(responseCamera.getId()) != null){
  190. UserIncrement userIncrement = incrementMap.get(responseCamera.getId());
  191. if(userIncrement != null){
  192. responseCamera.setUserIncrementId(userIncrement.getId());
  193. responseCamera.setMemberLevels(userIncrement.getMemberLevels());
  194. responseCamera.setSpaceEndStr(DateUserUtil.getDayTime(userIncrement.getIncrementEndTime()));
  195. responseCamera.setSpaceEndTime(userIncrement.getIncrementEndTime());
  196. responseCamera.setSubscriptionOrder(userIncrement.getSubscriptionOrder());
  197. String dayTime = userIncrement.getIncrementEndTime();
  198. Integer surplusDate = Days.daysBetween(new DateTime(), new DateTime( DateUserUtil.getDate(dayTime))).getDays();
  199. if(surplusDate < 31){
  200. responseCamera.setIsExpire(true);
  201. responseCamera.setSurplusDate(surplusDate);
  202. }else {
  203. responseCamera.setIsExpire(false);
  204. }
  205. IncrementType incrementType = incrementTypeService.getById(userIncrement.getIncrementTypeId());
  206. String totalSpaceStr = null;
  207. String totalSpace = null;
  208. if("GB".equals(responseCamera.getUnit())){
  209. if(incrementType!= null && "SE".equals(userIncrement.getMemberLevels()) && DateUserUtil.getDate(dayTime).getTime() > new Date().getTime() ){ //高级会员 50G容量
  210. totalSpaceStr = incrementType.getCameraCapacity() + ".00GB";
  211. totalSpace = incrementType.getCameraCapacity() + ".00";
  212. }
  213. }
  214. if("SP".equals(responseCamera.getUnit())){
  215. if(incrementType != null && "SE".equals(userIncrement.getMemberLevels()) && DateUserUtil.getDate(dayTime).getTime() > new Date().getTime() ){ //高级会员 50G容量
  216. totalSpaceStr = String.valueOf(incrementType.getCameraSpace());
  217. totalSpace = String.valueOf(incrementType.getCameraSpace());
  218. }
  219. }
  220. if(totalSpace!=null){
  221. responseCamera.setTotalSpaceStr(totalSpaceStr);
  222. responseCamera.setTotalSpace(totalSpace);
  223. }
  224. }
  225. }
  226. // CameraType cameraType = cameraTypeService.getByCameraType(responseCamera.getType());
  227. // if (cameraType.getIsLaser() == 1) {
  228. // Map<String, String> params = new HashMap<>();
  229. // params.put("snCode", responseCamera.getSnCode());
  230. // responseCamera.setSceneNum(fdkkLaserService.getLaserSceneNum(params));
  231. // }else{
  232. // Integer sceneNum = sceneNumMap.get(responseCamera.getId()) == null ? 0 : Math.toIntExact(sceneNumMap.get(responseCamera.getId()).getCount());
  233. // String lastTime = sceneNumMap.get(responseCamera.getId()) == null ? "" : sceneNumMap.get(responseCamera.getId()).getLastTime();
  234. // responseCamera.setSceneNum(sceneNum);
  235. // responseCamera.setLastTime(lastTime);
  236. // }
  237. Integer sceneNum = sceneNumMap.get(responseCamera.getId()) == null ? 0 : Math.toIntExact(sceneNumMap.get(responseCamera.getId()).getCount());
  238. String lastTime = sceneNumMap.get(responseCamera.getId()) == null ? "" : sceneNumMap.get(responseCamera.getId()).getLastTime();
  239. responseCamera.setSceneNum(sceneNum);
  240. responseCamera.setLastTime(lastTime);
  241. }
  242. return PageInfo.PageInfo(page);
  243. }
  244. @Override
  245. public void unbind(Long cameraId, String ids,String userName) {
  246. if(cameraId != null){
  247. ids = cameraId.toString();
  248. }
  249. String[] split = ids.split(",");
  250. List<Long> cameraIds = new ArrayList<>();
  251. for (String id : split) {
  252. cameraIds.add(Long.valueOf(id));
  253. }
  254. cameraIncrementLogService.saveLog(cameraIds,userName);
  255. userIncrementService.unbindCamera(cameraIds); //取消关联用户权益
  256. cameraDetailService.unbindCamera(cameraIds); //取消相机用户关联
  257. sceneService.bindOrUnCamera(cameraIds,null); //取消关联场景
  258. sceneProService.bindOrUnCamera(cameraIds,null); //取消关联场景
  259. scenePlusService.bindOrUnCamera(cameraIds,null); //取消关联场景
  260. sceneResourceCameraService.deleteByCameraIds(cameraIds); //删除协作相机
  261. }
  262. @Override
  263. public void bind(Integer cameraType, String snCodes, String username) {
  264. User user = userService.getByUserName(username);
  265. if(user == null){
  266. throw new BusinessException(LoginConstant.FAILURE_CODE_3015,LoginConstant.FAILURE_MSG_3015);
  267. }
  268. String[] snCodeArr = snCodes.split(",");
  269. List<Long> cameraIds = new ArrayList<>();
  270. for (String wifiName : snCodeArr) {
  271. Camera camera = null;
  272. if(wifiName.contains("_")){
  273. camera = this.getByWfiName(wifiName);
  274. }else {
  275. camera = this.getBySnCode(wifiName);
  276. }
  277. if(camera == null){
  278. throw new BusinessException(AppConstant.FAILURE_CODE_4010, wifiName +"-"+ AppConstant.FAILURE_MSG_4010);
  279. }
  280. CameraDetail cameraDetail = cameraDetailService.getByCameraId(camera.getId());
  281. if(cameraDetail == null){
  282. throw new BusinessException(AppConstant.FAILURE_CODE_4010, wifiName +"-"+ AppConstant.FAILURE_MSG_4010);
  283. }
  284. if( cameraDetail.getUserId() != null){
  285. throw new BusinessException(CameraConstant.FAILURE_CODE_6010, wifiName +"-"+ CameraConstant.FAILURE_MSG_6010);
  286. }
  287. cameraIds.add(camera.getId());
  288. }
  289. cameraIncrementLogService.saveLog(cameraIds,null,user.getId(),2);
  290. cameraDetailService.bindCamera(cameraIds,user);
  291. sceneService.bindOrUnCamera(cameraIds,user.getId());
  292. sceneProService.bindOrUnCamera(cameraIds,user.getId());
  293. scenePlusService.bindOrUnCamera(cameraIds,user.getId());
  294. if("local".equals(NacosProperty.uploadType)){ //局域网绑定相机,添加权益
  295. userIncrementService.addByCameraAndUser(cameraIds,user.getId());
  296. }
  297. }
  298. @Override
  299. public void saveCooperationUser(String ids, Long id,String resourceIds, String username,String lang) {
  300. User user = userService.getByUserName(username);
  301. if(user == null){
  302. throw new BusinessException(LoginConstant.FAILURE_CODE_3021, LoginConstant.FAILURE_MSG_3021);
  303. }
  304. if (id != null) {
  305. ids = id.toString();
  306. }
  307. String[] split = ids.split(",");
  308. List<Long> cameraIds = new ArrayList<>();
  309. for (String cameraId : split) {
  310. cameraIds.add(Long.valueOf(cameraId));
  311. }
  312. HashMap<Long, CameraDetail> detailMap = cameraDetailService.getByCameraIds(cameraIds);
  313. HashMap<Long, Camera> cameraMap = this.getByIds(cameraIds);
  314. cameraDetailService.updateCooperationByIds(cameraIds, user.getId());
  315. sceneResourceCameraService.deleteByCameraIds(cameraIds);
  316. //保存相机和场景资源的关联关系你
  317. List<Long> resourceIdList = new ArrayList<>();
  318. List<SceneResource> v3List = new ArrayList<>();
  319. List<SceneResource> v4List = new ArrayList<>();
  320. if (StringUtils.isNotEmpty(resourceIds)) {
  321. for (String rId : resourceIds.split(",")) {
  322. resourceIdList.add(Long.valueOf(rId));
  323. }
  324. List<SceneResource> sceneResources = sceneResourceService.listByIds(resourceIdList);
  325. v3List = sceneResources.stream().filter(entity -> entity.getVersion().equals("v3")).collect(Collectors.toList());
  326. v4List = sceneResources.stream().filter(entity -> entity.getVersion().equals("v4")).collect(Collectors.toList());
  327. sceneResourceCameraService.saveBatchByCameraIds(cameraIds,resourceIdList);
  328. }else {
  329. List<Long> laserCameraIds = new ArrayList<>();
  330. for (Long cameraId : detailMap.keySet()) {
  331. CameraDetail detail = detailMap.get(cameraId);
  332. CameraType cameraType = cameraTypeService.getByCameraType(detail.getType());
  333. if (cameraType.getIsLaser() == 1) {
  334. laserCameraIds.add(cameraId);
  335. }
  336. }
  337. if(laserCameraIds.size() >0){
  338. List<SceneResource> sceneResources = sceneResourceService.list();
  339. List<Long> collect = sceneResources.stream().map(SceneResource::getId).collect(Collectors.toList());
  340. sceneResourceCameraService.saveBatchByCameraIds(laserCameraIds,collect);
  341. v3List = sceneResources.stream().filter(entity -> entity.getVersion().equals("v3")).collect(Collectors.toList());
  342. v4List = sceneResources.stream().filter(entity -> entity.getVersion().equals("v4")).collect(Collectors.toList());
  343. }
  344. }
  345. List<ScenePro> sceneProList = sceneProService.getListByCameraIds(cameraIds);
  346. List<ScenePlus> scenePlusList = scenePlusService.getListByCameraIds(cameraIds);
  347. sceneCooperationService.deleteCooperationList(sceneProList,scenePlusList);
  348. if(!v3List.isEmpty() && !sceneProList.isEmpty()){
  349. List<Long> v3Ids = v3List.stream().map(SceneResource::getId).collect(Collectors.toList());
  350. sceneCooperationService.saveBatchByList(sceneProList,new ArrayList<>(),user.getId(),v3Ids);
  351. }
  352. if(!v4List.isEmpty() && !scenePlusList.isEmpty()){
  353. List<Long> v4Ids = v4List.stream().map(SceneResource::getId).collect(Collectors.toList());
  354. sceneCooperationService.saveBatchByList(new ArrayList<>(),scenePlusList,user.getId(),v4Ids);
  355. }
  356. fdkkLaserService.disableCooperation(detailMap, cameraMap);
  357. fdkkLaserService.enableCameraCooperation(detailMap, cameraMap, username);
  358. if("aws".equals(NacosProperty.uploadType)){
  359. mailTemplateService.sendCameraCooperation(cameraMap,username,lang);
  360. }
  361. }
  362. @Override
  363. public void deleteCooperationUser(Long cameraId) {
  364. List<Long> cameraIds = new ArrayList<>();
  365. cameraIds.add(cameraId);
  366. HashMap<Long, CameraDetail> detailMap = cameraDetailService.getByCameraIds(cameraIds);
  367. HashMap<Long, Camera> cameraMap = this.getByIds(cameraIds);
  368. cameraDetailService.updateCooperationByIds(cameraIds, null);
  369. sceneResourceCameraService.deleteByCameraIds(cameraIds);
  370. List<ScenePro> sceneProList = sceneProService.getListByCameraIds(cameraIds);
  371. List<ScenePlus> scenePlusList = scenePlusService.getListByCameraIds(cameraIds);
  372. sceneCooperationService.deleteCooperationList(sceneProList,scenePlusList);
  373. fdkkLaserService.disableCooperation(detailMap, cameraMap);
  374. }
  375. @Override
  376. public Camera getBySnCodeAndPassword(String appUserName, String appPassword) {
  377. LambdaQueryWrapper<Camera> wrapper = new LambdaQueryWrapper<>();
  378. wrapper.eq(Camera::getChildName,appUserName)
  379. .eq(Camera::getChildPassword,appPassword);
  380. List<Camera> list = this.list(wrapper);
  381. if(list != null && list.size() >0){
  382. return list.get(0);
  383. }
  384. return null;
  385. }
  386. @Override
  387. public Camera getByChildName(String childName) {
  388. LambdaQueryWrapper<Camera> wrapper = new LambdaQueryWrapper<>();
  389. wrapper.eq(Camera::getChildName,childName);
  390. List<Camera> list = this.list(wrapper);
  391. if(list != null && list.size() >0){
  392. return list.get(0);
  393. }
  394. return null;
  395. }
  396. @Override
  397. public CameraVo getVoByChildName(String childName) {
  398. CameraVo vo = null;
  399. Camera cameraEntity = this.getByChildName(childName);
  400. if (cameraEntity != null){
  401. CameraDetail detailEntity = cameraDetailService.getByCameraId(cameraEntity.getId());
  402. if (detailEntity != null){
  403. vo = new CameraVo();
  404. vo.setId(cameraEntity.getId());
  405. vo.setUserId(detailEntity.getUserId());
  406. vo.setActivatedTime(cameraEntity.getActivatedTime());
  407. vo.setBalance(Integer.valueOf(detailEntity.getBalance()));
  408. vo.setChildName(cameraEntity.getChildName());
  409. vo.setSnCode(cameraEntity.getSnCode());
  410. vo.setUnit(detailEntity.getUnit());
  411. if (detailEntity.getType() != 0){
  412. if("GB".equals(detailEntity.getUnit())){
  413. vo.setUsedSpace(Double.valueOf(FileSizeUtil.formetFileSize(detailEntity.getUsedSpace().longValue(), FileSizeUtil.SIZETYPE_GB)).intValue() +"" );
  414. vo.setTotalSpace(Double.valueOf(FileSizeUtil.formetFileSize(detailEntity.getTotalSpace().longValue(), FileSizeUtil.SIZETYPE_GB)).intValue() +"");
  415. vo.setUsedSpaceStr(FileSizeUtil.formatFileSize(detailEntity.getUsedSpace().longValue()));
  416. vo.setTotalSpaceStr(FileSizeUtil.formatFileSize(detailEntity.getTotalSpace().longValue()));
  417. }
  418. if("SP".equals(detailEntity.getUnit())){
  419. vo.setUsedSpace(String.valueOf(detailEntity.getUsedSpace()));
  420. vo.setTotalSpace(String.valueOf(detailEntity.getTotalSpace()));
  421. vo.setUsedSpaceStr(String.valueOf(detailEntity.getUsedSpace()));
  422. vo.setTotalSpaceStr(String.valueOf(detailEntity.getTotalSpace()));
  423. }
  424. }
  425. vo.setType(detailEntity.getType());
  426. vo.setCountry(detailEntity.getCountry());
  427. vo.setCameraType(detailEntity.getType()+"");
  428. }
  429. }
  430. return vo;
  431. }
  432. @Override
  433. public List<CameraAppVo> getCameraInfo(String childName, String childPassword) {
  434. return this.getBaseMapper().getCameraInfo(childName,childPassword);
  435. }
  436. @Override
  437. public List<Camera> getAllList(String childName,String token) {
  438. User user = userService.getByToken(token);
  439. if(user == null){
  440. return new ArrayList<>();
  441. }
  442. return this.getBaseMapper().getAllListByUser(user.getId(),childName);
  443. }
  444. @Override
  445. public List<Camera> findLikeChildName(String searchKey) {
  446. LambdaQueryWrapper<Camera> wrapper = new LambdaQueryWrapper<>();
  447. wrapper.like(Camera::getSnCode,searchKey);
  448. return this.list(wrapper);
  449. }
  450. @Override
  451. public List<Camera> getBySnCodes(List<String> snCodes) {
  452. LambdaQueryWrapper<Camera> wrapper = new LambdaQueryWrapper<>();
  453. if(snCodes == null || snCodes.size()<=0){
  454. return new ArrayList<>();
  455. }
  456. wrapper.in(Camera::getSnCode,snCodes);
  457. return this.list(wrapper);
  458. }
  459. }