數(shù)據(jù)庫課程設(shè)計餐飲下單管理系統(tǒng)_第1頁
數(shù)據(jù)庫課程設(shè)計餐飲下單管理系統(tǒng)_第2頁
數(shù)據(jù)庫課程設(shè)計餐飲下單管理系統(tǒng)_第3頁
數(shù)據(jù)庫課程設(shè)計餐飲下單管理系統(tǒng)_第4頁
數(shù)據(jù)庫課程設(shè)計餐飲下單管理系統(tǒng)_第5頁
已閱讀5頁,還剩21頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、1.課題名稱及目標2.需求分析2.1數(shù)據(jù)需求2.2事務(wù)需求2.3數(shù)據(jù)流2.4數(shù)據(jù)字典3.數(shù)據(jù)庫結(jié)構(gòu)設(shè)計3.1概念設(shè)計錯誤!未定義書簽。3.2邏輯設(shè)計 3.2.1 E-R圖向關(guān)系模型的轉(zhuǎn)換錯誤!未定義書簽。3.2.3用戶子模式建立104.數(shù)據(jù)庫物理設(shè)計114.1存儲過程114.2觸發(fā)器115.數(shù)據(jù)庫的實施115.1在SQL中數(shù)據(jù)庫實施115.2數(shù)據(jù)庫測試6.總結(jié)7.附錄錯誤!未定義書簽。錯誤!未定義書簽。13錯誤!未定義書簽。20201. 課題名稱及目標本次實訓(xùn)要設(shè)計的數(shù)據(jù)庫課題名稱是餐廳管理系統(tǒng)。餐廳管理系統(tǒng)的功能主要包括顧客點菜、結(jié)賬、對員工資料進行管理、對餐 桌信息進行統(tǒng)一設(shè)置、對消費情況

2、進行查詢等功能。基本功能如下:(1) 菜譜信息管理:對菜譜進行增、查、改、刪操作。即可查詢當(dāng)前餐廳所推出的菜品,增加菜品,修改菜品的價格,刪除菜品。(2) 餐桌信息管理:能查詢當(dāng)前餐廳中所有餐桌的座位數(shù)以及使用情況,客人可以對位實現(xiàn)的餐桌進行使用申請。(3) 顧客信息管理:可以查詢顧客的相關(guān)信息,如性別,年齡,聯(lián)系方式等。當(dāng)有新顧客時,可添加新顧客的信息。(4) 顧客下訂單功能:實現(xiàn)下訂單,具有唯一的訂單號,可用于結(jié)賬??筛鶕?jù)顧客的人數(shù)選擇相應(yīng)的餐桌號,并且能夠指定服務(wù)員。(6)顧客點菜:實現(xiàn)顧客點菜功能。顧客可以對所下的訂單進行修改,即可刪除所點的菜品或是修改數(shù)量。同時可以查詢某位顧客的訂單

3、。(7)顧客結(jié)賬:根據(jù)訂單號進行結(jié)賬(防止有相同姓名的顧客,以致結(jié)錯帳)。能夠根據(jù)消費金額進行對應(yīng)的折扣,并把消費信息存檔到消費記錄中去。2. 需求分析通過了解餐飲行業(yè)的特點和實際情況,從分析飯店的基本情況入手,結(jié)合要 實現(xiàn)的功能,對系統(tǒng)的可行性進行分析,為提高其可行性,故做了以下數(shù)據(jù)分析。2.1數(shù)據(jù)需求餐桌數(shù)據(jù)包括餐桌號、座位數(shù)、狀態(tài)(空/有人)餐廳存儲有顧客信息,員工信息。菜品信息有菜品編號、名稱、類別、價格等? 具體數(shù)據(jù)需求如下:下訂單階段需要的數(shù)據(jù)顧客信息:包括顧客編號。訂單信息:包括訂單編號、消費時間。餐桌信息:包括編號、可容人數(shù)、使用狀態(tài)等員工信息:包括員工工號。點菜階段需要的數(shù)據(jù)

