7
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

身の回りの困りごとを楽しく解決!【PR】Works Human IntelligenceAdvent Calendar 2021

Day 20

年末に忘れがちな医療費控除の計算用に! 医療費の記録をする自分用LINE Botを作った話

Last updated at Posted at 2021-12-25

こんにちは、 医療費控除の申請 ってしてますか?

年間で10万円を超える医療費 の自己負担があった場合に控除されるんですよね。毎年1月1日~12月31日までの計算になるので年の瀬の今頃に怪しい年は計算し直しています。

スクリーンショット 2021-12-21 9.18.28.png

年内に治療するか、年明けに治療するか

色々な条件下で例外もあったりはしますが、基本は10万円って感じだと思います。
あと社会保険で割引後の 自己負担額 っていうのもポイントです。

参考: 医療費控除は医療費が10万円以下でも申請できる?5つの注意点も紹介します

現状超えてなくても、この支払いをしたら超えるかもしれない。どうしよう。

僕の場合、 歯医者 がそんな感じでした。
定期検診に行ったら虫歯があってそこを埋めるための素材をどうするか?みたいな話題が上がりました。

そして 保険適用外の素材もあるみたいでけっこうお値段するんですよね。

どう足掻いても年内の計算が10万円に届かないなら翌年の可能性にかけて、年明けの治療にしたいなと思いました。

領収書は捨てないようにしてるけど、いざとなると計算はだるい

10万円を超えるかどうかというよりも、 現状の年間医療費の合計って中々記録してないと分からないと思います。

スクリーンショット 2021-12-21 9.20.35.png

マイナンバーカードとかで見れるといいんですけどねぇ。

LINEにレシート送るだけで計算してくれるものを作りました。

ざっくりと概要説明すると、 病院の領収書の写真を撮ってLINEに送るだけで医療費計算してくれるLINE Botを作りました。

以下の動画はOCR(写真からテキスト抽出)周りのデモだけの動画ですが、イメージはこんな感じです。

  • LINEに送った写真はGoogleドライブにも保存
  • 医療費はGoogleスプレッドシートに記録されていく

といった機能があります。

基本ノーコードな実装

Integromatを使ってノーコード実装となっています。

書いてて気づきましたが、フローの後半のOCR部分はGASも使ってるので完全ノーコードではないです

スクリーンショット 2021-12-20 20.44.59.png

LINE Bot部分

IntegromatのLINEモジュールは専用のWebhookを作成することができます。 この辺は#LINEDCのイベントで発表してきました。

スクリーンショット 2021-12-21 10.29.37.png
https://speakerdeck.com/n0bisuke2/ipaasdekodowoshu-kazuni-tiyantoline-bot-wozuo-ru-number-linedc

Google DriveのOCR

他にもOCR系のライブラリを試してみましたが、Google DriveのOCRが無料で手軽でした。

こちらの記事を参考に... というかロジックそのままでgetTextByFileId関数を作って結果を返すようにしています。GASがJavaScriptな感じになってきて嬉しいですね。

function getTextByFileId(fileId) {

  const resource = {
    title: "test" // ここは途中で生成されるファイル名の指定です(ファイルを消すのでなんでもいいです)
  };

  const option = {
    "ocr": true,// OCRを行うかの設定です
    "ocrLanguage": "ja",// OCRを行う言語の設定です
  }

  const image = Drive.Files.copy(resource, fileId, option)

  const text = DocumentApp.openById(image.id).getBody().getText();

  Drive.Files.remove(image.id);

  // console.log(text);

  return text;
}

ここに来て思いましたが、全てがノーコードではなかったですね苦笑

スクリーンショット 2021-12-21 10.32.11.png

Integromatで設定してGoogle Driveにバックアップ的に画像が保存もされてます。

スプレッドシート

最後にOCR読み込みしたテキストもスプレッドシートに保存しておきます。

スクリーンショット 2021-12-25 23.26.57.png

所感

先日書いた記事で試したtesseract.jsのOCRも日本語対応してましたが、

精度はけっこう微妙だった印象です。そこと比較するとGoogle DriveのOCRはかなり優秀な印象です。

GASを使うので完全ノーコードではなかったですが(この辺り書いてて気づいた)、LINE Botを作るくらいだと完全にノーコードでやれる時代になったんだなと実感させられます。

OCR入れてもちょっとのGASコードを書くくらいで、ほぼコードを書かずにこれくらいの仕組みを作れるのはかなり衝撃的です。

医療費の計算もスプレッドシート上で出来てめちゃめちゃ楽できるようになりました。

実用的なものがこれくらいの労力で実装出来るようになってきたという事例ですね。

来年はOCR含めて完全にノーコードになるかもしれませんね。
来年が楽しみです!

ということで皆さん良いお年を!

7
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?