版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
年4月19日數(shù)據(jù)交換詳細設計說明書文檔僅供參考
江蘇省并聯(lián)審批平臺數(shù)據(jù)交換系統(tǒng)管理詳細設計說明書
文檔編號:SN/SD-MB-002保密級別:保密版本:V1.0修改日期:-09-14目錄1引言 11.1編寫目的 11.2項目背景 11.3當前狀況 12詳細說明 12.1數(shù)據(jù)庫設計 12.1.1數(shù)據(jù)庫命名規(guī)則 12.1.2表空間命名規(guī)則 12.2邏輯結構 22.2.1T_USER(用戶信息) 22.2.2T_ORG(機構信息) 22.2.3T_MENU(菜單信息) 32.2.4T_USER_MENU(用戶菜單信息) 32.2.5T_USER_MANAGE_ORG(用戶數(shù)據(jù)權限信息) 32.2.6T_TASK_DEF(任務定義) 42.2.7T_ENDPOINT(端點配置) 42.2.8T_TASK_CTRL(任務運行控制) 52.2.9T_DICT_TRANS(傳輸方式字典) 52.2.10T_DICT_CDC(增量識別機制字典) 62.2.11T_DATA_QUEUE(待傳數(shù)據(jù)隊列) 62.2.12T_TRANS_LOG(數(shù)據(jù)交換日志) 62.2.13T_SYS_RT_LOG(運行時日志) 62.2.14T_DICT_FMT(數(shù)據(jù)格式字典) 72.2.15T_NODE_ORG(交換節(jié)點表) 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(字典項主表) 92.2.21T_DICT_MAIN_VALUE(字典值表) 102.2.22T_RT_INST(實例管理表) 102.3系統(tǒng)菜單 102.4用戶及權限管理 112.4.1功能說明 112.4.2頁面設計 112.4.3相關規(guī)則 142.4.4相關SQL 142.5機構管理 152.5.1功能說明 152.5.2頁面設計 152.5.3相關規(guī)則 152.5.4相關SQL 162.6交換管理 162.6.1功能說明 162.6.2用例圖 172.6.3用例分析 172.6.4頁面設計 172.6.5相關規(guī)則 182.6.6相關SQL 182.7日志管理 192.7.1功能說明 192.7.2用例圖 192.7.3用例分析 192.7.4頁面設計 202.7.5相關規(guī)則 212.7.6相關SQl 212.8字典管理(暫緩) 222.8.1功能說明 222.8.2用例圖 222.8.3用例分析 222.8.4頁面設計 232.8.5相關規(guī)則 232.8.6相關SQL 242.9任務管理 242.9.1模塊概述 242.9.2任務定義 252.9.3任務控制 332.9.4錯誤日志 352.9.5實例管理 372.9.6任務組管理(暫緩) 382.9.7運行控制(暫未實現(xiàn)) 392.10任務運行 402.10.1模塊概述 402.10.2基本流程 402.10.3映射規(guī)則文件 442.10.4外部接口 572.10.5內部接口 612.10.6交換日志(暫緩) 662.10.7運行時事件日志 672.10.8任務自動啟停 682.10.9異常處理 682.10.10運行方式 692.10.11安裝部署 69引言編寫目的項目背景當前狀況詳細說明數(shù)據(jù)展示時根據(jù)機構權限過濾此次暫不考慮數(shù)據(jù)庫設計數(shù)據(jù)庫命名規(guī)則數(shù)據(jù)庫主鍵全部采用是32位UUID,針對Oracle數(shù)據(jù)庫采用char(32)表名以“T_”開頭,視圖名以“V_”開頭,函數(shù)以“FN_”開頭,存儲過程以“SP_”觸發(fā)器以“TR_”針對數(shù)據(jù)庫中相應的字符串,提供以下規(guī)范性的字符升序約定:短字符串:varchar2(20),如姓名、電子郵件,類別等。中字符串:varchar2(100),如地址、部門名稱等。長字符串:varchar2(1000),如處理意見,備注等。文本型字符串:CLOB,如摘要信息等。表空間命名規(guī)則以TS開頭加‘_’命名各個表空間,具體內容如下:TS_LOB:大字段存儲TS_INDEX:索引表空間TS_DATA:一般數(shù)據(jù)存儲TS_TEMP:臨時數(shù)據(jù)表空間TS_HISTORY:歸檔數(shù)據(jù)存儲表空間邏輯結構T_USER(用戶信息)NameCodeCommentDataTypePFMUSER_IDUSER_ID主鍵CHAR(32)XXSTAFF_CODESTAFF_CODE用戶名VARCHAR2(100)PASSWORDPASSWORD登錄密碼VARCHAR2(100)BELONG_ORG_IDBELONG_ORG_ID所屬機構IDCHAR(32)POSITIONPOSITION用戶職務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)立機構CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時間,精確到秒DATEUSER_TYPEUSER_TYPE用戶類型(A管理員,U普通用戶)CHAR(1)T_ORG(機構信息)NameCodeCommentDataTypePFMORG_IDORG_ID主鍵CHAR(32)XXORG_CODEORG_CODE機構代碼VARCHAR2(10)ORG_NAMEORG_NAME機構名稱VARCHAR2(100)SIMPLE_NAMESIMPLE_NAME機構簡稱VARCHAR2(50)PARENT_ORG_IDPARENT_ORG_ID上級機構IDCHAR(32)VER_ORG_IDVER_ORG_ID垂管機構父節(jié)點IDCHAR(32)ORG_TYPEORG_TYPE機構類型(00省政府,01省級部門,02市政府,03市級部門,04區(qū)縣政府,05區(qū)縣部門,)CHAR(2)CREATE_DATECREATE_DATE創(chuàng)立時間,精確到秒DATESTATESTATE狀態(tài)(1有效,0無效)NUMBER(1)ORDORD機構順序NUMBER(4)T_MENU(菜單信息)NameCodeCommentDataTypePFMMENU_IDMENU_ID主鍵CHAR(32)XXPARENT_MENU_IDPARENT_MENU_ID父級菜單IDCHAR(32)MENU_TITLEMENU_TITLE菜單標題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菜單圖標VARCHAR2(100)MENU_URLMENU_URL菜單URLVARCHAR2(1000)ORDORD順序號NUMBER(4)CREATE_DATECREATE_DATE創(chuàng)立時間,精確到秒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)立機構CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時間DATET_USER_MANAGE_ORG(用戶數(shù)據(jù)權限信息)NameCodeCommentDataTypePFMMANAGE_ORG_IDMANAGE_ORG_ID主鍵CHAR(32)XXUSER_IDUSER_ID用戶IDCHAR(32)MANAGE_ORGMANAGE_ORG1省級權限,2市級權限NUMBER(1)CREATE_ORGCREATE_ORG創(chuàng)立機構CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時間DATET_TASK_DEF(任務定義)NameCodeCommentDataTypePFMIDID
CHAR(32)XXTASK_NAMETASK_NAME名稱VARCHAR2(100)TASK_DESCTASK_DESC描述CLOBORG_IDORG_ID所屬機構CHAR(32)CREATE_USERCREATE_USER創(chuàng)立人CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時間DATETASK_STATETASK_STATE1啟用0停用NUMBER(1)TRANS_SCRTRANS_SCR轉換腳本CLOBSTATESTATE刪除標記位NUMBER(1)STATE_DATESTATE_DATE創(chuàng)立/修改時間DATEINST_IDINST_ID執(zhí)行此任務的運行時平臺實例CHAR(32)T_ENDPOINT(端點配置)NameCodeCommentDataTypePFMIDID
CHAR(32)XXEP_TYPEEP_TYPE端點類型.0源端點1目標端點NUMBER(1)TASK_IDTASK_ID所屬任務CHAR(32)EP_NAMEEP_NAME端點名稱VARCHAR2(100)NODE_IDNODE_ID所屬節(jié)點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增量識別機制NUMBER(8)S_TSS_TS時間戳字段VARCHAR2(20)S_TS_DBS_TS_DB時間戳子段是否使用數(shù)據(jù)庫字段.0否1是NUMBER(1)S_TIME_LAGS_TIME_LAG源端點與本系統(tǒng)的保險時差,單位分鐘NUMBER(8)D_DB_OPD_DB_OP目標端點數(shù)據(jù)庫操作.位運算.增改刪都支持為111,即十進制7NUMBER(1)D_DB_CONFLICTD_DB_CONFLICT目標端點數(shù)據(jù)庫操作時,主鍵沖突的處理.0合并1丟棄源2丟棄目標3改變主鍵插入NUMBER(1)D_WS_URLD_WS_URL
VARCHAR2(100)D_CONSIS_MAPD_CONSIS_MAP(目標端點)是否使用和源端點一致的映射規(guī)則NUMBER(1)T_TASK_CTRL(任務運行控制)NameCodeCommentDataTypePFMIDID
CHAR(32)XXTASK_IDTASK_ID關聯(lián)的任務CHAR(32)RUN_PERIODRUN_PERIOD任務能夠運行的時間段,自動cron判斷VARCHAR2(100)POLL_INTERVALPOLL_INTERVAL輪詢間隔,自動cron判斷VARCHAR2(100)DAILY_QUOTADAILY_QUOTA日配額控制的數(shù)據(jù)條數(shù)NUMBER(8)BATCH_SIZEBATCH_SIZE批量條數(shù)NUMBER(8)DEDICATED_VMDEDICATED_VM是否使用專用虛擬機運行任務NUMBER(1)VM_ARGSVM_ARGS虛擬機啟動參數(shù)VARCHAR2(100)LAST_SCHELAST_SCHE上次調度時間DATELAST_RUNLAST_RUN上次交換數(shù)據(jù)時間DATELAST_TSLAST_TS上次交換的截止時間戳(源端點基于時間戳識別時)本系統(tǒng)數(shù)據(jù)庫時間DATET_DICT_TRANS(傳輸方式字典)NameCodeCommentDataTypePFMIDID
NUMBER(8)XXCODECODE傳輸方式代碼NUMBER(2)NAMENAME傳輸方式名稱VARCHAR2(100)STATESTATE刪除標記位NUMBER(1)T_DICT_CDC(增量識別機制字典)NameCodeCommentDateTypePFMIDID
NUMBER(8)XXCODECODE增量識別機制代碼NUMBER(2)NAMENAME增量識別機制名稱VARCHAR2(100)STATESTATE刪除標記位NUMBER(1)T_DATA_QUEUE(待傳數(shù)據(jù)隊列)NameCodeCommentDataTypePFMIDID
CHAR(32)XXTASK_IDTASK_ID所屬的任務CHAR(32)D_EP_IDD_EP_ID目標端點CHAR(32)CREATE_DATECREATE_DATE數(shù)據(jù)創(chuàng)立時間DATEPATHPATH數(shù)據(jù)存放位置(數(shù)據(jù)必須被串行化到文件系統(tǒng))VARCHAR2(100)LAST_TRANS_DATELAST_TRANS_DATE最后嘗試傳輸?shù)臅r間DATEFAILED_TIMESFAILED_TIMES已經失敗次數(shù)NUMBER(8)T_TRANS_LOG(數(shù)據(jù)交換日志)NameCodeCommentDataTypePFMIDID
CHAR(32)XXTASK_IDTASK_ID產生數(shù)據(jù)交換的任務CHAR(32)S_EP_IDS_EP_ID數(shù)據(jù)來源端點CHAR(32)D_EP_IDD_EP_ID數(shù)據(jù)目標端點CHAR(32)DATA_COUNTDATA_COUNT交換的數(shù)據(jù)條數(shù)NUMBER(8)DATA_KBDATA_KB交換的數(shù)據(jù)量NUMBER(8)START_DATESTART_DATE源端點發(fā)起數(shù)據(jù)交換的時間(以本系統(tǒng)獲得數(shù)據(jù)的時刻計)DATEEND_DATEEND_DATE目標端點得到數(shù)據(jù)的時間(以本系統(tǒng)將數(shù)據(jù)成功發(fā)送給目標端點計)DATET_SYS_RT_LOG(運行時日志)NameCodeCommentDataTypePFMIDID
CHAR(32)XXSEVERITYSEVERITY嚴重度:0一般1警告2錯誤NUMBER(1)OCCUROCCUR事件發(fā)生階段:0平臺啟動1任務啟動2任務停止3任務運行NUMBER(1)EVENT_TYPEEVENT_TYPE事件類型:0數(shù)據(jù)交換成功1數(shù)據(jù)交換失敗NUMBER(8)MESSAGEMESSAGE消息VARCHAR2(200)THREAD_NAMETHREAD_NAME線程名稱VARCHAR2(50)ERR_STACKERR_STACK錯誤堆棧CLOBSOURCESOURCE事件源(發(fā)生事件的對象)(對于OCCUR:1、2、3,存放TASK_ID)CHAR(32)EVENT_TIMEEVENT_TIME時間發(fā)生時間DATET_DICT_FMT(數(shù)據(jù)格式字典)NameCodeCommentDataTypePFMIDID
NUMBER(8)XXCODECODE數(shù)據(jù)格式代碼NUMBER(2)NAMENAME數(shù)據(jù)格式名稱VARCHAR2(100)STATESTATE刪除標記位NUMBER(1)T_NODE_ORG(交換節(jié)點表)NameCodeCommentDataTypePFMIDID節(jié)點IDCHAR(32)XNODE_NAMENODE_NAME節(jié)點名稱VARCHAR2(100)BELONG_ORGBELONG_ORG機構ORGCHAR(32)CREATE_USER_IDCREATE_USER_ID創(chuàng)立人員IDCHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時間,精確到日DATESTATE_DATESTATE_DATE修改時間,精確到日DATENODE_STATENODE_STATE節(jié)點狀態(tài)1-有效0-無效NUMBER(1)STATESTATE刪除標記位1-有效0-無效NUMBER(1)T_SYS_LOGING_LOG(登錄日志)NameCodeCommentDataTypePFMIDID日志IDCHAR(32)XPERSON_IDPERSON_ID登錄人員IDCHAR(32)PERSON_NAMEPERSON_NAME登錄人員VARCHAR2(20)LOGING_TIMELOGING_TIME登錄時間DATEEXIT_TIMEEXIT_TIME退出時間DATELOGING_IPLOGING_IP登錄IPVARCHAR2(100)LOGING_MACLOGING_MAC客戶機MAC地址VARCHAR2(100)CREATE_ORGCREATE_ORG創(chuàng)立機構CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時間,精確到秒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登錄時間DATEEXIT_TIMEEXIT_TIME退出時間DATELOGING_IPLOGING_IP登錄IPVARCHAR2(100)LOGING_MACLOGING_MAC客戶機MAC地址VARCHAR2(100)CREATE_ORGCREATE_ORG創(chuàng)立機構CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時間,精確到秒DATEBACKUP_DATEBACKUP_DATE歸檔時間,精確到秒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客戶機MAC地址VARCHAR2(100)MENU_TITLEMENU_TITLE操作模塊標題VARCHAR2(100)USE_DESCREBEUSE_DESCREBE操作模塊描述VARCHAR2(1000)CREATE_DATECREATE_DATE操作時間,精確到秒DATECREATE_ORGCREATE_ORG創(chuàng)立機構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客戶機MAC地址VARCHAR2(100)MENU_TITLEMENU_TITLE操作模塊標題VARCHAR2(100)USE_DESCREBEUSE_DESCREBE操作模塊描述VARCHAR2(1000)CREATE_DATECREATE_DATE操作時間,精確到秒DATECREATE_ORGCREATE_ORG創(chuàng)立機構CHAR(32)BACKUP_DATEBACKUP_DATE歸檔時間,精確到秒DATET_DICT_MAIN(字典項主表)NameCodeCommentDataTypePFMDICT_IDDICT_ID字典項IDNUMBER(8)XDICT_NAMEDICT_NAME字典項VARCHAR2(20)DICT_DESCRIPTDICT_DESCRIPT字典項描述VARCHAR2(1000)PARENT_DICT_IDPARENT_DICT_ID上級字典CHAR(32)ITEMITEM所屬項目VARCHAR2(20)DICT_NODICT_NO字典編號VARCHAR2(20)CREATE_DATECREATE_DATE創(chuàng)立時間,精確到日DATECREATE_ORGCREATE_ORG創(chuàng)立機構CHAR(32)STATESTATE有效性1-有效0-無效NUMBER(1)T_DICT_MAIN_VALUE(字典值表)NameCodeCommentDataTypePFMDICT_VALUE_IDDICT_VALUE_ID字典值IDNUMBER(8)XDICT_IDDICT_ID字典項IDNUMBER(8)XDICT_VALUEDICT_VALUE字典值VARCHAR2(100)ORDORD順序號NUMBER(4)CREATE_DATECREATE_DATE創(chuàng)立時間,精確到日DATESTATESTATE有效性1-有效0-無效NUMBER(1)T_RT_INST(實例管理表)NameCodeCommentDataTypePFMIDID標識符CHAR(32)XNAMENAME實例名稱VARCHAR2(100)VM_ARGSVM_ARGS虛擬機啟動參數(shù)VARCHAR2(100)HTTP_PORTHTTP_PORTHTTP偵聽端口NUMBER(5)HTTPS_PORTHTTPS_PORTHTTPS偵聽端口NUMBER(5)IPIP所在主機的IP地址VARCHAR2(1000)STATESTATE狀態(tài),1為顯示,0為刪除標記位CHAR(1)CREATE_USERCREATE_USER創(chuàng)立人CHAR(32)CREATE_DATECREATE_DATE創(chuàng)立時間DATEUPDATE_DATEUPDATE_DATE更新時間DATE系統(tǒng)菜單系統(tǒng)管理用戶及權限管理機構管理交換管理登錄日志系統(tǒng)日志任務管理任務定義任務控制錯誤日志實例管理用戶及權限管理功能說明管理維護系統(tǒng)中用戶的基本信息,包括:用戶名、密碼、電子郵箱、聯(lián)系電話、所屬部門、狀態(tài)(有效、無效)。頁面設計新增/編輯頁面用戶信息T_USER用戶名STAFF_CODE密碼PASSWORD姓名USER_NAME職務POSITION電子郵箱EMAIL聯(lián)系電話LINK_TEL所屬部門BELONG_ORG_ID數(shù)據(jù)權限過濾,省級權限展示全省的機構,市級權限展示登錄用戶所在市政府及其下級機構狀態(tài)有效VSTATE提交關閉列表頁面查詢條件中所屬部門進行數(shù)據(jù)權限過濾,省級權限展示全省的機構、市級權限展示當前登錄用戶所在機構及其下級機構。當查詢條件全部為空時,列表查詢數(shù)據(jù)根據(jù)數(shù)據(jù)權限進行過濾,省級權限查詢全部數(shù)據(jù)、市級權限查詢登錄用戶所在機構及其下級機構數(shù)據(jù),示意SQL:省級權限數(shù)據(jù)查詢范圍省級權限查詢全省的數(shù)據(jù),列表中直接查詢全表有效數(shù)據(jù)SELECT*FROMT_USER市級權限數(shù)據(jù)查詢范圍市級權限查詢當前登錄用戶所在市政府及其下級機構的數(shù)據(jù)SELECT*FROMT_USERRWHERER.CREATE_ORGIN(SELECTORG_IDFROMT_ORGAWHEREA.STATE=1STARTWITHA.ORG_ID='&當前登錄登錄所在機構ORG_ID'CONNECTBYPRIORA.ORG_ID=A.PARENT_ORG_ID)修改密碼修改密碼用戶名只讀、自動帶入STAFF_CODE姓名只讀、自動帶入USER_NAME新密碼必輸項PASSWORD新密碼確認必輸項PASSWORD確認返回相關規(guī)則新增用戶時狀態(tài)默認為有效,不可修改。用戶修改時頁面中數(shù)據(jù)項都放開可編輯。點擊“修改密碼”直接彈出新密碼錄入頁面,由用戶錄入新的密碼。用戶名:必輸項,需進行唯一性校驗職務:帶入后可修改登錄密碼與確認密碼必須一致,最小4位最大12位,并經過SHA加密如列表中選中了多條數(shù)據(jù),則將修改按鈕灰化,不可點擊用戶刪除時可進行多選,刪除時詢問:是否確定將選中用戶刪除?權限樹狀列表為數(shù)據(jù)交換系統(tǒng)中所有模塊的清單。選擇用戶點擊用戶權限中的新增按鈕彈出權限的樹狀列表。數(shù)據(jù)權限分為省級權限、市級權限,具備省級權限可查看全省的數(shù)據(jù),具備市級權限可查看登錄用戶所在市政府及下屬政府、機構的數(shù)據(jù)。數(shù)據(jù)權限中省級權限、市級權限不可同時選擇。相關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查詢用戶權限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用戶權限刪除可進行多選,刪除時詢問:是否確定將選中用戶權限刪除?DELETEFROMT_USER_MENUWHEREIDIN('選擇的ID')機構管理功能說明管理維護數(shù)據(jù)交換所涉及的各機構的信息,包括:機構名稱、規(guī)范化簡稱、機構代碼、所屬行政區(qū)劃、部門間隸屬關系。頁面設計頁面設計以軟件為準,要求頁面數(shù)據(jù)項一致、功能實現(xiàn),頁面布局不做要求,新增/修改頁面機構維護機構代碼輸入框ORG_CODE機構名稱輸入框ORG_NAME機構簡稱輸入框SIMPLE_NAME機構類型下拉框ORG_TYPE上級機構下拉框PARENT_ORG_ID上級垂管機構下拉框VER_ORG_ID狀態(tài)下拉框STATE順序號輸入框ORD確定返回列表頁面相關規(guī)則列表展示所有的機構數(shù)據(jù),并支持多選機構名稱為模糊查詢機構類型為下拉選擇【空-全部、00-省政府、01-省級部門、02-市政府、03-市級部門、04-區(qū)縣政府、05-區(qū)縣部門、】狀態(tài)為下拉選擇【空-全部、1-有效、0-無效】相關SQL查詢機構信息SELECTO.ORG_ID,O.ORG_NAME,O.SIMPLE_NAME,DECODE(O.ORG_TYPE,'00','省政府','01','省級部門','02','市政府','03','市級部門','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機構刪除可進行多選,刪除時詢問:是否將選中機構及其下級機構一并刪除?--查詢要刪除的所有ORG_IDSELECTORD_IDFROMT_ORGSTARTWITHORG_IDIN('選中的ORG_ID')CONNECTBYPRIORORG_ID=PARENT_ORG_ID--刪除用戶UPDATET_USERSETSTATE='0'WHEREORG_IDIN('查詢的ORG_ID')--刪除機構UPDATET_ORGSETSTATE='0'WHEREORG_IDIN('查詢的ORG_ID')機構列表展示時根據(jù)登錄用戶進行數(shù)據(jù)過濾,省級權限查詢全省的數(shù)據(jù),市級權限查詢當前登錄用戶所在機構及其下級機構的數(shù)據(jù)。交換管理功能說明該模塊主要包含:交換節(jié)點管理,負責維護數(shù)據(jù)交換系統(tǒng)中各交換節(jié)點信息。用例圖用例分析概述用例名稱:交換節(jié)點維護參與者:系統(tǒng)管理員用例概述:系統(tǒng)管理員針對節(jié)點與機構綁定進行管理、修改操作,該操作只對軟件的統(tǒng)計分析有影響,對軟件整體運行無影響。事件流前置條件:無后置條件:無基本事件流:系統(tǒng)管理員進入交換節(jié)點管理頁面后,點擊新增和修改進行交換節(jié)點內容的操作,點擊刪除則節(jié)點不在展示在列表中。備選(擴展)事件流:無異常事件流:系統(tǒng)維護中保存失敗或刪除失敗后,系統(tǒng)依然顯示信息錄入界面或列表頁面,并提示失敗原因頁面設計交換節(jié)點管理維護管理數(shù)據(jù)交換系統(tǒng)中各交換節(jié)點對應的機構。提供新增、刪除、修改功能。查詢條件“機構名稱”進行數(shù)據(jù)權限過濾,省級權限查全省的數(shù)據(jù),市級權限根據(jù)登錄登錄用戶查其本級及其下級機構的數(shù)據(jù)。新增頁面新增交換節(jié)點節(jié)點名稱TXT框NODE_NAME機構名稱∨ORG_ID狀態(tài)有效∨NODE_STATE提交關閉相關規(guī)則根據(jù)登錄人員所在機構展示該機構下的所有交換節(jié)點,即本機構下的所有管理員均可對該機構下的所有交換節(jié)點進行維護。新增頁面進入時狀態(tài)默認有效且只讀不可修改,各數(shù)據(jù)項必輸。修改頁面進入時所有數(shù)據(jù)項均放開可修改,各數(shù)據(jù)項不可為空。刪除后,將不在列表中展示。相關SQL查詢規(guī)則:根據(jù)登錄用戶所在機構展示該機構下的所有節(jié)點Selectnode_name,(selectorg_namefromt_orga,t_node_orgbwhere_id=_id),node_statefromt_node_orgwherestate=1andorg_id=‘登錄用戶ORG’;插入規(guī)則:insertt_node_org插入時默認node_state=1,state=1修改規(guī)則:NODE_NAME,ORG_ID,NODE_STATE狀態(tài)可修改。刪除規(guī)則:updatet_node_orgsetstate=0;日志管理功能說明記錄數(shù)據(jù)交換系統(tǒng)中各功能模塊所產生的日志,主要內容包括:登錄日志、系統(tǒng)日志。用例圖用例分析概述用例名稱:維護系統(tǒng)日志參與者:系統(tǒng)管理員用例概述:系統(tǒng)管理員進行系統(tǒng)日志維護等操作。事件流前置條件:無后置條件:無基本事件流:系統(tǒng)管理員進入數(shù)據(jù)日志管理頁面后,能夠進行日志查詢、歸檔操作;備選(擴展)事件流:無異常事件流:歸檔成功返回成功信息,若失敗則仍顯示查詢頁面,并提示失敗原因頁面設計登錄日志在菜單項中選擇【登錄日志】,進入頁面系統(tǒng)日志在菜單項中選擇【系統(tǒng)日志】,進入頁面查詢條件“機構名稱”數(shù)據(jù)需進行數(shù)據(jù)權限過濾雙擊某條數(shù)據(jù)可查看操作詳細頁面操作描述USE_DESCREBE相關規(guī)則登錄日志:記錄用戶登錄該系統(tǒng)的歷史信息。機構名稱:若為省局用戶則出本級及下級機構名稱,默認省局,若為市級用戶則默認為本級,展示本級及下級機構名稱登錄人員:模糊查詢,根據(jù)機構名稱查詢該機構下的登錄人員。日志歸檔:對日志進行歸檔操作系統(tǒng)日志:記錄用戶對系統(tǒng)中增、刪、改等一系列操作信息。機構名稱:同登錄日志操作人員:同登錄日志操作模塊時間:即觸發(fā)ButtonClick事件后進行記錄,記錄的操作含增、刪、改,備份等事務操作,不包含查詢。雙擊某條數(shù)據(jù)能夠查看操作描述頁面相關SQl首次進入頁面時查詢規(guī)則:展示未歸檔日志,省局用戶展示本級及下級局;市局用戶只展示本級。Selectcreate_org,person_name,loging_time,exit_time,loging_ip,loging_macfromT_SYS_LOGING_LOGwherestate=0andcreate_org=‘根據(jù)登錄用戶判斷’登錄日志數(shù)據(jù)插入規(guī)則:用戶首次登錄時執(zhí)行insert操作,退出時間為空;當用戶退出時,根據(jù)PERSON_ID查找CREATE_DATE最大那條數(shù)據(jù),執(zhí)行update操作,其它字段不變,只修改退出時間。歸檔規(guī)則:Insertt_sys_loging_log_backup(t_sys_use_log_backup)取t_sys_loging_log(t_sys_use_log)中state=0且create_org=’本機構’的數(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ù)登錄人員所在機構過濾字典管理(暫緩)功能說明對系統(tǒng)內部一些取值基本能固定下來的數(shù)據(jù)選取項,經過數(shù)據(jù)字典進行維護。用例圖用例分析概述用例名稱:維護數(shù)據(jù)字典參與者:系統(tǒng)管理員用例概述:系統(tǒng)管理員進行系統(tǒng)中數(shù)據(jù)字典的維護等操作,一般對字典主表的操作建議不給系統(tǒng)管理員操作權限。事件流前置條件:無后置條件:無基本事件流:系統(tǒng)管理員進入數(shù)據(jù)字典管理頁面后,點擊新增字典和修改字典進行字典的操作,點擊新增字典值、修改字典值和刪除字典值進行字典值操作;備選(擴展)事件流:無異常事件流:系統(tǒng)維護中保存失敗或刪除失敗后,系統(tǒng)依然顯示信息錄入界面或列表頁面,并提示失敗原因頁面設計列表顯示頁進入該模塊后顯示如下,左側為字典項列表,右側為對應左側字典項的字典值的列表信息;字典管理字典項.使用機構.查詢重置新增字典修改字典刪除字典新增字典值修改字典值刪除字典值字
項上級字典使用項目使用機構字典項值排序口DICT_NAMEPARE
T_DICT_IDITEMCREATE_ORG口DICT_VALUE1口口2口口3口。。。首頁上一頁下一頁末頁第XX頁GODIC
_VA
UESO
D新增修改字典頁面字典編號DICT_NO字典項DICT_NAME字典項描述DICT_DESCRIPT上級字典PARENT_DICT_ID下拉選使用項目ITEM下拉選不能為空默認為公共使用機構CREATE_ORG保存取消新增修改字典值頁面字典項默認左邊選中的字典項的值DICT字典項值排序保存保存繼續(xù)取消相關規(guī)則除使用機構外,頁面各數(shù)據(jù)項不能為空;該功能只提供給管理員進行維護,一般情況用戶只能增刪改字典項的值,字典主表由開發(fā)人員開發(fā)時維護或初始化化時執(zhí)行腳本生成;字典值維護頁面,點擊保存按鈕返回列表,點擊保存繼續(xù)按鈕保存數(shù)據(jù)繼續(xù)新增操作。先根據(jù)ITEM來取本項目的字典,沒有則取ITEM為公共的數(shù)據(jù)字典;再根據(jù)當前人的機構ID取本機構字典,沒有則BELONG_ORG為空的。相關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=‘用戶所在機構’;插入規(guī)則:insertt_dict_main/insertt_dict_main_valewheredict_id=‘所選dict_id’刪除規(guī)則:deletet_dict_main/insertt_dict_main_vale任務管理模塊概述任務管理模塊負責數(shù)據(jù)交換任務的定義、維護和運行控制。為方便擴展,對當前數(shù)據(jù)交換需求中的角色進行抽象化,定義以下概念:端點:直接連接到本系統(tǒng),進行數(shù)據(jù)交換的實體。該實體能夠是業(yè)務系統(tǒng)、數(shù)據(jù)庫,甚至是操作系統(tǒng)目錄。端點之間以本系統(tǒng)作為中介,進行通信。本節(jié)采用數(shù)據(jù)格式+通信方式的形式,作為端點類型的非正式表示源端點:在數(shù)據(jù)交換任務中,作為數(shù)據(jù)來源的端點。主動源端點是指主動觸發(fā)任務運行的源端點(如XML+WebService);被動源端點是指僅僅產生待交換數(shù)據(jù)而不觸發(fā)任務運行,由本系統(tǒng)輪詢觸發(fā)任務運行的源端點增量識別機制:指從源端點的數(shù)據(jù)存儲中確認新增/變化數(shù)據(jù)的方式。包括基于觸發(fā)器、基于時間戳、基于Where子句、全表掃描等目標端點:在數(shù)據(jù)交換任務中,接收數(shù)據(jù)的端點數(shù)據(jù)格式:端點對數(shù)據(jù)的組織形式,主要分為RDBMS(表或者視圖)、二進制格式和文本格式三類。其中二進制格式包括Excel電子表格;文本格式包括XML、逗號分隔符等通信方式:端點連接到本系統(tǒng)的通信協(xié)議或者技術手段。包括JDBC、HTTP、WebService、JMS、MOM(主要指MQ)、FTP等方式內部數(shù)據(jù)格式:本系統(tǒng)內部對數(shù)據(jù)格式的一致性表示。該表示為一樹形結構,支持對端點數(shù)據(jù)格式的自動化映射映射規(guī)則:描述端點數(shù)據(jù)格式——內部數(shù)據(jù)格式的映射規(guī)則的元數(shù)據(jù),以XML的形式表示對上述概念的補充說明:端點的數(shù)據(jù)格式、通信方式、增量識別機制不能任意組合,依賴于特定的技術的固有特征。例如RDBMS只能和JDBC組合本次設計,不涉及上述數(shù)據(jù)格式、通信方式的全部例示。主要實現(xiàn)對XML+WebService、RDBMS+JDBC兩種端點的支持;增量識別機制支持基于時間戳的方式任務定義該模塊屬于人機交互模塊,負責數(shù)據(jù)交換任務的定義。任務定義的核心是源端點、目標端點的配置。數(shù)據(jù)對應關系表關系說明本模塊涉及三張平臺庫中的表:T_TASK_DEF:任務基本信息表T_TASK_CTRL:任務控制信息表T_ENDPOINT:端點信息表(EP_TYPE=0表示源端點,EP_TYPE=1表示目標端點,每個任務只有一個源、一個目標端點)T_TASK_DEF.ID=T_TASK_CTRL.TASK_IDT_TASK_DEF.ID=T_ENDPOINT.TASK_ID字段對照表頁面元素表字段說明任務名稱T_TASK_DEFTASK_NAME任務描述T_TASK_DEFTASK_DESC創(chuàng)立人T_TASK_DEFCREATE_USER所屬機構T_TASK_DEFORG_ID創(chuàng)立時間T_TASK_DEFCREATE_DATE狀態(tài)T_TASK_DEFTASK_STATE創(chuàng)立/修改時間T_TASK_DEFSTATE_DATE每次對任務進行變動,必須修改此字段為SYSDATE執(zhí)行此任務的運行時平臺實例T_TASK_DEFINST_ID運行時段T_TASK_CTRLRUN_PERIOD日配額控制T_TASK_CTRLDAILY_QUOTA輪詢周期T_TASK_CTRLPOLL_INTERVAL獨立VM運行T_TASK_CTRLDEDICATED_VMJVM參數(shù)T_TASK_CTRLVM_ARGS最近調度時間T_TASK_CTRLLAST_SCHE最近運行時間T_TASK_CTRLLAST_RUN轉換腳本T_TASK_DEFTRANS_SCR端點名稱T_ENDPOINTEP_NAME所屬節(jié)點T_ENDPOINTNODE_ID映射規(guī)則文件T_ENDPOINTMAP_FILE數(shù)據(jù)格式T_ENDPOINTFMT_ID傳輸方式T_ENDPOINTTRANS_ID數(shù)據(jù)庫類型T_ENDPOINTDB_TYPE_ID啟用XA事務T_ENDPOINTXA_ENABLEDJDBC連接串T_ENDPOINTJDBC_URLJDBC用戶名T_ENDPOINTJDBC_USERJDBC密碼T_ENDPOINTJDBC_PSWD增量識別機制T_ENDPOINTS_CDC_ID時間戳字段T_ENDPOINTS_TIMESTAMP步進(秒)T_ENDPOINTS_TIME_STEP注意:數(shù)據(jù)庫單位是毫秒,模型層/Service層執(zhí)行轉換條件表示式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和源端點使用相同的配置T_ENDPOINTD_CONSIS_MAPWS客戶端用戶名T_ENDPOINTWS_USERWS客戶端密碼T_ENDPOINTWS_PWSD向源端點報告異常T_ENDPOINTS_RPT_ERRWS名字空間T_ENDPOINTD_WS_NSWS服務端地址T_ENDPOINTHTTP_URLHTTP通道T_ENDPOINTHTTP_CHNL同時勾選則填寫2保留時差T_ENDPOINTS_OVERSTEP注意:數(shù)據(jù)庫單位是毫秒,模型層/Service層執(zhí)行轉換查詢功能說明查詢已經存在的交換任務,展示基本信息,并提供新建、修改、控制任務的功能入口點。頁面設計注意:字段順序、每行展示字段數(shù)、展示方式能夠根據(jù)需要自行調整。相關規(guī)則點擊創(chuàng)立任務按鈕,進入詳情錄入模塊。點擊類似任務創(chuàng)立按鈕,重新載入選擇的模塊,任務名稱驗證其唯一性,文本框的值自動帶入,列表的值只能選擇其一不能多選點擊修改按鈕,進入任務修改模塊。進入頁面所有顯示狀態(tài)均是STATE=1點擊刪除按鈕,STATE設置為“0”;創(chuàng)立人展示為單選字典,顯示所屬機構下的人員。所屬機構展示為字典,顯示當前用戶有權看到的機構,如果為空,查詢語句根據(jù)用戶所能看見的機構進行過濾。相關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=“所選標記id”詳情錄入功能說明該子模塊負責數(shù)據(jù)交換任務的設計,核心邏輯是源、目標端點的配置和組合。頁面設計注意:字段順序、每行展示字段數(shù)、展示方式能夠根據(jù)需要自行調整。在修改交換任務時,映射規(guī)則文件的表單文本框不顯示任何內容。轉換腳本字段如下,可放在頁面上單獨的選項卡內,腳本內容當前不做任何驗證:(暫未實現(xiàn),字段在頁面中隱藏)數(shù)據(jù)庫模式源端點使用基于時間戳的增量識別器的情況:圖中未畫的字段:保留時差注釋:cron表示式當前沒有實質用途,當前先隱藏。源端點使用基于時間戳增量識別器的情況:基于過濾條件增量識別器的頁面如下:報文模式類似創(chuàng)立頁面相關規(guī)則注意!源端點和目標端點能夠使用不同的模式:數(shù)據(jù)庫或者報文對于條件表示式的填寫即填寫where字句,填寫格式為字段=‘值’對于多個字段的填寫格式為字段=‘值’and字段=‘值’and………對于映射規(guī)則文件在修改的時候如果庫里面有數(shù)據(jù)則能夠不用限制必填。數(shù)據(jù)庫模式數(shù)據(jù)格式選中關系型數(shù)據(jù)庫時,傳輸方式自動變?yōu)镴DBC,并顯示上節(jié)圖中顯示的數(shù)據(jù)庫相關的數(shù)據(jù)項映射規(guī)則文件由客戶端上傳,點擊上傳后立即存放于應用服務器的臨時位置,并調用接口執(zhí)行驗證:sparknet.canary.core.mapping.parser.MappingRulesParser.parse如果拋出異常,則提示用戶格式有誤。注意:此parse方法比較消耗資源,實現(xiàn)時一個映射文件只parse一次,解析結果存放在HTTPSession范圍,以MD5為key,在提交本頁面后,清除之。數(shù)據(jù)庫類型從T_DICT_DB_TYPE拉出字典展示如果選中的數(shù)據(jù)庫類型支持XA,則顯示啟用XA復選框,默認勾選。目標數(shù)據(jù)庫支持XA要求T_DICT_DB_TYPE.XA_DS_CLS不為空。如果XA_DS_CLS為空,則不得為啟用狀態(tài)??!JDBC連接串只讀,只能點擊編輯修改。點擊編輯,彈出窗/層中展示T_DICT_DB_TYPE.URL_TEMPLT中定義的EL表示式風格的變量占位符,彈出層提交后,自動進行模板替換,并填入到JDBC連接串。以Oracle10g為例:jdbc:oracle:thin:@${主機地址}:${TNS偵聽端口}:${服務名}彈出窗口需要展示主機地址、TNS偵聽端口、服務名3字段提交表單時,執(zhí)行數(shù)據(jù)庫連通性驗證:CanaryHelper.testDbConnection,如果失敗,則警告用戶,源端點(或者目標端點)無法聯(lián)通,是否繼續(xù)。增量識別機制根據(jù)T_DICT_CDCWHERESTATE=1拉出字典如果選中時間戳觸發(fā),則展示:時間戳字段、步進(秒)兩個頁面元素;如果選中過濾條件觸發(fā),則展示:條件表示式、回填表示式、執(zhí)行刪除、批量條數(shù)幾個頁面元素。時間戳字段必須在上傳映射規(guī)則文件后才能錄入,時間戳字段能夠填寫實體映射(EntityMapping)的實體屬性名(name),或者對應列名(column),而且必須使用簡單屬性(SimplePropertyMapping),以上規(guī)則經過MappingRulesParser.parse得到的映射規(guī)則模型(MRM)進行驗證,如果有錯,則報告前臺。驗證觸發(fā)時期為失去焦點onblur步進的單位為秒,數(shù)據(jù)庫是毫秒,該轉換在MVC-M層或者Service層執(zhí)行轉換條件表示式,為where子句片段,調用sparknet.canary.core.cdc.HqlConverter.convertWhereClauseIfNecessary執(zhí)行驗證和轉換,轉換結果自動替換原值,如果拋出InvalidClauseException則報告前臺。驗證觸發(fā)時期為失去焦點onblur。回填表示式,為set子句片段,調用sparknet.canary.core.cdc.HqlConverter.convertSetClauseIfNecessary執(zhí)行驗證和轉換,轉換結果自動替換原值,如果拋出InvalidClauseException則報告前臺。驗證觸發(fā)時期為失去焦點onblur。如果勾選“執(zhí)行刪除”,則回填表示式灰化,而且值變?yōu)椤癲elete”字樣允許的操作,默認勾選插入、更新如果不允許插入操作,則主鍵沖突處理全部radio灰化改變主鍵插入因為當前不支持,永遠灰化如果勾選“和源端點使用相同的配置”,則目標端點的映射規(guī)則文件灰化。Service層自動把源端點的映射文件賦值給目標端點。對輪詢周期增加提示說明,當鼠標移至“輪詢周期”時顯示提示信息,內容如下:實時性高:1-10實時性中:20-50(推薦)實時性低:50-1000。對步進增加提示說明,當鼠標移至“步進”時顯示提示信息,內容如下:高度并發(fā):1-10中度并發(fā):20-100(推薦)低度并發(fā):150-300。報文模式映射規(guī)則文件和上節(jié)規(guī)則一致源端點的Webservice用戶名,必須全局唯一,即SELECTCOUNT(*)FROMT_ENDPOINTWHEREEP_TYPE=0ANDWS_USER=any的結果<=0WS名字空間默認為提交表單時調用CanaryHelper.testHTTPConnection驗證目標WebService的連通性,如果失敗則提示用戶:目標端點無法聯(lián)通,是否繼續(xù)任務控制功能說明該子模塊負責任務的啟用、停用的控制。頁面設計相關規(guī)則點擊“啟用”,有以下兩種情況:原啟動的任務重新啟動(重啟);原停用的任務啟動。點擊“停用”,也有以下兩種情況:原停用的任務保持停用。原啟用的任務變?yōu)橥S谩?.進入頁面所有顯示狀態(tài)均是STATE=相關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='“所選標記id”andb.state=1停用sqlupdatet_task_defbsetb.task_state=0,b.state_date=sysdatewhereid=“所選標記id”andb.state=1"錯誤日志功能說明該子模塊負責對錯誤的任務的原因以及錯誤詳情提供顯示。頁面設計列表顯示頁:錯誤詳情查看頁:相關規(guī)則事件發(fā)生所處階段:代碼階段中文名說明0PLATFORM_INIT平臺啟動運行時平臺啟動期間的事件1TASK_INIT任務啟動任務初始化期間的事件2TASK_STOP任務停止任務停止期間的事件3TASK_RUN任務運行任務運行時發(fā)生的事件事件類型:代碼事件類型中文名說明嚴重度0TRANS_SUCCEED數(shù)據(jù)交換成功參事件發(fā)布時機NORM1TRANS_FAILED數(shù)據(jù)交換失敗ERROR事件嚴重度級別:代碼嚴重度中文名說明0NORM一般1WARN警告2ERROR錯誤點擊“詳情”能夠查看錯誤日志明細:任務名稱:為發(fā)生錯誤的任務名稱。發(fā)生時間:任務發(fā)生錯誤時的具體時間。線程名稱、消息、錯誤堆棧是經過EventLogger以及CanaryEvent類捕獲的運行平臺的錯誤信息,供技術人員使用,線程名稱為任務發(fā)生錯誤時正在運行的線程名稱,消息為消息號,錯誤堆棧為錯誤信息的堆棧信息。相關SQL查詢sqlselecta.id,DECODE(a.severity,'0','一般','1','警告','2','錯誤')severity,DECODE(a.occur,'1','任務啟動','2','任務停止','3','任務運行')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實例管理功能說明該模塊對任務實例進行增刪改的集中管理,為了適應多臺服務器部署而服務。頁面設計列表頁面:新增管理頁面:修改實例頁面:相關規(guī)則查詢頁面根據(jù)state為1的顯示創(chuàng)立實例是創(chuàng)立人為登錄人員,創(chuàng)立人不可修改修改實例時值自動帶入,創(chuàng)立人不可修改刪除將state置為0,而且將t_task_def表中的INST_ID置空相關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=“實例的ID”運行控制(暫未實現(xiàn))功能說明人機交互模塊,負責數(shù)據(jù)交換任務的啟停、調度、運行時段、輪詢周期等設置。頁面設計查詢頁面與任務定義模塊類似運行控制頁面:相關規(guī)則運行時段,如果不使用cron表示式,則填寫起始時刻-結束時刻,僅支持小時,例如6-18輪詢周期,如果不使用cron表示式,則填寫輪詢間隔的秒數(shù)輪詢周期僅對源端點為被動源端點(即關系型數(shù)據(jù)庫+JDBC端點)的情況有意義,否則隱藏。根據(jù)任務定義中的屬性判斷。任務運行模塊概述該模塊為系統(tǒng)的核心組件——運行時平臺,實現(xiàn)可配置化的數(shù)據(jù)交換服務??膳渲没饕w現(xiàn)在兩個方面:內建對多種傳輸協(xié)議/通信方式的支持,進行數(shù)據(jù)交換時,僅需要在進行任務定義時指定端點連接到本系統(tǒng)的方式,及其必要參數(shù)內建對多種數(shù)據(jù)格式的支持,并經過映射規(guī)則文件指定各種數(shù)據(jù)格式與系統(tǒng)內部數(shù)據(jù)格式之間的關系。僅需要在進行任務定義時指定此映射規(guī)則文件,系統(tǒng)即可完成數(shù)據(jù)格式轉換的自動化基本流程本節(jié)內容在宏觀上描述從源端點產生數(shù)據(jù)、本系統(tǒng)傳遞數(shù)據(jù)到目標端點消費數(shù)據(jù)的整體過程。由于源端點、目標端點沒有任何耦合關系,數(shù)據(jù)交換流程僅以純數(shù)據(jù)庫方式、純報文方式為例,不對四種組合一一闡述。數(shù)據(jù)庫+JDBC流程+時間戳本小節(jié)以源端點、目標端點均為數(shù)據(jù)庫的情況為例,說明數(shù)據(jù)交換的過程。此場景中,源端點為被動源端點。數(shù)據(jù)產生流程:源端點對應的業(yè)務系統(tǒng),不定期把數(shù)據(jù)存儲到源端點中,而且把每行數(shù)據(jù)的時間戳字段設置為系統(tǒng)當前時間,時間精確到秒。如果具有主從表,時間戳字段一律于主表保存。數(shù)據(jù)交換流程:1. 本系統(tǒng)的定時器,根據(jù)cron表示式規(guī)定的周期,觸發(fā)運行2. 定時器檢查源端點中的數(shù)據(jù),如果存在時間戳>上次交換時間戳的數(shù)據(jù),則觸發(fā)數(shù)據(jù)交換3. 設上次交換時間戳為t,單批數(shù)據(jù)交換步進為s。本系統(tǒng)查詢timestamp>tandtimestamp<=t+s的數(shù)據(jù)。而且根據(jù)源端點映射規(guī)則,轉換為內部數(shù)據(jù)格式。注意,如果配置了轉換腳本,在該步驟調用腳本對內部數(shù)據(jù)格式進行轉換。(該功能暫不實現(xiàn))4. 根據(jù)目標端點映射規(guī)則,本系統(tǒng)把內部結構轉換為目標端點的DML語句,入庫5. 設置上次交換時間戳t=t+s6. 轉到3繼續(xù)執(zhí)行,直到沒有增量數(shù)據(jù),轉到77. 本次任務調度結束注意:4、5在單個分布式事務中完成。其中第六步,考慮到不同系統(tǒng)之間可能存在的時差,允許設置一個保留時差,該時差確保:時間戳>當前運行時平臺系統(tǒng)時間-時差的數(shù)據(jù)時,自動停止數(shù)據(jù)的交換。流程示意圖如下圖所示:數(shù)據(jù)庫+JDBC流程+過濾條件根據(jù)并聯(lián)審批的要求,該小節(jié)優(yōu)先實現(xiàn)??傮w上與上一節(jié)流程相似,不同的是:根據(jù)過濾條件,而不是根據(jù)由時間戳構建的查詢條件獲取增量交換完成后,對源數(shù)據(jù)庫執(zhí)行“回填表示式”指定的update操作,而不是記錄時間戳WebService+XML流程本小節(jié)以源端點、目標端點均為WebService端點的情況為例,說明數(shù)據(jù)交換的內部過程。此場景中,源端點為主動源端點。數(shù)據(jù)產生:根據(jù)需要,源端點能夠在業(yè)務數(shù)據(jù)產生時,實時調用本系統(tǒng)的WebService接口發(fā)送XML;或者在業(yè)務數(shù)據(jù)入庫后,由獨立程序負責取出數(shù)據(jù)并轉換為XML、發(fā)送。數(shù)據(jù)交換:1. 源節(jié)點根據(jù)業(yè)務數(shù)據(jù)拼裝XML報文,調用本系統(tǒng)的WebService接口發(fā)送2. 本系統(tǒng)根據(jù)源端點映射規(guī)則,把報文解析為內部數(shù)據(jù)格式。注意,如果配置了轉換腳本,在該步驟調用腳本對內部數(shù)據(jù)格式進行轉換。(該功能暫不實現(xiàn))3. 本系統(tǒng)根據(jù)目標端點映射規(guī)則,把內部數(shù)據(jù)格式轉換為XML報文4. 本系統(tǒng)調用目標端點的WebService,發(fā)送XML報文5. 目標端點解析報文并保存注意:如果任務定義時,“向源端點報告異?!痹O置為總是時,則2、3、4步驟出現(xiàn)任何錯誤,均經過WS調用的返回值(形式為報文)報告源端點;否則,僅當2步驟出現(xiàn)錯誤時,報告源端點。流程示意圖如下圖所示:映射規(guī)則文件工作原理基本結構映射規(guī)則文件使用XML形式來表示。XML根元素為entity-mapping,其每個子元素代表一個實體,元素名為entity。實體能夠映射到某種數(shù)據(jù)格式中的目標,這里的目標能夠指:關系型數(shù)據(jù)庫中的:表或視圖XML報文中的:XML樹中的某個節(jié)點及其子節(jié)點Excel電子表格中的:帶有特定表頭規(guī)格的sheet實體具有字段,字段分為標識符字段、普通字段和引用字段三類。標識符字段代表實體對象的唯一特征,在數(shù)據(jù)格式:“關系型數(shù)據(jù)庫”中,與主鍵對應。標識符字段以及普通字段能夠映射到某種數(shù)據(jù)格式中的目標,這些目標能夠指:關系型數(shù)據(jù)庫中的:列XML報文中的:某個子節(jié)點Excel電子表格中的:列引用字段關聯(lián)其它實體,引用字段對應的實體必須在映射規(guī)則文件中聲明為entity元素。根據(jù)關聯(lián)基數(shù)的不同,引用字段聲明為one-to-many,many-to-one或者many-to-many元素。為簡便起見,在映射規(guī)則文件中,many-to-many特指基于連接表的關聯(lián),雖然使用連接表,能夠表示n:m關聯(lián),也能夠表示1:n甚至1:1關聯(lián)。引用字段能夠映射到某種數(shù)據(jù)格式中的目標,這些目標能夠指:關系型數(shù)據(jù)庫中的:表或視圖——作為該字段所屬實體對應表的子表XML報文中的:XML樹中的某個節(jié)點及其子節(jié)點——作為該字段所屬實體對應節(jié)點的子節(jié)點Excel電子表格中的:帶有特定表頭規(guī)格的sheet——與作為該字段所屬實體對應sheet不是同一個sheet詳細規(guī)定entity-mapping元素該元素為映射規(guī)則文件固定的根元素,包含1-n個實體定義。其中第一個實體定義為實體導航樹的起始點(在數(shù)據(jù)庫中即為“主表”)。entity元素XPath路徑:/entity-mapping/entity該元素代表一個實體定義,引用的實體也定義為獨立的元素。該元素的屬性列表:屬性名稱取值范圍說明name駝峰式大小寫的字符串,首字母小寫全局(在單個任務重)唯一實體的邏輯名稱,內部數(shù)據(jù)格式中,用于識別實體類型table、node不指定時,其值與本屬性一致table字符串實體對應表格的名稱,用于支持數(shù)據(jù)庫映射node字符串實體對應的XML報文元素名(標簽名),用于支持XML映射sheet字符串電子表格Sheet名,用于支持Excel映射sheet-index非負整數(shù)電子表格Sheet索引,從0開始,用于支持Excel映射id元素XPath路徑:/entity-mapping/entity/id該子元素必須出現(xiàn),且出現(xiàn)次數(shù)為1,用于表示實體的標識符字段該元素的屬性列表:屬性名稱取值范圍說明name駝峰式大小寫的字符串,首字母小寫實體的標識符字段的邏輯名稱node、column、xls-column若不指定,則與本屬性一致node字符串或者”.”實體標識符映射到的XML節(jié)點。使用復合標識符的時候,該屬性能夠取值為”.”,表示把復合標識符的子元素直接設置為實體的子元素。如果實體anEntity的標識符node屬性分別設置為“comp-id”和“.”,則報文分別為:<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枚舉,見字段類型列表在使用簡單標識符的情況下使用,表示標識符
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年財務會計制度執(zhí)行與審計手冊
- 高職學生創(chuàng)新能力培養(yǎng)方案設計
- 物業(yè)服務合同及履約管理要點
- 中小學德育課程內容開發(fā)與實施
- 2017年秋季幼兒園安全管理工作計劃
- 2026年智能眼鏡輔助駕駛報告及未來五至十年智能交通報告
- 五星級酒店客房服務流程標準
- 建筑工地安全文明施工標準操作細則
- 教育培訓機構課程設置與質量監(jiān)控
- 維修改造項目監(jiān)理方案與流程
- 2026年黑龍江林業(yè)職業(yè)技術學院單招職業(yè)技能筆試備考試題含答案解析
- 廣東省廣州市2025-2026學年九年級化學上學期期末模擬卷(含答案)
- 湖北省十堰市第二中學高中生物必修一人教版導能量之源光光合作用教案
- 生物實驗室安全管理手冊
- 集團有限公司安全生產責任清單(全員)
- 2025年初級經濟師考試卷附答案
- 重慶市(康德卷)2025-2026學年高三上學期高考模擬調研(二)(12月)數(shù)學試題+答案
- 車輛保證過戶協(xié)議書
- 2026年勞動合同示范文本
- 2021合益勝任力素質等級詞典
- 電焊工考試100題(帶答案)
評論
0/150
提交評論