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.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.WorkOrderService; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; /** * 工单 * * @author syt * @date 2025-04-22 16:01:37 */ @Service @AllArgsConstructor public class WorkOrderServiceImpl extends ServiceImpl implements WorkOrderService { private final DeviceRepairMapper repairMapper; private final DeviceInventoryMapper inventoryMapper; @Override public R updateByIdNew(WorkOrder workOrder) { //工单处理 if (workOrder.getWoStatus()==2){ workOrder.setWoStatus(CommonStatusContant.WORK_ORDER_STATUS_CLOSING); } //人员分配 if (workOrder.getWoStatus()==1&&workOrder.getHandleUserId()!=null){ workOrder.setWoStatus(CommonStatusContant.WORK_ORDER_STATUS_HANDLING); } baseMapper.updateById(workOrder); //更新维修状态 if (workOrder.getRepairId()!=null){ DeviceRepair repair = repairMapper.selectById(workOrder.getRepairId()); repair.setStatus(CommonStatusContant.DEVICE_REPAIR_STATUS_COMPLETE); repairMapper.updateById(repair); //更新库存状态 DeviceInventory inventory = inventoryMapper.selectById(repair.getInventoryId()); inventory.setInventoryStatus(CommonStatusContant.DEVICE_INVENTORY_USABLE); inventoryMapper.updateById(inventory); } return R.ok(); } }