コンテンツにスキップ

HokenInfo

1 回の診察で使う保険の組み合わせを、ひとまとめにしたモデル。医療保険 1 つと、複数の公費をまとめて持ちます。

定義: src/lib/models/hoken-info.ts

フィールド

フィールド 説明
shahokokuho Shahokokuho(省略可) 社保国保
roujin Roujin(省略可) 老人保健
koukikourei Koukikourei(省略可) 後期高齢者医療
kouhiList Kouhi[] 公費の一覧

備考

  • 医療保険(社保国保・老人保健・後期高齢)はいずれか 1 つ、公費は複数を併用できます。
  • 保険を ID の組だけで表す場合は HokenIdSet を使います。

型定義

import { z } from "zod";
import { kouhiSchema } from "@/lib/models/kouhi";
import { koukikoureiSchema } from "@/lib/models/koukikourei";
import { roujinSchema } from "@/lib/models/roujin";
import { shahokokuhoSchema } from "@/lib/models/shahokokuho";

export const hokenInfoSchema = z.object({
  shahokokuho: shahokokuhoSchema.optional(),
  roujin: roujinSchema.optional(),
  koukikourei: koukikoureiSchema.optional(),
  kouhiList: z.array(kouhiSchema).optional().default([])
});

export type HokenInfo = z.infer<typeof hokenInfoSchema>;