Cara menggunakan bahasa Go untuk membangunkan fungsi pengurusan masa perniagaan sistem pesanan

WBOY
Lepaskan: 2023-11-01 08:46:48
asal
1011 orang telah melayarinya

Cara menggunakan bahasa Go untuk membangunkan fungsi pengurusan masa perniagaan sistem pesanan

Cara menggunakan bahasa Go untuk membangunkan fungsi pengurusan masa perniagaan sistem pesanan makanan

Pengenalan:
Untuk membangunkan sistem pesanan makanan, sebagai tambahan kepada fungsi pesanan dan pembayaran asas, anda juga perlu mempertimbangkan perniagaan pengurusan masa bagi tempoh masa yang berbeza . Di sesetengah restoran, sarapan, makan tengah hari dan makan malam mempunyai menu dan harga yang berbeza, jadi sistem perlu dapat mengawal paparan menu dan pengiraan harga dengan tepat pada tempoh masa yang berbeza. Artikel ini akan memperkenalkan cara menggunakan bahasa Go untuk membangunkan fungsi pengurusan waktu perniagaan sistem pesanan dan menyediakan contoh kod khusus untuk rujukan.

1. Analisis permintaan
Apabila membangunkan fungsi pengurusan waktu perniagaan sistem pesanan, kita perlu mempertimbangkan perkara permintaan berikut:

  1. Dapat menyesuaikan peraturan waktu perniagaan untuk tempoh masa yang berbeza
  2. Dalam tempoh masa yang berbeza, Paparan dan pengiraan harga harus dihadkan kepada menu dalam tempoh masa tersebut
  3. Apabila pengguna memilih menu, mereka perlu diingatkan tentang maklumat yang tidak berada dalam waktu perniagaan pada masa ini
  4. Sistem seharusnya dapat menentukan sama ada semasa masa adalah dalam waktu perniagaan, dan buat keputusan berdasarkan situasi Paparan dan pengiraan sewajarnya.

2. Pelan Reka Bentuk
Berdasarkan analisis permintaan di atas, kami boleh mereka bentuk pelan pelaksanaan fungsi pengurusan waktu perniagaan berikut:

  1. Gunakan bahasa Go untuk menulis struktur pengurus tempoh masa untuk menentukan peraturan perniagaan untuk tempoh masa yang berbeza ;
  2. Memerlukan fungsi untuk menentukan sama ada masa semasa berada dalam tempoh masa tertentu;
  3. Tentukan struktur menu, termasuk nama hidangan, harga dan maklumat lain yang berkaitan;
  4. Tentukan pembolehubah senarai menu global untuk menyimpan semua Maklumat menu
  5. Apabila dipaparkan pada halaman pesanan, tentukan menu yang hendak dipaparkan berdasarkan masa semasa dan kirakan harga
  6. Menyediakan fungsi untuk menetapkan menu dan peraturan harga untuk tempoh masa yang berbeza.

3. Pelaksanaan Kod
Seterusnya, kami akan memberikan contoh pelaksanaan kod khusus, sila rujuk kod contoh berikut:

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()
}
Salin selepas log masuk

Dalam contoh kod di atas, kami menggunakan struktur Julat Masa untuk mentakrifkan Perniagaan peraturan untuk tempoh masa yang berbeza. Struktur MenuItem mengandungi nama, harga, peraturan masa dan maklumat lain hidangan. menuList ialah pembolehubah global yang digunakan untuk menyimpan semua maklumat menu. Fungsi TimeRange结构体来定义不同时间段的营业规则。MenuItem结构体包含了菜品的名称、价格、时间规则等信息。menuList为全局变量,用于存储所有菜单信息。

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

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

isTimeInRange digunakan untuk menentukan sama ada masa semasa berada dalam julat masa yang ditetapkan. Fungsi showMenuByTime memaparkan menu yang sepadan berdasarkan masa semasa.


Dalam fungsi utama, kami memulakan senarai menu dan memanggil fungsi showMenuByTime untuk memaparkan menu dalam tempoh masa semasa.

4. Ringkasan

Melalui kod pelaksanaan di atas, kita dapat melihat bahawa menggunakan bahasa Go untuk membangunkan fungsi pengurusan masa perniagaan sistem pesanan tidak rumit. Dengan mentakrifkan pengurus tempoh masa dan struktur menu, dan menggabungkan fungsi pertimbangan masa dan logik paparan menu, kami boleh merealisasikan keupayaan pengurusan waktu perniagaan sistem pesanan dalam tempoh masa yang berbeza. 🎜🎜Dalam pembangunan sebenar, kami boleh mengembangkan lagi mengikut keperluan sebenar, seperti menambah dan menetapkan peraturan harga untuk tempoh masa yang berbeza, menyediakan antara muka operasi untuk memudahkan pengurusan, dan fungsi lain. Saya berharap penyelesaian dan contoh kod yang disediakan dalam artikel ini boleh membantu pelajar yang membangunkan sistem pesanan. 🎜

Atas ialah kandungan terperinci Cara menggunakan bahasa Go untuk membangunkan fungsi pengurusan masa perniagaan sistem pesanan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!