ORCA DAO
今のところ orca api で実装できなくて dao で対応しているのは以下の項目である。
これらについては,日医標準レセプトソフトに関する改善要望として送ってみた。
・マスタ検索
・push api で送られてくる診療内容コードから「診察」などの文字列への変換
・診療セットの一覧取得
・medicalsetreq での単位名取得
« 2019年2月 | トップページ | 2019年4月 »
今のところ orca api で実装できなくて dao で対応しているのは以下の項目である。
これらについては,日医標準レセプトソフトに関する改善要望として送ってみた。
・マスタ検索
・push api で送られてくる診療内容コードから「診察」などの文字列への変換
・診療セットの一覧取得
・medicalsetreq での単位名取得
以下の 3つの API をまとめた open.dolphin.orca パッケージを作ってサーバ側に置いた。これにより dolphin クライアントは orca に接続する必要がなくなり,クライントのソースから orca 接続関連のコードを一掃してすっきりさせることができた。
以前からカルテデータを orca に送信するのに orca api を使ってはいた。しかし,orca 4.8 までは xml にして送らなければならず,正直プログラミングが苦痛でいじる気がしなかった※。しかし,orca 5.0 から json が使えるようになり, jackson を使ってがぜん楽しくプログラムできるようになった。そこで,2017年から json での orca api プログラミングをこつこつ積み上げて,昨年末までに入院関連を除く api をすべて実装した。そしてやっと今年,足かけ3年を経てとうとう実運用までこぎつけた。
さらに orca 5.0 から WebSocket を使ったプッシュ通信の API が使えるようになった。orca に jma-receipt-pusher パッケージをインストールすると,外からの WebSocket 接続を受け付け,クライアントに受付情報などを送ってくれるようになる。
ORCA API だけでは取れない orca 情報もあるので,dao もパッケージに含めた。ちなみに,api と同じ処理を dao を使って処理すると,dao の方が 10倍くらい速かった。ただ,数十ミリ秒 vs 数百ミリ秒の違いなので,体感的にはほとんど分からない。
OpenDolphin のカルテの印刷は,開業時の個別指導以来,11年間1度も使うことなく現在に至っている。先日,ふと思い立って印刷機能を試してみようとプレビューを出してみたところ,見事に文字化けしていた。
一方,Windows では文字化けしない。
Component に物理フォントを指定すると文字化けしなかったので,mac では PrinterJob の Graphics は Component の論理フォントの扱いがおかしくなっているようだ。印刷機能のためだけにいちいち物理フォントを指定するというのも非現実的である。そこで,PrinterJob の Graphics に渡す前に,BufferedImage の Graphics で一旦イメージに落として,そのイメージを PrinterJob の Graphics に渡すようにして文字化けしないようにした。