package com.by4cloud.platformx.device.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.by4cloud.platformx.common.core.util.R; import com.by4cloud.platformx.device.constant.CommonStatusContant; import com.by4cloud.platformx.device.entity.Device; import com.by4cloud.platformx.device.entity.DeviceInventory; import com.by4cloud.platformx.device.entity.InventoryFlowWater; import com.by4cloud.platformx.device.entity.vo.InventoryDetailVo; import com.by4cloud.platformx.device.mapper.DeviceInventoryMapper; import com.by4cloud.platformx.device.mapper.DeviceMapper; import com.by4cloud.platformx.device.mapper.InventoryFlowWaterMapper; import com.by4cloud.platformx.device.service.DeviceInventoryService; import com.by4cloud.platformx.device.service.InventoryFlowWaterService; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; /** * 库存 * * @author pig * @date 2025-03-13 10:22:39 */ @Service @AllArgsConstructor public class DeviceInventoryServiceImpl extends ServiceImpl implements DeviceInventoryService { private final InventoryFlowWaterMapper flowWaterMapper; private final DeviceMapper deviceMapper; @Override public R getReleaseDetail(Long id) { InventoryDetailVo detailVo = baseMapper.getReleaseDetail(id); return R.ok(detailVo); } @Override public R returnDevice(Long id) { DeviceInventory inventory = baseMapper.selectById(id); inventory.setInventoryStatus(CommonStatusContant.DEVICE_INVENTORY_USABLE); baseMapper.updateById(inventory); //库存流水记录 InventoryFlowWater flowWater = new InventoryFlowWater(); flowWater.setDeviceId(inventory.getDeviceId()); Device device = deviceMapper.selectById(inventory.getDeviceId()); if (device!=null){ flowWater.setClassId(device.getClassId()); } flowWater.setInventoryId(inventory.getId()); flowWater.setSerialNo(inventory.getSerialNo()); flowWater.setOperateType(CommonStatusContant.DEVICE_INVENTORY_FLOW_WATER_IN); flowWaterMapper.insert(flowWater); return R.ok(); } }