shiyunteng
6 天以前 fc8c86e7a365d5c6bdc37c2b05b9f83115ac2bc3
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceRepairServiceImpl.java
@@ -1,12 +1,20 @@
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.CommonStatusContant;
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;
/**
@@ -20,14 +28,16 @@
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);
      repair.setStatus(CommonStatusContant.DEVICE_REPAIR_STATUS_REPAIRING);
      baseMapper.updateById(repair);
      DeviceInventory inventory = inventoryMapper.selectById(repair.getInventoryId());
      inventory.setInventoryStatus(3);
      inventory.setInventoryStatus(CommonStatusContant.DEVICE_INVENTORY_REPAIRING);
      inventoryMapper.updateById(inventory);
      return R.ok();
   }
@@ -35,11 +45,31 @@
   @Override
   public R complete(Long id) {
      DeviceRepair repair = baseMapper.selectById(id);
      repair.setStatus(3);
      repair.setStatus(CommonStatusContant.DEVICE_REPAIR_STATUS_COMPLETE);
      baseMapper.updateById(repair);
      DeviceInventory inventory = inventoryMapper.selectById(repair.getInventoryId());
      inventory.setInventoryStatus(1);
      inventory.setInventoryStatus(CommonStatusContant.DEVICE_INVENTORY_USABLE);
      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(CommonStatusContant.WORK_ORDER_TYPE_REPAIR);
      workOrder.setWoStatus(CommonStatusContant.WORK_ORDER_STATUS_ALLOCATED);
      workOrderMapper.insert(workOrder);
      repair.setWoFlag(CommonStatusContant.DEVICE_REPAIR_FLAG_Y);
      baseMapper.updateById(repair);
      return R.ok();
   }
}