接入門戶統一待辦運維經驗小結——更新待辦為已辦
阿新 • • 發佈:2019-02-08
在使用者門戶統一待辦介面上,如果開啟本系統待辦提示如下資訊“當前待辦已處理請勿重複操作”,則出現不能進一步處理業務的問題。
與外部接口出現問題,在所難免,已經識別到原因如下:
- 由於本系統是SOA架構,內部服務間、與門戶介面服務間都是通過Web Service介面,都是非同步呼叫服務,存在時間差情況,例如:在未使用門戶介面操作待辦時,直接在本系統把待辦處理了,而此時的待辦任務有可能未被推送到門戶上。
- 本系統的BUG,例如剛上線時,退回任務未推送到門戶。
注:檢視系統日誌時,如果呼叫推送待辦服務的推送者是root,則是推送不成功而延遲推送的記錄。
解決方案
使用本系統已有的服務“UpdateTaskStatus”來完成這項任務。原理是根據待辦任務例項ID,按門戶介面規範手工半自動推送更新狀態服務。
使用Cordys BOP 4開發環境中“Test Web Gatway”工具,如下圖所示:
首先,通過稽核檢視定位問題待辦任務資料。
select * from vw_pengding_task t where t.pendingtitle = '測試流程管理流程勿動' and t.pendingUserID = 'wangpeng11'
注:查詢條件是pendingtitle(待辦任務標題) 和pendingUserID (待辦處理人)
再根據結果集中的時間來定位具體資料,獲取任務的PendingCode和PendingURL。
以待辦使用者身份登入系統,使用PendingURL來驗證此資料是否是要處理的目標資料。
// 任務例項ID與pnd_task表中的task_instance_id一致 PendingCode='7784542a-f6a7-11e5-f912-79158fc01f90' http://10.64.50.143/home/system/unicom/home/sso_ucloud.htm?userId=wangpeng11&bizInstId=7f178cd5-67f1-11e5-f912-3d12da885709&taskId=7784542a-f6a7-11e5-f912-79158fc01f90&isTask=1&isComplete=1&isProcess=1&orgId=HLJ
如果現象一致,則定位到此條資料。
接著,更新待辦任務處理時間為當前時間,需要注意Cordys的時間是標準時間,與中國的北京時間差8小時,需要在資料庫操作時特殊處理。
update pnd_task t set t.finish_datetime = sysdate - interval '8' hour where t.task_instance_id = '7784542a-f6a7-11e5-f912-79158fc01f90';
commit;
核對修改資料如下:
記錄下完成時間是:2016/2/27 2:50:59,折算北京時間為2016/2/27 10:50:59.
最後,使用“Test Web Gatway”工具,推送更新待辦狀態到門戶。
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<UpdateTaskStatus xmlns="http://unicom.com/workflow" preserveSpace="no" qAccess="0" qValues="">
<taskXml>
<PendingCode>7784542a-f6a7-11e5-f912-79158fc01f90</PendingCode>" +
<PendingTitle>測試流程管理流程勿動</PendingTitle>" +
<PendingDate>20160201112831</PendingDate>" +
<LastUpdateDate>20160227105059</LastUpdateDate>" +
<PendingURL></PendingURL>" +
<PendingStatus>1</PendingStatus>" +
<PendingLevel>1</PendingLevel>" +
<PendingSourceUserID>wangpeng11</PendingSourceUserID>" +
<PendingSource>此處隱去使用者名稱</PendingSource>" +
<PendingNote>hl006</PendingNote>" +
</taskXml>
</UpdateTaskStatus>
</SOAP:Body>
</SOAP:Envelope>
工具操作見參考文件。
請使用者檢視其門戶介面,祝好運,問題待辦任務消失。
參考: