From 4068eb1f7c50b37d816934b822116f45af182b0e Mon Sep 17 00:00:00 2001 From: liujie <1793218484@qq.com> Date: 星期四, 11 九月 2025 09:02:41 +0800 Subject: [PATCH] 供应商erp --- ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TErpMaintenanceReminderServiceImpl.java | 105 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 103 insertions(+), 2 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TErpMaintenanceReminderServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TErpMaintenanceReminderServiceImpl.java index fd0e316..a9ec2a7 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TErpMaintenanceReminderServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TErpMaintenanceReminderServiceImpl.java @@ -1,10 +1,21 @@ package com.ruoyi.system.service.impl; -import com.ruoyi.system.model.TErpMaintenanceReminder; -import com.ruoyi.system.mapper.TErpMaintenanceReminderMapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.lkl.laop.sdk.LKLSDK; +import com.ruoyi.common.basic.PageInfo; +import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.system.mapper.*; +import com.ruoyi.system.model.*; +import com.ruoyi.system.query.TErpMaintenanceReminderQuery; import com.ruoyi.system.service.TErpMaintenanceReminderService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.system.vo.TErpMaintenanceReminderDetailVo; +import com.ruoyi.system.vo.TErpMaintenanceReminderListVo; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; /** * <p> @@ -17,4 +28,94 @@ @Service public class TErpMaintenanceReminderServiceImpl extends ServiceImpl<TErpMaintenanceReminderMapper, TErpMaintenanceReminder> implements TErpMaintenanceReminderService { + @Resource + private TErpGoodsTypeMapper erpGoodsTypeMapper; + + @Resource + private SysUserMapper sysUserMapper; + + @Resource + private TErpGoodsMapper erpGoodsMapper; + + @Resource + private TErpGoodsUnitMapper erpGoodsUnitMapper; + + @Resource + private TErpSupplierWarehousingBatchMapper erpSupplierWarehousingBatchMapper; + + @Resource + private TErpSupplierWarehousingMapper erpSupplierWarehousingMapper; + + @Resource + private TErpSupplierOutboundGoodsMapper erpSupplierOutboundGoodsMapper; + + @Override + public PageInfo<TErpMaintenanceReminderListVo> pageList(TErpMaintenanceReminderQuery query, SysUser user) { + PageInfo<TErpMaintenanceReminderListVo> page = new PageInfo<>(query.getPageNum(), query.getPageSize()); + List<TErpMaintenanceReminderListVo> list = baseMapper.pageList(page, query, user); + if(list.isEmpty()){ + return page; + } + List<String> typeIds = list.stream().map(TErpMaintenanceReminderListVo::getTypeId).collect(Collectors.toList()); + if(!typeIds.isEmpty()){ + List<TErpGoodsType> typeList = erpGoodsTypeMapper.selectBatchIds(typeIds); + for (TErpMaintenanceReminderListVo tErpMaintenanceReminderListVo : list) { + typeList.stream().filter(t -> t.getId().equals(tErpMaintenanceReminderListVo.getTypeId())).findFirst().ifPresent(t -> tErpMaintenanceReminderListVo.setTypeName(t.getTypeName())); + } + } + List<Integer> personIds = list.stream().map(TErpMaintenanceReminderListVo::getMaintenancePersonId).collect(Collectors.toList()); + if(!personIds.isEmpty()){ + List<SysUser> userList = sysUserMapper.selectBatchIds(personIds); + for (TErpMaintenanceReminderListVo tErpMaintenanceReminderListVo : list) { + userList.stream().filter(t ->tErpMaintenanceReminderListVo.getMaintenancePersonId()!=null && t.getUserId().toString().equals(tErpMaintenanceReminderListVo.getMaintenancePersonId().toString())).findFirst().ifPresent(t -> tErpMaintenanceReminderListVo.setMaintenancePersonName(t.getUserName())); + } + } + page.setRecords( list); + return page; + } + + @Override + public TErpMaintenanceReminderDetailVo detail(String id, SysUser user) { + + + TErpMaintenanceReminderDetailVo tErpMaintenanceReminderDetailVo = new TErpMaintenanceReminderDetailVo(); + TErpMaintenanceReminder tErpMaintenanceReminder = baseMapper.selectById(id); + if(tErpMaintenanceReminder == null || tErpMaintenanceReminder.getMaintenanceType()!=1 || !tErpMaintenanceReminder.getClinicSupplierId().equals(user.getUserId().toString())){ + return tErpMaintenanceReminderDetailVo; + } + tErpMaintenanceReminderDetailVo.setId(tErpMaintenanceReminder.getId()); + tErpMaintenanceReminderDetailVo.setMaintenanceTime(tErpMaintenanceReminder.getMaintenanceTime()); + tErpMaintenanceReminderDetailVo.setMaintenanceRecord(tErpMaintenanceReminder.getMaintenanceRecord()); + tErpMaintenanceReminderDetailVo.setMaintenancePersonId(tErpMaintenanceReminder.getMaintenancePersonId()); + if(tErpMaintenanceReminder.getMaintenancePersonId()!=null){ + tErpMaintenanceReminderDetailVo.setMaintenancePersonName(sysUserMapper.selectUserById(Long.valueOf(tErpMaintenanceReminder.getMaintenancePersonId())).getUserName()); + } + tErpMaintenanceReminderDetailVo.setStatus(tErpMaintenanceReminder.getStatus()); + + String warehousingBatchId = tErpMaintenanceReminder.getWarehousingBatchId(); + if(warehousingBatchId != null){ + TErpSupplierWarehousingBatch tErpSupplierWarehousingBatch = erpSupplierWarehousingBatchMapper.selectById(warehousingBatchId); + tErpMaintenanceReminderDetailVo.setBatchNumber(tErpSupplierWarehousingBatch.getBatchNumber()); + TErpSupplierWarehousing tErpSupplierWarehousing = erpSupplierWarehousingMapper.selectById(tErpSupplierWarehousingBatch.getWarehousingId()); + if(tErpSupplierWarehousing!=null){ + String goodsId = tErpSupplierWarehousing.getGoodsId(); + if(goodsId != null){ + TErpGoods goods = erpGoodsMapper.selectById(goodsId); + tErpMaintenanceReminderDetailVo.setGoodsName(goods.getGoodsName()); + tErpMaintenanceReminderDetailVo.setQuasiNumber(goods.getQuasiNumber()); + tErpMaintenanceReminderDetailVo.setGoodsIdCode(goods.getGoodsIdCode()); + String packingUnitId = goods.getPackingUnitId(); + if(packingUnitId != null){ + TErpGoodsUnit tErpGoodsUnit = erpGoodsUnitMapper.selectById(packingUnitId); + tErpMaintenanceReminderDetailVo.setUnitName(tErpGoodsUnit.getUnitName()); + } + } + } + List<TErpSupplierOutboundGoods> tErpSupplierOutboundGoods = erpSupplierOutboundGoodsMapper.selectList(new LambdaQueryWrapper<TErpSupplierOutboundGoods>().eq(TErpSupplierOutboundGoods::getWarehousingBatchId, warehousingBatchId)); + int sum = tErpSupplierOutboundGoods.stream().mapToInt(TErpSupplierOutboundGoods::getOutboundCount).sum(); + tErpMaintenanceReminderDetailVo.setNumber(tErpSupplierWarehousingBatch.getWarehousingNumber()-sum); + + } + return tErpMaintenanceReminderDetailVo; + } } -- Gitblit v1.7.1