版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
綠樹誠(chéng)可貴,紙張勿浪費(fèi)IS&TDivision,CMMSGBusinessGroup.?DATE\@"yyyy"2017Foxconn,Inc.AllrightsreservedPage範(fàn)本版本:V1.0文檔編號(hào):版本號(hào):V1.0設(shè)計(jì)文檔PiNBoard
修訂人:楊維修訂日期:2017-03-13文檔信息專案名稱:PiNBoard文檔編號(hào):業(yè)務(wù)負(fù)責(zé)人:祝卿文檔名稱:PiNBoard設(shè)計(jì)文檔文檔版本履歷版本號(hào)修訂日期修訂人審核人審核日期核準(zhǔn)人修改內(nèi)容V1.02017-03-13楊維新建
目錄TOC\o"1-2"\h\z\u1. 範(fàn)圍定義 42. 解決方案 43. UI設(shè)計(jì) 63.1. 工具列 63.2. UI布局 63.3. 打開本地文檔云文檔 73.4. 移動(dòng)縮略圖 73.5. 流程圖 74. 數(shù)據(jù)庫(kù)設(shè)計(jì) 94.1. PhysicalDiagram 94.2. 數(shù)據(jù)庫(kù)表清單 114.3. 基礎(chǔ)數(shù)據(jù)腳本 135. 代碼規(guī)范 155.1. GeneralNamingConventions 155.2. SpecificnamingConventions 165.3. Notesstatements 176. APISPEC 186.1. 服務(wù)器端接口說(shuō)明 186.2. Errorcode 186.3. 服務(wù)器端協(xié)議 207. Soket數(shù)據(jù)接收類 21範(fàn)圍定義1.PiNBoardUI呈現(xiàn);2.PiNBoard后端服務(wù);3.PiNBoard會(huì)議交互協(xié)議;解決方案此產(chǎn)品是基於C#.NetWPF+SqlServer2008+SuperSocket框架全新開發(fā)的系統(tǒng)。通過socket通信來(lái)實(shí)現(xiàn)客戶終端與后臺(tái)服務(wù)器交互;與會(huì)方P2P連接實(shí)時(shí)在線會(huì)議;說(shuō)明:Server說(shuō)明:Server僅負(fù)責(zé)會(huì)議信息創(chuàng)建和管控,會(huì)議中主要的頁(yè)面資料數(shù)據(jù),各與會(huì)方直接向主席方IP訪問獲取(實(shí)線)若與會(huì)方無(wú)法直接訪問到主席的IP,則透過server轉(zhuǎn)發(fā)數(shù)據(jù)獲取(虛線)數(shù)據(jù)傳輸?shù)膲毫χ饕谟脩舳说闹飨綀D2-1:與會(huì)方連接邏輯圖圖2-2:系統(tǒng)架構(gòu)圖圖2-3:系統(tǒng)服務(wù)器部署圖UI設(shè)計(jì)工具列UI布局打開本地文檔云文檔移動(dòng)縮略圖流程圖登錄驗(yàn)證用戶日志回傳:服務(wù)器部署限制流程DB3.返回判斷結(jié)果與Errorcode:成功創(chuàng)建/加入會(huì)議orClient/Web端DB3.返回判斷結(jié)果與Errorcode:成功創(chuàng)建/加入會(huì)議orClient/Web端根據(jù)ErrorCode顯示正確的提示文字(例如會(huì)議連線方數(shù)已達(dá)上限/會(huì)議室數(shù)量已達(dá)上限/開立帳號(hào)數(shù)已達(dá)上限)AP2.APServer查詢當(dāng)前的會(huì)議數(shù)量/欲加入的會(huì)議當(dāng)前人數(shù),並讀取憑證限制中的值進(jìn)行比對(duì)1.用戶端請(qǐng)求發(fā)起/創(chuàng)建會(huì)議時(shí)、Webserver創(chuàng)建帳號(hào)時(shí)、欲讀取憑證信息時(shí),call對(duì)應(yīng)的APServerAPIClient/WebServerDBServer、憑證檔案數(shù)據(jù)庫(kù)設(shè)計(jì)PhysicalDiagram數(shù)據(jù)庫(kù)表清單NameCodeActionLogTActionLogTAdditionalRelationAdditionalRelationAgentAgentBASE_GROUPBASE_GROUPBASE_GROUP_MEMBERBASE_GROUP_MEMBERBASE_MEMBERBASE_MEMBERBASE_MEMBER_RELATIONBASE_MEMBER_RELATIONBASE_ROLEBASE_ROLEBaseItemBaseItemCELLPHONE_VALIDATECELLPHONE_VALIDATEClientInfoTClientInfoTColorConfigColorConfigColumnItemColumnItemDeviceTDeviceTE9BindDeviceME9BindDeviceME9DeviceTypeME9DeviceTypeME9MeetingFollowStateME9MeetingFollowStateME9MeetingRoleME9MeetingRoleME9MeetingTypeME9MeetingTypeME9RolePermissionME9RolePermissionME9UserClassME9UserClassME9UserRoleME9UserRoleME9UserTypeME9UserTypeMFileFileFileCategoryFileCategoryFileTagsFileTagsFileWeightFileWeightFolderFolderFunctionListTFunctionListTIM_PROTOCALIM_PROTOCALIM_PROTOCAL_ATTENDIM_PROTOCAL_ATTENDIM_RECEIVEIM_RECEIVEIM_SENDIM_SENDLibraryLibraryLibraryTagsLibraryTagsMAILMAILMeetingManagerTMeetingManagerTMeetingMemberTMeetingMemberTMeetingPermissionTMeetingPermissionTMeetingTMeetingTMessageICodeMessageICodeMM_MEETINGMM_MEETINGMM_MEETING_MEMBERMM_MEETING_MEMBEROrganizeAndLibraryOrganizeAndLibraryparticipantTAGparticipantTAGparticipantTYPEparticipantTYPEROLETagROLETagSalerTSalerTSYS_DEVICESYS_DEVICESYS_DEVICE_USELOGSYS_DEVICE_USELOGSYS_LOGSYS_LOGSYS_UIDSYS_UIDsysdiagramssysdiagramsUserDirectoryUserDirectoryUserFileUserFileUserInMeetingTUserInMeetingTUserPasswordTUserPasswordTUserTUserT基礎(chǔ)數(shù)據(jù)腳本usePin;insertintoe9userTypeMvalues('AECB2566-5F6D-40E3-A33C-C34677AEEEB7','Meeting',N'會(huì)議/設(shè)備帳號(hào)','System',getdate(),1)insertintoe9userTypeMvalues('05C4EDEC-0119-47B5-915E-FDAC3D8B7456','Personal',N'個(gè)人帳號(hào)','System',getdate(),1)insertintoe9userRolemvalues('C12B4F86-407B-4C64-A7EB-5D49042E9B91','Saler',N'賣家','System',getdate(),1)insertintoe9userRolemvalues('FB6662FB-4F7E-4D9A-9946-F168567DF96C','User',N'普通用戶','System',getdate(),1)insertintoe9userRolemvalues('49F29A79-73D1-4D92-8040-F8A62FAD1280','Admin',N'管理員','System',getdate(),1)insertintoe9userclassmvalues('689866D5-C9FB-4B44-9D7E-088C50EC378C','paid',N'付費(fèi)帳號(hào)',1,'System',getdate())insertintoe9userclassmvalues('F2993194-AB64-46E8-A317-58F8C2CD4E20','new',N'試用帳號(hào)',1,'System',getdate())insertINTOE9MEETINGTYPEMvalues('DE006434-E944-4966-874B-B40A46C1E76C','MeetingRoom',N'虛擬會(huì)議室','System',GETDATE())insertintoE9MEETINGTYPEMvalues('372FE88E-311B-4D61-A74B-E1C0B1C8DE8C','System',N'系統(tǒng)流水號(hào)會(huì)議類型','System',GETDATE())insertintoE9MEETINGTYPEMvalues('B4368968-5D2B-498D-BE2F-E9331357CA4B','Personal',N'個(gè)人會(huì)議ID','System',GETDATE())insertintoE9RolePermissionMvalues('FB6662FB-4F7E-4D9A-9946-F168567DF96C','AccountProfile','',1,'','F1034035',GETDATE(),'F1034035',GETDATE())insertintoE9RolePermissionMvalues('49F29A79-73D1-4D92-8040-F8A62FAD1280','AccountNew','',1,'','F1034035',GETDATE(),'F1034035',GETDATE())insertintoE9RolePermissionMvalues('49F29A79-73D1-4D92-8040-F8A62FAD1280','AccountProfile','',1,'','F1034035',GETDATE(),'F1034035',GETDATE())insertintoE9RolePermissionMvalues('49F29A79-73D1-4D92-8040-F8A62FAD1280','AccountUpdate','',1,'','F1034035',GETDATE(),'F1034035',GETDATE())insertintoE9RolePermissionMvalues('49F29A79-73D1-4D92-8040-F8A62FAD1280','CreateMeetingRoom','',1,'','F1034035',GETDATE(),'F1034035',GETDATE())insertintoE9RolePermissionMvalues('49F29A79-73D1-4D92-8040-F8A62FAD1280','DeviceBind','',1,'','F1034035',GETDATE(),'F1034035',GETDATE())insertintoE9RolePermissionMvalues('49F29A79-73D1-4D92-8040-F8A62FAD1280','MonitorMeeting','',1,'','F1034035',GETDATE(),'F1034035',GETDATE())insertintoE9RolePermissionMvalues('49F29A79-73D1-4D92-8040-F8A62FAD1280','Saler','',1,'','F1034035',GETDATE(),'F1034035',GETDATE())INSERTINTO[FunctionListT]([FunctionID],[FunctionName],[FunctionDescription],[SectionName],[SectionDescription],[SeqNo],[CreateDt],[CreateBy],[FunctionURL])VALUES('AFED37B2-9B0A-4A10-82EF-0C11A4758B5F',N'AccountNew',N'帳號(hào)新增',N'AccountManage',N'帳號(hào)管理',2,'Nov920159:54:00:000AM',N'F1034035',N'../AccountManage/AccountNew.aspx')INSERTINTO[FunctionListT]([FunctionID],[FunctionName],[FunctionDescription],[SectionName],[SectionDescription],[SeqNo],[CreateDt],[CreateBy],[FunctionURL])VALUES('CB115AEE-DAA0-40D2-A3B1-13CA7313017A',N'AccountProfile',N'個(gè)人資料',N'profile',N'個(gè)人資料',1,'Nov920159:52:00:000AM',N'F1034035',N'../AccountManage/AccountProfile.aspx')INSERTINTO[FunctionListT]([FunctionID],[FunctionName],[FunctionDescription],[SectionName],[SectionDescription],[SeqNo],[CreateDt],[CreateBy],[FunctionURL])VALUES('239B8687-8BD7-431F-95C1-50BD97346A71',N'AccountUpdate',N'帳號(hào)修改',N'AccountManage',N'帳號(hào)管理',3,'Nov1720155:25:00:000PM',N'F1034035',N'../AccountManage/AccountUpdate.aspx')INSERTINTO[FunctionListT]([FunctionID],[FunctionName],[FunctionDescription],[SectionName],[SectionDescription],[SeqNo],[CreateDt],[CreateBy],[FunctionURL])VALUES('9C82C299-9082-4611-8EA4-65D216AA3ADF',N'CreateMeetingRoom',N'會(huì)議新增',N'Monitor',N'會(huì)議管理',201,'Aug2520168:23:56:093AM',N'F1034035',N'../AccountManage/CreateMeetingRoom.aspx')INSERTINTO[FunctionListT]([FunctionID],[FunctionName],[FunctionDescription],[SectionName],[SectionDescription],[SeqNo],[CreateDt],[CreateBy],[FunctionURL])VALUES('FB33829C-C517-4410-BB69-B86031DF237E',N'Saler',N'銷售商新增',N'SalerManage',N'銷售商管理',100,'Nov1120153:46:00:000PM',N'F1034035',N'../AccountManage/Saler.aspx')INSERTINTO[FunctionListT]([FunctionID],[FunctionName],[FunctionDescription],[SectionName],[SectionDescription],[SeqNo],[CreateDt],[CreateBy],[FunctionURL])VALUES('9CBDEEF6-E020-4D76-9175-CF8E57D79DF9',N'DeviceBind',N'設(shè)備新增',N'MechineManage',N'設(shè)備管理',50,'Nov1120153:45:00:000PM',N'F1034035',N'../AccountManage/DeviceBind.aspx')INSERTINTO[FunctionListT]([FunctionID],[FunctionName],[FunctionDescription],[SectionName],[SectionDescription],[SeqNo],[CreateDt],[CreateBy],[FunctionURL])VALUES('8111088B-5938-4672-B2FC-FED452FAA564',N'MonitorMeeting',N'會(huì)議監(jiān)控',N'Monitor',N'會(huì)議管理',201,'Aug2520168:24:18:213AM',N'F1034035',N'../AccountManage/MonitorMeeting.aspx')代碼規(guī)范GeneralNamingConventions標(biāo)識(shí)的總長(zhǎng)度不要超過32個(gè)字符;標(biāo)識(shí)符的基本語(yǔ)法是以字母和_開始,由字母數(shù)字及下劃線組成的單詞,第一個(gè)字符不能是數(shù)字;只要合適,在變量名的末尾追加計(jì)算限定符(Avg、Sum、Min、Max、Index);在變量名中使用互補(bǔ)對(duì),如min/max、begin/end和open/close;布爾變量名應(yīng)該前加或包含Is(is);盡量減少使用縮寫,而是使用以一致方式創(chuàng)建的縮寫??s寫應(yīng)該只有一個(gè)意思;同樣,每個(gè)縮寫詞也應(yīng)該只有一個(gè)縮寫。例如,如果用min作為minimum的縮寫,那么在所有地方都應(yīng)這樣做;不要將min又用作minute的縮寫;在命名函數(shù)時(shí)包括返回值的說(shuō)明,如GetCurrentWindowName();避免對(duì)不同的元素重用名稱,如名為ProcessSales()的例程和名為iProcessSales的變量;在命名元素時(shí)避免同音異義詞(如write和right),以防在檢查代碼時(shí)發(fā)生混淆;在命名元素時(shí),避免使用普遍拼錯(cuò)的詞。另外,應(yīng)清楚區(qū)域拼寫之間存在的差異,如color/colour和check/cheque;在內(nèi)部范圍中避免使用與外部范圍中的名稱相同的名稱。若訪問錯(cuò)誤變量,則會(huì)產(chǎn)生錯(cuò)誤結(jié)果。若變量與同一名稱的關(guān)鍵字沖突,則必須在關(guān)鍵字前加適當(dāng)?shù)念愋蛶?kù)以作標(biāo)識(shí)。例如,若有一個(gè)名為date的變量,只能通過調(diào)用System.Date來(lái)使用內(nèi)部Date函數(shù);接口名稱以前綴“I”開始,后面接一個(gè)名詞或名詞詞組(如IComponent),或者接一個(gè)描述接口行為的形容詞(如IPersistable);不要使用下劃線,不要過多使用縮寫,因?yàn)榭s寫會(huì)引起混淆;事件處理程序的名稱以一個(gè)描述事件類型的名詞開始,后面接后綴“EventHandler”,如“MouseEventHandler”;事件參數(shù)類的名稱里要加“EventArgs”后綴;如果某事件含有“之前”或“之后”的概念,請(qǐng)以現(xiàn)在時(shí)或過去時(shí)形式使用前綴,如“ControlAdd”或“ControlAdded”;單個(gè)長(zhǎng)字符串拆分成多行寫:當(dāng)一行被分為幾行時(shí),需要將串聯(lián)運(yùn)算符放在每一行的末尾;SQLServer中不要給存儲(chǔ)過程加sp前綴/不要給用戶定義的函數(shù)加fn_前綴/不要給擴(kuò)展存儲(chǔ)過程加xp_前綴。這些前綴是為標(biāo)識(shí)系統(tǒng)保留的。將每個(gè)主要的SQL子句放在不同的行上,這樣更容易閱讀和編輯語(yǔ)句;不要使用原義數(shù)字或原義字符串,如Fori=1To7。而是使用命名常數(shù),如Fori=1ToNUM_DAYS_IN_WEEK以便于維護(hù)和理解;SpecificnamingConventions變量名稱命名規(guī)則:形容詞+名詞(或名詞)類屬性對(duì)應(yīng)的私有變量是在類屬性名的前面加“_”如:privateint_PageSize;publicintPageSize{set{_PageSize=value;}}//類屬性注意大小寫要保持一致。每個(gè)單詞的第一個(gè)字母必須大寫。其它單詞的第一個(gè)字母也大寫。單詞之間不加“_”;屬性名和類名以名詞開始,如EmployeeName和CarAccessory;類私有變量:前加“_”,和類屬性對(duì)應(yīng)的私有變量一樣。每個(gè)單詞的第一個(gè)字母必須大寫。其它單詞的第一個(gè)字母也大寫。單詞之間不加“_”如:privateint_PageSizeTmp;方法入口參數(shù):第一個(gè)單詞的第一個(gè)字母必須小寫,其它單詞的第一個(gè)字母必須大寫。如果只有一個(gè)單詞組成全小寫。單詞之間不加“_”。如:publicstaticintSendCTTVOSMS(stringmobile,stringcontent)publicstaticstringCallAccountHiVA(stringrestPhone,stringuserPhone)全局變量/靜態(tài)變量/常量:定義要全部大寫,如:publicstaticintSMS_TYPE=2;定義部分也可小寫。如:publicstaticstringVOSMS_UserName="88000002";單詞與單詞之間加“_”分隔。函數(shù)命名:函數(shù)命名規(guī)則:動(dòng)詞+名詞(或動(dòng)詞),每個(gè)單詞第一個(gè)字母必須大寫。單詞之間不加“_”如:publicstaticstringGetOrderStatus(intsendMode,intstatueID)控件命名:控件命名規(guī)則:類別+名稱前綴表示類型frm窗口btn按鈕cbo下拉式列表框txt文本輸入框lbl標(biāo)簽img圖像pic圖片divDIVgrd網(wǎng)格scr滾動(dòng)條lst列表框sdsSqlDataSourceodsOleDbDataSource類別對(duì)照表:Notesstatements在文件的頭部標(biāo)明文件的作者,完成時(shí)間,它所完成的主要功能;程序有過改動(dòng)后,要寫上修改人、時(shí)間、簡(jiǎn)單原因說(shuō)明列表;函數(shù)等代碼中的注釋規(guī)范都按系統(tǒng)自動(dòng)的注釋格式;修改代碼時(shí),總是使代碼周圍的注釋保持最新;在每個(gè)例程的開始,提供標(biāo)準(zhǔn)的注釋樣本以指示例程的用途、假設(shè)和限制很有幫助。注釋樣本應(yīng)該是解釋它為什么存在和可以做什么的簡(jiǎn)短介紹;避免在代碼行的末尾添加注釋;行尾注釋使代碼更難閱讀。不過在批注變量聲明時(shí),行尾注釋是合適的;在這種情況下,將所有行尾注釋在公共制表位處對(duì)齊;避免雜亂的注釋,如一整行星號(hào);在部署之前,移除所有臨時(shí)或無(wú)關(guān)的注釋,以避免在日后的維護(hù)工作中產(chǎn)生混亂;如果需要用注釋來(lái)解釋復(fù)雜的代碼節(jié),請(qǐng)檢查此代碼以確定是否應(yīng)該重寫它。盡一切可能不注釋難以理解的代碼,而應(yīng)該重寫它。盡管一般不應(yīng)該為了使代碼更簡(jiǎn)單以便于人們使用而犧牲性能,但必須保持性能和可維護(hù)性之間的平衡;在編寫注釋時(shí)使用完整的句子。注釋應(yīng)該闡明代碼,而不應(yīng)該增加多義性;在編寫代碼時(shí)就注釋,因?yàn)橐院蠛芸赡軟]有時(shí)間這樣做。另外,如果有機(jī)會(huì)復(fù)查已編寫的代碼,在今天看來(lái)很明顯的東西六周以后或許就不明顯了;使用注釋來(lái)解釋代碼的意圖。它們不應(yīng)作為代碼的聯(lián)機(jī)翻譯;為了防止問題反復(fù)出現(xiàn),對(duì)錯(cuò)誤修復(fù)和解決方法代碼總是使用注釋;對(duì)由循環(huán)和邏輯分支組成的代碼使用注釋。這些是幫助源代碼讀者的主要方面;在整個(gè)應(yīng)用程序中,使用具有一致的標(biāo)點(diǎn)和結(jié)構(gòu)的統(tǒng)一樣式來(lái)構(gòu)造注釋;用空白將注釋同注釋分隔符分開。在沒有顏色提示的情況下查看注釋時(shí),這樣做會(huì)使注釋很明顯且容易被找到;為了防止在閱讀代碼時(shí)左右滾動(dòng)源代碼編輯器,每行代碼或注釋不得超過一個(gè)顯示屏;APISPEC服務(wù)器端接口說(shuō)明ErrorcodeNone=0,Unknow=101,ArgumentInvalid=102,OperationInvalid=103,InternetAccessDenied=104,AccessTokenTimeout=105,AccessTokenInvalid=106,UIDOrPWDError=1001,UnknowDeviceTypeError=1002,UIDIsLogin=1003,UIDNoActive
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 全能型供電所崗位知識(shí)專項(xiàng)測(cè)試卷
- 代人催債合同范例
- 公路巡查合同范例
- 企業(yè)借款利息合同范例
- 辦公機(jī)采購(gòu)合同范例
- 2024年工廠空氣凈化器銷售合同
- 2024企業(yè)間關(guān)于跨境電商合作合同
- 2024年定制:房地產(chǎn)聯(lián)合代理合同新典范
- XX市政府?dāng)?shù)據(jù)交換共享平臺(tái)建設(shè)實(shí)施與售后服務(wù)
- 2024年天然氣市場(chǎng)調(diào)撥運(yùn)輸合同
- 鄉(xiāng)鎮(zhèn)衛(wèi)生院6S管理內(nèi)容和要求
- 工程借用資質(zhì)免責(zé)協(xié)議書
- 2023年北京大學(xué)強(qiáng)基計(jì)劃測(cè)試數(shù)學(xué)真題試卷
- 礦泉水廠建設(shè)項(xiàng)目實(shí)施方案
- 狼人殺上帝記錄表
- 信息組織元數(shù)據(jù)
- 供電可靠性(初級(jí))理論普考題庫(kù)及答案匯總-上(單選題)
- “雙減”背景下初中數(shù)學(xué)分層作業(yè)設(shè)計(jì)實(shí)踐探究 論文
- 氯化鋰蒸發(fā)結(jié)晶干燥工藝
- 管理學(xué)基礎(chǔ):從美食談起知到章節(jié)答案智慧樹2023年四川大學(xué)
- 2023年陜西西安特變電工電力設(shè)計(jì)有限責(zé)任公司招聘筆試題庫(kù)含答案解析
評(píng)論
0/150
提交評(píng)論