以下是一个简单的Java校园实时设备报修系统的代码示例:

  1. 设备类
public class Device {
    private String name; // 设备名称
    private String description; // 设备描述
    private boolean isBroken; // 设备是否损坏

    public Device(String name, String description) {
        this.name = name;
        this.description = description;
        this.isBroken = false;
    }

    public String getName() {
        return name;
    }

    public String getDescription() {
        return description;
    }

    public boolean isBroken() {
        return isBroken;
    }

    public void setBroken(boolean broken) {
        isBroken = broken;
    }
}
  1. 报修单类
public class RepairTicket {
    private int id; // 报修单ID
    private Date createTime; // 报修单创建时间
    private String creator; // 报修单创建人
    private Device device; // 故障设备
    private String description; // 故障描述
    private boolean isCompleted; // 报修单是否已完成

    public RepairTicket(int id, String creator, Device device, String description) {
        this.id = id;
        this.createTime = new Date();
        this.creator = creator;
        this.device = device;
        this.description = description;
        this.isCompleted = false;
    }

    public int getId() {
        return id;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public String getCreator() {
        return creator;
    }

    public Device getDevice() {
        return device;
    }

    public String getDescription() {
        return description;
    }

    public boolean isCompleted() {
        return isCompleted;
    }

    public void setCompleted(boolean completed) {
        isCompleted = completed;
    }
}
  1. 报修系统类
import java.util.ArrayList;
import java.util.List;

public class RepairSystem {
    private List<Device> devices; // 所有设备列表
    private List<RepairTicket> tickets; // 所有报修单列表

    public RepairSystem() {
        devices = new ArrayList<>();
        tickets = new ArrayList<>();
    }

    public void addDevice(Device device) {
        devices.add(device);
    }

    public Device getDeviceByName(String name) {
        for (Device device : devices) {
            if (device.getName().equals(name)) {
                return device;
            }
        }
        return null;
    }

    public void addRepairTicket(RepairTicket ticket) {
        tickets.add(ticket);
    }

    public void completeRepairTicket(int id) {
        for (RepairTicket ticket : tickets) {
            if (ticket.getId() == id) {
                ticket.setCompleted(true);
                ticket.getDevice().setBroken(false);
            }
        }
    }

    public List<RepairTicket> getUncompletedTickets() {
        List<RepairTicket> uncompletedTickets = new ArrayList<>();
        for (RepairTicket ticket : tickets) {
            if (!ticket.isCompleted()) {
                uncompletedTickets.add(ticket);
            }
        }
        return uncompletedTickets;
    }
}
  1. 测试
public class Main {
    public static void main(String[] args) {
        RepairSystem repairSystem = new RepairSystem();

        // 添加设备
        Device computer = new Device("Computer", "Dell desktop computer");
        Device projector = new Device("Projector", "Epson projector");
        repairSystem.addDevice(computer);
        repairSystem.addDevice(projector);

        // 报修设备
        RepairTicket ticket1 = new RepairTicket(1, "Alice", computer, "Computer won't turn on");
        RepairTicket ticket2 = new RepairTicket(2, "Bob", projector, "Projector image is blurry");
        repairSystem.addRepairTicket(ticket1);
        repairSystem.addRepairTicket(ticket2);

        // 完成报修单
        repairSystem.completeRepairTicket(1);

        // 获取未完成报修单
        List<RepairTicket> uncompletedTickets = repairSystem.getUncompletedTickets();
        for (RepairTicket ticket : uncompletedTickets) {
            System.out.println(ticket.getId() + " " + ticket.getDevice().getName() + " " + ticket.getDescription());
        }
    }
}

该代码示例中,我们实现了一个简单的校园实时设备报修系统,包括设备类、报修单类和报修系统类。我们可以通过添加设备和报修单来模拟实际使用场景,并通过完成报修单和获取未完成报修单来管理报修流程。

用java做一个校园实时设备报修系统

原文地址: https://www.cveoy.top/t/topic/6VH 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录