




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
年4月19日數(shù)據(jù)交換詳細(xì)設(shè)計(jì)說明書文檔僅供參考
江蘇省并聯(lián)審批平臺(tái)數(shù)據(jù)交換系統(tǒng)管理詳細(xì)設(shè)計(jì)說明書
文檔編號(hào):SN/SD-MB-002保密級(jí)別:保密版本:V1.0修改日期:-09-14目錄1引言 11.1編寫目的 11.2項(xiàng)目背景 11.3當(dāng)前狀況 12詳細(xì)說明 12.1數(shù)據(jù)庫設(shè)計(jì) 12.1.1數(shù)據(jù)庫命名規(guī)則 12.1.2表空間命名規(guī)則 12.2邏輯結(jié)構(gòu) 22.2.1T_USER(用戶信息) 22.2.2T_ORG(機(jī)構(gòu)信息) 22.2.3T_MENU(菜單信息) 32.2.4T_USER_MENU(用戶菜單信息) 32.2.5T_USER_MANAGE_ORG(用戶數(shù)據(jù)權(quán)限信息) 32.2.6T_TASK_DEF(任務(wù)定義) 42.2.7T_ENDPOINT(端點(diǎn)配置) 42.2.8T_TASK_CTRL(任務(wù)運(yùn)行控制) 52.2.9T_DICT_TRANS(傳輸方式字典) 52.2.10T_DICT_CDC(增量識(shí)別機(jī)制字典) 62.2.11T_DATA_QUEUE(待傳數(shù)據(jù)隊(duì)列) 62.2.12T_TRANS_LOG(數(shù)據(jù)交換日志) 62.2.13T_SYS_RT_LOG(運(yùn)行時(shí)日志) 62.2.14T_DICT_FMT(數(shù)據(jù)格式字典) 72.2.15T_NODE_ORG(交換節(jié)點(diǎn)表) 72.2.16T_SYS_LOGING_LOG(登錄日志) 82.2.17T_SYS_LOGING_LOG_BACKUP(登錄日志備份) 82.2.18T_SYS_USE_LOG(系統(tǒng)日志) 82.2.19T_SYS_USE_LOG_BACKUP(系統(tǒng)日志備份) 92.2.20T_DICT_MAIN(字典項(xiàng)主表) 92.2.21T_DICT_MAIN_VALUE(字典值表) 102.2.22T_RT_INST(實(shí)例管理表) 102.3系統(tǒng)菜單 102.4用戶及權(quán)限管理 112.4.1功能說明 112.4.2頁面設(shè)計(jì) 112.4.3相關(guān)規(guī)則 142.4.4相關(guān)SQL 142.5機(jī)構(gòu)管理 152.5.1功能說明 152.5.2頁面設(shè)計(jì) 152.5.3相關(guān)規(guī)則 152.5.4相關(guān)SQL 162.6交換管理 162.6.1功能說明 162.6.2用例圖 172.6.3用例分析 172.6.4頁面設(shè)計(jì) 172.6.5相關(guān)規(guī)則 182.6.6相關(guān)SQL 182.7日志管理 192.7.1功能說明 192.7.2用例圖 192.7.3用例分析 192.7.4頁面設(shè)計(jì) 202.7.5相關(guān)規(guī)則 212.7.6相關(guān)SQl 212.8字典管理(暫緩) 222.8.1功能說明 222.8.2用例圖 222.8.3用例分析 222.8.4頁面設(shè)計(jì) 232.8.5相關(guān)規(guī)則 232.8.6相關(guān)SQL 242.9任務(wù)管理 242.9.1模塊概述 242.9.2任務(wù)定義 252.9.3任務(wù)控制 332.9.4錯(cuò)誤日志 352.9.5實(shí)例管理 372.9.6任務(wù)組管理(暫緩) 382.9.7運(yùn)行控制(暫未實(shí)現(xiàn)) 392.10任務(wù)運(yùn)行 402.10.1模塊概述 402.10.2基本流程 402.10.3映射規(guī)則文件 442.10.4外部接口 572.10.5內(nèi)部接口 612.10.6交換日志(暫緩) 662.10.7運(yùn)行時(shí)事件日志 672.10.8任務(wù)自動(dòng)啟停 682.10.9異常處理 682.10.10運(yùn)行方式 692.10.11安裝部署 69引言編寫目的項(xiàng)目背景當(dāng)前狀況詳細(xì)說明數(shù)據(jù)展示時(shí)根據(jù)機(jī)構(gòu)權(quán)限過濾此次暫不考慮數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫命名規(guī)則數(shù)據(jù)庫主鍵全部采用是32位UUID,針對(duì)Oracle數(shù)據(jù)庫采用char(32)表名以“T_”開頭,視圖名以“V_”開頭,函數(shù)以“FN_”開頭,存儲(chǔ)過程以“SP_”觸發(fā)器以“TR_”針對(duì)數(shù)據(jù)庫中相應(yīng)的字符串,提供以下規(guī)范性的字符升序約定:短字符串:varchar2(20),如姓名、電子郵件,類別等。中字符串:varchar2(100),如地址、部門名稱等。長(zhǎng)字符串:varchar2(1000),如處理意見,備注等。文本型字符串:CLOB,如摘要信息等。表空間命名規(guī)則以TS開頭加‘_’命名各個(gè)表空間,具體內(nèi)容如下:TS_LOB:大字段存儲(chǔ)TS_INDEX:索引表空間TS_DATA:一般數(shù)據(jù)存儲(chǔ)TS_TEMP:臨時(shí)數(shù)據(jù)表空間TS_HISTORY:歸檔數(shù)據(jù)存儲(chǔ)表空間邏輯結(jié)構(gòu)T_USER(用戶信息)NameCodeCommentDataTypePFMUSER_IDUSER_ID主鍵CHAR(32)XXSTAFF_CODESTAFF_CODE用戶名VARCHAR2(100)PASSWORDPASSWORD登錄密碼VARCHAR2(100)BELONG_ORG_IDBELONG_ORG_ID所屬機(jī)構(gòu)IDCHAR(32)POSITIONPOSITION用戶職務(wù)VARCHAR2(100)USER_NAMEUSER_NAME姓名VARCHAR2(20)EMAILEMAIL電子郵箱VARCHAR2(100)LINK_TELLINK_TEL聯(lián)系電話VARCHAR2(20)STATESTATE狀態(tài)(1有效,0無效)NUMBER(1)CREATE_ORGCREATE_ORG創(chuàng)立機(jī)構(gòu)CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間,精確到秒DATEUSER_TYPEUSER_TYPE用戶類型(A管理員,U普通用戶)CHAR(1)T_ORG(機(jī)構(gòu)信息)NameCodeCommentDataTypePFMORG_IDORG_ID主鍵CHAR(32)XXORG_CODEORG_CODE機(jī)構(gòu)代碼VARCHAR2(10)ORG_NAMEORG_NAME機(jī)構(gòu)名稱VARCHAR2(100)SIMPLE_NAMESIMPLE_NAME機(jī)構(gòu)簡(jiǎn)稱VARCHAR2(50)PARENT_ORG_IDPARENT_ORG_ID上級(jí)機(jī)構(gòu)IDCHAR(32)VER_ORG_IDVER_ORG_ID垂管機(jī)構(gòu)父節(jié)點(diǎn)IDCHAR(32)ORG_TYPEORG_TYPE機(jī)構(gòu)類型(00省政府,01省級(jí)部門,02市政府,03市級(jí)部門,04區(qū)縣政府,05區(qū)縣部門,)CHAR(2)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間,精確到秒DATESTATESTATE狀態(tài)(1有效,0無效)NUMBER(1)ORDORD機(jī)構(gòu)順序NUMBER(4)T_MENU(菜單信息)NameCodeCommentDataTypePFMMENU_IDMENU_ID主鍵CHAR(32)XXPARENT_MENU_IDPARENT_MENU_ID父級(jí)菜單IDCHAR(32)MENU_TITLEMENU_TITLE菜單標(biāo)題VARCHAR2(50)MENU_NAMEMENU_NAME菜單名稱VARCHAR2(50)MENU_TYPEMENU_TYPE菜單分類(0系統(tǒng)管理,1非系統(tǒng)管理)NUMBER(1)MENU_DESCRIBEMENU_DESCRIBE菜單描述VARCHAR2(200)MENU_PICMENU_PIC菜單圖標(biāo)VARCHAR2(100)MENU_URLMENU_URL菜單URLVARCHAR2(1000)ORDORD順序號(hào)NUMBER(4)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間,精確到秒DATESTATESTATE狀態(tài)(1有效,0無效)NUMBER(1)T_USER_MENU(用戶菜單信息)NameCodeCommentDataTypePFMUSER_MENU_IDUSER_MENU_ID主鍵CHAR(32)XXMENU_IDMENU_ID菜單IDCHAR(32)USER_IDUSER_ID用戶IDCHAR(32)CREATE_ORGCREATE_ORG創(chuàng)立機(jī)構(gòu)CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間DATET_USER_MANAGE_ORG(用戶數(shù)據(jù)權(quán)限信息)NameCodeCommentDataTypePFMMANAGE_ORG_IDMANAGE_ORG_ID主鍵CHAR(32)XXUSER_IDUSER_ID用戶IDCHAR(32)MANAGE_ORGMANAGE_ORG1省級(jí)權(quán)限,2市級(jí)權(quán)限NUMBER(1)CREATE_ORGCREATE_ORG創(chuàng)立機(jī)構(gòu)CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間DATET_TASK_DEF(任務(wù)定義)NameCodeCommentDataTypePFMIDID
CHAR(32)XXTASK_NAMETASK_NAME名稱VARCHAR2(100)TASK_DESCTASK_DESC描述CLOBORG_IDORG_ID所屬機(jī)構(gòu)CHAR(32)CREATE_USERCREATE_USER創(chuàng)立人CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間DATETASK_STATETASK_STATE1啟用0停用NUMBER(1)TRANS_SCRTRANS_SCR轉(zhuǎn)換腳本CLOBSTATESTATE刪除標(biāo)記位NUMBER(1)STATE_DATESTATE_DATE創(chuàng)立/修改時(shí)間DATEINST_IDINST_ID執(zhí)行此任務(wù)的運(yùn)行時(shí)平臺(tái)實(shí)例CHAR(32)T_ENDPOINT(端點(diǎn)配置)NameCodeCommentDataTypePFMIDID
CHAR(32)XXEP_TYPEEP_TYPE端點(diǎn)類型.0源端點(diǎn)1目標(biāo)端點(diǎn)NUMBER(1)TASK_IDTASK_ID所屬任務(wù)CHAR(32)EP_NAMEEP_NAME端點(diǎn)名稱VARCHAR2(100)NODE_IDNODE_ID所屬節(jié)點(diǎn)CHAR(32)MAP_FILEMAP_FILE映射規(guī)則文件CLOBFMT_IDFMT_ID數(shù)據(jù)格式NUMBER(8)TRANS_IDTRANS_ID傳輸方式NUMBER(8)DB_TYPE_IDDB_TYPE_ID數(shù)據(jù)庫類型NUMBER(8)JDBC_URLJDBC_URLJDBC連接串VARCHAR2(100)JDBC_USERJDBC_USERJDBC用戶名VARCHAR2(100)JDBC_PSWDJDBC_PSWDJDBC密碼SHA的HEX散列值CHAR(32)WS_USERWS_USERWS用戶名VARCHAR2(100)WS_PWSDWS_PWSDWS密碼SHA的HEX散列值CHAR(32)S_CDC_IDS_CDC_ID增量識(shí)別機(jī)制NUMBER(8)S_TSS_TS時(shí)間戳字段VARCHAR2(20)S_TS_DBS_TS_DB時(shí)間戳子段是否使用數(shù)據(jù)庫字段.0否1是NUMBER(1)S_TIME_LAGS_TIME_LAG源端點(diǎn)與本系統(tǒng)的保險(xiǎn)時(shí)差,單位分鐘NUMBER(8)D_DB_OPD_DB_OP目標(biāo)端點(diǎn)數(shù)據(jù)庫操作.位運(yùn)算.增改刪都支持為111,即十進(jìn)制7NUMBER(1)D_DB_CONFLICTD_DB_CONFLICT目標(biāo)端點(diǎn)數(shù)據(jù)庫操作時(shí),主鍵沖突的處理.0合并1丟棄源2丟棄目標(biāo)3改變主鍵插入NUMBER(1)D_WS_URLD_WS_URL
VARCHAR2(100)D_CONSIS_MAPD_CONSIS_MAP(目標(biāo)端點(diǎn))是否使用和源端點(diǎn)一致的映射規(guī)則NUMBER(1)T_TASK_CTRL(任務(wù)運(yùn)行控制)NameCodeCommentDataTypePFMIDID
CHAR(32)XXTASK_IDTASK_ID關(guān)聯(lián)的任務(wù)CHAR(32)RUN_PERIODRUN_PERIOD任務(wù)能夠運(yùn)行的時(shí)間段,自動(dòng)cron判斷VARCHAR2(100)POLL_INTERVALPOLL_INTERVAL輪詢間隔,自動(dòng)cron判斷VARCHAR2(100)DAILY_QUOTADAILY_QUOTA日配額控制的數(shù)據(jù)條數(shù)NUMBER(8)BATCH_SIZEBATCH_SIZE批量條數(shù)NUMBER(8)DEDICATED_VMDEDICATED_VM是否使用專用虛擬機(jī)運(yùn)行任務(wù)NUMBER(1)VM_ARGSVM_ARGS虛擬機(jī)啟動(dòng)參數(shù)VARCHAR2(100)LAST_SCHELAST_SCHE上次調(diào)度時(shí)間DATELAST_RUNLAST_RUN上次交換數(shù)據(jù)時(shí)間DATELAST_TSLAST_TS上次交換的截止時(shí)間戳(源端點(diǎn)基于時(shí)間戳識(shí)別時(shí))本系統(tǒng)數(shù)據(jù)庫時(shí)間DATET_DICT_TRANS(傳輸方式字典)NameCodeCommentDataTypePFMIDID
NUMBER(8)XXCODECODE傳輸方式代碼NUMBER(2)NAMENAME傳輸方式名稱VARCHAR2(100)STATESTATE刪除標(biāo)記位NUMBER(1)T_DICT_CDC(增量識(shí)別機(jī)制字典)NameCodeCommentDateTypePFMIDID
NUMBER(8)XXCODECODE增量識(shí)別機(jī)制代碼NUMBER(2)NAMENAME增量識(shí)別機(jī)制名稱VARCHAR2(100)STATESTATE刪除標(biāo)記位NUMBER(1)T_DATA_QUEUE(待傳數(shù)據(jù)隊(duì)列)NameCodeCommentDataTypePFMIDID
CHAR(32)XXTASK_IDTASK_ID所屬的任務(wù)CHAR(32)D_EP_IDD_EP_ID目標(biāo)端點(diǎn)CHAR(32)CREATE_DATECREATE_DATE數(shù)據(jù)創(chuàng)立時(shí)間DATEPATHPATH數(shù)據(jù)存放位置(數(shù)據(jù)必須被串行化到文件系統(tǒng))VARCHAR2(100)LAST_TRANS_DATELAST_TRANS_DATE最后嘗試傳輸?shù)臅r(shí)間DATEFAILED_TIMESFAILED_TIMES已經(jīng)失敗次數(shù)NUMBER(8)T_TRANS_LOG(數(shù)據(jù)交換日志)NameCodeCommentDataTypePFMIDID
CHAR(32)XXTASK_IDTASK_ID產(chǎn)生數(shù)據(jù)交換的任務(wù)CHAR(32)S_EP_IDS_EP_ID數(shù)據(jù)來源端點(diǎn)CHAR(32)D_EP_IDD_EP_ID數(shù)據(jù)目標(biāo)端點(diǎn)CHAR(32)DATA_COUNTDATA_COUNT交換的數(shù)據(jù)條數(shù)NUMBER(8)DATA_KBDATA_KB交換的數(shù)據(jù)量NUMBER(8)START_DATESTART_DATE源端點(diǎn)發(fā)起數(shù)據(jù)交換的時(shí)間(以本系統(tǒng)獲得數(shù)據(jù)的時(shí)刻計(jì))DATEEND_DATEEND_DATE目標(biāo)端點(diǎn)得到數(shù)據(jù)的時(shí)間(以本系統(tǒng)將數(shù)據(jù)成功發(fā)送給目標(biāo)端點(diǎn)計(jì))DATET_SYS_RT_LOG(運(yùn)行時(shí)日志)NameCodeCommentDataTypePFMIDID
CHAR(32)XXSEVERITYSEVERITY嚴(yán)重度:0一般1警告2錯(cuò)誤NUMBER(1)OCCUROCCUR事件發(fā)生階段:0平臺(tái)啟動(dòng)1任務(wù)啟動(dòng)2任務(wù)停止3任務(wù)運(yùn)行NUMBER(1)EVENT_TYPEEVENT_TYPE事件類型:0數(shù)據(jù)交換成功1數(shù)據(jù)交換失敗NUMBER(8)MESSAGEMESSAGE消息VARCHAR2(200)THREAD_NAMETHREAD_NAME線程名稱VARCHAR2(50)ERR_STACKERR_STACK錯(cuò)誤堆棧CLOBSOURCESOURCE事件源(發(fā)生事件的對(duì)象)(對(duì)于OCCUR:1、2、3,存放TASK_ID)CHAR(32)EVENT_TIMEEVENT_TIME時(shí)間發(fā)生時(shí)間DATET_DICT_FMT(數(shù)據(jù)格式字典)NameCodeCommentDataTypePFMIDID
NUMBER(8)XXCODECODE數(shù)據(jù)格式代碼NUMBER(2)NAMENAME數(shù)據(jù)格式名稱VARCHAR2(100)STATESTATE刪除標(biāo)記位NUMBER(1)T_NODE_ORG(交換節(jié)點(diǎn)表)NameCodeCommentDataTypePFMIDID節(jié)點(diǎn)IDCHAR(32)XNODE_NAMENODE_NAME節(jié)點(diǎn)名稱VARCHAR2(100)BELONG_ORGBELONG_ORG機(jī)構(gòu)ORGCHAR(32)CREATE_USER_IDCREATE_USER_ID創(chuàng)立人員IDCHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間,精確到日DATESTATE_DATESTATE_DATE修改時(shí)間,精確到日DATENODE_STATENODE_STATE節(jié)點(diǎn)狀態(tài)1-有效0-無效NUMBER(1)STATESTATE刪除標(biāo)記位1-有效0-無效NUMBER(1)T_SYS_LOGING_LOG(登錄日志)NameCodeCommentDataTypePFMIDID日志IDCHAR(32)XPERSON_IDPERSON_ID登錄人員IDCHAR(32)PERSON_NAMEPERSON_NAME登錄人員VARCHAR2(20)LOGING_TIMELOGING_TIME登錄時(shí)間DATEEXIT_TIMEEXIT_TIME退出時(shí)間DATELOGING_IPLOGING_IP登錄IPVARCHAR2(100)LOGING_MACLOGING_MAC客戶機(jī)MAC地址VARCHAR2(100)CREATE_ORGCREATE_ORG創(chuàng)立機(jī)構(gòu)CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間,精確到秒DATESTATESTATE是否歸檔1-已歸檔0-未歸檔NUMBER(1)T_SYS_LOGING_LOG_BACKUP(登錄日志備份)NameCodeCommentDataTypePFMIDID日志IDCHAR(32)XPERSON_IDPERSON_ID登錄人員IDCHAR(32)PERSON_NAMEPERSON_NAME登錄人員VARCHAR2(20)LOGING_TIMELOGING_TIME登錄時(shí)間DATEEXIT_TIMEEXIT_TIME退出時(shí)間DATELOGING_IPLOGING_IP登錄IPVARCHAR2(100)LOGING_MACLOGING_MAC客戶機(jī)MAC地址VARCHAR2(100)CREATE_ORGCREATE_ORG創(chuàng)立機(jī)構(gòu)CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間,精確到秒DATEBACKUP_DATEBACKUP_DATE歸檔時(shí)間,精確到秒DATET_SYS_USE_LOG(系統(tǒng)日志)NameCodeCommentDataTypePFMIDID日志IDCHAR(32)XPERSON_IDPERSON_ID操作人員IDCHAR(32)PERSON_NAMEPERSON_NAME操作人員VARCHAR2(20)USE_IPUSE_IPIPVARCHAR2(100)USE_MACUSE_MAC客戶機(jī)MAC地址VARCHAR2(100)MENU_TITLEMENU_TITLE操作模塊標(biāo)題VARCHAR2(100)USE_DESCREBEUSE_DESCREBE操作模塊描述VARCHAR2(1000)CREATE_DATECREATE_DATE操作時(shí)間,精確到秒DATECREATE_ORGCREATE_ORG創(chuàng)立機(jī)構(gòu)CHAR(32)STATESTATE是否歸檔1-已歸檔0-未歸檔NUMBER(1)T_SYS_USE_LOG_BACKUP(系統(tǒng)日志備份)NameCodeCommentDataTypePFMIDID日志IDCHAR(32)XPERSON_IDPERSON_ID操作人員IDCHAR(32)PERSON_NAMEPERSON_NAME操作人員VARCHAR2(20)USE_IPUSE_IPIPVARCHAR2(100)USE_MACUSE_MAC客戶機(jī)MAC地址VARCHAR2(100)MENU_TITLEMENU_TITLE操作模塊標(biāo)題VARCHAR2(100)USE_DESCREBEUSE_DESCREBE操作模塊描述VARCHAR2(1000)CREATE_DATECREATE_DATE操作時(shí)間,精確到秒DATECREATE_ORGCREATE_ORG創(chuàng)立機(jī)構(gòu)CHAR(32)BACKUP_DATEBACKUP_DATE歸檔時(shí)間,精確到秒DATET_DICT_MAIN(字典項(xiàng)主表)NameCodeCommentDataTypePFMDICT_IDDICT_ID字典項(xiàng)IDNUMBER(8)XDICT_NAMEDICT_NAME字典項(xiàng)VARCHAR2(20)DICT_DESCRIPTDICT_DESCRIPT字典項(xiàng)描述VARCHAR2(1000)PARENT_DICT_IDPARENT_DICT_ID上級(jí)字典CHAR(32)ITEMITEM所屬項(xiàng)目VARCHAR2(20)DICT_NODICT_NO字典編號(hào)VARCHAR2(20)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間,精確到日DATECREATE_ORGCREATE_ORG創(chuàng)立機(jī)構(gòu)CHAR(32)STATESTATE有效性1-有效0-無效NUMBER(1)T_DICT_MAIN_VALUE(字典值表)NameCodeCommentDataTypePFMDICT_VALUE_IDDICT_VALUE_ID字典值IDNUMBER(8)XDICT_IDDICT_ID字典項(xiàng)IDNUMBER(8)XDICT_VALUEDICT_VALUE字典值VARCHAR2(100)ORDORD順序號(hào)NUMBER(4)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間,精確到日DATESTATESTATE有效性1-有效0-無效NUMBER(1)T_RT_INST(實(shí)例管理表)NameCodeCommentDataTypePFMIDID標(biāo)識(shí)符CHAR(32)XNAMENAME實(shí)例名稱VARCHAR2(100)VM_ARGSVM_ARGS虛擬機(jī)啟動(dòng)參數(shù)VARCHAR2(100)HTTP_PORTHTTP_PORTHTTP偵聽端口NUMBER(5)HTTPS_PORTHTTPS_PORTHTTPS偵聽端口NUMBER(5)IPIP所在主機(jī)的IP地址VARCHAR2(1000)STATESTATE狀態(tài),1為顯示,0為刪除標(biāo)記位CHAR(1)CREATE_USERCREATE_USER創(chuàng)立人CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時(shí)間DATEUPDATE_DATEUPDATE_DATE更新時(shí)間DATE系統(tǒng)菜單系統(tǒng)管理用戶及權(quán)限管理機(jī)構(gòu)管理交換管理登錄日志系統(tǒng)日志任務(wù)管理任務(wù)定義任務(wù)控制錯(cuò)誤日志實(shí)例管理用戶及權(quán)限管理功能說明管理維護(hù)系統(tǒng)中用戶的基本信息,包括:用戶名、密碼、電子郵箱、聯(lián)系電話、所屬部門、狀態(tài)(有效、無效)。頁面設(shè)計(jì)新增/編輯頁面用戶信息T_USER用戶名STAFF_CODE密碼PASSWORD姓名USER_NAME職務(wù)POSITION電子郵箱EMAIL聯(lián)系電話LINK_TEL所屬部門BELONG_ORG_ID數(shù)據(jù)權(quán)限過濾,省級(jí)權(quán)限展示全省的機(jī)構(gòu),市級(jí)權(quán)限展示登錄用戶所在市政府及其下級(jí)機(jī)構(gòu)狀態(tài)有效VSTATE提交關(guān)閉列表頁面查詢條件中所屬部門進(jìn)行數(shù)據(jù)權(quán)限過濾,省級(jí)權(quán)限展示全省的機(jī)構(gòu)、市級(jí)權(quán)限展示當(dāng)前登錄用戶所在機(jī)構(gòu)及其下級(jí)機(jī)構(gòu)。當(dāng)查詢條件全部為空時(shí),列表查詢數(shù)據(jù)根據(jù)數(shù)據(jù)權(quán)限進(jìn)行過濾,省級(jí)權(quán)限查詢?nèi)繑?shù)據(jù)、市級(jí)權(quán)限查詢登錄用戶所在機(jī)構(gòu)及其下級(jí)機(jī)構(gòu)數(shù)據(jù),示意SQL:省級(jí)權(quán)限數(shù)據(jù)查詢范圍省級(jí)權(quán)限查詢?nèi)〉臄?shù)據(jù),列表中直接查詢?nèi)碛行?shù)據(jù)SELECT*FROMT_USER市級(jí)權(quán)限數(shù)據(jù)查詢范圍市級(jí)權(quán)限查詢當(dāng)前登錄用戶所在市政府及其下級(jí)機(jī)構(gòu)的數(shù)據(jù)SELECT*FROMT_USERRWHERER.CREATE_ORGIN(SELECTORG_IDFROMT_ORGAWHEREA.STATE=1STARTWITHA.ORG_ID='&當(dāng)前登錄登錄所在機(jī)構(gòu)ORG_ID'CONNECTBYPRIORA.ORG_ID=A.PARENT_ORG_ID)修改密碼修改密碼用戶名只讀、自動(dòng)帶入STAFF_CODE姓名只讀、自動(dòng)帶入U(xiǎn)SER_NAME新密碼必輸項(xiàng)PASSWORD新密碼確認(rèn)必輸項(xiàng)PASSWORD確認(rèn)返回相關(guān)規(guī)則新增用戶時(shí)狀態(tài)默認(rèn)為有效,不可修改。用戶修改時(shí)頁面中數(shù)據(jù)項(xiàng)都放開可編輯。點(diǎn)擊“修改密碼”直接彈出新密碼錄入頁面,由用戶錄入新的密碼。用戶名:必輸項(xiàng),需進(jìn)行唯一性校驗(yàn)職務(wù):帶入后可修改登錄密碼與確認(rèn)密碼必須一致,最小4位最大12位,并經(jīng)過SHA加密如列表中選中了多條數(shù)據(jù),則將修改按鈕灰化,不可點(diǎn)擊用戶刪除時(shí)可進(jìn)行多選,刪除時(shí)詢問:是否確定將選中用戶刪除?權(quán)限樹狀列表為數(shù)據(jù)交換系統(tǒng)中所有模塊的清單。選擇用戶點(diǎn)擊用戶權(quán)限中的新增按鈕彈出權(quán)限的樹狀列表。數(shù)據(jù)權(quán)限分為省級(jí)權(quán)限、市級(jí)權(quán)限,具備省級(jí)權(quán)限可查看全省的數(shù)據(jù),具備市級(jí)權(quán)限可查看登錄用戶所在市政府及下屬政府、機(jī)構(gòu)的數(shù)據(jù)。數(shù)據(jù)權(quán)限中省級(jí)權(quán)限、市級(jí)權(quán)限不可同時(shí)選擇。相關(guān)SQL查詢用戶信息SELECTU.STAFF_CODE,U.USER_NAME,U.POSITION,O.ORG_NAME,DECODE(STATE,1,'有效',0,'無效')STATEFROMT_USERU,T_ORGOWHEREU.ORG_ID=O.ORG_IDORDERBYO.ORD查詢用戶權(quán)限SELECTM.MENU_TITLEFROMT_MENUM,T_USER_MENUUMWHEREM.MENU_ID=UM.MENU_IDANDUM.USER_ID='選擇的USER_ID'新增用戶:INSERTINTOT_USER修改用戶:UPDATET_USER刪除用戶菜單DELETEFROMT_USER_MENUWHEREUSER_IDIN('選擇的USER_ID')刪除用戶UPDATET_USERSETSTATE='0'WHEREUSER_IDIN('選擇的USER_ID')--菜單查詢SELECTMENU_TITLEFROMT_MENUWHERESTATE='--插入菜單INSERTT_USER_MENU用戶權(quán)限刪除可進(jìn)行多選,刪除時(shí)詢問:是否確定將選中用戶權(quán)限刪除?DELETEFROMT_USER_MENUWHEREIDIN('選擇的ID')機(jī)構(gòu)管理功能說明管理維護(hù)數(shù)據(jù)交換所涉及的各機(jī)構(gòu)的信息,包括:機(jī)構(gòu)名稱、規(guī)范化簡(jiǎn)稱、機(jī)構(gòu)代碼、所屬行政區(qū)劃、部門間隸屬關(guān)系。頁面設(shè)計(jì)頁面設(shè)計(jì)以軟件為準(zhǔn),要求頁面數(shù)據(jù)項(xiàng)一致、功能實(shí)現(xiàn),頁面布局不做要求,新增/修改頁面機(jī)構(gòu)維護(hù)機(jī)構(gòu)代碼輸入框ORG_CODE機(jī)構(gòu)名稱輸入框ORG_NAME機(jī)構(gòu)簡(jiǎn)稱輸入框SIMPLE_NAME機(jī)構(gòu)類型下拉框ORG_TYPE上級(jí)機(jī)構(gòu)下拉框PARENT_ORG_ID上級(jí)垂管機(jī)構(gòu)下拉框VER_ORG_ID狀態(tài)下拉框STATE順序號(hào)輸入框ORD確定返回列表頁面相關(guān)規(guī)則列表展示所有的機(jī)構(gòu)數(shù)據(jù),并支持多選機(jī)構(gòu)名稱為模糊查詢機(jī)構(gòu)類型為下拉選擇【空-全部、00-省政府、01-省級(jí)部門、02-市政府、03-市級(jí)部門、04-區(qū)縣政府、05-區(qū)縣部門、】狀態(tài)為下拉選擇【空-全部、1-有效、0-無效】相關(guān)SQL查詢機(jī)構(gòu)信息SELECTO.ORG_ID,O.ORG_NAME,O.SIMPLE_NAME,DECODE(O.ORG_TYPE,'00','省政府','01','省級(jí)部門','02','市政府','03','市級(jí)部門','04','區(qū)縣政府','05','區(qū)縣部門',')ORG_TYPE(SELECTORG_NAMEFROMT_ORGWHEREORG_ID=O.PARNET_ORG_ID)PARENT_ORG_NAME,DECODE(O.STATE,'1','有效','0','無效')STATEFROMT_ORGOORDERO.ORD新增:INSERTINTOT_ORG修改:UPDATET_ORG機(jī)構(gòu)刪除可進(jìn)行多選,刪除時(shí)詢問:是否將選中機(jī)構(gòu)及其下級(jí)機(jī)構(gòu)一并刪除?--查詢要?jiǎng)h除的所有ORG_IDSELECTORD_IDFROMT_ORGSTARTWITHORG_IDIN('選中的ORG_ID')CONNECTBYPRIORORG_ID=PARENT_ORG_ID--刪除用戶UPDATET_USERSETSTATE='0'WHEREORG_IDIN('查詢的ORG_ID')--刪除機(jī)構(gòu)UPDATET_ORGSETSTATE='0'WHEREORG_IDIN('查詢的ORG_ID')機(jī)構(gòu)列表展示時(shí)根據(jù)登錄用戶進(jìn)行數(shù)據(jù)過濾,省級(jí)權(quán)限查詢?nèi)〉臄?shù)據(jù),市級(jí)權(quán)限查詢當(dāng)前登錄用戶所在機(jī)構(gòu)及其下級(jí)機(jī)構(gòu)的數(shù)據(jù)。交換管理功能說明該模塊主要包含:交換節(jié)點(diǎn)管理,負(fù)責(zé)維護(hù)數(shù)據(jù)交換系統(tǒng)中各交換節(jié)點(diǎn)信息。用例圖用例分析概述用例名稱:交換節(jié)點(diǎn)維護(hù)參與者:系統(tǒng)管理員用例概述:系統(tǒng)管理員針對(duì)節(jié)點(diǎn)與機(jī)構(gòu)綁定進(jìn)行管理、修改操作,該操作只對(duì)軟件的統(tǒng)計(jì)分析有影響,對(duì)軟件整體運(yùn)行無影響。事件流前置條件:無后置條件:無基本事件流:系統(tǒng)管理員進(jìn)入交換節(jié)點(diǎn)管理頁面后,點(diǎn)擊新增和修改進(jìn)行交換節(jié)點(diǎn)內(nèi)容的操作,點(diǎn)擊刪除則節(jié)點(diǎn)不在展示在列表中。備選(擴(kuò)展)事件流:無異常事件流:系統(tǒng)維護(hù)中保存失敗或刪除失敗后,系統(tǒng)依然顯示信息錄入界面或列表頁面,并提示失敗原因頁面設(shè)計(jì)交換節(jié)點(diǎn)管理維護(hù)管理數(shù)據(jù)交換系統(tǒng)中各交換節(jié)點(diǎn)對(duì)應(yīng)的機(jī)構(gòu)。提供新增、刪除、修改功能。查詢條件“機(jī)構(gòu)名稱”進(jìn)行數(shù)據(jù)權(quán)限過濾,省級(jí)權(quán)限查全省的數(shù)據(jù),市級(jí)權(quán)限根據(jù)登錄登錄用戶查其本級(jí)及其下級(jí)機(jī)構(gòu)的數(shù)據(jù)。新增頁面新增交換節(jié)點(diǎn)節(jié)點(diǎn)名稱TXT框NODE_NAME機(jī)構(gòu)名稱∨ORG_ID狀態(tài)有效∨NODE_STATE提交關(guān)閉相關(guān)規(guī)則根據(jù)登錄人員所在機(jī)構(gòu)展示該機(jī)構(gòu)下的所有交換節(jié)點(diǎn),即本機(jī)構(gòu)下的所有管理員均可對(duì)該機(jī)構(gòu)下的所有交換節(jié)點(diǎn)進(jìn)行維護(hù)。新增頁面進(jìn)入時(shí)狀態(tài)默認(rèn)有效且只讀不可修改,各數(shù)據(jù)項(xiàng)必輸。修改頁面進(jìn)入時(shí)所有數(shù)據(jù)項(xiàng)均放開可修改,各數(shù)據(jù)項(xiàng)不可為空。刪除后,將不在列表中展示。相關(guān)SQL查詢規(guī)則:根據(jù)登錄用戶所在機(jī)構(gòu)展示該機(jī)構(gòu)下的所有節(jié)點(diǎn)Selectnode_name,(selectorg_namefromt_orga,t_node_orgbwhere_id=_id),node_statefromt_node_orgwherestate=1andorg_id=‘登錄用戶ORG’;插入規(guī)則:insertt_node_org插入時(shí)默認(rèn)node_state=1,state=1修改規(guī)則:NODE_NAME,ORG_ID,NODE_STATE狀態(tài)可修改。刪除規(guī)則:updatet_node_orgsetstate=0;日志管理功能說明記錄數(shù)據(jù)交換系統(tǒng)中各功能模塊所產(chǎn)生的日志,主要內(nèi)容包括:登錄日志、系統(tǒng)日志。用例圖用例分析概述用例名稱:維護(hù)系統(tǒng)日志參與者:系統(tǒng)管理員用例概述:系統(tǒng)管理員進(jìn)行系統(tǒng)日志維護(hù)等操作。事件流前置條件:無后置條件:無基本事件流:系統(tǒng)管理員進(jìn)入數(shù)據(jù)日志管理頁面后,能夠進(jìn)行日志查詢、歸檔操作;備選(擴(kuò)展)事件流:無異常事件流:歸檔成功返回成功信息,若失敗則仍顯示查詢頁面,并提示失敗原因頁面設(shè)計(jì)登錄日志在菜單項(xiàng)中選擇【登錄日志】,進(jìn)入頁面系統(tǒng)日志在菜單項(xiàng)中選擇【系統(tǒng)日志】,進(jìn)入頁面查詢條件“機(jī)構(gòu)名稱”數(shù)據(jù)需進(jìn)行數(shù)據(jù)權(quán)限過濾雙擊某條數(shù)據(jù)可查看操作詳細(xì)頁面操作描述USE_DESCREBE相關(guān)規(guī)則登錄日志:記錄用戶登錄該系統(tǒng)的歷史信息。機(jī)構(gòu)名稱:若為省局用戶則出本級(jí)及下級(jí)機(jī)構(gòu)名稱,默認(rèn)省局,若為市級(jí)用戶則默認(rèn)為本級(jí),展示本級(jí)及下級(jí)機(jī)構(gòu)名稱登錄人員:模糊查詢,根據(jù)機(jī)構(gòu)名稱查詢?cè)摍C(jī)構(gòu)下的登錄人員。日志歸檔:對(duì)日志進(jìn)行歸檔操作系統(tǒng)日志:記錄用戶對(duì)系統(tǒng)中增、刪、改等一系列操作信息。機(jī)構(gòu)名稱:同登錄日志操作人員:同登錄日志操作模塊時(shí)間:即觸發(fā)ButtonClick事件后進(jìn)行記錄,記錄的操作含增、刪、改,備份等事務(wù)操作,不包含查詢。雙擊某條數(shù)據(jù)能夠查看操作描述頁面相關(guān)SQl首次進(jìn)入頁面時(shí)查詢規(guī)則:展示未歸檔日志,省局用戶展示本級(jí)及下級(jí)局;市局用戶只展示本級(jí)。Selectcreate_org,person_name,loging_time,exit_time,loging_ip,loging_macfromT_SYS_LOGING_LOGwherestate=0andcreate_org=‘根據(jù)登錄用戶判斷’登錄日志數(shù)據(jù)插入規(guī)則:用戶首次登錄時(shí)執(zhí)行insert操作,退出時(shí)間為空;當(dāng)用戶退出時(shí),根據(jù)PERSON_ID查找CREATE_DATE最大那條數(shù)據(jù),執(zhí)行update操作,其它字段不變,只修改退出時(shí)間。歸檔規(guī)則:Insertt_sys_loging_log_backup(t_sys_use_log_backup)取t_sys_loging_log(t_sys_use_log)中state=0且create_org=’本機(jī)構(gòu)’的數(shù)據(jù)Updatet_sys_loging_log(t_sys_use_log)setstate=1(已歸檔)輸入查詢條件后:查詢t_sys_loging_log(t_sys_use_log)中statein(0,1)的數(shù)據(jù),且需要根據(jù)登錄人員所在機(jī)構(gòu)過濾字典管理(暫緩)功能說明對(duì)系統(tǒng)內(nèi)部一些取值基本能固定下來的數(shù)據(jù)選取項(xiàng),經(jīng)過數(shù)據(jù)字典進(jìn)行維護(hù)。用例圖用例分析概述用例名稱:維護(hù)數(shù)據(jù)字典參與者:系統(tǒng)管理員用例概述:系統(tǒng)管理員進(jìn)行系統(tǒng)中數(shù)據(jù)字典的維護(hù)等操作,一般對(duì)字典主表的操作建議不給系統(tǒng)管理員操作權(quán)限。事件流前置條件:無后置條件:無基本事件流:系統(tǒng)管理員進(jìn)入數(shù)據(jù)字典管理頁面后,點(diǎn)擊新增字典和修改字典進(jìn)行字典的操作,點(diǎn)擊新增字典值、修改字典值和刪除字典值進(jìn)行字典值操作;備選(擴(kuò)展)事件流:無異常事件流:系統(tǒng)維護(hù)中保存失敗或刪除失敗后,系統(tǒng)依然顯示信息錄入界面或列表頁面,并提示失敗原因頁面設(shè)計(jì)列表顯示頁進(jìn)入該模塊后顯示如下,左側(cè)為字典項(xiàng)列表,右側(cè)為對(duì)應(yīng)左側(cè)字典項(xiàng)的字典值的列表信息;字典管理字典項(xiàng).使用機(jī)構(gòu).查詢重置新增字典修改字典刪除字典新增字典值修改字典值刪除字典值字
項(xiàng)上級(jí)字典使用項(xiàng)目使用機(jī)構(gòu)字典項(xiàng)值排序口DICT_NAMEPARE
T_DICT_IDITEMCREATE_ORG口DICT_VALUE1口口2口口3口。。。首頁上一頁下一頁末頁第XX頁GODIC
_VA
UESO
D新增修改字典頁面字典編號(hào)DICT_NO字典項(xiàng)DICT_NAME字典項(xiàng)描述DICT_DESCRIPT上級(jí)字典PARENT_DICT_ID下拉選使用項(xiàng)目ITEM下拉選不能為空默認(rèn)為公共使用機(jī)構(gòu)CREATE_ORG保存取消新增修改字典值頁面字典項(xiàng)默認(rèn)左邊選中的字典項(xiàng)的值DICT字典項(xiàng)值排序保存保存繼續(xù)取消相關(guān)規(guī)則除使用機(jī)構(gòu)外,頁面各數(shù)據(jù)項(xiàng)不能為空;該功能只提供給管理員進(jìn)行維護(hù),一般情況用戶只能增刪改字典項(xiàng)的值,字典主表由開發(fā)人員開發(fā)時(shí)維護(hù)或初始化化時(shí)執(zhí)行腳本生成;字典值維護(hù)頁面,點(diǎn)擊保存按鈕返回列表,點(diǎn)擊保存繼續(xù)按鈕保存數(shù)據(jù)繼續(xù)新增操作。先根據(jù)ITEM來取本項(xiàng)目的字典,沒有則取ITEM為公共的數(shù)據(jù)字典;再根據(jù)當(dāng)前人的機(jī)構(gòu)ID取本機(jī)構(gòu)字典,沒有則BELONG_ORG為空的。相關(guān)SQL查詢規(guī)則:selecta.dict_name,a.parent_dict_id,a.item,a.create_org,b.dict_value,b.ordfromt_dict_maina,t_dict_main_valuewherea.dict_id=b.dict_idanda.create_org=‘用戶所在機(jī)構(gòu)’;插入規(guī)則:insertt_dict_main/insertt_dict_main_valewheredict_id=‘所選dict_id’刪除規(guī)則:deletet_dict_main/insertt_dict_main_vale任務(wù)管理模塊概述任務(wù)管理模塊負(fù)責(zé)數(shù)據(jù)交換任務(wù)的定義、維護(hù)和運(yùn)行控制。為方便擴(kuò)展,對(duì)當(dāng)前數(shù)據(jù)交換需求中的角色進(jìn)行抽象化,定義以下概念:端點(diǎn):直接連接到本系統(tǒng),進(jìn)行數(shù)據(jù)交換的實(shí)體。該實(shí)體能夠是業(yè)務(wù)系統(tǒng)、數(shù)據(jù)庫,甚至是操作系統(tǒng)目錄。端點(diǎn)之間以本系統(tǒng)作為中介,進(jìn)行通信。本節(jié)采用數(shù)據(jù)格式+通信方式的形式,作為端點(diǎn)類型的非正式表示源端點(diǎn):在數(shù)據(jù)交換任務(wù)中,作為數(shù)據(jù)來源的端點(diǎn)。主動(dòng)源端點(diǎn)是指主動(dòng)觸發(fā)任務(wù)運(yùn)行的源端點(diǎn)(如XML+WebService);被動(dòng)源端點(diǎn)是指僅僅產(chǎn)生待交換數(shù)據(jù)而不觸發(fā)任務(wù)運(yùn)行,由本系統(tǒng)輪詢觸發(fā)任務(wù)運(yùn)行的源端點(diǎn)增量識(shí)別機(jī)制:指從源端點(diǎn)的數(shù)據(jù)存儲(chǔ)中確認(rèn)新增/變化數(shù)據(jù)的方式。包括基于觸發(fā)器、基于時(shí)間戳、基于Where子句、全表掃描等目標(biāo)端點(diǎn):在數(shù)據(jù)交換任務(wù)中,接收數(shù)據(jù)的端點(diǎn)數(shù)據(jù)格式:端點(diǎn)對(duì)數(shù)據(jù)的組織形式,主要分為RDBMS(表或者視圖)、二進(jìn)制格式和文本格式三類。其中二進(jìn)制格式包括Excel電子表格;文本格式包括XML、逗號(hào)分隔符等通信方式:端點(diǎn)連接到本系統(tǒng)的通信協(xié)議或者技術(shù)手段。包括JDBC、HTTP、WebService、JMS、MOM(主要指MQ)、FTP等方式內(nèi)部數(shù)據(jù)格式:本系統(tǒng)內(nèi)部對(duì)數(shù)據(jù)格式的一致性表示。該表示為一樹形結(jié)構(gòu),支持對(duì)端點(diǎn)數(shù)據(jù)格式的自動(dòng)化映射映射規(guī)則:描述端點(diǎn)數(shù)據(jù)格式——內(nèi)部數(shù)據(jù)格式的映射規(guī)則的元數(shù)據(jù),以XML的形式表示對(duì)上述概念的補(bǔ)充說明:端點(diǎn)的數(shù)據(jù)格式、通信方式、增量識(shí)別機(jī)制不能任意組合,依賴于特定的技術(shù)的固有特征。例如RDBMS只能和JDBC組合本次設(shè)計(jì),不涉及上述數(shù)據(jù)格式、通信方式的全部例示。主要實(shí)現(xiàn)對(duì)XML+WebService、RDBMS+JDBC兩種端點(diǎn)的支持;增量識(shí)別機(jī)制支持基于時(shí)間戳的方式任務(wù)定義該模塊屬于人機(jī)交互模塊,負(fù)責(zé)數(shù)據(jù)交換任務(wù)的定義。任務(wù)定義的核心是源端點(diǎn)、目標(biāo)端點(diǎn)的配置。數(shù)據(jù)對(duì)應(yīng)關(guān)系表關(guān)系說明本模塊涉及三張平臺(tái)庫中的表:T_TASK_DEF:任務(wù)基本信息表T_TASK_CTRL:任務(wù)控制信息表T_ENDPOINT:端點(diǎn)信息表(EP_TYPE=0表示源端點(diǎn),EP_TYPE=1表示目標(biāo)端點(diǎn),每個(gè)任務(wù)只有一個(gè)源、一個(gè)目標(biāo)端點(diǎn))T_TASK_DEF.ID=T_TASK_CTRL.TASK_IDT_TASK_DEF.ID=T_ENDPOINT.TASK_ID字段對(duì)照表頁面元素表字段說明任務(wù)名稱T_TASK_DEFTASK_NAME任務(wù)描述T_TASK_DEFTASK_DESC創(chuàng)立人T_TASK_DEFCREATE_USER所屬機(jī)構(gòu)T_TASK_DEFORG_ID創(chuàng)立時(shí)間T_TASK_DEFCREATE_DATE狀態(tài)T_TASK_DEFTASK_STATE創(chuàng)立/修改時(shí)間T_TASK_DEFSTATE_DATE每次對(duì)任務(wù)進(jìn)行變動(dòng),必須修改此字段為SYSDATE執(zhí)行此任務(wù)的運(yùn)行時(shí)平臺(tái)實(shí)例T_TASK_DEFINST_ID運(yùn)行時(shí)段T_TASK_CTRLRUN_PERIOD日配額控制T_TASK_CTRLDAILY_QUOTA輪詢周期T_TASK_CTRLPOLL_INTERVAL獨(dú)立VM運(yùn)行T_TASK_CTRLDEDICATED_VMJVM參數(shù)T_TASK_CTRLVM_ARGS最近調(diào)度時(shí)間T_TASK_CTRLLAST_SCHE最近運(yùn)行時(shí)間T_TASK_CTRLLAST_RUN轉(zhuǎn)換腳本T_TASK_DEFTRANS_SCR端點(diǎn)名稱T_ENDPOINTEP_NAME所屬節(jié)點(diǎn)T_ENDPOINTNODE_ID映射規(guī)則文件T_ENDPOINTMAP_FILE數(shù)據(jù)格式T_ENDPOINTFMT_ID傳輸方式T_ENDPOINTTRANS_ID數(shù)據(jù)庫類型T_ENDPOINTDB_TYPE_ID啟用XA事務(wù)T_ENDPOINTXA_ENABLEDJDBC連接串T_ENDPOINTJDBC_URLJDBC用戶名T_ENDPOINTJDBC_USERJDBC密碼T_ENDPOINTJDBC_PSWD增量識(shí)別機(jī)制T_ENDPOINTS_CDC_ID時(shí)間戳字段T_ENDPOINTS_TIMESTAMP步進(jìn)(秒)T_ENDPOINTS_TIME_STEP注意:數(shù)據(jù)庫單位是毫秒,模型層/Service層執(zhí)行轉(zhuǎn)換條件表示式T_ENDPOINTS_WHERE_CLAUSE回填表示式T_ENDPOINTBACKFILL_CLAUSE執(zhí)行刪除T_ENDPOINTBACKFILL_CLAUSE如果選中,直接填入delete字樣批量條數(shù)T_ENDPOINTS_BATCH_SIZE允許的操作T_ENDPOINTD_DB_OP主鍵沖突處理T_ENDPOINTD_DB_CONFLICT和源端點(diǎn)使用相同的配置T_ENDPOINTD_CONSIS_MAPWS客戶端用戶名T_ENDPOINTWS_USERWS客戶端密碼T_ENDPOINTWS_PWSD向源端點(diǎn)報(bào)告異常T_ENDPOINTS_RPT_ERRWS名字空間T_ENDPOINTD_WS_NSWS服務(wù)端地址T_ENDPOINTHTTP_URLHTTP通道T_ENDPOINTHTTP_CHNL同時(shí)勾選則填寫2保留時(shí)差T_ENDPOINTS_OVERSTEP注意:數(shù)據(jù)庫單位是毫秒,模型層/Service層執(zhí)行轉(zhuǎn)換查詢功能說明查詢已經(jīng)存在的交換任務(wù),展示基本信息,并提供新建、修改、控制任務(wù)的功能入口點(diǎn)。頁面設(shè)計(jì)注意:字段順序、每行展示字段數(shù)、展示方式能夠根據(jù)需要自行調(diào)整。相關(guān)規(guī)則點(diǎn)擊創(chuàng)立任務(wù)按鈕,進(jìn)入詳情錄入模塊。點(diǎn)擊類似任務(wù)創(chuàng)立按鈕,重新載入選擇的模塊,任務(wù)名稱驗(yàn)證其唯一性,文本框的值自動(dòng)帶入,列表的值只能選擇其一不能多選點(diǎn)擊修改按鈕,進(jìn)入任務(wù)修改模塊。進(jìn)入頁面所有顯示狀態(tài)均是STATE=1點(diǎn)擊刪除按鈕,STATE設(shè)置為“0”;創(chuàng)立人展示為單選字典,顯示所屬機(jī)構(gòu)下的人員。所屬機(jī)構(gòu)展示為字典,顯示當(dāng)前用戶有權(quán)看到的機(jī)構(gòu),如果為空,查詢語句根據(jù)用戶所能看見的機(jī)構(gòu)進(jìn)行過濾。相關(guān)SQL查詢sqlselectTRIM(b.id)defId,b.task_name,to_char(b.create_date,'yyyy-mm-dd')create_date,(select_namefromt_orgawhere_id=_id)org_id,(selectuser_namefromt_userdwhered.user_id=b.create_user)create_user,(SELECTto_char(c.last_sche,'yyyy-mm-ddhh24:mi:ss')last_scheFROMt_task_ctrlcWHEREb.id=c.task_id)last_sche,(SELECTto_char(c.last_run,'yyyy-mm-ddhh24:mi:ss')last_runFROMt_task_ctrlcWHEREb.id=c.task_id)last_run,(SELECTc.poll_intervalFROMt_task_ctrlcWHEREb.id=c.task_id)poll_interval,(SELECTC.RUN_PERIODFROMT_TASK_CTRLCWHEREB.ID=C.TASK_ID)RUN_PERIOD,(SELECTC.DEDICATED_VMFROMT_TASK_CTRLCWHEREB.ID=C.TASK_ID)DEDICATED_VM,(SELECTC.DAILY_QUOTAFROMT_TASK_CTRLCWHEREB.ID=C.TASK_ID)DAILY_QUOTA,(SELECTc.idFROMt_task_ctrlcWHEREb.id=c.task_id)id,DECODE(b.task_state,'1','submit.gif','0','disable.gif')task_statefromt_task_defbwhereb.state=1刪除sqlupdatet_task_defaseta.state=0whereid=“所選標(biāo)記id”詳情錄入功能說明該子模塊負(fù)責(zé)數(shù)據(jù)交換任務(wù)的設(shè)計(jì),核心邏輯是源、目標(biāo)端點(diǎn)的配置和組合。頁面設(shè)計(jì)注意:字段順序、每行展示字段數(shù)、展示方式能夠根據(jù)需要自行調(diào)整。在修改交換任務(wù)時(shí),映射規(guī)則文件的表單文本框不顯示任何內(nèi)容。轉(zhuǎn)換腳本字段如下,可放在頁面上單獨(dú)的選項(xiàng)卡內(nèi),腳本內(nèi)容當(dāng)前不做任何驗(yàn)證:(暫未實(shí)現(xiàn),字段在頁面中隱藏)數(shù)據(jù)庫模式源端點(diǎn)使用基于時(shí)間戳的增量識(shí)別器的情況:圖中未畫的字段:保留時(shí)差注釋:cron表示式當(dāng)前沒有實(shí)質(zhì)用途,當(dāng)前先隱藏。源端點(diǎn)使用基于時(shí)間戳增量識(shí)別器的情況:基于過濾條件增量識(shí)別器的頁面如下:報(bào)文模式類似創(chuàng)立頁面相關(guān)規(guī)則注意!源端點(diǎn)和目標(biāo)端點(diǎn)能夠使用不同的模式:數(shù)據(jù)庫或者報(bào)文對(duì)于條件表示式的填寫即填寫where字句,填寫格式為字段=‘值’對(duì)于多個(gè)字段的填寫格式為字段=‘值’and字段=‘值’and………對(duì)于映射規(guī)則文件在修改的時(shí)候如果庫里面有數(shù)據(jù)則能夠不用限制必填。數(shù)據(jù)庫模式數(shù)據(jù)格式選中關(guān)系型數(shù)據(jù)庫時(shí),傳輸方式自動(dòng)變?yōu)镴DBC,并顯示上節(jié)圖中顯示的數(shù)據(jù)庫相關(guān)的數(shù)據(jù)項(xiàng)映射規(guī)則文件由客戶端上傳,點(diǎn)擊上傳后立即存放于應(yīng)用服務(wù)器的臨時(shí)位置,并調(diào)用接口執(zhí)行驗(yàn)證:sparknet.canary.core.mapping.parser.MappingRulesParser.parse如果拋出異常,則提示用戶格式有誤。注意:此parse方法比較消耗資源,實(shí)現(xiàn)時(shí)一個(gè)映射文件只parse一次,解析結(jié)果存放在HTTPSession范圍,以MD5為key,在提交本頁面后,清除之。數(shù)據(jù)庫類型從T_DICT_DB_TYPE拉出字典展示如果選中的數(shù)據(jù)庫類型支持XA,則顯示啟用XA復(fù)選框,默認(rèn)勾選。目標(biāo)數(shù)據(jù)庫支持XA要求T_DICT_DB_TYPE.XA_DS_CLS不為空。如果XA_DS_CLS為空,則不得為啟用狀態(tài)!!JDBC連接串只讀,只能點(diǎn)擊編輯修改。點(diǎn)擊編輯,彈出窗/層中展示T_DICT_DB_TYPE.URL_TEMPLT中定義的EL表示式風(fēng)格的變量占位符,彈出層提交后,自動(dòng)進(jìn)行模板替換,并填入到JDBC連接串。以O(shè)racle10g為例:jdbc:oracle:thin:@${主機(jī)地址}:${TNS偵聽端口}:${服務(wù)名}彈出窗口需要展示主機(jī)地址、TNS偵聽端口、服務(wù)名3字段提交表單時(shí),執(zhí)行數(shù)據(jù)庫連通性驗(yàn)證:CanaryHelper.testDbConnection,如果失敗,則警告用戶,源端點(diǎn)(或者目標(biāo)端點(diǎn))無法聯(lián)通,是否繼續(xù)。增量識(shí)別機(jī)制根據(jù)T_DICT_CDCWHERESTATE=1拉出字典如果選中時(shí)間戳觸發(fā),則展示:時(shí)間戳字段、步進(jìn)(秒)兩個(gè)頁面元素;如果選中過濾條件觸發(fā),則展示:條件表示式、回填表示式、執(zhí)行刪除、批量條數(shù)幾個(gè)頁面元素。時(shí)間戳字段必須在上傳映射規(guī)則文件后才能錄入,時(shí)間戳字段能夠填寫實(shí)體映射(EntityMapping)的實(shí)體屬性名(name),或者對(duì)應(yīng)列名(column),而且必須使用簡(jiǎn)單屬性(SimplePropertyMapping),以上規(guī)則經(jīng)過MappingRulesParser.parse得到的映射規(guī)則模型(MRM)進(jìn)行驗(yàn)證,如果有錯(cuò),則報(bào)告前臺(tái)。驗(yàn)證觸發(fā)時(shí)期為失去焦點(diǎn)onblur步進(jìn)的單位為秒,數(shù)據(jù)庫是毫秒,該轉(zhuǎn)換在MVC-M層或者Service層執(zhí)行轉(zhuǎn)換條件表示式,為where子句片段,調(diào)用sparknet.canary.core.cdc.HqlConverter.convertWhereClauseIfNecessary執(zhí)行驗(yàn)證和轉(zhuǎn)換,轉(zhuǎn)換結(jié)果自動(dòng)替換原值,如果拋出InvalidClauseException則報(bào)告前臺(tái)。驗(yàn)證觸發(fā)時(shí)期為失去焦點(diǎn)onblur?;靥畋硎臼?,為set子句片段,調(diào)用sparknet.canary.core.cdc.HqlConverter.convertSetClauseIfNecessary執(zhí)行驗(yàn)證和轉(zhuǎn)換,轉(zhuǎn)換結(jié)果自動(dòng)替換原值,如果拋出InvalidClauseException則報(bào)告前臺(tái)。驗(yàn)證觸發(fā)時(shí)期為失去焦點(diǎn)onblur。如果勾選“執(zhí)行刪除”,則回填表示式灰化,而且值變?yōu)椤癲elete”字樣允許的操作,默認(rèn)勾選插入、更新如果不允許插入操作,則主鍵沖突處理全部radio灰化改變主鍵插入因?yàn)楫?dāng)前不支持,永遠(yuǎn)灰化如果勾選“和源端點(diǎn)使用相同的配置”,則目標(biāo)端點(diǎn)的映射規(guī)則文件灰化。Service層自動(dòng)把源端點(diǎn)的映射文件賦值給目標(biāo)端點(diǎn)。對(duì)輪詢周期增加提示說明,當(dāng)鼠標(biāo)移至“輪詢周期”時(shí)顯示提示信息,內(nèi)容如下:實(shí)時(shí)性高:1-10實(shí)時(shí)性中:20-50(推薦)實(shí)時(shí)性低:50-1000。對(duì)步進(jìn)增加提示說明,當(dāng)鼠標(biāo)移至“步進(jìn)”時(shí)顯示提示信息,內(nèi)容如下:高度并發(fā):1-10中度并發(fā):20-100(推薦)低度并發(fā):150-300。報(bào)文模式映射規(guī)則文件和上節(jié)規(guī)則一致源端點(diǎn)的Webservice用戶名,必須全局唯一,即SELECTCOUNT(*)FROMT_ENDPOINTWHEREEP_TYPE=0ANDWS_USER=any的結(jié)果<=0WS名字空間默認(rèn)為提交表單時(shí)調(diào)用CanaryHelper.testHTTPConnection驗(yàn)證目標(biāo)WebService的連通性,如果失敗則提示用戶:目標(biāo)端點(diǎn)無法聯(lián)通,是否繼續(xù)任務(wù)控制功能說明該子模塊負(fù)責(zé)任務(wù)的啟用、停用的控制。頁面設(shè)計(jì)相關(guān)規(guī)則點(diǎn)擊“啟用”,有以下兩種情況:原啟動(dòng)的任務(wù)重新啟動(dòng)(重啟);原停用的任務(wù)啟動(dòng)。點(diǎn)擊“停用”,也有以下兩種情況:原停用的任務(wù)保持停用。原啟用的任務(wù)變?yōu)橥S谩?.進(jìn)入頁面所有顯示狀態(tài)均是STATE=相關(guān)SQL查詢sqlselectTRIM(b.id)defId,b.task_name,to_char(b.create_date,'yyyy-mm-dd')create_date,(select_namefromt_orgawhere_id=_id)org_id,(selectuser_namefromt_userdwhered.user_id=b.create_user)create_user,(SELECTto_char(c.last_sche,'yyyy-mm-ddhh24:mi:ss')last_scheFROMt_task_ctrlcWHEREb.id=c.task_id)last_sche,(SELECTto_char(c.last_run,'yyyy-mm-ddhh24:mi:ss')last_runFROMt_task_ctrlcWHEREb.id=c.task_id)last_run,(SELECTc.poll_intervalFROMt_task_ctrlcWHEREb.id=c.task_id)poll_interval,(SELECTC.RUN_PERIODFROMT_TASK_CTRLCWHEREB.ID=C.TASK_ID)RUN_PERIOD,(SELECTC.DEDICATED_VMFROMT_TASK_CTRLCWHEREB.ID=C.TASK_ID)DEDICATED_VM,(SELECTC.DAILY_QUOTAFROMT_TASK_CTRLCWHEREB.ID=C.TASK_ID)DAILY_QUOTA,(SELECTc.idFROMt_task_ctrlcWHEREb.id=c.task_id)id,DECODE(b.task_state,'1','submit.gif','0','disable.gif')task_statefromt_task_defbwhereb.state=1啟用sqlupdatet_task_defbsetb.task_state=1,b.state_date=sysdatewhereid='“所選標(biāo)記id”andb.state=1停用sqlupdatet_task_defbsetb.task_state=0,b.state_date=sysdatewhereid=“所選標(biāo)記id”andb.state=1"錯(cuò)誤日志功能說明該子模塊負(fù)責(zé)對(duì)錯(cuò)誤的任務(wù)的原因以及錯(cuò)誤詳情提供顯示。頁面設(shè)計(jì)列表顯示頁:錯(cuò)誤詳情查看頁:相關(guān)規(guī)則事件發(fā)生所處階段:代碼階段中文名說明0PLATFORM_INIT平臺(tái)啟動(dòng)運(yùn)行時(shí)平臺(tái)啟動(dòng)期間的事件1TASK_INIT任務(wù)啟動(dòng)任務(wù)初始化期間的事件2TASK_STOP任務(wù)停止任務(wù)停止期間的事件3TASK_RUN任務(wù)運(yùn)行任務(wù)運(yùn)行時(shí)發(fā)生的事件事件類型:代碼事件類型中文名說明嚴(yán)重度0TRANS_SUCCEED數(shù)據(jù)交換成功參事件發(fā)布時(shí)機(jī)NORM1TRANS_FAILED數(shù)據(jù)交換失敗ERROR事件嚴(yán)重度級(jí)別:代碼嚴(yán)重度中文名說明0NORM一般1WARN警告2ERROR錯(cuò)誤點(diǎn)擊“詳情”能夠查看錯(cuò)誤日志明細(xì):任務(wù)名稱:為發(fā)生錯(cuò)誤的任務(wù)名稱。發(fā)生時(shí)間:任務(wù)發(fā)生錯(cuò)誤時(shí)的具體時(shí)間。線程名稱、消息、錯(cuò)誤堆棧是經(jīng)過EventLogger以及CanaryEvent類捕獲的運(yùn)行平臺(tái)的錯(cuò)誤信息,供技術(shù)人員使用,線程名稱為任務(wù)發(fā)生錯(cuò)誤時(shí)正在運(yùn)行的線程名稱,消息為消息號(hào),錯(cuò)誤堆棧為錯(cuò)誤信息的堆棧信息。相關(guān)SQL查詢sqlselecta.id,DECODE(a.severity,'0','一般','1','警告','2','錯(cuò)誤')severity,DECODE(a.occur,'1','任務(wù)啟動(dòng)','2','任務(wù)停止','3','任務(wù)運(yùn)行')occur,DECODE(a.event_type,'0','數(shù)據(jù)交換成功','1','數(shù)據(jù)交換失敗')event_type,a.message,a.thread_name,a.err_stack,(selectb.task_namefromt_task_defbwhereb.id=a.source)source,to_char(a.event_time,'yyyy-mm-ddhh24:mi:ss')event_timefromT_SYS_RT_LOGawhere1=1實(shí)例管理功能說明該模塊對(duì)任務(wù)實(shí)例進(jìn)行增刪改的集中管理,為了適應(yīng)多臺(tái)服務(wù)器部署而服務(wù)。頁面設(shè)計(jì)列表頁面:新增管理頁面:修改實(shí)例頁面:相關(guān)規(guī)則查詢頁面根據(jù)state為1的顯示創(chuàng)立實(shí)例是創(chuàng)立人為登錄人員,創(chuàng)立人不可修改修改實(shí)例時(shí)值自動(dòng)帶入,創(chuàng)立人不可修改刪除將state置為0,而且將t_task_def表中的INST_ID置空相關(guān)sql1.查詢sqlselecta.id,,a.example_descrebe,(selectu.user_namefromt_useruwhereu.user_id=a.create_user)create_user,to_char(a.create_date,'yyyy-mm-ddhh24:mi:ss')create_datefromT_RT_INSTawherea.state='1'orderbya.create_datedesc2.增加sqlinsertintoT_RT_INST(id,name,example_descrebe,create_user,create_date,update_date,state)values(?,?,?,?,?,?,?)3.修改sqlupdateT_RT_INST4.刪除sqlupdateT_RT_INSTsetstate=0whereid=“實(shí)例的ID”運(yùn)行控制(暫未實(shí)現(xiàn))功能說明人機(jī)交互模塊,負(fù)責(zé)數(shù)據(jù)交換任務(wù)的啟停、調(diào)度、運(yùn)行時(shí)段、輪詢周期等設(shè)置。頁面設(shè)計(jì)查詢頁面與任務(wù)定義模塊類似運(yùn)行控制頁面:相關(guān)規(guī)則運(yùn)行時(shí)段,如果不使用cron表示式,則填寫起始時(shí)刻-結(jié)束時(shí)刻,僅支持小時(shí),例如6-18輪詢周期,如果不使用cron表示式,則填寫輪詢間隔的秒數(shù)輪詢周期僅對(duì)源端點(diǎn)為被動(dòng)源端點(diǎn)(即關(guān)系型數(shù)據(jù)庫+JDBC端點(diǎn))的情況有意義,否則隱藏。根據(jù)任務(wù)定義中的屬性判斷。任務(wù)運(yùn)行模塊概述該模塊為系統(tǒng)的核心組件——運(yùn)行時(shí)平臺(tái),實(shí)現(xiàn)可配置化的數(shù)據(jù)交換服務(wù)??膳渲没饕w現(xiàn)在兩個(gè)方面:內(nèi)建對(duì)多種傳輸協(xié)議/通信方式的支持,進(jìn)行數(shù)據(jù)交換時(shí),僅需要在進(jìn)行任務(wù)定義時(shí)指定端點(diǎn)連接到本系統(tǒng)的方式,及其必要參數(shù)內(nèi)建對(duì)多種數(shù)據(jù)格式的支持,并經(jīng)過映射規(guī)則文件指定各種數(shù)據(jù)格式與系統(tǒng)內(nèi)部數(shù)據(jù)格式之間的關(guān)系。僅需要在進(jìn)行任務(wù)定義時(shí)指定此映射規(guī)則文件,系統(tǒng)即可完成數(shù)據(jù)格式轉(zhuǎn)換的自動(dòng)化基本流程本節(jié)內(nèi)容在宏觀上描述從源端點(diǎn)產(chǎn)生數(shù)據(jù)、本系統(tǒng)傳遞數(shù)據(jù)到目標(biāo)端點(diǎn)消費(fèi)數(shù)據(jù)的整體過程。由于源端點(diǎn)、目標(biāo)端點(diǎn)沒有任何耦合關(guān)系,數(shù)據(jù)交換流程僅以純數(shù)據(jù)庫方式、純報(bào)文方式為例,不對(duì)四種組合一一闡述。數(shù)據(jù)庫+JDBC流程+時(shí)間戳本小節(jié)以源端點(diǎn)、目標(biāo)端點(diǎn)均為數(shù)據(jù)庫的情況為例,說明數(shù)據(jù)交換的過程。此場(chǎng)景中,源端點(diǎn)為被動(dòng)源端點(diǎn)。數(shù)據(jù)產(chǎn)生流程:源端點(diǎn)對(duì)應(yīng)的業(yè)務(wù)系統(tǒng),不定期把數(shù)據(jù)存儲(chǔ)到源端點(diǎn)中,而且把每行數(shù)據(jù)的時(shí)間戳字段設(shè)置為系統(tǒng)當(dāng)前時(shí)間,時(shí)間精確到秒。如果具有主從表,時(shí)間戳字段一律于主表保存。數(shù)據(jù)交換流程:1. 本系統(tǒng)的定時(shí)器,根據(jù)cron表示式規(guī)定的周期,觸發(fā)運(yùn)行2. 定時(shí)器檢查源端點(diǎn)中的數(shù)據(jù),如果存在時(shí)間戳>上次交換時(shí)間戳的數(shù)據(jù),則觸發(fā)數(shù)據(jù)交換3. 設(shè)上次交換時(shí)間戳為t,單批數(shù)據(jù)交換步進(jìn)為s。本系統(tǒng)查詢timestamp>tandtimestamp<=t+s的數(shù)據(jù)。而且根據(jù)源端點(diǎn)映射規(guī)則,轉(zhuǎn)換為內(nèi)部數(shù)據(jù)格式。注意,如果配置了轉(zhuǎn)換腳本,在該步驟調(diào)用腳本對(duì)內(nèi)部數(shù)據(jù)格式進(jìn)行轉(zhuǎn)換。(該功能暫不實(shí)現(xiàn))4. 根據(jù)目標(biāo)端點(diǎn)映射規(guī)則,本系統(tǒng)把內(nèi)部結(jié)構(gòu)轉(zhuǎn)換為目標(biāo)端點(diǎn)的DML語句,入庫5. 設(shè)置上次交換時(shí)間戳t=t+s6. 轉(zhuǎn)到3繼續(xù)執(zhí)行,直到?jīng)]有增量數(shù)據(jù),轉(zhuǎn)到77. 本次任務(wù)調(diào)度結(jié)束注意:4、5在單個(gè)分布式事務(wù)中完成。其中第六步,考慮到不同系統(tǒng)之間可能存在的時(shí)差,允許設(shè)置一個(gè)保留時(shí)差,該時(shí)差確保:時(shí)間戳>當(dāng)前運(yùn)行時(shí)平臺(tái)系統(tǒng)時(shí)間-時(shí)差的數(shù)據(jù)時(shí),自動(dòng)停止數(shù)據(jù)的交換。流程示意圖如下圖所示:數(shù)據(jù)庫+JDBC流程+過濾條件根據(jù)并聯(lián)審批的要求,該小節(jié)優(yōu)先實(shí)現(xiàn)??傮w上與上一節(jié)流程相似,不同的是:根據(jù)過濾條件,而不是根據(jù)由時(shí)間戳構(gòu)建的查詢條件獲取增量交換完成后,對(duì)源數(shù)據(jù)庫執(zhí)行“回填表示式”指定的update操作,而不是記錄時(shí)間戳WebService+XML流程本小節(jié)以源端點(diǎn)、目標(biāo)端點(diǎn)均為WebService端點(diǎn)的情況為例,說明數(shù)據(jù)交換的內(nèi)部過程。此場(chǎng)景中,源端點(diǎn)為主動(dòng)源端點(diǎn)。數(shù)據(jù)產(chǎn)生:根據(jù)需要,源端點(diǎn)能夠在業(yè)務(wù)數(shù)據(jù)產(chǎn)生時(shí),實(shí)時(shí)調(diào)用本系統(tǒng)的WebService接口發(fā)送XML;或者在業(yè)務(wù)數(shù)據(jù)入庫后,由獨(dú)立程序負(fù)責(zé)取出數(shù)據(jù)并轉(zhuǎn)換為XML、發(fā)送。數(shù)據(jù)交換:1. 源節(jié)點(diǎn)根據(jù)業(yè)務(wù)數(shù)據(jù)拼裝XML報(bào)文,調(diào)用本系統(tǒng)的WebService接口發(fā)送2. 本系統(tǒng)根據(jù)源端點(diǎn)映射規(guī)則,把報(bào)文解析為內(nèi)部數(shù)據(jù)格式。注意,如果配置了轉(zhuǎn)換腳本,在該步驟調(diào)用腳本對(duì)內(nèi)部數(shù)據(jù)格式進(jìn)行轉(zhuǎn)換。(該功能暫不實(shí)現(xiàn))3. 本系統(tǒng)根據(jù)目標(biāo)端點(diǎn)映射規(guī)則,把內(nèi)部數(shù)據(jù)格式轉(zhuǎn)換為XML報(bào)文4. 本系統(tǒng)調(diào)用目標(biāo)端點(diǎn)的WebService,發(fā)送XML報(bào)文5. 目標(biāo)端點(diǎn)解析報(bào)文并保存注意:如果任務(wù)定義時(shí),“向源端點(diǎn)報(bào)告異?!痹O(shè)置為總是時(shí),則2、3、4步驟出現(xiàn)任何錯(cuò)誤,均經(jīng)過WS調(diào)用的返回值(形式為報(bào)文)報(bào)告源端點(diǎn);否則,僅當(dāng)2步驟出現(xiàn)錯(cuò)誤時(shí),報(bào)告源端點(diǎn)。流程示意圖如下圖所示:映射規(guī)則文件工作原理基本結(jié)構(gòu)映射規(guī)則文件使用XML形式來表示。XML根元素為entity-mapping,其每個(gè)子元素代表一個(gè)實(shí)體,元素名為entity。實(shí)體能夠映射到某種數(shù)據(jù)格式中的目標(biāo),這里的目標(biāo)能夠指:關(guān)系型數(shù)據(jù)庫中的:表或視圖XML報(bào)文中的:XML樹中的某個(gè)節(jié)點(diǎn)及其子節(jié)點(diǎn)Excel電子表格中的:帶有特定表頭規(guī)格的sheet實(shí)體具有字段,字段分為標(biāo)識(shí)符字段、普通字段和引用字段三類。標(biāo)識(shí)符字段代表實(shí)體對(duì)象的唯一特征,在數(shù)據(jù)格式:“關(guān)系型數(shù)據(jù)庫”中,與主鍵對(duì)應(yīng)。標(biāo)識(shí)符字段以及普通字段能夠映射到某種數(shù)據(jù)格式中的目標(biāo),這些目標(biāo)能夠指:關(guān)系型數(shù)據(jù)庫中的:列XML報(bào)文中的:某個(gè)子節(jié)點(diǎn)Excel電子表格中的:列引用字段關(guān)聯(lián)其它實(shí)體,引用字段對(duì)應(yīng)的實(shí)體必須在映射規(guī)則文件中聲明為entity元素。根據(jù)關(guān)聯(lián)基數(shù)的不同,引用字段聲明為one-to-many,many-to-one或者many-to-many元素。為簡(jiǎn)便起見,在映射規(guī)則文件中,many-to-many特指基于連接表的關(guān)聯(lián),雖然使用連接表,能夠表示n:m關(guān)聯(lián),也能夠表示1:n甚至1:1關(guān)聯(lián)。引用字段能夠映射到某種數(shù)據(jù)格式中的目標(biāo),這些目標(biāo)能夠指:關(guān)系型數(shù)據(jù)庫中的:表或視圖——作為該字段所屬實(shí)體對(duì)應(yīng)表的子表XML報(bào)文中的:XML樹中的某個(gè)節(jié)點(diǎn)及其子節(jié)點(diǎn)——作為該字段所屬實(shí)體對(duì)應(yīng)節(jié)點(diǎn)的子節(jié)點(diǎn)Excel電子表格中的:帶有特定表頭規(guī)格的sheet——與作為該字段所屬實(shí)體對(duì)應(yīng)sheet不是同一個(gè)sheet詳細(xì)規(guī)定entity-mapping元素該元素為映射規(guī)則文件固定的根元素,包含1-n個(gè)實(shí)體定義。其中第一個(gè)實(shí)體定義為實(shí)體導(dǎo)航樹的起始點(diǎn)(在數(shù)據(jù)庫中即為“主表”)。entity元素XPath路徑:/entity-mapping/entity該元素代表一個(gè)實(shí)體定義,引用的實(shí)體也定義為獨(dú)立的元素。該元素的屬性列表:屬性名稱取值范圍說明name駝峰式大小寫的字符串,首字母小寫全局(在單個(gè)任務(wù)重)唯一實(shí)體的邏輯名稱,內(nèi)部數(shù)據(jù)格式中,用于識(shí)別實(shí)體類型table、node不指定時(shí),其值與本屬性一致table字符串實(shí)體對(duì)應(yīng)表格的名稱,用于支持?jǐn)?shù)據(jù)庫映射node字符串實(shí)體對(duì)應(yīng)的XML報(bào)文元素名(標(biāo)簽名),用于支持XML映射sheet字符串電子表格Sheet名,用于支持Excel映射sheet-index非負(fù)整數(shù)電子表格Sheet索引,從0開始,用于支持Excel映射id元素XPath路徑:/entity-mapping/entity/id該子元素必須出現(xiàn),且出現(xiàn)次數(shù)為1,用于表示實(shí)體的標(biāo)識(shí)符字段該元素的屬性列表:屬性名稱取值范圍說明name駝峰式大小寫的字符串,首字母小寫實(shí)體的標(biāo)識(shí)符字段的邏輯名稱node、column、xls-column若不指定,則與本屬性一致node字符串或者”.”實(shí)體標(biāo)識(shí)符映射到的XML節(jié)點(diǎn)。使用復(fù)合標(biāo)識(shí)符的時(shí)候,該屬性能夠取值為”.”,表示把復(fù)合標(biāo)識(shí)符的子元素直接設(shè)置為實(shí)體的子元素。如果實(shí)體anEntity的標(biāo)識(shí)符node屬性分別設(shè)置為“comp-id”和“.”,則報(bào)文分別為:<corp><comp-id><org>876</org><id>10000</id><seq-id>1</seq-id></comp-id></corp><corp><org>876</org><id>10000</id><seq-id>1</seq-id></corp>type枚舉,見字段類型列表在使用簡(jiǎn)單標(biāo)識(shí)符的情況下使用,表示標(biāo)識(shí)符
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 垃圾處理與綠化共生合同
- 租賃田畝合同范本
- 個(gè)人租屋合同樣本
- 球賽冠名贊助合同范本
- 玉米進(jìn)貨合同范本
- 美發(fā)店轉(zhuǎn)讓合同范本
- 路燈廣告承包合同范本
- 廣告公司員工用工合同范本
- 能源管理合同范本
- Unit 6 Review Period 3(教學(xué)設(shè)計(jì))-2024-2025學(xué)年北師大版(三起)(2024)英語三年級(jí)上冊(cè)
- 2025年太倉(cāng)市文化旅游發(fā)展集團(tuán)限公司及子公司公開招聘12名高頻重點(diǎn)提升(共500題)附帶答案詳解
- 安裝承包合同(2025年)
- 云上貴州大數(shù)據(jù)(集團(tuán))有限公司招聘筆試沖刺題2024
- 馬桶采購(gòu)合同范例
- 護(hù)理技能培訓(xùn)師競(jìng)聘
- 《世界各國(guó)簡(jiǎn)介》課件
- 北京市矢量地圖-可改顏色
- 新質(zhì)生產(chǎn)力與產(chǎn)品創(chuàng)新
- 2024年河北省公務(wù)員錄用考試《行測(cè)》真題及答案解析
- 安保服務(wù)行業(yè)市場(chǎng)調(diào)研分析報(bào)告
- 吉林大學(xué)《微積分AⅠ》2021-2022學(xué)年第一學(xué)期期末試卷
評(píng)論
0/150
提交評(píng)論