package com.by4cloud.platformx.device.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
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.DeviceInventory;
|
import com.by4cloud.platformx.device.entity.ResidualRecycle;
|
import com.by4cloud.platformx.device.mapper.DeviceInventoryMapper;
|
import com.by4cloud.platformx.device.mapper.ResidualRecycleMapper;
|
import com.by4cloud.platformx.device.service.ResidualRecycleService;
|
import lombok.AllArgsConstructor;
|
import org.springframework.stereotype.Service;
|
/**
|
* 残体回收
|
*
|
* @author syt
|
* @date 2025-04-23 10:28:34
|
*/
|
@Service
|
@AllArgsConstructor
|
public class ResidualRecycleServiceImpl extends ServiceImpl<ResidualRecycleMapper, ResidualRecycle> implements ResidualRecycleService {
|
|
private final DeviceInventoryMapper inventoryMapper;
|
|
@Override
|
public R approvedById(Long id) {
|
ResidualRecycle residualRecycle = baseMapper.selectById(id);
|
residualRecycle.setStatus(CommonStatusContant.RESIDUAL_RECYCLE_STATUS_HANDLING);
|
baseMapper.updateById(residualRecycle);
|
return R.ok();
|
}
|
|
@Override
|
public R updateByIdNew(ResidualRecycle residualRecycle) {
|
if (residualRecycle.getStatus()==CommonStatusContant.RESIDUAL_RECYCLE_STATUS_HANDLING){
|
residualRecycle.setStatus(CommonStatusContant.RESIDUAL_RECYCLE_STATUS_COMPLETE);
|
QueryWrapper<DeviceInventory> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("device_id",residualRecycle.getDeviceId());
|
queryWrapper.eq("serial_no",residualRecycle.getSerialNo());
|
DeviceInventory inventory = inventoryMapper.selectOne(queryWrapper);
|
if (inventory!=null){
|
if (residualRecycle.getHandleMethod()==CommonStatusContant.RESIDUAL_RECYCLE_METHOD_DISASSEMBE_RECYCLE||
|
residualRecycle.getHandleMethod()==CommonStatusContant.RESIDUAL_RECYCLE_METHOD_TRANSFER_PROFESSIONAL_INSTITUTION){
|
inventory.setInventoryStatus(CommonStatusContant.DEVICE_INVENTORY_RECYCLE);
|
inventoryMapper.updateById(inventory);
|
}else if (residualRecycle.getHandleMethod()==CommonStatusContant.RESIDUAL_RECYCLE_METHOD_CYCLE_RENTING){
|
inventory.setInventoryStatus(CommonStatusContant.DEVICE_INVENTORY_USABLE);
|
inventoryMapper.updateById(inventory);
|
}
|
}
|
}
|
baseMapper.updateById(residualRecycle);
|
return R.ok();
|
}
|
}
|