Fall 099: Forschung und Entwicklung eines Miniprogramms zum Mitnehmen auf Basis des WeChat-Miniprogramms

Den Quellcode finden Sie am Ende des Artikels

Entwicklungssprache: Java

Rahmen: SSM

JDK-Version: JDK1.8

Datenbank: MySQL 5.7

Entwicklungssoftware: Eclipse/MyEclipse/Idee

Maven-Paket: Maven3.5.4

Mini-Programmrahmen: uniapp

Mini-Programmentwicklungssoftware: HBuilder X

Miniprogramm-Laufsoftware: WeChat-Entwickler

Inhaltsverzeichnis

Vorwort

Systemanzeige

Implementierung von WeChat-Funktionsmodulen

Registrierungs-Login-Schnittstelle

Home-Schnittstelle

Händlerschnittstelle

Benutzeroberfläche für Gerichtedetails

Warenkorb-Schnittstelle

Meine Bestellschnittstelle

Benutzerinformationsschnittstelle

Implementierung serverseitiger Funktionsmodule

Server-Anmeldeschnittstelle

Benutzerverwaltungsoberfläche

Schnittstelle zur Händlerverwaltung

Schnittstelle zur Verwaltung von Gerichtinformationen

Schnittstelle zur Verwaltung der Kategorie „Gerichte“.

Code

Implementierungscode für die Anmeldefunktion

Implementierungscode der Registrierungsfunktion

Implementierungscode für die Funktion zum Zurücksetzen des Passworts

Ändern Sie den Implementierungscode der Informationsfunktion

Implementierungscode der Informationsfunktion löschen

Speichern Sie den Implementierungscode der Informationsfunktion


Vorwort

Mit der Weiterentwicklung der Technologie haben WeChat-Miniprogramme langsam Einzug in unser Leben gehalten. Da sie leicht, schnell und einfach zu bedienen sind und auf der großen Plattform von WeChat basieren, haben sich Miniprogramme schnell entwickelt und sind ausgereifter geworden. Daher als Reaktion auf Um den Anforderungen der Benutzer an Bestellungen zum Mitnehmen gerecht zu werden, haben wir diese App zum Mitnehmen speziell entwickelt.

Das Takeaway-Applet ist in ein kleines Programm-Frontend und ein Java-Backend-System unterteilt, die der Dateninteraktion folgen und voneinander getrennt sind. Das API-Dokument, das offiziell von der Front-End-Miniprogrammanwendung bereitgestellt wird. Seine Hauptfunktionen bestehen darin, Informationen zu Gerichten zum Mitnehmen anzuzeigen, zum Mitnehmen zu bestellen und persönliche Bestellungen zu verwalten. Das Back-End-System ist in Java-Sprache implementiert, basiert auf der B/S-Struktur und wird mithilfe einer MySQL-Datenbank entwickelt, wodurch die Back-End-Schnittstelle von Administratoren und Händlern einfach und übersichtlich gestaltet wird und Administratoren und Händlern die Verwendung und Verwaltung erleichtert wird.

Dieses Miniprogramm zum Mitnehmen bietet die Vorteile einer einfachen Benutzeroberfläche, einer leicht verständlichen Bedienung, einer bequemen Verwaltung, vollständiger Funktionen usw. und hat einen hohen Anwendungswert.


Systemanzeige

Implementierung von WeChat-Funktionsmodulen

Registrierungs-Login-Schnittstelle

Benutzer, die kein Konto haben, können sich registrieren. Nach der Registrierung können sie die Anmeldeschnittstelle aufrufen, um sich beim System anzumelden.

 

Home-Schnittstelle

Der Benutzer öffnet dieses Takeout-Applet über die WeChat-Plattform und gelangt nach der Anmeldung auf die Startseite des Systems. Auf der Startseite kann der Benutzer alle Gerichte anzeigen. 

 

Händlerschnittstelle

Benutzer können alle Händler auf der Händleroberfläche anzeigen und sich für die Anzeige von Details entscheiden 

 

Benutzeroberfläche für Gerichtedetails

Benutzer können ein Gericht auswählen, um detaillierte Informationen zum Gericht anzuzeigen, es in den Warenkorb legen und sofort kaufen. 

 

Warenkorb-Schnittstelle

Benutzer können die Informationen zu vorhandenen Gerichten im Warenkorb auf der Warenkorboberfläche einsehen und löschen, die Menge ändern oder Abrechnungsvorgänge durchführen. 

 

Meine Bestellschnittstelle

Benutzer können persönliche Bestellinformationen auf der Benutzeroberfläche „Meine Bestellung“ einsehen 

 

Benutzerinformationsschnittstelle

Benutzer können persönliche Informationen ändern 

 

Implementierung serverseitiger Funktionsmodule

Server-Anmeldeschnittstelle

Administratoren und Händler müssen sich anmelden, wenn sie in die Rolle Backend einsteigen möchten. 

 

Benutzerverwaltungsoberfläche

Administratoren können Benutzerinformationen anzeigen, ändern und löschen

 

Schnittstelle zur Händlerverwaltung

Administratoren können Geschäftsinformationen hinzufügen, löschen, ändern und überprüfen

 

Schnittstelle zur Verwaltung von Gerichtinformationen

Händler können Gerichtinformationen hinzufügen, löschen, ändern und überprüfen, und Administratoren können Gerichtinformationen anzeigen, ändern und löschen. 

 

Schnittstelle zur Verwaltung der Kategorie „Gerichte“.

Händler können Informationen zur Gerichtsklassifizierung hinzufügen, löschen, ändern und überprüfen, und Administratoren können Informationen zur Gerichtsklassifizierung anzeigen, ändern und löschen. 

 


Code

Implementierungscode für die Anmeldefunktion

@IgnoreAuth
	@PostMapping(value = "/login")
	public R login(String username, String password, String captcha, HttpServletRequest request) {
		UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
		if(user==null || !user.getPassword().equals(password)) {
			return R.error("账号或密码不正确");
		}
		String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
		return R.ok().put("token", token);
	}

Implementierungscode der Registrierungsfunktion

@IgnoreAuth
	@PostMapping(value = "/register")
	public R register(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }

Implementierungscode für die Funktion zum Zurücksetzen des Passworts

@IgnoreAuth
	@RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
    	UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
    	if(user==null) {
    		return R.error("账号不存在");
    	}
    	user.setPassword("123456");
        userService.update(user,null);
        return R.ok("密码已重置为:123456");
    }

Ändern Sie den Implementierungscode der Informationsfunktion

 @RequestMapping("/update")
    public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
    	UserEntity u = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername()));
    	if(u!=null && u.getId()!=user.getId() && u.getUsername().equals(user.getUsername())) {
    		return R.error("用户名已存在。");
    	}
        userService.updateById(user);//全部更新
        return R.ok();
    }

Implementierungscode der Informationsfunktion löschen

@RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        userService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }

Speichern Sie den Implementierungscode der Informationsfunktion

@PostMapping("/save")
    public R save(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }

추천

출처blog.csdn.net/2301_79727522/article/details/135434643