Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > .NET Framework > Forum > ขอความกรุณา ขอแนวความคิดเรื่อง ระบบพักโต๊ะ ด้วย C# ค่ะ



 

ขอความกรุณา ขอแนวความคิดเรื่อง ระบบพักโต๊ะ ด้วย C# ค่ะ

 



Topic : 100677

Guest




ขอแนวความคิดเรื่อง ระบบพักโต๊ะ ด้วย C# ค่ะ

คือตอนนี้ กำลังทำ โปรเจคเรื่องระบบจัดการร้านอาหารค่ะ แบบให้มีการ ตัดสต๊อกได้ มีการออกใบเสร็จ ออกรายงานการขายประมาณนี้ค่ะ
แล้วตอนนีั้อยากให้มีระบบพักโต๊ะค่ะ

คือระบบบพักโต๊ะในที่นี้หมายความว่า เหมือน ร้านอาหารมี 10 โต๊ะ โต๊ะที่ 1 มาสั่งอาหาร เราก็จะบันทึกข้อมูลไว้ ในขณะเดียวกัน โต๊ะที่ 2 มาสั่งอาหาร ด้วย เราก็พักโต๊ะที่ 1 เอาไว้ มาเพิ่มข้อมูล ไปโต๊ะที่ 2 แล้วค่อยกลับมาเพิ่มโต๊ะที่ 1 ได้อีก แบบนี้ เรียกว่าระบบพักโต๊ะ ( ในแบบของหนูค่ะ) อยากทราบว่า มันพอจะมีแนวทางในการทำไหมคะ ถ้ามีทำอย่างไรคะ ถ้าได้โต้ดด้วยก็ดีค่ะ พัฒนาด้วย C#



Tag : .NET







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-09-19 00:53:28 By : Saw-series View : 1883 Reply : 20
 

 

No. 1



โพสกระทู้ ( 821 )
บทความ ( 0 )



สถานะออฟไลน์


นอนดึกน่ะครับ

ปกติถ้าเป็นร้านอาหารจะเป็นแบบทำโต๊ะให้เลือกน่ะครับ
แต่ถ้าเป็น POS จะมีระบบ พักบิล

ผมถ้าทำโปรแกรมแบบให้สามารถเลือกโต๊ะได้เลยจะเข้าใจง่ายกว่าน่ะครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 08:14:30 By : fonfire
 


 

No. 2

Guest


ครับ ถ้าออกแบบ แบบนี้ ไปนอนดีกว่า....
คุณจะไปทำเช่นนั้นทำไม ไอ้พักโต๊ะ พักเก้าอี้ของคุณน่ะ

คุณก็ออกแบบหน้าจอให้ ใส่ช่องเลขที่โต๊ะ หรือใช้ DroupDownList รายชื่อโต๊ะก็ได้
จะไปบันทึกข้อมูลโต๊ะไหน ก็เลือกโต๊ะนั้นออกมา ซึ่งจะแสดงพร้อมรายการที่สั่งอาหารไป แล้วคุณก็เพิ่มรายการอาหารเข้าไปเท่านั้นเอง
ง่ายจะตายไป ...
ถ้าจะให้ดี คุณลองไปขอดูระบบร้านอาหารที่เขาใช้ระบบนี้อยู่จะดีกว่านะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 08:33:17 By : ผ่านมาเห็นแล้วอยากช่วย
 

 

No. 3

Guest


ขอบคุณมากค่ะ หนูความรู้น้อยต้อยต่ำ TT บางทีอะไรง่ายๆก็มองมันยากไปหน่อย TT
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 09:03:51 By : Saw-series
 


 

No. 4

Guest


ตอบความคิดเห็นที่ : 3 เขียนโดย : Saw-series เมื่อวันที่ 2013-09-19 09:03:51
รายละเอียดของการตอบ ::
... น้อยใจเหรอ....สงสารจัง เอาเป็นว่า ลองไปออกแบบหน้าจอในการบันทึก อาหารแต่ละโต๊ะ นะครับ อย่างที่บอกไป สงสัยหรือไม่เข้าใจอะไร ก็ Post มาถามที่นี่ได้ ระดับเทพ ทั้งนั้น ครับ
ขอเอาใจช่วยให้โปรแกรมของคุณประสพความสำเร็จนะครับ.......

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 09:13:14 By : ผ่านมาเห็นแล้วอยากช่วย
 


 

No. 5

Guest


ไม่ได้น้อยใจเท่าไหร่ แต่ว่า ปัญหาว่าจะออกแบบหน้าจอบันทึกยังไงนั้นแหละค่ะ ใช้เครื่องมืออันไหน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 11:08:20 By : Saw-series
 


 

No. 6

Guest


มันต้องต่อกับฐานข้อมูลด้วยนะ เพราะว่า มันต้องเก็บรายการที่สั่งได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 11:09:48 By : Saw-series
 


 

No. 7



โพสกระทู้ ( 821 )
บทความ ( 0 )



สถานะออฟไลน์


ทำฟอร์ม มา 1 ฟอร์ม
แล้วเอา Button ไปวางเรียงกันเลยครับ (ง่ายดี)
แล้วก็ใส่เลขโต๊ะไปเลย 1-100 ก็ได้ หวังว่าคงไม่มีจัด Zone โต๊ะน่ะครับ เพราะว่าจะยุ่งขึ้นไปอีก

ที่หน้าขายก็ทำปุ่มเปลี่ยนโต๊ะ
กดแล้วก็โชว์ฟอร์มเลือกโต๊ะ

น่าจะประมาณนี้น่ะครับ

ลองดูอันนี้ครับ
ขออนุญาติเจ้าของโปรแกรมด้วยน่ะครับ

http://www.e-restaurantsoftware.com/interface.html
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 11:34:46 By : fonfire
 


 

No. 8

Guest


ตอบความคิดเห็นที่ : 1 เขียนโดย : fonfire เมื่อวันที่ 2013-09-19 08:14:30
รายละเอียดของการตอบ ::
ถ้าวันและเวลาเป็นของผม
23:59 - 04:00 ผมรู้สึกว่า ผมพึ่งตื่น ทำกิจวัตรประจำวัน (ล้างหน้า... แปรงฟัน)
05:00 - 12.00 ผมรู้สึกว่า นี่คือเวลาทำงานของผม
13:00 - 17.00 ผมรู้สึกว่า นี่คือเวลาทำงานของผม
18:00 - 23:59 ผมรู้สึกว่า ผมพึ่งตื่น ทำกิจวัตรประจำวัน (ล้างหน้า... แปรงฟัน)



#NO 5, xxx ผมไม่ได้หวังว่า พจนานุกรมภาษาไทย มันจะหนาขึ้นหรือว่าบางลง (เบา)
ผมตั้งใจว่า ผมจะต้องคว้ารางวัล "กวีซีไรต์" ให้ได้ด้วยคำว่า "แตด" ผมเรียบเรียงไกล้เสร็จแล้ว
(ผมฝันจะเป็นนักเขียน)


ตัวอย่างเนื้อหาบางช่วงบางตอน "ว่าที่กวีซีไรต์ คนใหม่"
...
...
...
ถ้า ความยุติธรรมบนโลกใบนี้ มีค่าเท่ากับ "แตด" สันติสุขของ... (สรรพสัตว์) จะเกิดขึ้น "ด้วยความบังเอิญ"
...
...
...
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 11:35:51 By : ผ่านมา
 


 

No. 9

Guest


ตอบความคิดเห็นที่ : 8 เขียนโดย : ผ่านมา เมื่อวันที่ 2013-09-19 11:35:51
รายละเอียดของการตอบ ::
... เอ่อ มาผิดงานป่าวคะ แหะๆๆๆ.......

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 14:39:44 By : saw series
 


 

No. 10

Guest


แล้วเราจะทำอย่างไร ให้รายการอาหาร มันไปออกใบเสร็จได้ดีอ่ะคะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 15:18:12 By : saw series
 


 

No. 11



โพสกระทู้ ( 821 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 10 เขียนโดย : saw series เมื่อวันที่ 2013-09-19 15:18:12
รายละเอียดของการตอบ ::
หมายถึง ปริ้น ใบสั่ง ไปห้องครัว หรือว่า ปริ้นใบเสร็จ ครับ
เป็นเครื่องพิมพ์ สลิป เหรอครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 15:57:21 By : fonfire
 


 

No. 12

Guest


ตอบความคิดเห็นที่ : 7 เขียนโดย : fonfire เมื่อวันที่ 2013-09-19 11:34:46
รายละเอียดของการตอบ ::
ทำฟอร์ม มา 1 ฟอร์ม
แล้วเอา Button ไปวางเรียงกันเลยครับ (ง่ายดี)
แล้วก็ใส่เลขโต๊ะไปเลย 1-100 ก็ได้ หวังว่าคงไม่มีจัด Zone โต๊ะน่ะครับ เพราะว่าจะยุ่งขึ้นไปอีก

ที่หน้าขายก็ทำปุ่มเปลี่ยนโต๊ะ
กดแล้วก็โชว์ฟอร์มเลือกโต๊ะ

น่าจะประมาณนี้น่ะครับ

ลองดูอันนี้ครับ
ขออนุญาติเจ้าของโปรแกรมด้วยน่ะครับ

http://www.e-restaurantsoftware.com/interface.html


ถ้าเลือกใช้ Control Button ก็ให้ทำเป็น Control Array ตัวอย่างเช่น
Code (VB.NET/C# ก็เหมือนกัน)
For i As Integer = 0 To 10 'จำนวนโต๊ะทั้งหมด
    Dim btn As New Button With {.ID = "โต๊ะ" + i.ToString(), .Text = "โต๊ะ 1"}
    AddHandler btn.Click, AddressOf อาหารอร่อยดนตรีไพเราะ
    Me.PanelZoneOne.Controls.Add(btn)
Next

Private Sub อาหารอร่อยดนตรีไพเราะ(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Dim b As Button = DirectCast(sender, Button)
    '...
    '...
    '...
End Sub


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 17:26:41 By : ผ่านมา
 


 

No. 13

Guest


การพักโต๊ะ ถ้าจะทำก็ย่อมทำได้ โดยอาศัย Dictionary เก็บข้อมูลการสั่งอาหาร (ชั่วคราว)
แนวทางการเขียนก็ประมาณนี้ครับ รายละเอียดน่าจะเดาออก

Code (VB.NET)
Public tmpOrders As New Dictionary(Of Integer, List(Of tmpFoodOrder))

'สั่งอาหาร
Private Sub GetOrders(Byval TableID As Integer, ByVal FoodID As Integer)
  If Not tmpOrders .ContainsKey(TableID) Then
     Dim x As New List(Of tmpFoodOrder)
     x.Add(New tmpFoodOrder() With {.TableID = TableID,
                                    .FoodID = 123,
                                    .FoodNameInf = "คะน้าผัดหอย",
                                    .Price = 100,
                                    .Qty = 2,
                                    .Remark = "อร่อยดี"}
                                     )

     tmpOrders.Add(x)
  End If

End Sub

'เลือกโต๊ะ
Private Sub GetTable(Byval TableID As Integer)
     Dim x =tmpOrders(TableID)
     If x Isnot Nothing Then
          '...
          '...
     End
End Sub

'ชำระเงินเรียบร้อยแล้ว
tmpOrders.Remove(TableID)



Code (VB.NET)
Public Class tmpFoodOrder
    Public Property TableID As Integer 'เลขที่โต๊ะอาหาร
    Public Property FoodID As Integer ' เลขที่รายการอาหาร
    Public Property FoodNameInf As String 'ชื่อรายการอาหาร
    Public Property Price As Decimal 'ราคา/หน่วย
    Public Property Qty As Integer 'จำนวนอาหาร
    '...
End Class

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 17:56:25 By : ผ่านมา
 


 

No. 14

Guest


ตอบความคิดเห็นที่ : 10 เขียนโดย : saw series เมื่อวันที่ 2013-09-19 15:18:12
รายละเอียดของการตอบ ::
... เอา Table ที่เป็นเรายการอาหารของแต่ละโต๊ะ มาออกที่ Crystal Report ครับ.......
ใช้เงื่อนไข Formula เป็นเลขที่โต๊ะ กำกับไว้ได้เลยครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 21:24:38 By : ผ่านมาเห็นแล้วอยากช่วย
 


 

No. 15

Guest


ปริ๊น ใบเสร็จ ค่ะ ขอบคุณแนวทางมากๆเลยค่ะ หุหุหุ ใจร่มๆขึ้นมาก
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-19 21:34:49 By : saw series
 


 

No. 16

Guest


ta ตอบความคิดเห็นที่ : 15 เขียนโดย : saw series เมื่อวันที่ 2013-09-19 21:34:49
รายละเอียดของการตอบ ::
ใบเสร็จรับเงิน ก็ดึงมาจากตารางบันทึกรายการอาหารของแต่ละโต๊ะนั้นแหละครับ สมมุตว่า ชื่อ Detail_Table ในตารางก็จะประกอบด้วย
เลขที่โต๊ะ รหัสอาหารหรือเครื่องดื่ม จำนวน ราคา ส่วนชื่อของอาหาร ก็ดึงมาจากตารางอาหารและเครื่องดื่ม สมมุต ชื่อ ตาราง Food_Beverage ประกอบด้วย รหัสอาหารหรือเครื่องดี่ม ชื่ออาหารหรือเครื่องดื่ม จำนวนที่มีอยุ่ ราคาต่อหน่วย ...ส่วนการตัดสต๊อกนั้น ส่วนใหญ่ก็จะตัดสต๊อคเฉพาะเครื่องดื่มที่สามารถนับจำนวนได้เท่านั้น ส่วนอาหารเป็นจาน นั้นไม่ต้องตัดสต๊อค ....การตั้งรหัสนั้นก็ให้ทำเป็นหมวดหมู่ เช่น ขึ้นตั้นด้วย 1 ก็เป็นประเภทเครื่องดื่ม เช่น 101 น้ำแข็ง 102 น้ำดื่มสิงห์ 103 น้ำดื่มช้าง 104 โซดา 105..106 107 .xxxxx 201 ...202....203....อาหารประเภทต้ม 301 ...302 ....303.....อาหารประเภท ทอด ตามสะดวกครับ
เอาใจชวยขอให้โปรแกรมของคุณประสพผลสำเร็จนะครับ
...

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-20 06:01:22 By : ผ่านมาเห็นแล้วอยากช่วย
 


 

No. 17

Guest


อ้างถึง #NO 16 2013-09-20 07:20 AM +7

ข้อมูลที่จะนำมาพิมพ์ใบเสร็จรับเงิน มี 2 ทางดังนี้ครับ
1. เอาตาม #NO 16 เป็นข้อมูลที่ถูกจัดเก็บใน ฐานข้อมูล สมมุติว่าเป็น โต๊ะที่ 7
Code (SQL)
SELECT *
FROM Header_Table a
OUTER APPLY (
	SELECT b.*, c.FoodName
	FROM Detail_Table b
	CROSS APPLY (SELECT FoodName FROM Food_Beverage z WHERE z.FoodID= b.FoodID) c
	WHERE a.TableID = b.TableID
	) d
WHERE a.TableID = 7

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-20 07:27:57 By : ผ่านมา
 


 

No. 18

Guest


อ้างถึง #NO 17 2013-09-20 07:38 AM +7

2. เอามาจาก tmpOrders (เป็นข้อมูลชั่วคราว) สมมุติว่าเป็น โต๊ะที่ 7
Code (VB.NET)
Dim tmpTable As New DataTable()
tmpTable.Columns.AddRange({New DataColumn() With {.ColumnName = "TableID", .DataType = GetType(Integer)},
                           New DataColumn() With {.ColumnName = "FoodID", .DataType = GetType(Integer)},
                           New DataColumn() With {.ColumnName = "FoodNameInf", .DataType = GetType(String)}
                           })

Dim tmpBill As List(Of tmpFoodOrder) = tmpOrders(7)
tmpBill.AsEnumerable().ForEach(Sub(p)
                                   tmpTable.Rows.Add(New Object() {p.TableID, p.FoodID, p.FoodNameInf})
                               End Sub)




เอาตารางชั่วคราว tmpTable ไปออกรายงาน ใน Crystal Report ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-20 07:57:09 By : ผ่านมา
 


 

No. 19

Guest


ท่านเจ้าของกระทู้ #NO 17 (18) คำสั่ง SQL Query ผมไม่ได้เขียนแบบมั่วมั่ว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-20 08:08:43 By : ผ่านมา
 


 

No. 20

Guest


ยอดเยี่ยมมากครับ คุณ "ผ่านมา"
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-20 11:12:21 By : ผ่านมาเห็นแล้วอยากช่วย
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอความกรุณา ขอแนวความคิดเรื่อง ระบบพักโต๊ะ ด้วย C# ค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่