| | |
| | | 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.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.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.transaction.annotation.Transactional; |
| | | import org.springframework.util.CollectionUtils; |
| | | import com.github.xiaoymin.knife4j.core.util.CollectionUtils; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.*; |
| | |
| | | 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; |
| | | } |
| | | |
| | | |