Heim >Java >javaLernprogramm >Aufbau eines Auftragsverarbeitungsdienstes mit ChatGPT (Mitwirken) und in wenigen Tagen abgeschlossen
KI hat dazu beigetragen, meine tägliche Arbeit zu verändern und die Effizienz zu steigern
Als Entwickler kann sich der Aufbau eines Auftragsabwicklungsdienstes manchmal überwältigend anfühlen, wenn der Zeitrahmen begrenzt ist. Mit der Leistungsfähigkeit von KI-gesteuerten Entwicklungstools wie ChatGPT können Sie den Prozess jedoch erheblich beschleunigen, indem Sie Code generieren, Entitäten entwerfen und Probleme Schritt für Schritt lösen. In diesem Artikel erkläre ich Ihnen, wie ich mit ChatGPT in nur 2 Tagen einen voll funktionsfähigen Auftragsabwicklungsdienst aufgebaut habe, von der Erfassung der Anforderungen bis zur Fertigstellung.
Ehrlich gesagt gibt es viele kleine Threads und Anregungen für verschiedene kleine Aufgaben, die ich nicht zu einem vollständigen Projekt zusammenfassen kann, aber insgesamt... hat es mir zu 70 - 80 % geholfen. Darüber hinaus ist hier ein Teil des Originalcodes. Nachdem ich ihn überprüft habe, wurde er möglicherweise manuell geändert, sodass Sie diese Funktion möglicherweise nicht auf Github finden, den ich geteilt habe.
Als erstes habe ich die für den Dienst erforderlichen Kernfunktionen aufgelistet. Hier sind die wichtigsten Funktionen, die ich brauchte:
Ich habe ChatGPT gebeten, mir beim Entwerfen der API-Struktur für die Anforderungen zu helfen. Hier ist ein Beispiel für die erste Eingabeaufforderung, die ich verwendet habe:
Eingabeaufforderung:
Erstellen Sie API-Endpunkte für ein Benutzerregistrierungssystem mit Spring Boot, bei dem sich Benutzer mit ihrem Namen, ihrer Mobiltelefonnummer und ihrer Adresse registrieren können.
Ergebnis: ChatGPT hat mehrere Endpunkte generiert:
Für den Bestellverarbeitungsdienst benötigten wir Entitäten für Benutzer, Franchise, Bestellung, Warteschlange und Bestellelement. Ich habe ChatGPT verwendet, um diese Entitäten mit den erforderlichen Feldern zu definieren.
Eingabeaufforderung:
Entwerfen Sie die Benutzerentität für das System. Der Benutzer kann eine Mobiltelefonnummer, eine Adresse und eine Rolle (z. B. KUNDE) haben.
Ergebnis: ChatGPT hat eine einfache Benutzerentität mithilfe von JPA bereitgestellt:
@Entity public class User { @Id @GeneratedValue(strategy = GenerationType.AUTO) private UUID id; @Column(nullable = false, unique = true) private String username; @Column(nullable = false) private String password; private String mobileNumber; private String address; private UserRole role; // CUSTOMER, ADMIN }
Ich habe diesen Vorgang für die Entitäten Franchise, Bestellung und Warteschlange wiederholt.
Nachdem die grundlegende API und die Entitäten eingerichtet waren, ging ich zur Implementierung der Geschäftslogik für die Auftragserteilung über. Dies war der kritische Teil des Dienstes, da mehrere Menüpunkte verwaltet und Warteschlangenpositionen verwaltet werden mussten.
Eingabeaufforderung:
Implementieren Sie die Logik zum Aufgeben einer Bestellung mit mehreren Artikeln, wobei jeder Artikel mit einem bestimmten Menü im Franchise verknüpft ist.
Ergebnis: ChatGPT hat mich durch die Entwicklung eines OrderService zur Bewältigung dieses Problems geführt. Hier ist ein Teil der Implementierung:
public Order createOrder(UUID customerId, UUID franchiseId, List<OrderItemDTO> items) { Order order = new Order(); order.setCustomer(userRepository.findById(customerId).orElseThrow()); order.setFranchise(franchiseRepository.findById(franchiseId).orElseThrow()); List<OrderItem> orderItems = items.stream() .map(itemDto -> new OrderItem(menuItemRepository.findById(itemDto.getMenuItemId()), itemDto.getQuantity())) .collect(Collectors.toList()); order.setItems(orderItems); order.setQueuePosition(findQueuePositionForFranchise(franchiseId)); return orderRepository.save(order); }
Als nächstes habe ich ChatGPT gebeten, mir beim Entwerfen der Logik zum Platzieren eines Kunden in der Warteschlange und zum Verfolgen seiner Position zu helfen.
Eingabeaufforderung:
Wie kann ich die Warteschlangenposition und Wartezeit für eine Bestellung in einem Kaffee-Franchise-System berechnen?
Ergebnis: ChatGPT schlug die Erstellung eines QueueService vor, der Bestellungen verfolgt und ihnen basierend auf Zeitstempeln Positionen zuweist. Ich habe es wie folgt umgesetzt:
public int findQueuePositionForFranchise(UUID franchiseId) { List<CustomerQueue> queue = customerQueueRepository.findAllByFranchiseId(franchiseId); return queue.size() + 1; }
Es gab auch Hinweise zur Schätzung der Wartezeiten basierend auf der durchschnittlichen Auftragsbearbeitungszeit.
Schließlich habe ich die Logik implementiert, die es Kunden ermöglicht, ihre Bestellungen zu stornieren und die Warteschlange zu verlassen:
public void cancelOrder(UUID orderId) { Order order = orderRepository.findById(orderId).orElseThrow(); queueService.removeFromQueue(order.getQueue().getId(), order.getId()); orderRepository.delete(order); }
By the end of Day 2, I had a fully functional service that allowed customers to:
I have a few more steps to create the documentation, use liquidbase and have chatGPT generate sample data for easier testing.
Building an order processing system for a coffee shop in 2 days may sound daunting, but with AI assistance, it’s achievable. ChatGPT acted like a coding assistant, helping me transform abstract requirements into a working system quickly. While AI can provide a foundation, refining and customizing code is still an essential skill. This project taught me how to maximize the value of AI tools without losing control of the development process.
By following the steps I took, you can speed up your own projects and focus on higher-level problem-solving, leaving the routine code generation and guidance to AI.
Full source Github
Das obige ist der detaillierte Inhalt vonAufbau eines Auftragsverarbeitungsdienstes mit ChatGPT (Mitwirken) und in wenigen Tagen abgeschlossen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!