Maison  >  Article  >  développement back-end  >  Comment utiliser le langage Go pour développer la fonction de gestion du temps commercial du système de commande

Comment utiliser le langage Go pour développer la fonction de gestion du temps commercial du système de commande

WBOY
WBOYoriginal
2023-11-01 08:46:481027parcourir

Comment utiliser le langage Go pour développer la fonction de gestion du temps commercial du système de commande

Comment utiliser le langage Go pour développer la fonction de gestion du temps d'un système de commande de nourriture

Introduction :
Pour développer un système de commande de nourriture, en plus des fonctions de base de commande et de paiement, vous devez également prendre en compte l'activité gestion du temps de différentes périodes . Dans certains restaurants, le petit-déjeuner, le déjeuner et le dîner proposent des menus et des prix différents. Le système doit donc être capable de contrôler avec précision l'affichage du menu et le calcul des prix à différentes périodes. Cet article expliquera comment utiliser le langage Go pour développer la fonction de gestion des heures de bureau du système de commande et fournira des exemples de code spécifiques pour référence.

1. Analyse de la demande
Lors du développement de la fonction de gestion des heures de travail du système de commande, nous devons prendre en compte les points de demande suivants :

  1. Être capable de personnaliser les règles des heures de travail pour différentes périodes horaires ; L'affichage et le calcul des prix doivent être limités aux menus pendant cette période ;
  2. Lorsque les utilisateurs sélectionnent des menus, il faut leur rappeler les informations qui ne se trouvent pas actuellement pendant les heures d'ouverture ;
  3. Le système doit être capable de déterminer automatiquement si le menu est en cours ; le temps se situe pendant les heures de bureau et prendre des décisions en fonction de la situation. Afficher et calculer en conséquence.
  4. 2. Plan de conception
Sur la base de l'analyse de la demande ci-dessus, nous pouvons concevoir le plan de mise en œuvre de la fonction de gestion des heures de bureau suivant :


Utilisez le langage Go pour écrire une structure de gestion des périodes afin de définir des règles commerciales pour différentes périodes ;
  1. Besoin d'une fonction pour déterminer si l'heure actuelle se situe dans une certaine période ;
  2. Définir une structure de menu, y compris les noms des plats, les prix et d'autres informations connexes ;
  3. Définir une variable de liste de menu globale pour stocker toutes les informations des menus ; Lorsque la page de commande est affichée, déterminez les menus à afficher en fonction de l'heure actuelle et calculez le prix.
  4. Fournit une fonction permettant de définir les menus et les règles de prix pour différentes périodes ;
  5. 3. Implémentation du code
  6. Ensuite, nous donnerons des exemples spécifiques d'implémentation de code, veuillez vous référer à l'exemple de code suivant :
  7. package main
    
    import (
        "fmt"
        "time"
    )
    
    type TimeRange struct {
        StartTime time.Time
        EndTime   time.Time
    }
    
    type MenuItem struct {
        Name     string
        Price    float64
        TimeRule TimeRange
    }
    
    var menuList []MenuItem
    
    func isTimeInRange(t time.Time, tr TimeRange) bool {
        return t.After(tr.StartTime) && t.Before(tr.EndTime)
    }
    
    func showMenuByTime() {
        currentTime := time.Now()
    
        for _, item := range menuList {
            if isTimeInRange(currentTime, item.TimeRule) {
                fmt.Println(item.Name, item.Price)
            }
        }
    }
    
    func main() {
        // 初始化菜单列表
        menuList = []MenuItem{
            {Name: "早餐A", Price: 20.5, TimeRule: TimeRange{
                StartTime: time.Date(2022, time.January, 1, 8, 0, 0, 0, time.UTC),
                EndTime:   time.Date(2022, time.January, 1, 10, 0, 0, 0, time.UTC),
            }},
            {Name: "午餐A", Price: 30.0, TimeRule: TimeRange{
                StartTime: time.Date(2022, time.January, 1, 11, 0, 0, 0, time.UTC),
                EndTime:   time.Date(2022, time.January, 1, 14, 0, 0, 0, time.UTC),
            }},
            {Name: "晚餐A", Price: 40.0, TimeRule: TimeRange{
                StartTime: time.Date(2022, time.January, 1, 18, 0, 0, 0, time.UTC),
                EndTime:   time.Date(2022, time.January, 1, 22, 0, 0, 0, time.UTC),
            }},
        }
    
        showMenuByTime()
    }
Dans les exemples de code ci-dessus, nous utilisons la structure TimeRange pour définir Business. règles pour différentes périodes. La structure MenuItem contient le nom, le prix, les règles de temps et d'autres informations du plat. menuList est une variable globale utilisée pour stocker toutes les informations de menu. La fonction


isTimeInRange est utilisée pour déterminer si l'heure actuelle se situe dans la plage de temps spécifiée. La fonction showMenuByTime affiche le menu correspondant en fonction de l'heure actuelle.

Dans la fonction main, nous initialisons la liste des menus et appelons la fonction showMenuByTime pour afficher le menu dans la période actuelle. TimeRange结构体来定义不同时间段的营业规则。MenuItem结构体包含了菜品的名称、价格、时间规则等信息。menuList为全局变量,用于存储所有菜单信息。

isTimeInRange函数用于判断当前时间是否在指定时间范围内。showMenuByTime函数根据当前时间展示对应的菜单。

main函数中,我们初始化了菜单列表,并调用showMenuByTime

4. Résumé

Grâce au code d'implémentation ci-dessus, nous pouvons voir qu'utiliser le langage Go pour développer la fonction de gestion du temps commercial du système de commande n'est pas compliqué. En définissant le gestionnaire de périodes et la structure des menus, et en combinant la fonction de jugement temporel et la logique d'affichage des menus, nous pouvons réaliser les capacités de gestion des heures de travail du système de commande dans différentes périodes.

Dans le développement actuel, nous pouvons nous développer davantage en fonction des besoins réels, tels que l'ajout et la définition de règles de prix pour différentes périodes, la fourniture d'une interface d'exploitation pour faciliter la gestion et d'autres fonctions. J'espère que les solutions et les exemples de code fournis dans cet article pourront être utiles aux étudiants qui développent des systèmes de commande.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn