コンテンツにスキップ

CreateShinryouConductRequest

診療行為と処置をまとめて登録するためのリクエストを表すモデル。診察に、複数の診療行為と複数の処置を一度に追加する際に使います。

定義: src/lib/models/create-shinryou-conduct-request.ts

CreateShinryouConductRequest

フィールド 説明
shinryouList Shinryou[] 追加する診療行為の一覧
conducts CreateConductRequest[] 追加する処置の一覧(下記)

CreateConductRequest

1 つの処置を登録するためのデータです。

フィールド 説明
visitId number どの診察の処置か(Visit
kind number 処置の種類(ConductKind のコード)
labelOption string(省略可・null 可) 画像処置のラベル
shinryouList ConductShinryou[] 処置内の診療行為
drugs ConductDrug[] 処置内の薬
kizaiList ConductKizai[] 処置内の器材

型定義

import { z } from "zod";

import { conductDrugSchema } from "@/lib/models/conduct-drug";
import { conductKizaiSchema } from "@/lib/models/conduct-kizai";
import { conductShinryouSchema } from "@/lib/models/conduct-shinryou";
import { shinryouSchema } from "@/lib/models/shinryou";

export const createConductRequestSchema = z.object({
  visitId: z.number(),
  kind: z.number(),
  labelOption: z.string().nullable().optional(),
  shinryouList: z.array(conductShinryouSchema),
  drugs: z.array(conductDrugSchema),
  kizaiList: z.array(conductKizaiSchema)
});

export const createShinryouConductRequestSchema = z.object({
  shinryouList: z.array(shinryouSchema),
  conducts: z.array(createConductRequestSchema)
});

export type CreateConductRequest = z.infer<typeof createConductRequestSchema>;
export type CreateShinryouConductRequest = z.infer<
  typeof createShinryouConductRequestSchema
>;