4、訂單信息:訂單編號菜品信息:包括菜品編號、菜品名稱、菜品數(shù)量等。結(jié)賬階段需要的數(shù)據(jù):訂單信息:包括訂單編號、顧客編號菜品信息:包括菜品編號、菜品名稱、菜品數(shù)量等。員工信息:包括員工工號折扣信息:包括消費金額、折扣數(shù)員工管理需要的數(shù)據(jù):員工檔案:包括工號、姓名、性別、工資顧客管理需要的數(shù)據(jù):顧客檔案:包括編號、姓名、性別等。消費記錄管理需要的數(shù)據(jù)有:消費信息:訂單編號、消費金額、折扣后金額、結(jié)賬時間2.2事務(wù)需求? 數(shù)據(jù)錄入錄入顧客信息 錄入餐桌信息 錄入員工信息 錄入菜品信息? 數(shù)據(jù)更新/刪除更新/刪除餐桌信息 更新/刪除菜譜菜品信息 更新/刪除員工信息 更新/刪除顧客信息更新/刪除訂單菜品信

5、息? 數(shù)據(jù)查詢查詢可用餐桌信息 查詢在售菜品信息 查詢訂單信息 查詢顧客點菜信息 查詢員工信息 查詢顧客消費信息2.3數(shù)據(jù)流(1)頂層數(shù)據(jù)流點菜業(yè)務(wù)申請變更Foodtable(餐桌)數(shù)據(jù)項屬性存儲代碼類型長度餐桌號Foodtable novarchar10座位數(shù)seati ngnoint使用狀態(tài)Foodtablestatevarchar10Menus (菜譜)數(shù)據(jù)項屬性存儲代碼類型長度編號Dish novarchar10名稱Dish namevarchar10類別Dishclassvarchar10價格Dish pricefloat1)數(shù)據(jù)項Worker (員工)數(shù)據(jù)項Cust屬性存儲代碼類型

6、長度工號Workernovarchar10姓名Workernamevarchar10性別Workersexvarchar4年齡Workerageint工資Workersalaryintomer (顧客)數(shù)據(jù)Oder(訂單)數(shù)據(jù)項編號Customernovarchar10姓名Customer namevarchar10性別Customersexvarchar聯(lián)系方式Customer phonenovarchar20訂單編號Odernovarchar10顧客編號Customernovarchar10消費時間con sumetimedatetime餐桌編號Foodtable novarchar10服

7、務(wù)員編號Workernovarchar10編號數(shù)據(jù)結(jié)構(gòu)名Menus_Oder (點菜)數(shù)據(jù)項屬性存儲代碼類型長度訂單編號Odernovarchar10菜品編號Dish novarchar10菜品名稱Disnn amevarchar10菜品數(shù)量Dish_am ountintDiscount_rules (折扣規(guī)則)數(shù)據(jù)項屬性存儲代碼類型長度消費金額Consump ti onfloat折扣Disco untfloat屬性存儲代碼類型長度訂單編號Odernovarchar10消費金額Consump ti onfloat折扣后金額after_disco untfloat賬單時間BilltimeintS

8、ales_bill (消費賬單)數(shù)據(jù)項2)數(shù)據(jù)結(jié)構(gòu)屬性1餐桌信息餐桌號、座位數(shù)、使用狀態(tài)2菜譜編號、名稱、類別、價格3員工信息工號、姓名、性別、年齡、工資4顧客信息編號、姓名、性別、聯(lián)系方式5訂單信息訂單編號、顧客編號、消費時間、餐桌編號、服務(wù)員編號6點菜訂單編號、菜品編號、菜品名稱、菜品數(shù)量7折扣規(guī)則消費金額、折扣8消費賬單訂單編號、消費金額、折扣后金額、賬單時間顧客信息菜譜更新新增菜品菜譜訂單儲存訂單訂單信息餐桌更新新增餐桌餐桌賬單存儲消費信息賬單記錄5)處理過程編號處理過程名輸入數(shù)據(jù)流輸出數(shù)據(jù)流顧客點菜菜譜訂單結(jié)賬訂單賬單記錄3)數(shù)據(jù)流編號數(shù)據(jù)流名輸入輸出1菜品信息修改菜品菜譜2空閑餐桌

9、選擇餐桌訂單3點菜信息加菜退菜點菜4記入賬單訂單結(jié)賬5結(jié)賬折扣方式結(jié)賬4)數(shù)據(jù)存儲編號數(shù)據(jù)存儲名輸入輸出顧客信息更新顧客新信息13. 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計3.1概念設(shè)計(1)訂單形成過程查看菜譜選擇菜品服務(wù)員(2)結(jié)賬形成過程訂單-tf-對應(yīng)JI包含支付折扣規(guī)則消費金額3.2邏輯設(shè)計3.2(rE-RA.|卩E-R圖向關(guān)系模型的轉(zhuǎn)換廠 轉(zhuǎn)換規(guī)向轉(zhuǎn)選擇一個實體型轉(zhuǎn)換成一個關(guān)系模型。菜品I實體的屬性就是關(guān)系的屬性體餐桌位置的碼就是關(guān)系的碼.。實體型間的聯(lián)系常有如下不同的情況:包含na 一個1:1聯(lián)系可以轉(zhuǎn)換為一個獨立的關(guān)系模式,也可以任意一端對應(yīng)的 關(guān)系模式合并。-b顧一個1: n聯(lián)系可以轉(zhuǎn)換成一個獨立的

10、關(guān)系模式,訂也可以與n 端員工系模式合并。1c.、個m:n聯(lián)系轉(zhuǎn)換成一個關(guān)系模式。或3個以上實體間的一個多聯(lián)系可以轉(zhuǎn)換成一個關(guān)系模式。 模式可合并。"V對應(yīng):JB.根據(jù)以上規(guī)則得到如下關(guān)系模型(下劃線的屬性為主碼) 菜譜(菜品編號,菜品名稱,菜品類別,菜品價格) 顧客(顧客編號保姓名,性別,年齡,聯(lián)系方式) 餐桌(餐桌號?座位數(shù),使用狀態(tài))d.e.對應(yīng)、對應(yīng)71、工資銷售記錄折扣員工(工號,姓名,性別,年齡,工資)訂單(訂單編號,顧客編號,消費時間,餐桌編號,服務(wù)員編號)菜譜訂單(訂單編號,菜品編號,菜品名稱,菜品數(shù)量)消費記錄(訂單號,消費金額,折扣后金額,賬單時間)折扣規(guī)則(消費

11、金額,折扣)1)確定數(shù)據(jù)依賴。2)按照數(shù)據(jù)依賴的理論對關(guān)系模式進行分析,看是否存在部分函數(shù)依賴或?qū)Ω鱾€關(guān)系模式間的數(shù)據(jù)依賴進行極小化分析,減小冗余。3)函數(shù)傳遞或多值依賴等,確保各關(guān)系模式滿足第三范式。4)按照需求分析階段得到的處理要求,分析對于這樣的應(yīng)用環(huán)境這些模式 是否合適,確定是否要對某些模式進行合并或分解。5)對關(guān)系模式進行必要的分解,分析對于這樣的應(yīng)用環(huán)境這些模式是否合適,確定是否要對某些模式進行合并或分解。323用戶子模式建立名稱描述插入新顧客信息若是新顧客,則插入顧客的信息,姓名,性別等下單就位顧客來餐,下訂單,分配餐桌點菜存儲顧客所點的菜品刪除菜品刪除顧客所點的某菜品修改菜品數(shù)

12、量修改顧客所點的某菜品的數(shù)量查詢顧客點菜信息查詢顧客所點的菜品消費總額計算顧客本次消費的總額。顧客支付完賬單時,把消費信 息存檔到消費記錄中結(jié)賬后更改餐桌狀態(tài)當(dāng)顧客結(jié)賬后,把餐桌狀態(tài)改為“空”刪除菜譜中菜品刪除菜譜中存在的某菜品修改菜品價格修改菜譜中某菜品的價格向菜譜添加菜品向菜譜添加新菜品tng disco unt觸發(fā)器,顧客進行結(jié)賬時,消費金額在不同的區(qū)間會有不同的折扣。trig_Sales_bill觸發(fā)器,當(dāng)消費金額達到一定額數(shù)時,會送相應(yīng)優(yōu)惠券trig_Me nus觸發(fā)器,當(dāng)向菜譜添加新菜品,若該菜品名稱含有“紅” 字,會發(fā)出“此后生意必定紅紅火火”的祝福語。4. 數(shù)據(jù)庫物理設(shè)計它依賴

13、數(shù)據(jù)庫在物理設(shè)備上的存儲結(jié)構(gòu)與存取方法就是數(shù)據(jù)庫的物理結(jié)構(gòu),于選定的數(shù)據(jù)庫管理系統(tǒng),為一個給定的邏輯數(shù)據(jù)模型選取一個最合適的應(yīng)用環(huán)境的物理結(jié)構(gòu)過程,就是數(shù)據(jù)庫的物理設(shè)計。這一階段主要任務(wù)時確定數(shù)據(jù)庫的物理結(jié)構(gòu),并不斷的進行優(yōu)化處理,主要建立索引,觸發(fā)器,存儲過程。4.1存儲過程存儲過程可以實現(xiàn)數(shù)據(jù)庫操作的增刪改功能, 在執(zhí)行時需要調(diào)用。御用像函數(shù)一樣,也可以有參數(shù)的參與。定義存儲過程提供了過程封裝的效果, 執(zhí)行只需要調(diào)用,在更大程度上簡化了數(shù)據(jù)處理過程。4.2觸發(fā)器5. 數(shù)據(jù)庫的實施5.1在SQL中數(shù)據(jù)庫實施create database Restaurant_Management建表 cre

14、ate table Menus-菜譜 (Dishno varchar(10)primary key,Dish name varchar(10),Dishclass varchar(10),Dish price float,)create table Customer-顧客(Customerno varchar(10) primary key,Customer name varchar(10) not n ull,Customersex varchar(4) check (Customersex='男'or Customersex='女')not null,Cus

15、tomerphoneno varchar(20) unique not null,)create table Foodtable-餐桌 (Foodtableno varchar(IO) primary key,seatingno int not null,Foodtablestate varchar(6)check(Foodtablestate='空'or Foodtablestate='有人'),)drop table Odercreate table Oder-訂單(Oderno varchar(IO) primary key, Customer no va

16、rchar(10) not n ull, consumetime datetime not null,Foodtable no varchar(10) not n ull,Worker no varchar(10) not n ull,foreign key(Customerno) references Customer (Customerno), foreign key(Foodtableno)references Foodtable (Foodtableno), foreign key(Workerno ) references Worker (Workerno ),)create tab

17、le Worker-員工 (Workerno varchar(10) primary key,Worker name varchar(10),Workersex varchar(4) check(Workersex ='男'or Workersex ='女'),Workerage int,Workersalary int,)drop table Menus_Odercreate table Menus_Oder-點菜 (Oderno varchar(10),Dish no varchar(10),Disnname varchar(10),Dish_amount

18、int not null,P rimary key (Dish no ,Oderno),foreig n key (Dish no) refere nces Men us(Dish no),foreig n key (Oder no) refere nces Oder(Oder no),)drop table Sales_billcreate table Sales bill-銷售賬單 (Oder no varchar(10) p rimary key ,Con sum pti on float,after_discou nt float,Billtime datetime,foreig n

19、key (Oder no) refere nces Oder(Oder no)drop table Discount_rulescreate table Discount rules-折扣規(guī)則 (Consumption float primary key.Discount float,)本系統(tǒng)采用將數(shù)據(jù)逐條錄入的方法。5.2數(shù)據(jù)庫測試(1 )存儲過程插入新顧客信息drop procedure插入新顧客信息 create procedure插入新顧客信息(Customerno varchar(IO), Customername varchar(10), Customersex varchar(4

20、), Customerphoneno varchar(20) )as in sert into Customervalues(Customerno ,Customername ,Customersex ,Customerphoneno) select * from Customer驗證execute插入新顧客信息112699','李陽','男',下單就位droP procedure 下單就位create procedure 下單就位(Oderno varchar(IO),Customerno varchar(IO),consumetime datetim

21、e,Foodtableno varchar(IO),Wokerno varchar(IO) asbeg in tran sacti on -開始事務(wù) in sert into Oder values(Oderno ,Customerno ,consumetime, Foodtableno ,Wokerno )if (select Foodtablestate from Foodtable where Foodtableno=Foodtableno)<>'空') beginprint '該餐桌有人,請重選餐桌。 Rollback tranreturnendel

22、sebeginup date Foodtableset Foodtablestate ='有人'where Foodtable no = Foodtable no print '下單成功,請就位開始點菜end commit tran驗證execute 下單就位'O_001','112699','2013-12-26','TB_005','W_002' execute 下單就位'O_002','112698','2013-12-26' ,'

23、;TB_004' ,'W_003' 當(dāng)餐桌有人時,則顯示成功下單時,則顯示查看下單情況 select * from Oder select * from Foodtable菜譜的查詢select * from Menus刪除菜譜中菜品create procedure 刪除菜譜中菜品Dishno varchar(10) as delete from MenusWhere Dishno=Dishno select * from Menus'D 112'驗證- execute刪除菜譜中菜品 -修改菜品價格- create procedure修改菜品價格( Di

24、shno varchar(10),Dishprice float) as up date Menusset Dish price =Dish price Where Dishno= Dishno select * from Menus驗證execute 修改菜品價格'D_113','30' 向菜譜增加菜品 create procedure 向菜譜增加菜品(Dishno varchar(10), Dishname varchar(10), Dishclass varchar(10),Dishprice float)as insert into Menus valu

25、es(Dishno ,Dishname,Dishclass,Dishprice )select * from Menus驗證 execute向菜譜增加菜品'D_112','時蔬','小炒類','20' 點菜的增加、查詢、刪除、修改點菜 create procedure 點菜 (Oderno varchar(10), Dishno varchar(10), Disnname varchar(10), Dish_amou nt int)as insert into Menus Odervalues(Oderno ,Dishno ,Di

26、snname ,Dish_amount) select * from Menus_Oder where Oderno=Oderno 驗證execute 點菜'O_001','D_111','小炒河蝦','2'execute 點菜'O_001','D_114','雞蛋炒芹菜','1'execute 點菜'O_001','D_115','三鮮湯','3'查詢客戶點菜信息 create procedure查詢顧

27、客點菜信息Customerno varchar(10) as select Customerno =Customer no, Menus. Dish no, Dish name ,Dish_amou ntfrom Menus,Menus_Oder,Oderwhere Oder.Customerno=Customerno and Menus.Dishno =Menus_Oder .Dishno andOder.Oderno = Menus Oder.Oderno'112699'驗證 execute查詢顧客點菜信息 刪除菜品 create procedure 刪除菜品(Oderno

28、 varchar(10), Dishno varchar(10) as delete from Menus OderWhere Oderno= Oderno and Dishno= Dishno select * from Menus_Oder where Oderno=Oderno驗證execute 刪除菜品'O_001','D_111'修改菜品數(shù)量- create procedure修改菜品數(shù)量(Oderno varchar(10),Dishno varchar(10),Dish_amount int) as up date Men us_Oderset D

29、ish_amou nt =Dish_amou ntWhere Oderno= Oderno and Dishno= Dishnoselect * from Menus_Oder where Oderno=Oderno驗證execute 修改菜品數(shù)量 O_001','D_111',3B結(jié)果肖消息IOdemoDistinoDisfinameDiish_amaunt11 mi ("L j O_(W1_i D-ni小妙河蝦2O_M'1D_1H110_00'1D_115三鮮湯計算總消費額-DROP procedure 消費總額 create proced

30、ure 消費總額 (Oderno varchar(10), Con sum pti on float out put, discou nt float out put ) as selectConsumption =SUM (Dishprice *Dish_amount)from Menus_Oder ,Menus,Oderwhere Menus.Dishno =Menus Oder .Dishno and Oder.Oderno=Menus Oder .Oderno andOder.Oder no = Oder no beg in tran -啟用事務(wù) if exists(selectCon

31、sumption from Discount_rules where Consumption =Consumption ) -判斷Discount rules中是否有對應(yīng)折扣beginselect discou nt=Discou nt from Discou nt_rules where Con sum pti on = Con sum pti on endELSEbeginINSERT into Discount_rules (Consumption ) VALUES (Consumption )-將 Consumption 插入至U Discount_rulesselect discou

32、 nt=Discou nt from Discou nt_rules where Con sum pti on =C onsump ti on-獲取對應(yīng)折扣endif exists(select Oderno from Sales_bill where Oderno=Oderno)-判斷消費賬單是否已有該消費記錄beginprint '消費記錄已插入消費賬單,別重復(fù)插入'endelsebeginin sertinto Sales_bill (Oderno,Consumption ,after_discount ,Billtime ) values(Oderno, Consump

33、tion ,Consumption *discount,GETDATE () print '成功將消費記錄插入到消費賬單endcommit tran -提交事務(wù)驗證declare Consumption float,discount float,Oderno varchar(10)='0_001' execute 消費總額 'O_001',Co nsum ptio n out put,discou nt out put select Oder no Customer name,C onsump ti on 總消費,discou nt 折扣 from Od

34、er,Customerwhere Customer. Customerno = Oder.Customerno and Oderno = Oderno并把消費信息插入到消費記錄中若已經(jīng)結(jié)賬,則提示結(jié)賬后餐桌狀態(tài)- create procedure結(jié)賬后更改信息Oderno varchar(10) asup date Foodtable -修改餐桌狀態(tài)set Foodtablestate='空'where Foodtable no =(select Foodtable no from Oder where Oder no = Oder no)驗證execute結(jié)賬后更改信息

35、9;O_001' 對菜譜的操作查詢菜譜select * from Menus 刪除菜譜中菜品- create procedure 刪除菜譜中菜品 Dishno varchar(10) as delete from MenusWhere Dishno=Dishno select * from Menus驗證- execute刪除菜譜中菜品'D 112'執(zhí)行前:執(zhí)行后:-修改菜品價格create procedure修改菜品價格 (Dishno varchar(10),Dishprice float) as up date Menusset Dish price =Dish

36、priceWhere Dishno= Dishnoselect * from Menus驗證execute 修改菜品價格D_113','40'執(zhí)行后: 向菜譜增加菜品- create procedure 向菜譜增加菜品 (Dishno varchar(10),Dishname varchar(10),Dishclass varchar(10),Dishprice float) as insert into Menus values(Dishno ,Dishname,Dishclass,Dishprice ) select * from Menus驗證execute向菜譜

37、增加菜品'D_112','時蔬','小炒類','20' 執(zhí)行后:(2)觸發(fā)器 折扣DROP trigger trig_discountcreate trigger trig_discount on Discount_rules for insert as begindeclare expand floatselect ex pan d=C on sum pti on From in sertedif (ex pan d<50)beginup date Discou nt_rulesset Discou nt=1 where

38、Con sum pti on =ex pandendelse if (expand >= 50and expand < 100)beginup date Discou nt_rulessetdiscou nt =0.95 where Con sum pti on =ex pand endelse if (expand >= 100and expand <150)beginup date Discou nt_rulessetdiscount =0.90where Consumption =expandendelse if (expand >= 150and expand<200) beginup date Discou nt_rulessetdiscou nt =0.85 where Con sum pti on =ex pand endelsebeginup date Discou nt_rulessetdiscou nt =0.80 where Con sum pti on =ex pand endend驗證insert into Discount_rules (Consumption )values(&

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論