⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hpir_table.sql

📁 .net 开发的基础框架
💻 SQL
字号:
// 病人资料
Create Table HPIR_Patient
(
	Pat_Id		varchar2(20)	primary key,
	Pat_Name	varchar2(20)	not null,
	Pat_Sex		varchar2(1)	not null,
	Pat_Birthday	number(8,0)	null,
	Pat_BirthTime	number(6,0)	null
);

// 就诊卡
Create Table HPIR_PatCard
(
	Card_Id		varchar2(20) 	primary key,
	Pat_Id		varchar2(20) 	not null,
	STS		varchar2(1)	not null
);

// 临床科室(部门)
Create Table HPIR_ClincDepartment
(
	CD_Id		number(6,0)	primary key,
	CD_Name		varchar2(20)	not null,
	CD_Type		varchar2(1)	not null,	// A - 病区,C - 临床
	f_id		number(6,0)	not null,	// 上一级科室
	CD_Code		varchar2(6)	null,		// 科室编码
	STS		varchar2(1)	not null
);

// 临床医生
// 由system_user 表导出视图
CREATE VIEW HPIR_V_ClinicDoctor
(
	USER_ID,USER_NO,USER_NAME,STS,DEP_ID
) 
	AS
	SELECT USER_ID,
		USER_NO,
		USER_NAME,
		STS,
		DEP_ID
	FROM SYSTEM_USER WHERE DEP_ID > 0


// 诊别
Create Table HPIR_RegisterType
(
	RegType_Id	varchar2(1)	primary key,
	RegCaption	varchar2(12)	not null,	// 诊别简称
	RegType_Name	varchar2(60)	not null,	// 诊别名称
	Reg_PriceID	number(10,0)	not null,	// 收费项目
	STS		varchar2(1)
);

// 门诊排班
Create Table HPIR_ClinicSchedule
(
	Reg_Date	number(8,0)	not null,	// 日期(1,2...7表示星期几,20070108表示2007年1月8日)
	CD_Id		number(6,0)	not null,	// 临床科别
	CD2_Id		number(6,0)	not null,	// 临床2级科别
	RegType_Id	varchar2(1)	not null,	// 诊别
	Doct_Id		number(6,0)	not null,	// 0 不分医生
	AP_STS		varchar2(1) 	not null,	// 0 - 全天 A - 上午 P - 下午
	Reg_C0		number(4,0) 	not null,	// 可挂数
	Reg_C1		number(4,0)	not null,	// 已挂数
	Reg_C2		number(4,0)	not null,	// 退挂数
	Reg_C3		number(4,0)	not null,	// 已诊数
	RegPriceID	number(8,0)	null,		// 诊察费
	primary key(Reg_Date,CD_Id,CD2_Id,RegType_Id,Doct_Id)
);

// 西药分类

// 西药

// 中药分类

// 中药

// 收费项目视图
CREATE VIEW hpir_v_item 
(id,pinyinm,xiangmumc,yiyuandj,jijiadw,type_code,type_name,inv_code) 
AS 
SELECT "PRICE_I_ITEMPRICE"."ID",
	"PRICE_I_ITEMPRICE"."PINYINM",
	"PRICE_I_ITEMPRICE"."XIANGMUMC",
	"PRICE_I_ITEMPRICE"."YIYUANDJ", 
	"PRICE_I_ITEMPRICE"."JIJIADW", 
	'0001', 
	'费用', 
	"PRICE_I_ITEMPRICE"."PIAOJUFLBM" 
 FROM "PRICE_I_ITEMPRICE" 
union 
SELECT "T_YPXX_XI"."ID", 
	"T_YPXX_XI"."PYDM", 
	"T_YPXX_XI"."YPMC_CHN", 
	"T_YPXX_XI"."YPDJ", 
	"T_YPXX_XI"."JLDW", 
	'0002', 
	'西药', 
	'X' 
 FROM "T_YPXX_XI" 
union 
SELECT "T_YPXX_CAO"."ID", 
	"T_YPXX_CAO"."PYDM", 
	"T_YPXX_CAO"."YPMC_CHN",
	"T_YPXX_CAO"."YPDJ", 
	"T_YPXX_CAO"."JLDW", 
	'0003', 
	'草药', 
	'Z' 
	 FROM "T_YPXX_CAO" 
; 

// ---- 申请单相关表 ----------------------------------------------
// 申请单类型
Create Table HPIR_Form_Catalog
(
	ID	varchar2(6) not null primary key,
	Caption	varchar2(30)	not null
);

// 申请单主表
Create Table HPIR_Form
(
	ID		number(10,0)	not null,	// 编号
	FormType	varchar2(6)	not null,	// 申请单类型
	Model_Sts	varchar2(1)	not null,	// 模版标志(0 - 模版,1 - 普通申请单)
	Model_ID	number(10,0)	not null,	// 如果是普通申请单,该字段表示使用的模版编号
	Caption		varchar2(100)	null,		// 摘要
	Sts_JS		varchar2(1)	null,		// 结算标志 T - 结算 F - 未结算
	Sts_ZX		varchar2(1)	null,		// 执行标志 T - 执行 F - 未执行
	Sts_ZF		varchar2(1)	null,		// 作废标志 T - 作废 F - 未作废
	Sts_PS		varchar2(1)	null,		// 皮试标志 P - 阴性 A - 阳性 D - 待查 M - 免皮试 N - 不需要
	Acc_ID		number(10,0)	not null,	// >=1 - 结算编号,0 - 未结算,-1 - 作废
	Source		varchar2(1)	not null,	// M - 门诊,Z - 住院,J - 急诊
	Patient_ID	varchar2(15)	null,		// 病历号
	BedID		number(6,0)	null,		// 病床
	BedDept		number(6,0)	null,		// 病区(病床所在部门)
	KDDate		number(8,0)	not null,	// 开单日
	KDTime		number(6,0)	not null,	// 开单时间
	KDMan		number(6,0)	null,		// 开单人
	KDDept		number(6,0)	null,		// 开单部门(开单人所在的部门)
	ZXDate		number(8,0)	null,		// 执行日
	ZXTime		number(6,0)	null,		// 执行时间
	ZXMan		number(6,0)	null,		// 执行人
	ZXDept		number(6,0)	null,		// 执行部门(执行人所在的部门)
	ZX_No		number(4,0)	null,		// 执行序号
	ZX_AP		varchar2(1)	null,		// 上午/下午
	RegDate		number(8,0)	null,		// 看诊日
	Reg_AP		varchar2(1)	null,		// 上午/下午
	Reg_No		number(4,0)	null,		// 看诊号
	RegType		varchar2(1)	null,		// 诊别
	YouHuiLX	varchar2(1)	null,		// 优惠类型
	RegDoctor	number(6,0)	null,		// 拟诊医师
	RegDept		number(6,0)	null,		// 拟诊科室
	RegDept_2	number(6,0)	null,		// 拟诊二级学科		
	LastVersion	number(6,0)	null,		// 申请单最后的版本号
	primary key(ID)
);



// 申请单实际费用(根据项目收费进行汇总后)
Create Table HPIR_Form_Feiyong
(
	Form_ID		number(10,0)	not null,	// 申请单编号
	P_ItemID	number(10,0)	not null,	// 收费标准编号
	P_ItemType	varchar2(4)	not null,	// 收费项目类型
	P_ItemPrice	number(12,3)	not null,	// 单价
	Num		number(8,0)	not null,	// 数量
	Zifei_Sts	varchar2(1)	not null,	// 自费标志(0 - 公费,1 - 自费)
	BaoxianJB	varchar2(1)	not null,	// 保险级别(甲,乙,丙)
	BaoxianXZ	varchar2(1)	not null,	// 保险限制(0 - 不限,1 - 受限)
	primary key(Form_ID,P_ItemID,P_ItemType)
);

// 申请单上的项目
Create Table HPIR_FormItem
(
	ID		number(10,0)	not null,	// 编号
	Caption		varchar2(40)	null,		// 显示文本
	F_ID		number(10,0)	not null,	// 父项编号
	Max_Selected	number(3,0)	not null,	// 最多选择数量
	Feiyong_Sts	varchar2(1)	not null,	// 收费标志(0 - 收费,1 - 不收费)
	Bixuan_Sts	varchar2(1)	not null,	// 比选标志(0 - 必选,1 - 不是必选)
	Pishi_Sts	varchar2(1)	not null,	// 皮试标志(0 - 需要皮试,1 - 不要皮试,2 - 免皮试)
	ItemType	varchar2(1)	not null,	// 项目类型(文本型,选择型,图片型)
	TableSyntax	varchar2(1000)	null,		
	ViewSyntax	varchar2(1000)	null,
	Other_Sys_Code	varchar2(30)	null,		// 与其他系统交互时使用的编号
	Information	varchar2(300)	null,		// 信息
	Form_ID		number(10,0)	not null,	// 申请单编号
	ItemValue	varchar2(100)	not null,	// 申请单项目的实际数据
	primary key(Form_ID,ID)
);



// 申请单项目的关联收费模版
Create Table HPIR_FormItem_F
(
	Form_ID		number(10,0)	not null,	// 申请单编号
	Item_ID		number(10,0)	not null,	// 项目编号
	XH		number(3,0)	not null,	// 序号
	Feiyong_Code	varchar2(30)	not null,	// 费用项目代码
	Num		number(3,0)	not null,	// 数量
	primary key(Form_ID,Item_ID,XH)
);


// 申请单结算记录
Create Table HPIR_FormAccount
(
	ID		number(10,0)	not null,	// 结算编号
	Form_ID		number(10,0)	not null,	// 申请单编号
	AccDate		number(8,0)	not null,	// 结算日
	AccTime		number(6,0)	not null,	// 结算时间
	AccMan		number(6,0)	not null,	// 结算人
	AccDept		number(6,0)	not null,	// 结算部门
	AccDir		varchar2(1)	not null,	// 结算方向 [+]正向结算 [-]反向结算
	AccType		varchar2(1)	not null,	// 结算方式 A - 欠款,C - 现金
	primary key(ID,Form_ID)
);

// 发票类别
Create Table HPIR_InvCodeCatalog
(
	Inv_Code	varchar2(1)	not null,
	Inv_Name	varchar2(20)	null,
	MZ_STS		varchar2(1)	not null,
	ZY_STS		varchar2(1)	not null,
	primary key(Inv_Code)
);



// 发票
Create Table HPIR_Invoice
(
	ID		number(10,0)	not null,	// 内部编号
	InvNo		varchar2(12)	not null,	// 发票号码
	InvType		varchar2(1)	not null,	// M 门诊发票 Z 住院发票
	STS_ZF		varchar2(1)	not null,	// 作废标志 T 作废 F 未作废
	TransNo		varchar2(30)	null,		// 保险交易号
	AccID		number(10,0)	null,		// 内部结算编号
	ActDate		number(8,0)	not null,	// 发生日期
	ActTime		number(6,0)	not null,	// 发生时间
	ActMan		number(6,0)	not null,	// 收款人
	PayerID		varchar2(15)	null,		// 付款人编号
	PayerName	varchar2(20)	null,		// 付款人姓名
	SUM_YS		number(10,2)	null,		// 应收金额
	SUM_ML		number(4,2)	null,		// 抹零金额
	SUM_SL		number(10,2)	null,		// 实收金额
	SUM_JZ		number(10,2)	null,		// 记帐金额(保险等)
	primary key(ID)
);

// 发票明细
Create Table HPIR_InvDetail
(
	ID		number(10,0)	not null,	// 内部编号
	Inv_Code	varchar2(1)	not null,
	SUM_YS		number(10,2)	null,		// 应收金额
	primary key(id,Inv_Code)
);

// 现金记录
Create Table HPIR_CashRecord
(
	ID		number(10,0)	not null,	// 编号
	ActType		varchar2(1)	not null,	// M - 门诊 N - 门诊退款 L - 门诊预收 K - 退门诊预收 G - 挂号 T - 退号
							// Z - 住院 X - 住院退款 Y - 住院预收 W - 退住院预收
	ActDate		number(8,0)	not null,	// 发生日期
	ActTime		number(6,0)	not null,	// 发生时间
	ActMan		number(6,0)	not null,	// 收款人
	PayerID		varchar2(15)	null,		// 付款人编号
	PayerName	varchar2(20)	null,		// 付款人姓名
	AccNo		varchar2(30)	null,		// 付款人帐号(或者保险编号)
	TransNo		varchar2(30)	null,		// 保险交易号
	InvoiceID	number(10,0)	null,		// 内部发票号码
	AccID		number(10,0)	null,		// 内部结算编号
	JZ_ID		number(10,0)	not null,	// 结帐单编号
	SUM_YS		number(10,2)	null,		// 应收金额
	SUM_ML		number(4,2)	null,		// 抹零金额
	SUM_SL		number(10,2)	null,		// 实收金额
	SUM_JZ		number(10,2)	null,		// 记帐金额(保险等)
	primary key(ID)
);

// 收款人结帐记录
Create Table HPIR_CasherJZRecord
(
	ID		number(10,0)	not null,	// 结帐单编号
	ActDate		number(8,0)	not null,	// 发生日期
	ActTime		number(6,0)	not null,	// 发生时间
	ActMan		number(6,0)	not null,	// 收款人
	SR_Bishu	number(5,0)	null,		// 收入比数
	SR_Jine		number(12,2)	null,		// 收入金额
	ZC_Bishu	number(5,0)	null,		// 支出比数
	ZC_Jine		number(12,2)	null,		// 支出金额
	primary key(ID)		
);

// 收款员发票
Create Table HPIR_CasherInvoice
(
	ActMan		number(6,0)	not null,	// 收款人
	XH		number(8,0)	not null,	// 领用序号
	InvType		varchar2(1)	not null,	// M - 门诊 Z - 住院
	CurrentInvoiceNo	number(10,0)	not null,	// 当前发票号码
	primary key(ActMan,XH,InvType)
);


// 预收款账户
Create Table HPIR_PayerAccount
(
	AccNo		varchar2(30)	not null,		// 付款人帐号(或者保险编号)
	AccType		varchar2(1)	not null,		// M - 门诊 Z - 住院
	PayerID		varchar2(15)	null,			// 付款人编号
	Balance		number(10,2)	not null,		// 账户余额		
);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -