微信數(shù)據(jù)庫分析與設(shè)計(jì)_第1頁
微信數(shù)據(jù)庫分析與設(shè)計(jì)_第2頁
微信數(shù)據(jù)庫分析與設(shè)計(jì)_第3頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、微信數(shù)據(jù)庫分析與設(shè)計(jì)一、需求分析微信作為當(dāng)前的主要即時(shí)通訊工具之一,有著廣泛的應(yīng)用。其主要的功能是實(shí)現(xiàn)即時(shí)通信,這也是微信的核心功能。此外還有查看朋友圈動(dòng)態(tài)、搜索好友、 管理個(gè)人信息、建立用戶自己的相冊(cè)、收藏功能、搖一搖、搜索附近的人、購物、 游戲等功能。此次對(duì)于微信平臺(tái)的數(shù)據(jù)庫設(shè)計(jì)主要對(duì)部分需要微信平臺(tái)提供存儲(chǔ) 信息功能進(jìn)行需求分析及設(shè)計(jì)。以下將對(duì)微信平臺(tái)的主要需求做簡要的分析并且 根據(jù)分析做出數(shù)據(jù)流圖使得對(duì)于微信平臺(tái)數(shù)據(jù)庫的設(shè)計(jì)有更好的理解。微信的通信主要包括與微信好友進(jìn)行相互通信,這其中通信內(nèi)容包括文字、 語音、圖片及視頻。當(dāng)用戶訂閱了公眾號(hào)之后,會(huì)接收公眾號(hào)發(fā)送的消息并且也 可向公眾號(hào)

2、發(fā)信息或許其提供的信息。微信通信功能的另一個(gè)主要方面是實(shí)現(xiàn)群聊。用戶可以加入一個(gè)微信群進(jìn)行群。另一方面用戶也可以選擇自己的聯(lián)系人進(jìn)行群聊。微信中通訊錄實(shí)現(xiàn)了保存用戶聯(lián)系人的目的,并且訂閱的公眾號(hào)也保存于通訊錄中,并且在通訊錄中可以設(shè)定標(biāo)簽來為聯(lián)系人分組。微信朋友圈保存好友發(fā)送的與朋友共享的消息,其內(nèi)容可為文字、圖片、視頻。在朋友圈中可以設(shè)定權(quán)限使得不同權(quán)限的用戶查看的內(nèi)容不一樣。搖一搖功能可以獲取同一時(shí)刻一起搖動(dòng)手機(jī)的用戶,并且暫存于微信中。附近的人功能可以識(shí)別在一定范圍內(nèi)的微信用戶,并且將獲得的用戶信息也暫存在微信中,對(duì)于識(shí)別附近的用戶可以設(shè)定具體的條件來掃描。漂流瓶功能相當(dāng)于隨機(jī)的獲取微信

3、消息或者向微信用戶隨機(jī)的發(fā)送消息。對(duì)于個(gè)人信息的編輯,用戶可以根據(jù)自身需要編輯一些所需的個(gè)人信息。最后在微信用戶個(gè)人信息中有相冊(cè)和收藏記錄用戶的照片和收藏的文字語音 等信息。以上是對(duì)微信的部分功能的需求分析,現(xiàn)根據(jù)以上需求對(duì)微信數(shù)據(jù)庫畫出數(shù) 據(jù)流圖:第0層DFD :*f111第1層DFD :二、概念設(shè)計(jì)在第一步的需求分析中,我們了解了微信數(shù)據(jù)庫平臺(tái)設(shè)計(jì)中所需要的實(shí)體及 需要存儲(chǔ)的信息。在概念設(shè)計(jì)中將進(jìn)一步明確數(shù)據(jù)庫設(shè)計(jì)所需實(shí)體,實(shí)體所具有的屬性及實(shí)體之間的關(guān)系。通過分析微信數(shù)據(jù)庫平臺(tái)所需實(shí)體主要有:用戶信息、普通消息記錄、公眾 號(hào)信息、公眾號(hào)消息記錄、微信群信息、群聊消息記錄、收藏信息、相冊(cè)、

4、朋友 圈信息、聯(lián)系人信息、附近人信息、漂流瓶信息、掃一掃信息、搖一搖信息。這 些實(shí)體分別對(duì)應(yīng)于微信功能的不同模塊。在實(shí)現(xiàn)微信的通信功能主要是使用用戶信息、普通消息記錄、微信群信息、 群聊消息記錄和聯(lián)系人信息這幾個(gè)實(shí)體。在明確所需實(shí)體后根據(jù)實(shí)際需要對(duì)于每個(gè)實(shí)體設(shè)置符合實(shí)際情況的屬性,每 個(gè)屬性對(duì)應(yīng)了數(shù)據(jù)庫中的具體屬性。下圖是根據(jù)對(duì)于微信數(shù)據(jù)庫平臺(tái)的需求分析做出的CDM,通過此概念模型顯示數(shù)據(jù)庫之間各實(shí)體之間的相互關(guān)系及各個(gè)實(shí)體所具有的實(shí)際屬性。-篦螫Ig.K-鏗-鑒£甬1睪-s£r i'.-舊 a盞臺(tái)建罠垂 八送E訝W-|?-善邑_ 二二盞SErM o 濁 _H-g整

5、.3 二恵垂雪勇&國2 -要豈£ Esm _1<m 】H塞建>瑩 亠耳冥& -曰至首邑罷一 q虐論養(yǎng)套墾 *S辜蠱1一一J屆盞B0BES* 宀氮書螯g*屋專血 -6橐宀 S募&-s'-泮.£峯蔓一 - 八e-sl-s一一層K 涯簽3臺(tái):壺辜嘗墓-S罷=屠1-瘞£説、邏輯設(shè)計(jì)由以上概念設(shè)計(jì)模型,我們可以獲得以下邏輯數(shù)據(jù)模型(LDMoet-l-r-:-詁謹(jǐn)苣 r 呂 h!l?. -_1EM1'爲(wèi)逼-暨貝一-ri-jr.UH j111 1 > CWV. ”*vfl干0nrEn<K亠5s p*4 9:-一耆

6、bndII-斑 K»s-儲(chǔ)邏霽 ItMs-g 曇E気S一 軾1DSEW-m-Q- -O 在LDM中對(duì)于CDM進(jìn)行了進(jìn)一步的細(xì)化和具體化,對(duì)其中的實(shí)體之間的關(guān)系在邏輯上進(jìn)一步的進(jìn)行了明確。在此基礎(chǔ)上我們獲得更加具體能直接反映數(shù)據(jù)庫涉及的無理數(shù)據(jù)模型(PDM )。通過PDM將具體顯示數(shù)據(jù)庫所需的表及其之間的關(guān)系。PDM如下圖所示:削Is陰 r*百 *-共V-SH.?;'A怎.-KM=-ra§3卄 -nr-±1 匡Musjuw5-* -* -亡-5-< <I H f-H. - I T - . C” * = TF >«M.応.pm-噸

7、MAk«至 7雀 套疥幻K萋P咤£JZ1sar -rr «tf> : ." >kjmIK1 比 擊Ui"*-F fc*V-3&' F tlZ3li-=tiss尋Fi>"張 i 4 f1 -Mi |ba “,:書TJr ! ¥ "* V 二"一 II". r 議m孝適匿r 業(yè)=在PDM中顯示了個(gè)表單之間的引用關(guān)系,其具體引用如下表:標(biāo)間關(guān)系名稱父表格子表格關(guān)注用戶信息關(guān)注關(guān)注公眾號(hào)信息關(guān)注發(fā)送公眾號(hào)信息公眾號(hào)消息記錄發(fā)送/接收用戶信息普通消息記錄發(fā)送消息用戶信息群

8、聊消息記錄收藏用戶信息收藏信息查看聯(lián)系人信息普通消息記錄用戶存放用戶信息搖一搖信息用戶所在群用戶信息用戶所在群用戶所在群微信群信息用戶所在群用戶所屬用戶信息漂流瓶信息用戶掃描獲得用戶信息掃一掃信息用戶相冊(cè)用戶信息相冊(cè)用戶聯(lián)系人用戶信息聯(lián)系人信息群聊天記錄微信群信息群聊消息記錄聯(lián)系人相冊(cè)聯(lián)系人信息相冊(cè)獲取用戶信息附近人信息本系統(tǒng)中使用的表單如下所示:1、用戶信息表NameData TypeLengt hP (主鍵)F (外鍵)M (不可為空)用戶IDchar(15)15XX昵稱char(20)20X頭像long binary二維碼名片long binaryX我的地址varchar(100)100

9、性別char(5)5X地區(qū)varchar(20)20X個(gè)性簽名varchar(500)500登陸密碼varchar(20)20X2、普通消息記錄表NameData TypeLengt hPFM消息IDchar(20)20XX聯(lián)系人IDchar(15)15X用戶IDchar(15)15X內(nèi)容varchar(5000)5,000X發(fā)送時(shí)間datetimeX3、聯(lián)系人表NameData TypeLen gth PFM朋友IDchar(20)20XX用戶IDchar(15)15X備注名稱char(20)20X標(biāo)簽varchar(20)204、公眾號(hào)信息表NameData TypeLen gthPFM公

10、眾號(hào)IDchar(20)20XX公眾號(hào)名稱char(40)40X5、公眾號(hào)消息記錄表NameData TypeLen gthPFM公眾消息IDchar(20)20XX公眾號(hào)IDchar(20)20X公眾消息varchar(5000)5,000X訂閱者varchar(8000)8,000X發(fā)送時(shí)間timestampX6、關(guān)注表NameData TypeLen gthPFM用戶IDchar(15)15XXX公眾號(hào)IDchar(20)20XXX7、微信群信息表NameData TypeLen gthPFM群IDchar(20)20XX群名稱char(20)20X群二維碼long binaryX群成員

11、varchar(1000)1,000X8、用戶所在群表NameData TypeLen gthPFM用戶IDchar(15)15XXX群IDchar(20)20XXX9、群聊消息記錄表NameData TypeLen gthPFM群聊消息ID :har(20)20XX群IDchar(20)20X發(fā)送人char(20)20X發(fā)送時(shí)間timestampX內(nèi)容varchar(5000)5,000X10、相冊(cè)表NameData TypeLen gthPFM相冊(cè)IDchar(20)20XX用戶IDchar(15)15X聯(lián)系人IDchar(20)20X存放時(shí)間timestampX內(nèi)容varchar(500

12、0)5,000X11、收藏信息表NameData TypeLen gthPFM收藏IDchar(20)20XX用戶IDchar(15)15X收藏時(shí)間timestamp收藏內(nèi)容varchar(8000)8,00012、附近人信息表NameData TypeLen gthPFM附近人IDchar(20)20XX用戶IDchar(15)15X昵稱char(20)20X距離in teger性別char(5)5地區(qū)varchar(20)20個(gè)性簽名varchar(500)50013、搖一搖信息表NameData TypeLen gthPFM搖一搖信息IDchar(20)20XX用戶IDchar(15)1

13、5X時(shí)間timestamp內(nèi)容varchar(5000)5,00014、掃一掃信息表NameData TypeLen gthPFM掃一掃信息IDchar(20)20XX用戶IDchar(15)15X時(shí)間timestamp內(nèi)容varchar(5000) 5,000X15、漂流瓶信息表NameData TypeLen gthPFM漂流瓶IDchar(20)20XX用戶IDchar(15)15X內(nèi)容varchar(5000) 5,000X對(duì)于微信數(shù)據(jù)庫平臺(tái)的邏輯分析,明確了在具體是實(shí)現(xiàn)時(shí)所需的表及其各個(gè) 表之間的引用關(guān)系,在接下來的物理設(shè)計(jì)中將使用邏輯設(shè)計(jì)中的表在具體數(shù)據(jù)庫 實(shí)現(xiàn)微信數(shù)據(jù)庫平臺(tái)的設(shè)計(jì)

14、。四、物理設(shè)計(jì)在此次物理實(shí)現(xiàn)微信數(shù)據(jù)庫平臺(tái)使用 SQL Server 2008。實(shí)現(xiàn)簡單的微信平 臺(tái)的數(shù)據(jù)庫,通過在數(shù)據(jù)庫表中插入數(shù)據(jù)或查看數(shù)據(jù)來表現(xiàn)微信平臺(tái)對(duì)信息的發(fā) 送接收及查看。在此次物理實(shí)現(xiàn)是我們遵循3NF。數(shù)據(jù)庫設(shè)計(jì)如下圖:t 二1 dbo.時(shí)近人信息1+ -J Tbo.公眾號(hào)沽懸記錄S £3弘6公眾罪息0 E3 db°關(guān)注a :2業(yè)6聯(lián)票人1+ 22肌。.漂族信息1±二Th。.普通海鼠記錄 匡J dbo坤消息記錄 圧二dbd掃一E信息11 必d收歳信息1+ _J dbo.淒信器信慝1+ 二 dbo.lf1+ J dbo.軽一桎信息1+ J Hbd用戶所

15、錚i± J dbd用戶曙息l± !_J觀冒1、向“用戶信息”表添加記錄,模擬微信在線用戶。此次添加三個(gè)用戶作為模擬的微信用戶。用戶基本信息如下:E dbd用戶信慝日口列丫 用戶ID (PK. char(151 not nullJ昵稱(char(20), not null)2 頭燼(binaryfll nullJ二iS碣客片(birary(lt not null)J我的地址(varchar(100j,. null) 圍 14011 (charfS), net null) (3 地區(qū)(varchar(20)( not null)j個(gè)I空名(varchar(5001 null)T

16、1 登適密碼(varchar(20F not null)2、我們選取“小a ”登陸微信,開始添加聯(lián)系人?!奥?lián)系人”表保存每個(gè)用戶的聯(lián)系人信息,這些聯(lián)系人信息皆來自用戶信息表。“小a”的聯(lián)系人如下表:朋友ID用戶ID朋友備注名標(biāo)菱1 j D0C2J 0001日月明同學(xué)200030001NULLNULL此表的創(chuàng)建過程如下:creace table 聯(lián)系人 朋友工D char (15s ncr null,舟戶工D char (15) not ri口 1丄審鬼宴備注名 enar(20: *標(biāo)簽 varchar (20 rcdnacrainc pk 1 primary kwy (朋友工1用戶工D),co

17、nstraint f ki foreign irey朋友ID: refeiences dbo.用 戶倡息 P IE : r canrtrint fk2 fcr«ign "y (用pTD rfrences dho-用戶喑息 i廟戶二匸J 士 TT7 八 f3、普通用戶發(fā)送消息時(shí),消息內(nèi)容將存儲(chǔ)在“普通消息記錄”表中,如現(xiàn)在“小a”向“小b”發(fā)送一條消息,然后“小b ”再回復(fù)一條?!靶”也向“小c”發(fā)送一條消息。dbc.&通消息記錄日二列f 消息【D PK, char(20), not null ? AID (FK. char(15l nulll f 畀戶ID FK,

18、 char(15). null) S)內(nèi)客(varchar(5000, not null S),發(fā)送時(shí)間(datetirn?, not null). LrHM消息ID聯(lián)系人ID用戶ID內(nèi)容發(fā)送時(shí)間11 OOffiffll1 0002D0C1下工5點(diǎn)去球場踢球2015-(&W 1135:32 0402 000002OT010002可以,下午球場見2015-01011:36:17.207300000300030001你好201&teW 12:58 16.333其中表中的外鍵約束和默認(rèn)值如下:table dfeo.g通逍思記錄 eoucnlM «3 fonlgn fcev

19、I聯(lián)系人九)xerefences 血6用戶售息 f用戶W alter tatilt dbs普通涓息記隸 add constraint fkl foreign key i|角戶 ID) references dbe用戶信息 用戶 IB)alter e-aisle 業(yè)口肓 曲消息記錄 add 伶送時(shí)|日 daceEime not 口遼止 1 defaulc gedace :在”普通消息記錄表”中也可以查詢兩個(gè)用戶之間的聊天記錄,如查詢“小a ”和”小b “之間的聊天記錄:匚 select 因養(yǎng)發(fā)送時(shí)間fr鵝總査通消息記錄-where 聯(lián)系厶克 in (1 00011 , 1 D002 '

20、) and IJD Ln ( ' 0001* f r0D02i結(jié)果【由酒貳 內(nèi)容發(fā)送時(shí)間r,r1 e rr li n f 1!ifiir-sin g1 £下午5直去球場踢球I 20154)10 11 35:32 040liallUIBIIBIlalUIIUIBIIBIMIUIUIBIIBIMIUlllUIBIIBI*2 可以,下牛球場見20154>5-1011:3:17.207同樣也可以在“普通消消息記錄表”中實(shí)現(xiàn)刪除消息記錄。在“普通消息記錄”表中為了能使用戶更快的查詢自己的消息記錄,這里創(chuàng)建了索引。create index用戶快速查詢記錄on亞6普通消息記錄 用戶T

21、D4、“微信群信息”表中記錄了所有用戶創(chuàng)建的微信群的信息。由于在微信中群 成員數(shù)量當(dāng)前限制為40個(gè),在本平臺(tái)中我們?cè)O(shè)置為4個(gè)。并且每一個(gè)成員信息 由外鍵引用自“用戶信息”表。比如現(xiàn)在創(chuàng)建了兩個(gè)個(gè)微信群如下:dbo.微信芋信亙0 Dj列S田日?髓ID (PK, char(iO). not null) S (char(2OX not nulQ U 芋二淮碼(birrary(lF not null) f 成員 1 (FK, char15L not null) ? 瑟2 (FKf char(15L null) ?成男弓(FKr char(15L null) ?成員4 (FK, char(15L nul

22、l) 璉釣束EJ冃戶舉信言稈竜IX i i 去 mi群ID群名稱群二維碼成勿感員2成員3咸員41 j 000C1 羽毛球球部落(kBF000100020003NULL2 00002足球球部落MF00010002NULLNULL外鍵約束和非空約束如下:alter table業(yè)6試謹(jǐn)群信息 alter table dbu,微信群倍息 al«r table dg與信群信總alter table dtoc.微信群.信息altez calrnm 成員丄 add constraint cylAdd conn匚工*inx cy2 ad.d. cons era ln. e y3 add conatz

23、aini cychar 15 not null foreign keyt成員 1 forlsn 齡vf成員2: rreign key 喊員 3 fcr Eign Jreyl成員 Qreferences dba. references dlbo. ret erences 業(yè)口. references dhe ukkj ij IT nprD D D DI I I I戶戶戶戶息息自心自小”一-_.E.亠一一E問 EEP1用用用用由于當(dāng)用戶創(chuàng)建了一個(gè)微信群后要在“用戶所在群”表中顯示出每個(gè)用戶所在的群,因此需創(chuàng)建一個(gè)觸發(fā)器。在此創(chuàng)建的trigger為“用戶信息新增”。代碼如下:口匪微信平臺(tái)】GO/*

24、Object; Trigger dbo.用戶群信息新増】SET AN5I_tnJLLS ONGOScripL Dar;e: D5/10/2015 15:06:17 */SET QCOTEDIDENTIFIER QUGO alter triaaer dbo.用戶群信息新增 皿【呦微信群信息Jfor insert asdeclare Squnid char i30 ScyXid chords , cyiid chr 15) r 0qy3i4 chsr(15 . cy?id chi 15) select 陽ncid二群ID. 3cylidJ5j(員丄.囲uy2id二成員2上站3丄<3工成員牝丫

25、仆世二成員弓Crest.戈2亡工化d. i£ 3cylid is not nullbeginiMert into dbo用戶所在群【用戶g群mendif Icy2id is not nullbegininsert into dbo用戶所在群用戶皿群TD)endificy3id is not nullbegininsert into dEo-用戶所在群i用戶ID,群T口endiJE 3cy4id is nDt| nullbegininsert into dbo.用戶所在群f用戶TD,群IDL endvalues : Scylidj Squnidvalues9quz)l<l;val

26、ues :2iey31clr qunxd,values :皆u(píng)yT idr qunid5、“用戶所在群”表存儲(chǔ)了每個(gè)用戶所在的群信。每個(gè)用戶可根據(jù)此表查詢所 在群信息。當(dāng)一個(gè)微信群被創(chuàng)建后在“用戶所在群”表中將自動(dòng)顯示用戶所在群 信息。曰J Tbo.用戶所錚S LJI ?!|I 畀戶ID (PKr FK, rhar(15), not null/ 話【D (PK, FK, char(20), not null)一i護(hù)木| L£ »冃思用戶iD群ID1J KIMI HHii 0001000012M»20000130003000C140001000025WQ200002

27、6、“群聊消息記錄表”記錄了每個(gè)群的消息。也可以查詢歷史記錄。比如在群“羽毛球部落”中的消息記錄二口 dbc邱消息記錄匚CJ列?宰腿潔息ID (PK, char(20), not null) ? SHD (FKr char(20L null) 0 發(fā)送人(char(20), not null)S)內(nèi)容(varcharSDOO), not null)群ID發(fā)送人0OT01小丑0000100001小匚00001小匚群聊消息ID1 I 00(X)000001DXCDXa0000000003DODOTW004內(nèi)容明天去打羽毛球 下牛去可以下牛3點(diǎn)iTI 發(fā)送時(shí)閆(smalldatetime, null

28、)發(fā)送時(shí)間20154JS10 15:48:0020154)510 15:48:0020154)5-10 15:48:0020154)5-10 15:5ftM為了使得用戶在查詢?nèi)簹v史消息時(shí)更加快速,創(chuàng)建索引匸工巳玄匸巳index群消息快速查詢Qn業(yè)群聊消息記錄群工D|7、“公眾號(hào)信息”表記錄了所有公眾號(hào)的信息??梢酝ㄟ^搜索公共號(hào)ID或名稱來訂閱公眾號(hào)。弓 dg公眾黑息刁二列(公眾號(hào)ID CPK, char(20)H not null)i 公眾號(hào)名稱(char(401 not null)8、“關(guān)注”表中,存儲(chǔ)了每個(gè)用戶訂閱的公眾號(hào)。E _3 dbs關(guān)注日口列| 用戶ID (PK± FK.

29、 char(l5), not null)?公眾號(hào)ID (PK FK char20), not null)1斧果一消息J用戶ID公眾號(hào)ID1| D0C11 00012000200023000300034M»30M49、“公眾號(hào)消息記錄”存儲(chǔ)公眾號(hào)為訂閱者發(fā)送的消息0 n詁bd公眾號(hào)沽息記錄冋口列/ 公眾肖息ID (PK, char(20)r not null) f 公眾號(hào)ID (FK char(20)p null) E 公眾J肖慝(varchar(5000L not null) XJ 發(fā)謹(jǐn)詢司(timestamp, not null)蟲眾消息ID處眾號(hào)ID公眾消息fllBIKIM VI«1¥ DDOODDMl £ 00012 000000009D0033 00000000600G4鎖假安排 廉政建設(shè) 課程計(jì)劃發(fā)送時(shí)間2015-05-1016:17:0020154)10 16:18:00201510 16:18:0010、其余各表分別存儲(chǔ)每個(gè)用戶在微信中的信息,通過外鍵引用來確定每個(gè)表中

溫馨提示

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

評(píng)論

0/150

提交評(píng)論