--- title: DxPrime csv raw data tags: BackendApi,DxPrime disqus: hackmd --- {%hackmd BJrTq20hE %} ## **<font color="#49cc90">[POST]</font> DRG csv raw data上傳** ==End Point== ``` /api/DRGs/UploadCsv ``` * Request files array,支援zip與csv陣列 * 可以支援的上傳模式有四種,1效能最好,4效能最差 * 同一批價序號(fee)重複上傳,會更新內容,不會出現兩筆相同上傳 * 如上傳後執行轉檔,再重複上傳相同批價號(fee)就會出現兩筆轉檔,會取最新上傳那筆當代表,但舊資料會保留 * 上傳資料分為六個項目 1. Pre 基本資料與申報資料 2. Ext 衛材、處置碼、藥物等醫令碼 3. Lab 檢驗與其結果 4. Adn 入院摘要 5. Dis 出院摘要 6. Prg 病程紀錄 7. Srg 手術紀錄 ※Adn、Dis、Prg、Srg內容建議使用base64編碼後放入csv減少上傳失敗可能 ==1. 單zip檔案(推薦)== * [DRGsUpload.zip] * [pre.csv] * pre1 * ... * [ext.csv] * ext1 * ... * [lab.csv] * lab1 * ... * [adn.csv] * adn1 * ... * [dis.csv] * dis1 * ... * [prg.csv] * prg * ... * [srg.csv] * srg * ... ==2. 七個csv檔案== * [pre.csv] * pre1 * ... * [ext.csv] * ext1 * ... * [lab.csv] * lab1 * ... * [adn.csv] * adn1 * ... * [dis.csv] * dis1 * ... * [prg.csv] * prg1 * ... * [srg.csv] * srg1 * ... ==3. 多csv封裝成zip== * [DRGsUpload.zip] * [fee1_pre.csv] * pre * [fee1_ext.csv] * ext * [fee1_lab.csv] * lab * [fee1_adn.csv] * adn * [anyfee_pre.csv] * pre * [anyfee_ext.csv] * ext * [anyfee_lab.csv] * lab * [anyfee_adn.csv] * adn * [anyfee_dis.csv] * dis * [anyfee_prg.csv] * prg * [anyfee_srg.csv] * srg ==4. 多個csv檔案== * [fee1_pre.csv] * pre * [fee1_ext.csv] * ext * [fee1_lab.csv] * lab * [fee1_adn.csv] * adn * [anyfee_pre.csv] * pre * [anyfee_ext.csv] * ext * [anyfee_lab.csv] * lab * [anyfee_adn.csv] * adn * [anyfee_dis.csv] * dis * [anyfee_prg.csv] * prg * [anyfee_srg.csv] * srg ==Response== * 正確上傳http status都會回200,訊息包含以下可能 * 正確完成 {csvFileName} Converted pass. * 檔案格式不支援 {csvFileName} File type is not supported * 檔案解析失敗 Error {csvFileName} Reading failed. * 檔案內容不符合csv規範 BadData Found {csvFileName} * 檔案內容必填內容未填或其解析問題 Warning {csvFileName} {詳細錯誤位置 + 錯誤內容} 回應範例,除prg外其他都上傳成功,Prg csv分隔欄寬不符合規範,無法解析 ``` DxPrimePRE.csv Converted pass. ※ csv parse DxPrimePRE.csv, Running time 46ms ※ Write to db Running time 207ms DxPrimeLAB.csv Converted pass. ※ csv parse DxPrimeLAB.csv, Running time 13ms ※ Write to db Running time 219ms Error DxPrimePRG.csv csv length 11 or file name are not supported, pls check csv length). DxPrimeMED.csv Converted pass. ※ csv parse DxPrimeMED.csv, Running time 29ms ※ Write to db Running time 479ms DxPrimeDIS.csv Converted pass. ※ csv parse DxPrimeDIS.csv, Running time 3ms ※ Write to db Running time 31ms DxPrimeADM.csv Converted pass. ※ csv parse DxPrimeADM.csv, Running time 8ms ※ Write to db Running time 37ms ``` * 上傳失敗http status 400