package com.by4cloud.platformx.device.service.impl;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.by4cloud.platformx.common.core.util.R;
|
import com.by4cloud.platformx.device.constant.MaxSizeContant;
|
import com.by4cloud.platformx.device.dto.DeviceRepairQueryDTO;
|
import com.by4cloud.platformx.device.entity.DeviceInventory;
|
import com.by4cloud.platformx.device.entity.DeviceRepair;
|
import com.by4cloud.platformx.device.entity.WorkOrder;
|
import com.by4cloud.platformx.device.mapper.DeviceInventoryMapper;
|
import com.by4cloud.platformx.device.mapper.DeviceRepairMapper;
|
import com.by4cloud.platformx.device.mapper.WorkOrderMapper;
|
import com.by4cloud.platformx.device.service.DeviceRepairService;
|
import com.by4cloud.platformx.device.service.JcMaxSizeService;
|
import lombok.AllArgsConstructor;
|
import org.springframework.stereotype.Service;
|
/**
|
* 设备维修
|
*
|
* @author syt
|
* @date 2025-03-31 13:51:53
|
*/
|
@Service
|
@AllArgsConstructor
|
public class DeviceRepairServiceImpl extends ServiceImpl<DeviceRepairMapper, DeviceRepair> implements DeviceRepairService {
|
|
private final DeviceInventoryMapper inventoryMapper;
|
private final JcMaxSizeService maxSizeService;
|
private final WorkOrderMapper workOrderMapper;
|
|
@Override
|
public R approved(Long id) {
|
DeviceRepair repair = baseMapper.selectById(id);
|
repair.setStatus(2);
|
baseMapper.updateById(repair);
|
DeviceInventory inventory = inventoryMapper.selectById(repair.getInventoryId());
|
inventory.setInventoryStatus(3);
|
inventoryMapper.updateById(inventory);
|
return R.ok();
|
}
|
|
@Override
|
public R complete(Long id) {
|
DeviceRepair repair = baseMapper.selectById(id);
|
repair.setStatus(3);
|
baseMapper.updateById(repair);
|
DeviceInventory inventory = inventoryMapper.selectById(repair.getInventoryId());
|
inventory.setInventoryStatus(1);
|
inventoryMapper.updateById(inventory);
|
return R.ok();
|
}
|
|
@Override
|
public IPage pageNew(Page page, DeviceRepairQueryDTO queryDTO) {
|
return baseMapper.pageNew(page,queryDTO);
|
}
|
|
@Override
|
public R genWorkOrder(Long id) {
|
DeviceRepair repair = baseMapper.selectById(id);
|
WorkOrder workOrder = new WorkOrder();
|
workOrder.setRepairId(id);
|
workOrder.setWoCode(maxSizeService.nextNo(MaxSizeContant.DEVICE_PURCHASE_CODE));
|
workOrder.setWoDesc(repair.getRepairDesc());
|
workOrder.setWoType(1);
|
workOrder.setWoStatus(1);
|
workOrderMapper.insert(workOrder);
|
repair.setWoFlag(1);
|
baseMapper.updateById(repair);
|
return R.ok();
|
}
|
}
|