ลบยานพาหนะสำหรับจัดส่ง

เอกสารนี้อธิบายวิธีลบยานพาหนะนำส่ง โดยถือว่าคุณได้ตั้งค่า Fleet Engine แล้ว ดูตั้งค่า Fleet Engine

ข้อมูลเบื้องต้นเกี่ยวกับการลบยานพาหนะนำส่ง

ระบบอาจใช้ Fleet Engine เพื่อลบยานพาหนะนำส่งในกรณีต่อไปนี้

  • หากต้องการดำเนินการล้างข้อมูลขณะทดสอบ Fleet Engine API
  • หากต้องการลบยานพาหนะนำส่งที่ไม่จำเป็นแล้วทันที

หากต้องการลบยานพาหนะนำส่ง ให้ส่งคำขอโดยใช้ gRPC หรือ REST

  • DeleteDeliveryVehicle() วิธี: gRPC หรือ REST
  • DeleteDeliveryVehicleRequest ข้อความ: gRPC เท่านั้น

ใช้ข้อมูลเข้าสู่ระบบที่เหมาะสมสำหรับบัญชีบริการของโปรเจ็กต์ตามที่อธิบายไว้ใน Fleet Engine: บทบาทของบัญชีบริการ

ตัวอย่าง: ลบยานพาหนะนำส่ง

Java

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไลบรารี gRPC ของ Java เพื่อลบ ยานพาหนะนำส่ง

  static final String PROJECT_ID = "my-rideshare-co-gcp-project";
  static final String VEHICLE_ID = "vehicle-8241890";

  String deliveryVehicleName = "providers/" + PROJECT_ID + "/deliveryVehicles/" + VEHICLE_ID;

  DeliveryServiceBlockingStub deliveryService = DeliveryServiceGrpc.newBlockingStub(channel);

  // Delete Vehicle request
  DeleteDeliveryVehicleRequest deleteDeliveryVehicleRequest =
      DeleteDeliveryVehicleRequest.newBuilder().setName(deliveryVehicleName).build();

  try {
    deliveryService.deleteDeliveryVehicle(deleteDeliveryVehicleRequest);
  } catch (StatusRuntimeException e) {
    Status s = e.getStatus();
    switch (s.getCode()) {
       case NOT_FOUND:            // The delivery vehicle doesn't exist.
         break;
       case FAILED_PRECONDITION:  // There are tasks(s) that reference delivery vehicle.
         break;
       case PERMISSION_DENIED:
         break;
    }
    return;
  }

REST

ตัวอย่างต่อไปนี้แสดงวิธีลบยานพาหนะนำส่งออกจาก Fleet Engine โดยใช้ REST ด้วยการเรียก DeleteDeliveryVehicle

  # DELETE https://fleetengine.googleapis.com/v1/providers/<project_id>/deliveryVehicles/<vehicleId>
  # Set JWT, PROJECT_ID, and VEHICLE_ID in the local environment
  curl -X DELETE -H "Authorization: Bearer ${JWT}" \
    "https://fleetengine.googleapis.com/v1/providers/${PROJECT_ID}/deliveryvehicles/${VEHICLE_ID}"

หากการดำเนินการลบสำเร็จ API จะแสดงการตอบกลับที่ว่างเปล่า

จัดการข้อผิดพลาด

เมื่อลบยานพาหนะนำส่ง คุณอาจพบFAILED_PRECONDITION ข้อผิดพลาด ในกรณีนี้จะมีงานที่อ้างอิงยานพาหนะนำส่ง วิธียืนยันการลบ

  1. โทรหา ListTasks เพื่อค้นหางานที่อ้างอิงถึงยานพาหนะนำส่ง
  2. เรียกใช้ DeleteTask เพื่อลบงานที่พบแต่ละรายการ

ขั้นตอนถัดไป