From 39fc2d6754953e41a7334a2166347baacfcfb40a Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期六, 11 十月 2025 18:21:18 +0800 Subject: [PATCH] 对接口 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetServiceImpl.java | 438 ++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 340 insertions(+), 98 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetServiceImpl.java index ace6b04..161d43f 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetServiceImpl.java @@ -1,5 +1,21 @@ package com.doumee.service.business.impl; +import cn.hutool.core.bean.BeanUtil; +import com.doumee.biz.system.SystemDictDataBiz; +import com.doumee.core.constants.ResponseStatus; +import com.doumee.core.exception.BusinessException; +import com.doumee.core.utils.Constants; +import com.doumee.core.utils.DateUtil; +import com.doumee.dao.business.JkCabinetGridMapper; +import com.doumee.dao.business.JkKeysMapper; +import com.doumee.dao.business.model.JkCabinetGrid; +import com.doumee.dao.business.model.JkKeys; +import com.doumee.dao.business.vo.AdminCabinetVO; +import com.doumee.dao.business.vo.CabinetConfigDataVO; +import com.doumee.dao.business.vo.CabinetDetailVO; +import com.doumee.dao.business.vo.CabinetGridInfoVO; +import com.doumee.dao.system.model.SystemDictData; +import com.doumee.service.business.third.model.LoginUserInfo; import com.doumee.service.business.third.model.PageData; import com.doumee.service.business.third.model.PageWrap; import com.doumee.core.utils.Utils; @@ -10,11 +26,18 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.yulichang.wrapper.MPJLambdaWrapper; +import lombok.extern.java.Log; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; import org.springframework.stereotype.Service; -import org.springframework.util.CollectionUtils; +import org.springframework.transaction.annotation.Transactional; +import com.github.xiaoymin.knife4j.core.util.CollectionUtils; -import java.util.List; +import java.math.BigDecimal; +import java.util.*; +import java.util.stream.Collectors; /** * 閽ュ寵鏌滃熀鏈俊鎭〃Service瀹炵幇 @@ -27,15 +50,121 @@ @Autowired private JkCabinetMapper jkCabinetMapper; + @Autowired + private JkCabinetGridMapper jkCabinetGridMapper; + + @Autowired + private JkKeysMapper jkKeysMapper; + + @Autowired + private SystemDictDataBiz systemDictDataBiz; + @Override + @Transactional(rollbackFor = {Exception.class,BusinessException.class}) public Integer create(JkCabinet jkCabinet) { + if(Objects.isNull(jkCabinet) + || StringUtils.isBlank(jkCabinet.getCode()) + || StringUtils.isBlank(jkCabinet.getName()) + || StringUtils.isBlank(jkCabinet.getDevId()) + || StringUtils.isBlank(jkCabinet.getLinkAddr()) + || StringUtils.isBlank(jkCabinet.getCode()) + + || Objects.isNull(jkCabinet.getPort()) + || CollectionUtils.isEmpty(jkCabinet.getManagerIdList()) + || CollectionUtils.isEmpty(jkCabinet.getAuthMemberIdList()) + || Objects.isNull(jkCabinet.getDoubleAuth()) + + || Objects.isNull(jkCabinet.getRowNum()) + || jkCabinet.getRowNum() <= Constants.ZERO + || Objects.isNull(jkCabinet.getColumnNum()) + || jkCabinet.getColumnNum() <= Constants.ZERO + || Objects.isNull(jkCabinet.getNoType()) + || Objects.isNull(jkCabinet.getSortType()) + || ( + Constants.equalsInteger(jkCabinet.getNoType(),Constants.ONE) + && ( Objects.isNull(jkCabinet.getNoIndex()) || Objects.isNull(jkCabinet.getNoLength()) || StringUtils.isBlank(jkCabinet.getNoPrefix()) ) + ) + ){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + //鏌ヨ缂栧彿鏄惁閲嶅 + if(jkCabinetMapper.selectCount(new QueryWrapper<JkCabinet>().lambda().eq(JkCabinet::getCode,jkCabinet.getCode()).eq(JkCabinet::getIsdeleted,Constants.ZERO))>Constants.ZERO){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"閽ュ寵鏌滆澶囩紪鍙峰凡瀛樺湪锛�"); + } + if(jkCabinetMapper.selectCount(new QueryWrapper<JkCabinet>().lambda().eq(JkCabinet::getDevId,jkCabinet.getDevId()).eq(JkCabinet::getIsdeleted,Constants.ZERO))>Constants.ZERO){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"閽ュ寵鏌滆澶嘔D宸插瓨鍦紒"); + } + LoginUserInfo loginUserInfo = jkCabinet.getLoginUserInfo(); + jkCabinet.setCreateDate(new Date()); + jkCabinet.setEditDate(jkCabinet.getCreateDate()); + jkCabinet.setCreator(loginUserInfo.getId()); + jkCabinet.setEditor(loginUserInfo.getId()); + jkCabinet.setIsdeleted(Constants.ZERO); + jkCabinet.setStatus(Constants.ZERO); + jkCabinet.setRunStatus(Constants.ONE); + if(StringUtils.isNotBlank(jkCabinet.getJwd())&&jkCabinet.getJwd().split(",").length>Constants.ONE){ + jkCabinet.setLongitude(new BigDecimal(jkCabinet.getJwd().split(",")[Constants.ZERO])); + jkCabinet.setLatitude(new BigDecimal(jkCabinet.getJwd().split(",")[Constants.ONE])); + } + jkCabinet.setManagerId(String.join(",",jkCabinet.getManagerIdList())); + jkCabinet.setAuthMemberId(String.join(",",jkCabinet.getAuthMemberIdList())); jkCabinetMapper.insert(jkCabinet); + this.createGrid(jkCabinet); return jkCabinet.getId(); + } + + + public void createGrid(JkCabinet jkCabinet){ + LoginUserInfo loginUserInfo = jkCabinet.getLoginUserInfo(); + Integer startNo = Constants.equalsInteger(jkCabinet.getNoType(),Constants.ZERO)?1:jkCabinet.getNoIndex() ; + List<JkCabinetGrid> jkCabinetGridList = new ArrayList<>(); + Integer maxNum = jkCabinet.getRowNum() * jkCabinet.getColumnNum(); + for (int i = 0; i < maxNum; i++) { + JkCabinetGrid grid = new JkCabinetGrid(); + grid.setCreateDate(new Date()); + grid.setEditDate(jkCabinet.getCreateDate()); + grid.setCreator(loginUserInfo.getId()); + grid.setEditor(loginUserInfo.getId()); + grid.setIsdeleted(Constants.ZERO); + grid.setStatus(Constants.ZERO); + grid.setCabinetId(jkCabinet.getId()); + if(Constants.equalsInteger(jkCabinet.getNoType(),Constants.ZERO)){ + grid.setCode(StringUtils.leftPad(startNo.toString(),maxNum.toString().length()+1,"0")); + }else{ + grid.setCode(jkCabinet.getNoPrefix() + StringUtils.leftPad(startNo.toString(),jkCabinet.getNoLength(),"0")); + } + + jkCabinetGridList.add(grid); + startNo = startNo + 1; + } + jkCabinetGridMapper.insert(jkCabinetGridList); } @Override public void deleteById(Integer id) { - jkCabinetMapper.deleteById(id); + JkCabinet jkCabinet = jkCabinetMapper.selectById(id); + if(Constants.equalsInteger(jkCabinet.getStatus(),Constants.ZERO)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炵鐢ㄦ暟鎹紝鏃犳硶杩涜鍒犻櫎"); + } + //鏌ヨ閽ュ寵鏌滀笅鐨勬煖鏍间俊鎭� + List<JkCabinetGrid> jkCabinetGridList = jkCabinetGridMapper.selectList(new QueryWrapper<JkCabinetGrid>().lambda().eq(JkCabinetGrid::getIsdeleted,Constants.ZERO) + .eq(JkCabinetGrid::getCabinetId,jkCabinet.getId()) + ); + if(Objects.nonNull(jkCabinetGridList)){ + jkCabinetGridMapper.update(null,new UpdateWrapper<JkCabinetGrid>().lambda().set(JkCabinetGrid::getIsdeleted,Constants.ONE) + .in(JkCabinetGrid::getId,jkCabinetGridList.stream().map(i->i.getId()).collect(Collectors.toList())) + ); + List<Integer> keyIdList = jkCabinetGridList.stream().filter(i->Objects.nonNull(i.getKeyId())).map(i->i.getKeyId()).collect(Collectors.toList()); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(keyIdList)){ + jkKeysMapper.update(null,new UpdateWrapper<JkKeys>().lambda() + .set(JkKeys::getStatus,Constants.ZERO) + .in(JkKeys::getId,keyIdList) + ); + } + } + jkCabinetMapper.update(null,new UpdateWrapper<JkCabinet>().lambda() + .set(JkCabinet::getIsdeleted,Constants.ONE) + .eq(JkCabinet::getId,jkCabinet.getId())); } @Override @@ -54,8 +183,59 @@ @Override public void updateById(JkCabinet jkCabinet) { + if(Objects.isNull(jkCabinet) + || Objects.isNull(jkCabinet.getId()) + || StringUtils.isBlank(jkCabinet.getCode()) + || StringUtils.isBlank(jkCabinet.getName()) + || StringUtils.isBlank(jkCabinet.getDevId()) + || StringUtils.isBlank(jkCabinet.getLinkAddr()) + || StringUtils.isBlank(jkCabinet.getCode()) + || CollectionUtils.isEmpty(jkCabinet.getManagerIdList()) + || CollectionUtils.isEmpty(jkCabinet.getAuthMemberIdList()) + || Objects.isNull(jkCabinet.getPort()) + || Objects.isNull(jkCabinet.getDoubleAuth()) + ){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + jkCabinet.setRowNum(null); + jkCabinet.setColumnNum(null); + jkCabinet.setSortType(null); + jkCabinet.setNoType(null); + jkCabinet.setNoIndex(null); + jkCabinet.setNoLength(null); + jkCabinet.setNoPrefix(null); + //鏌ヨ缂栧彿鏄惁閲嶅 + if(jkCabinetMapper.selectCount(new QueryWrapper<JkCabinet>().lambda().ne(JkCabinet::getId,jkCabinet.getId()).eq(JkCabinet::getCode,jkCabinet.getCode()).eq(JkCabinet::getIsdeleted,Constants.ZERO))>Constants.ZERO){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"閽ュ寵鏌滆澶囩紪鍙峰凡瀛樺湪锛�"); + } + if(jkCabinetMapper.selectCount(new QueryWrapper<JkCabinet>().lambda().ne(JkCabinet::getId,jkCabinet.getId()).eq(JkCabinet::getDevId,jkCabinet.getDevId()).eq(JkCabinet::getIsdeleted,Constants.ZERO))>Constants.ZERO){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"閽ュ寵鏌滆澶嘔D宸插瓨鍦紒"); + } + LoginUserInfo loginUserInfo = jkCabinet.getLoginUserInfo(); + jkCabinet.setEditDate(new Date()); + jkCabinet.setEditor(loginUserInfo.getId()); + if(StringUtils.isNotBlank(jkCabinet.getJwd())&&jkCabinet.getJwd().split(",").length>Constants.ONE){ + jkCabinet.setLongitude(new BigDecimal(jkCabinet.getJwd().split(",")[Constants.ZERO])); + jkCabinet.setLatitude(new BigDecimal(jkCabinet.getJwd().split(",")[Constants.ONE])); + } + jkCabinet.setManagerId(String.join(",",jkCabinet.getManagerIdList())); + jkCabinet.setAuthMemberId(String.join(",",jkCabinet.getAuthMemberIdList())); jkCabinetMapper.updateById(jkCabinet); } + + @Override + public void updateStatusById(JkCabinet jkCabinet) { + if(Objects.isNull(jkCabinet) + || Objects.isNull(jkCabinet.getId()) + || Objects.isNull(jkCabinet.getStatus())){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + jkCabinetMapper.update(null,new UpdateWrapper<JkCabinet>() + .lambda().set(JkCabinet::getStatus,jkCabinet.getStatus()) + .set(JkCabinet::getEditDate, DateUtil.getCurrDateTime()) + .eq(JkCabinet::getId,jkCabinet.getId())); + } + @Override public void updateByIdInBatch(List<JkCabinet> jkCabinets) { @@ -72,6 +252,18 @@ return jkCabinetMapper.selectById(id); } + + @Override + public JkCabinet getDetail(Integer id){ + JkCabinet jkCabinet = jkCabinetMapper.selectById(id); + if(Objects.nonNull(jkCabinet.getLongitude()) + && Objects.nonNull(jkCabinet.getLatitude())){ + jkCabinet.setJwd(jkCabinet.getLongitude() + "," + jkCabinet.getLatitude()); + } + jkCabinet.setGridNum(jkCabinet.getColumnNum()*jkCabinet.getRowNum()); + return jkCabinet; + } + @Override public JkCabinet findOne(JkCabinet jkCabinet) { QueryWrapper<JkCabinet> wrapper = new QueryWrapper<>(jkCabinet); @@ -80,6 +272,8 @@ @Override public List<JkCabinet> findList(JkCabinet jkCabinet) { + jkCabinet.setIsdeleted(Constants.ZERO); + jkCabinet.setStatus(Constants.ZERO); QueryWrapper<JkCabinet> wrapper = new QueryWrapper<>(jkCabinet); return jkCabinetMapper.selectList(wrapper); } @@ -87,103 +281,20 @@ @Override public PageData<JkCabinet> findPage(PageWrap<JkCabinet> pageWrap) { IPage<JkCabinet> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); - QueryWrapper<JkCabinet> queryWrapper = new QueryWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); - if (pageWrap.getModel().getId() != null) { - queryWrapper.lambda().eq(JkCabinet::getId, pageWrap.getModel().getId()); + JkCabinet model = pageWrap.getModel(); + IPage<JkCabinet> iPage = jkCabinetMapper.selectPage(page, new QueryWrapper<JkCabinet>() + .lambda() + .eq(JkCabinet::getIsdeleted,Constants.ZERO) + .like(StringUtils.isNotBlank(model.getName()),JkCabinet::getName, model.getName()) + .like(StringUtils.isNotBlank(model.getCode()),JkCabinet::getCode, model.getCode()) + .eq(Objects.nonNull(model.getStatus()),JkCabinet::getStatus, model.getStatus()) + .eq(Objects.nonNull(model.getRunStatus()),JkCabinet::getRunStatus, model.getRunStatus()) + ); + for (JkCabinet jkCabinet:iPage.getRecords()) { + jkCabinet.setGridNum(jkCabinet.getColumnNum()*jkCabinet.getRowNum()); } - if (pageWrap.getModel().getCreator() != null) { - queryWrapper.lambda().eq(JkCabinet::getCreator, pageWrap.getModel().getCreator()); - } - if (pageWrap.getModel().getCreateDate() != null) { - queryWrapper.lambda().ge(JkCabinet::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); - queryWrapper.lambda().le(JkCabinet::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); - } - if (pageWrap.getModel().getEditor() != null) { - queryWrapper.lambda().eq(JkCabinet::getEditor, pageWrap.getModel().getEditor()); - } - if (pageWrap.getModel().getEditDate() != null) { - queryWrapper.lambda().ge(JkCabinet::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); - queryWrapper.lambda().le(JkCabinet::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); - } - if (pageWrap.getModel().getIsdeleted() != null) { - queryWrapper.lambda().eq(JkCabinet::getIsdeleted, pageWrap.getModel().getIsdeleted()); - } - if (pageWrap.getModel().getInfo() != null) { - queryWrapper.lambda().eq(JkCabinet::getInfo, pageWrap.getModel().getInfo()); - } - if (pageWrap.getModel().getCode() != null) { - queryWrapper.lambda().eq(JkCabinet::getCode, pageWrap.getModel().getCode()); - } - if (pageWrap.getModel().getName() != null) { - queryWrapper.lambda().eq(JkCabinet::getName, pageWrap.getModel().getName()); - } - if (pageWrap.getModel().getDevId() != null) { - queryWrapper.lambda().eq(JkCabinet::getDevId, pageWrap.getModel().getDevId()); - } - if (pageWrap.getModel().getSerialNo() != null) { - queryWrapper.lambda().eq(JkCabinet::getSerialNo, pageWrap.getModel().getSerialNo()); - } - if (pageWrap.getModel().getLinkAddr() != null) { - queryWrapper.lambda().eq(JkCabinet::getLinkAddr, pageWrap.getModel().getLinkAddr()); - } - if (pageWrap.getModel().getStatus() != null) { - queryWrapper.lambda().eq(JkCabinet::getStatus, pageWrap.getModel().getStatus()); - } - if (pageWrap.getModel().getPort() != null) { - queryWrapper.lambda().eq(JkCabinet::getPort, pageWrap.getModel().getPort()); - } - if (pageWrap.getModel().getManagerId() != null) { - queryWrapper.lambda().eq(JkCabinet::getManagerId, pageWrap.getModel().getManagerId()); - } - if (pageWrap.getModel().getUseTime() != null) { - queryWrapper.lambda().eq(JkCabinet::getUseTime, pageWrap.getModel().getUseTime()); - } - if (pageWrap.getModel().getDoubleAuth() != null) { - queryWrapper.lambda().eq(JkCabinet::getDoubleAuth, pageWrap.getModel().getDoubleAuth()); - } - if (pageWrap.getModel().getAuthMemberId() != null) { - queryWrapper.lambda().eq(JkCabinet::getAuthMemberId, pageWrap.getModel().getAuthMemberId()); - } - if (pageWrap.getModel().getRowNum() != null) { - queryWrapper.lambda().eq(JkCabinet::getRowNum, pageWrap.getModel().getRowNum()); - } - if (pageWrap.getModel().getColumnNum() != null) { - queryWrapper.lambda().eq(JkCabinet::getColumnNum, pageWrap.getModel().getColumnNum()); - } - if (pageWrap.getModel().getHaertTime() != null) { - queryWrapper.lambda().ge(JkCabinet::getHaertTime, Utils.Date.getStart(pageWrap.getModel().getHaertTime())); - queryWrapper.lambda().le(JkCabinet::getHaertTime, Utils.Date.getEnd(pageWrap.getModel().getHaertTime())); - } - if (pageWrap.getModel().getLacation() != null) { - queryWrapper.lambda().eq(JkCabinet::getLacation, pageWrap.getModel().getLacation()); - } - if (pageWrap.getModel().getLongitude() != null) { - queryWrapper.lambda().eq(JkCabinet::getLongitude, pageWrap.getModel().getLongitude()); - } - if (pageWrap.getModel().getLatitude() != null) { - queryWrapper.lambda().eq(JkCabinet::getLatitude, pageWrap.getModel().getLatitude()); - } - if (pageWrap.getModel().getNoType() != null) { - queryWrapper.lambda().eq(JkCabinet::getNoType, pageWrap.getModel().getNoType()); - } - if (pageWrap.getModel().getNoPrefix() != null) { - queryWrapper.lambda().eq(JkCabinet::getNoPrefix, pageWrap.getModel().getNoPrefix()); - } - if (pageWrap.getModel().getNoLength() != null) { - queryWrapper.lambda().eq(JkCabinet::getNoLength, pageWrap.getModel().getNoLength()); - } - if (pageWrap.getModel().getNoIndex() != null) { - queryWrapper.lambda().eq(JkCabinet::getNoIndex, pageWrap.getModel().getNoIndex()); - } - for(PageWrap.SortData sortData: pageWrap.getSorts()) { - if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { - queryWrapper.orderByDesc(sortData.getProperty()); - } else { - queryWrapper.orderByAsc(sortData.getProperty()); - } - } - return PageData.from(jkCabinetMapper.selectPage(page, queryWrapper)); + return PageData.from(iPage); } @Override @@ -191,4 +302,135 @@ QueryWrapper<JkCabinet> wrapper = new QueryWrapper<>(jkCabinet); return jkCabinetMapper.selectCount(wrapper); } + + + + @Override + public CabinetConfigDataVO getCabinetConfigDataVO(){ + CabinetConfigDataVO cabinetConfigDataVO = new CabinetConfigDataVO(); + cabinetConfigDataVO.setConcentration(systemDictDataBiz.queryByCode(Constants.CABINET_CONFIG,Constants.CONCENTRATION).getCode()); + cabinetConfigDataVO.setPressure(systemDictDataBiz.queryByCode(Constants.CABINET_CONFIG,Constants.PRESSURE).getCode()); + cabinetConfigDataVO.setBlowTime(systemDictDataBiz.queryByCode(Constants.CABINET_CONFIG,Constants.BLOW_TIME).getCode()); + cabinetConfigDataVO.setThreshold(systemDictDataBiz.queryByCode(Constants.CABINET_CONFIG,Constants.THRESHOLD).getCode()); + return cabinetConfigDataVO; + + } + + + @Override + public void updCabinetConfig(CabinetConfigDataVO cabinetConfigDataVO){ + if(Objects.isNull(cabinetConfigDataVO) + || (StringUtils.isBlank(cabinetConfigDataVO.getBlowTime()) + && StringUtils.isBlank(cabinetConfigDataVO.getConcentration()) + && StringUtils.isBlank(cabinetConfigDataVO.getPressure()) + && StringUtils.isBlank(cabinetConfigDataVO.getThreshold()) + )){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + if(StringUtils.isNotBlank(cabinetConfigDataVO.getConcentration())){ + SystemDictData systemDictData = systemDictDataBiz.queryByCode(Constants.CABINET_CONFIG,Constants.CONCENTRATION); + systemDictData.setCode(cabinetConfigDataVO.getConcentration()); + systemDictDataBiz.updateByIdNew(systemDictData); + } + if(StringUtils.isNotBlank(cabinetConfigDataVO.getPressure())){ + SystemDictData systemDictData = systemDictDataBiz.queryByCode(Constants.CABINET_CONFIG,Constants.PRESSURE); + systemDictData.setCode(cabinetConfigDataVO.getPressure()); + systemDictDataBiz.updateByIdNew(systemDictData); + } + if(StringUtils.isNotBlank(cabinetConfigDataVO.getBlowTime())){ + SystemDictData systemDictData = systemDictDataBiz.queryByCode(Constants.CABINET_CONFIG,Constants.BLOW_TIME); + systemDictData.setCode(cabinetConfigDataVO.getBlowTime()); + systemDictDataBiz.updateByIdNew(systemDictData); + } + if(StringUtils.isNotBlank(cabinetConfigDataVO.getThreshold())){ + SystemDictData systemDictData = systemDictDataBiz.queryByCode(Constants.CABINET_CONFIG,Constants.THRESHOLD); + systemDictData.setCode(cabinetConfigDataVO.getThreshold()); + systemDictDataBiz.updateByIdNew(systemDictData); + } + } + + + + + @Override + public List<AdminCabinetVO> getAdminCabinetInfo(LoginUserInfo loginUserInfo){ + List<AdminCabinetVO> adminCabinetVOList = new ArrayList<>(); + List<JkCabinet> jkCabinetList = jkCabinetMapper.selectList(new QueryWrapper<JkCabinet>() + .lambda() + .eq(JkCabinet::getIsdeleted,Constants.ZERO) + .apply(" FIND_IN_SET("+loginUserInfo.getId()+",MANAGER_ID) ") + .orderByAsc(JkCabinet::getCreateDate) + ); + if(CollectionUtils.isNotEmpty(jkCabinetList)){ + for (JkCabinet jkCabinet:jkCabinetList) { + AdminCabinetVO adminCabinetVO = new AdminCabinetVO(); + BeanUtil.copyProperties(jkCabinet,adminCabinetVO); + adminCabinetVOList.add(adminCabinetVO); + } + } + return adminCabinetVOList; + } + + + @Override + public CabinetDetailVO getCabinetDetail(Integer cabinetId){ + CabinetDetailVO cabinetDetailVO = new CabinetDetailVO(); + JkCabinet cabinet = jkCabinetMapper.selectOne(new QueryWrapper<JkCabinet>() + .lambda() + .eq(JkCabinet::getIsdeleted,Constants.ZERO) + .eq(JkCabinet::getId,cabinetId) + .last(" limit 1") + ); + if(Objects.isNull(cabinet)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鏈煡璇㈠埌閽ュ寵鏌滀俊鎭�"); + } + BeanUtil.copyProperties(cabinet,cabinetDetailVO); + cabinetDetailVO.setGridNum(Constants.ZERO); + cabinetDetailVO.setErrGridNum(Constants.ZERO); + cabinetDetailVO.setOnlineKeyNum(Constants.ZERO); + cabinetDetailVO.setServiceKeyNum(Constants.ZERO); + cabinetDetailVO.setOutKeyNum(Constants.ZERO); + cabinetDetailVO.setUnBindGridNum(Constants.ZERO); + + //鎵�鏈夋煖鏍间俊鎭� + List<JkCabinetGrid> jkCabinetGridList = + jkCabinetGridMapper.selectJoinList(JkCabinetGrid.class, new MPJLambdaWrapper<JkCabinetGrid>() + .selectAll(JkCabinetGrid.class) + .selectAs(JkKeys::getCarCode,JkCabinetGrid::getCarCode) + .selectAs(JkKeys::getStatus,JkCabinetGrid::getKeyStatus) + .leftJoin(JkKeys.class,JkKeys::getId,JkCabinetGrid::getKeyId) + .eq(JkCabinetGrid::getIsdeleted,Constants.ZERO) + .eq(JkCabinetGrid::getCabinetId,cabinet.getId()) + .orderByDesc(JkCabinetGrid::getCode) + ); + + List<CabinetGridInfoVO> cabinetGridInfoVOList = new ArrayList<>(); + if(CollectionUtils.isNotEmpty(jkCabinetGridList)){ + cabinetDetailVO.setGridNum(jkCabinetGridList.size()); + for (JkCabinetGrid jkCabinetGrid:jkCabinetGridList) { + CabinetGridInfoVO cabinetGridInfoVO = new CabinetGridInfoVO(); + BeanUtil.copyProperties(jkCabinetGrid,cabinetGridInfoVO); + cabinetGridInfoVO.setBindStatus(Objects.isNull(jkCabinetGrid.getKeyId())?Constants.ZERO:Constants.ONE); + cabinetGridInfoVOList.add(cabinetGridInfoVO); + } + cabinetDetailVO.setErrGridNum( + cabinetGridInfoVOList.stream().filter(i->Constants.equalsInteger(i.getWorkingStatus(),Constants.ONE)).collect(Collectors.toList()).size() + ); + cabinetDetailVO.setOnlineKeyNum( + cabinetGridInfoVOList.stream().filter(i->Constants.equalsInteger(i.getKeyStatus(),Constants.ONE)).collect(Collectors.toList()).size() + ); + cabinetDetailVO.setOutKeyNum( + cabinetGridInfoVOList.stream().filter(i->Constants.equalsInteger(i.getKeyStatus(),Constants.TWO)).collect(Collectors.toList()).size() + ); + cabinetDetailVO.setServiceKeyNum( + cabinetGridInfoVOList.stream().filter(i->Constants.equalsInteger(i.getKeyStatus(),Constants.THREE)).collect(Collectors.toList()).size() + ); + cabinetDetailVO.setUnBindGridNum( + cabinetGridInfoVOList.stream().filter(i->Constants.equalsInteger(i.getBindStatus(),Constants.ZERO)).collect(Collectors.toList()).size() + ); + } + return cabinetDetailVO; + } + + } -- Gitblit v1.9.3