From d7dca690cedd12e271f0ee0b9050679d73796f5c Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期一, 06 一月 2025 09:28:10 +0800 Subject: [PATCH] 1 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java | 113 ++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 84 insertions(+), 29 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java index 1b4b13a..e96dd30 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java @@ -7,13 +7,19 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; +import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.YwDeviceMapper; +import com.doumee.dao.business.YwDeviceRecordMapper; import com.doumee.dao.business.model.Category; +import com.doumee.dao.business.model.Company; import com.doumee.dao.business.model.YwDevice; +import com.doumee.dao.business.model.YwDeviceRecord; +import com.doumee.dao.business.vo.YwDeviceDataVO; import com.doumee.dao.system.MultifileMapper; import com.doumee.dao.system.model.Multifile; import com.doumee.dao.system.model.SystemUser; +import com.doumee.service.business.YwDeviceRecordService; import com.doumee.service.business.YwDeviceService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -30,6 +36,7 @@ import java.util.Date; import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; /** * 杩愮淮璁惧淇℃伅琛⊿ervice瀹炵幇 @@ -46,6 +53,8 @@ private SystemDictDataBiz systemDictDataBiz; @Autowired private MultifileMapper multifileMapper; + @Autowired + private YwDeviceRecordMapper ywDeviceRecordMapper; @Autowired private RedisTemplate<String,Object> redisTemplate; @@ -64,27 +73,20 @@ if(ywDeviceMapper.selectCount(new QueryWrapper<YwDevice>().lambda().eq(YwDevice::getIsdeleted,Constants.ZERO).eq(YwDevice::getCode,ywDevice.getCode()))>Constants.ZERO){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璁惧缂栧彿閲嶅!"); } -// if(StringUtils.isBlank(ywDevice.getCode())){ -// String code = this.getMaxAutoMaticDeviceCode(); -// while (ywDeviceMapper.selectCount(new QueryWrapper<YwDevice>().lambda().eq(YwDevice::getIsdeleted,Constants.ZERO).eq(YwDevice::getCode,code))>Constants.ZERO){ -// code = this.getMaxAutoMaticDeviceCode(); -// } -// ywDevice.setCode(code); -// }else{ -// -// } ywDevice.setCreateDate(new Date()); ywDevice.setCreator(loginUserInfo.getId()); ywDevice.setIsdeleted(Constants.ZERO); ywDeviceMapper.insert(ywDevice); - if(Objects.nonNull(ywDevice.getMultifile())){ - ywDevice.getMultifile().setCreator(loginUserInfo.getId()); - ywDevice.getMultifile().setCreateDate(new Date()); - ywDevice.getMultifile().setIsdeleted(Constants.ZERO); - ywDevice.getMultifile().setObjType(Constants.MultiFile.FN_DEVICE_FILE.getKey()); - ywDevice.getMultifile().setObjId(ywDevice.getId()); - multifileMapper.insert(ywDevice.getMultifile()); + if(Objects.nonNull(ywDevice.getFileUrl())){ + Multifile multifile = new Multifile(); + multifile.setCreator(loginUserInfo.getId()); + multifile.setCreateDate(new Date()); + multifile.setIsdeleted(Constants.ZERO); + multifile.setObjType(Constants.MultiFile.FN_DEVICE_FILE.getKey()); + multifile.setObjId(ywDevice.getId()); + multifile.setFileurl(ywDevice.getFileUrl()); + multifileMapper.insert(multifile); } return ywDevice.getId(); @@ -92,10 +94,15 @@ @Override public void deleteById(Integer id, LoginUserInfo user) { - ywDeviceMapper.update(new UpdateWrapper<YwDevice>().lambda().set(YwDevice::getIsdeleted,Constants.ONE) - .set(YwDevice::getEditDate," now() ") + //鏌ヨ璁惧鏄惁瀛樺湪杩愮淮璁板綍 + if(ywDeviceRecordMapper.selectCount(new QueryWrapper<YwDeviceRecord>().lambda().eq(YwDeviceRecord::getDeviceId,id).eq(YwDeviceRecord::getIsdeleted,Constants.ZERO))>Constants.ZERO){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠璁惧瀛樺湪杩愮淮璁板綍锛屾棤娉曞垹闄�"); + }; + ywDeviceMapper.update(new UpdateWrapper<YwDevice>() + .lambda().set(YwDevice::getIsdeleted,Constants.ONE) + .set(YwDevice::getEditDate, DateUtil.getCurrDateTime()) .set(YwDevice::getEditor,user.getId()) - .eq(YwDevice::getId,user.getId()) + .eq(YwDevice::getId,id) ); } @@ -135,13 +142,15 @@ .eq(Multifile::getObjId,ywDevice.getId()) .eq(Multifile::getObjType,Constants.MultiFile.FN_DEVICE_FILE.getKey()) ); - if(Objects.nonNull(ywDevice.getMultifile())){ - ywDevice.getMultifile().setCreator(loginUserInfo.getId()); - ywDevice.getMultifile().setCreateDate(new Date()); - ywDevice.getMultifile().setIsdeleted(Constants.ZERO); - ywDevice.getMultifile().setObjType(Constants.MultiFile.FN_DEVICE_FILE.getKey()); - ywDevice.getMultifile().setObjId(ywDevice.getId()); - multifileMapper.insert(ywDevice.getMultifile()); + if(Objects.nonNull(ywDevice.getFileUrl())){ + Multifile multifile = new Multifile(); + multifile.setCreator(loginUserInfo.getId()); + multifile.setCreateDate(new Date()); + multifile.setIsdeleted(Constants.ZERO); + multifile.setObjType(Constants.MultiFile.FN_DEVICE_FILE.getKey()); + multifile.setObjId(ywDevice.getId()); + multifile.setFileurl(ywDevice.getFileUrl()); + multifileMapper.insert(multifile); } @@ -165,15 +174,39 @@ @Override public YwDevice getDetail(Integer id) { YwDevice ywDevice = ywDeviceMapper.selectById(id); - Multifile multifile = multifileMapper.selectOne(new QueryWrapper<Multifile>().lambda().eq(Multifile::getObjId,id).eq(Multifile::getObjType,Constants.MultiFile.FN_DEVICE_FILE).last(" limit 1")); + Multifile multifile = multifileMapper.selectOne(new QueryWrapper<Multifile>().lambda() + .eq(Multifile::getObjId,id).eq(Multifile::getObjType,Constants.MultiFile.FN_DEVICE_FILE.getKey()).last(" limit 1")); if(Objects.nonNull(multifile)){ String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_DEVICE).getCode(); - multifile.setFileurlFull(path + multifile.getFileurl()); - ywDevice.setMultifile(multifile); + ywDevice.setFileFullUrl(path + multifile.getFileurl()); } return ywDevice; } + + + /** + * 鏍规嵁缂栫爜鏌ヨ + * @param deviceCode + * @return + */ + @Override + public YwDevice findByCode(String deviceCode) { + YwDevice ywDevice = ywDeviceMapper.selectOne( + new QueryWrapper<YwDevice>() + .lambda() + .eq(YwDevice::getIsdeleted,Constants.ZERO) + .eq(YwDevice::getCode,deviceCode) + .last(" limit 1 ") + ); + if(Objects.isNull(ywDevice)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY); + } + + return ywDevice; + } + + @Override @@ -213,4 +246,26 @@ QueryWrapper<YwDevice> wrapper = new QueryWrapper<>(ywDevice); return ywDeviceMapper.selectCount(wrapper); } + + + + @Override + public YwDeviceDataVO getYwDeviceData(){ + YwDeviceDataVO ywDeviceDataVO = new YwDeviceDataVO(); + List<YwDevice> ywDeviceList = ywDeviceMapper.selectList(new QueryWrapper<YwDevice>().lambda().eq(YwDevice::getIsdeleted,Constants.ZERO)); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywDeviceList)){ + ywDeviceDataVO.setQualityNum(ywDeviceList.size()); + ywDeviceDataVO.setTotalNum(ywDeviceList.size()); + ywDeviceDataVO.setNormalNum(ywDeviceList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ZERO)).collect(Collectors.toList()).size()); + ywDeviceDataVO.setAbnormalNum(ywDeviceList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ONE)).collect(Collectors.toList()).size()); + ywDeviceDataVO.setScrapNum(ywDeviceList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.TWO)).collect(Collectors.toList()).size()); + } + return ywDeviceDataVO; + } + + + } + + + -- Gitblit v1.9.3