--prompt 01、TR_BM_BRXXB0_TSJCPT 病人基本信息推送中间表、患者主索引推送 SD_DZBLJK.JCPT_PATIENTINFO、SD_DZBLJK.JCPT_EMPIREGISTER
CREATE OR REPLACE TRIGGER TR_BM_BRXXB0_TSJCPT
 AFTER
 INSERT OR UPDATE
 ON BM_BRXXB0
 REFERENCING OLD AS OLD NEW AS NEW
 FOR EACH ROW
declare
  LS_CZBZ00     varchar2(10);
  LS_FLAG       varchar2(10);
  LS_YLFKFS     varchar2(10);
  LS_FKFSMC     varchar2(30);
  LN_NL0000     number(5);
  LS_NLDW00     varchar2(10);
  LS_NLSM00     varchar2(20);
  LS_FBMC00     BM_BRFBB0.FBMC00%type;
--LS_CZYXM0     BM_YGBM00.ZWXM00%type;
  LS_ICKH00     IC_YHXX00.ICKH00%type;
  LS_CSRQ00     BM_BRXXB0.BRCSRQ%type;
  LS_HISTS0     XT_XTCS00.VALUE0%type;
-- MODIFICATION HISTORY
-- Person       Date          Comments
-- LinBin       2022.05.27    create;
-- LinBin       2022.06.08    增加写主索引推送中间表
-- LinBin       2022.06.09    限制需要推送的字段有变更才产生到中间表
-- Jiangjh      2022.07.19    出生日期与身份证日期对应不上处理
-- chenrenzhong 2023.03.02    EMP需要his这边自己推送来弹出界面，故增加系统参数控制，排除非his操作员
-- Jiangjh      2023.03.03    患者主索引 性别编码为空处理
-- chenrenzhong 2023.07.17    修改时要调用精确查询，给insert和update标识
-- chenrh       2023.11.07    外国人居留证建档，过滤出生日期与身份证出生日期不匹配处理
--------------- -----------   --------------------------------------------------
begin

  if updating and
     (nvl(:old.BRID00,0)=nvl(:new.BRID00,0)) and
     (nvl(:old.FBBH00,0)=nvl(:new.FBBH00,0)) and
     (nvl(:old.TYDWID,0)=nvl(:new.TYDWID,0)) and
     (nvl(:old.CZY000,0)=nvl(:new.CZY000,0)) and
     (nvl(:old.YBKH00,' ')=nvl(:new.YBKH00,' ')) and
     (nvl(:old.BRXM00,' ')=nvl(:new.BRXM00,' ')) and
     (nvl(:old.XBBH00,' ')=nvl(:new.XBBH00,' ')) and
     (nvl(:old.BRXB00,' ')=nvl(:new.BRXB00,' ')) and
     (nvl(:old.BRCSRQ,' ')=nvl(:new.BRCSRQ,' ')) and
     (nvl(:old.BRCSSJ,' ')=nvl(:new.BRCSSJ,' ')) and
     (nvl(:old.HYZKBH,' ')=nvl(:new.HYZKBH,' ')) and
     (nvl(:old.BRHYZK,' ')=nvl(:new.BRHYZK,' ')) and
     (nvl(:old.ZYBH00,' ')=nvl(:new.ZYBH00,' ')) and
     (nvl(:old.BRZY00,' ')=nvl(:new.BRZY00,' ')) and
     (nvl(:old.MZBH00,' ')=nvl(:new.MZBH00,' ')) and
     (nvl(:old.BRMZ00,' ')=nvl(:new.BRMZ00,' ')) and
     (nvl(:old.GJBH00,' ')=nvl(:new.GJBH00,' ')) and
     (nvl(:old.BRGJ00,' ')=nvl(:new.BRGJ00,' ')) and
     (nvl(:old.ZJLXBH,' ')=nvl(:new.ZJLXBH,' ')) and
     (nvl(:old.BRZJLX,' ')=nvl(:new.BRZJLX,' ')) and
     (nvl(:old.BRZJBH,' ')=nvl(:new.BRZJBH,' ')) and
     (nvl(:old.BRZTQK,' ')=nvl(:new.BRZTQK,' ')) and
     (nvl(:old.TYDWMC,' ')=nvl(:new.TYDWMC,' ')) and
     (nvl(:old.TYDWYB,' ')=nvl(:new.TYDWYB,' ')) and
     (nvl(:old.BRJTDZ,' ')=nvl(:new.BRJTDZ,' ')) and
     (nvl(:old.BRYB00,' ')=nvl(:new.BRYB00,' ')) and
     (nvl(:old.BRDH00,' ')=nvl(:new.BRDH00,' ')) and
     (nvl(:old.BRLXXM,' ')=nvl(:new.BRLXXM,' ')) and
     (nvl(:old.LXGXBH,' ')=nvl(:new.LXGXBH,' ')) and
     (nvl(:old.BRLXGX,' ')=nvl(:new.BRLXGX,' ')) and
     (nvl(:old.EMAIL0,' ')=nvl(:new.EMAIL0,' ')) and
     (nvl(:old.BRLXDH,' ')=nvl(:new.BRLXDH,' ')) and
     (nvl(:old.BRLXDZ,' ')=nvl(:new.BRLXDZ,' ')) and
     (nvl(:old.BRYB00,' ')=nvl(:new.BRYB00,' ')) and
     (nvl(:old.BRYB01,' ')=nvl(:new.BRYB01,' ')) and
     (nvl(:old.BRXX00,' ')=nvl(:new.BRXX00,' ')) and
     (nvl(:old.RH0000,' ')=nvl(:new.RH0000,' ')) and
     (nvl(:old.BRSZSF,' ')=nvl(:new.BRSZSF,' ')) and
     (nvl(:old.BRSZS0,' ')=nvl(:new.BRSZS0,' ')) and
     (nvl(:old.BRSZZ0,' ')=nvl(:new.BRSZZ0,' ')) and
     (nvl(:old.BRSZC0,' ')=nvl(:new.BRSZC0,' ')) and
     (nvl(:old.BRXZSF,' ')=nvl(:new.BRXZSF,' ')) and
     (nvl(:old.BRXZS0,' ')=nvl(:new.BRXZS0,' ')) and
     (nvl(:old.BRXZZ0,' ')=nvl(:new.BRXZZ0,' ')) and
     (nvl(:old.BRXZC0,' ')=nvl(:new.BRXZC0,' ')) and
     (nvl(:old.BRXZDZ,' ')=nvl(:new.BRXZDZ,' ')) and
     (nvl(:old.CZRQ00,' ')=nvl(:new.CZRQ00,' ')) and
     (nvl(:old.CZSJ00,' ')=nvl(:new.CZSJ00,' ')) and
     (nvl(:old.BRZTQK,' ')=nvl(:new.BRZTQK,' ')) then
    return;
  end if;

  if inserting then
    LS_CZBZ00 := '1';  --处理类型 1-新增 2-修改 3-删除
  else
    LS_CZBZ00 := '2';  --处理类型 1-新增 2-修改 3-删除
  end if ;
  --出生日期与身份证出生日期不匹配处理
  if nvl(:new.BRZJBH,' ')<>' ' and substrb(:new.BRZJBH,7,8)<>:new.BRCSRQ  and :new.BRZJLX='居民身份证（户口簿）' then
    LS_CSRQ00:=substrb(:new.BRZJBH,7,8);
  else
    LS_CSRQ00:=:new.BRCSRQ;
  end if;
  select max(FBMC00) into LS_FBMC00 from BM_BRFBB0 where FBBH00=:new.FBBH00 ;
--select max(ZWXM00) into LS_CZYXM0 from BM_YGBM00 where YGBH00=:new.CZY000 ;

  select trim(SF_BLJK_INIYLFKFS_SELF(:new.FBBH00,:new.BRZTQK)) into LS_YLFKFS from dual;
  select decode(LS_YLFKFS,'01','城镇职工基本医疗保险','02','城镇居民基本医疗保险','03','新型农村合作医疗',
         '04','贫困救助','05','商业医疗保险','06','全公费','07','全自费','08','其他社会保险','09','其他') into LS_FKFSMC from dual;

  select max(ICKH00) into LS_ICKH00 from IC_YHXX00 where BRID00=:new.BRID00 and ZT0000=1 and rownum=1 ;
  select SF_BM_CSRQZNL(LS_CSRQ00,0), SF_BM_CSRQZNL(LS_CSRQ00,1), SF_BM_CSRQZNL(LS_CSRQ00,1) into LN_NL0000, LS_NLSM00, LS_NLDW00 from dual ;

  select nvl(max(VALUE0),'0') into LS_HISTS0 from XT_XTCS00 where NAME00 ='SF_MZJDBRXXHISTSEMPI';

  --写病人基本信息推送中间表
  insert into SD_DZBLJK.JCPT_PATIENTINFO(
    RECORDFLOW,                                      --记录流水号 必填 key
    PID,                                             --病人ID必填
    INSURANCENO,                                     --病人医保号
    PATIENTNAME,                                     --病人姓名必填
    TMPFLAG,                                         --临时用名标志（正式、临时）
    LASTNAME,                                        --病人姓氏
    FIRSTNAME,                                       --病人名
    PY,                                              --病人姓名拼音码
    WB,                                              --病人姓名五笔码
    SEXCODE,                                         --病人性别代码必填
    SEX,                                             --病人性别必填
    DATEOFBIRTH,                                     --病人出生日期 格式 yyyyMMdd
    TIMEOFBIRTH,                                     --病人出生时间 格式 hhmmss
    MARRIAGESTATUSCODE,                              --病人婚姻状况代码必填
    MARRIAGESTATUS,                                  --病人婚姻状况必填
    OCCUPATIONCODE,                                  --病人职业代码
    OCCUPATION,                                      --病人职业
    NATIONALITYCODE,                                 --病人民族代码必填
    NATIONALITY,                                     --病人民族必填
    COUNTRYCODE,                                     --病人国籍代码必填
    COUNTRY,                                         --病人国籍必填
    FORMALSCHOOLINGCODE,                             --病人文化水平代码
    FORMALSCHOOLING,                                 --病人文化水平
    RELIGION,                                        --病人宗教信仰
    BIRTHPLACECODE,                                  --病人出生地代码
    BIRTHPLACE,                                      --病人出生地
    NATIVEPLACECODE,                                 --病人籍贯代码
    NATIVEPLACE,                                     --病人籍贯
    CERTTYPECODE,                                    --病人证件类型代码
    CERTTYPE,                                        --病人证件类型
    CERTNO,                                          --病人证件号
    PATIENTCLASSCODE,                                --病人身份代码
    PATIENTCLASS,                                    --病人身份
    FEETYPECODE,                                     --病人费用类型代码
    FEETYPE,                                         --病人费用类型
    COMPANY,                                         --病人工作单位
    PUBLICEXPENSENO,                                 --病人医疗证号
    CONTRACTUNITCODE,                                --合同单位代码
    CONTRACTUNIT,                                    --合同单位
    BUSINESSADDRESSCODE,                             --病人工作单位地址代码
    BUSINESSADDRESS,                                 --病人工作单位地址
    BUSINESSPOSTCODE,                                --病人工作单位邮编
    BUSINESSPHONE,                                   --病人工作单位电话
    HOMEADDRESSCODE,                                 --病人家庭住址代码
    HOMEADDRESS,                                     --病人家庭住址
    HOMEPOSTCODE,                                    --病人家庭地址邮编
    MOBILEPHONE,                                     --病人手机号
    CONTACT,                                         --联系人
    RELATIONCODE,                                    --联系人关系代码
    RELATION,                                        --联系人关系
    CONTACTEMAIL,                                    --联系邮箱
    CONTACTMETHOD,                                   --联系方式
    VIPTYPE,                                         --重点病人类型
    OPERATORID,                                      --经办人ID
    OPERATOR,                                        --经办人
    OPERATORTIME,                                    --办理时间,格式yyyyMMddHHmmss
    AVAILABLE,                                       --可用标志 Y-可用 N-停用
    MANAGETYPE,                                      --处理类型 1-新增 2-修改 3-删除
    INSURANCETYPECODE,                               --医保类型代码
    INSURANCETYPE,                                   --医保类型
    REGISTEREDADDRESSCODE,                           --户口地址代码
    REGISTEREDADDRESS,                               --户口地址
    CONTACTADDRESSCODE,                              --联系人地址代码
    CONTACTADDRESS,                                  --联系人地址
    REGISTEREDPOSTCODE,                              --户籍所在地邮编
    CONTACTPOSTCODE,                                 --联系人邮编
    BLOODTYPE,                                       --血型
    RHBLOODTYPE,                                     --RH血型
    CHLIDAGEDESC,                                    --不足一周岁年龄
    REGISTEREDADDRESSPROVINCE,                       --户口地址省
    REGISTEREDADDRESSCITY,                           --户口地址市
    REGISTEREDADDRESSCOUNTY,                         --户口地址区
    REGISTEREDADDRESSDETAILS,                        --户口详细地址
    CURRENTADDRESSPROVINCE,                          --现住址省
    CURRENTADDRESSCITY,                              --现住址市
    CURRENTADDRESSCOUNTY,                            --现住址区
    CURRENTADDRESSDETAILS,                           --现住址详细
    CURRENTADDRESS,                                  --现住址（全）
    CURRENTADDRESSCODE,                              --现住址代码
    NATIVEPLACEPROVINCE,                             --籍贯省
    NATIVEPLACECITY,                                 --籍贯市
    BIRTHPLACEPROVINCE,                              --出生地省
    BIRTHPLACECITY,                                  --出生地市
    BIRTHPLACECOUNTY                                 --出生地区
  )
  values(
    SQ_JCPT_PATIENTINFO_RECORD.nextval,              --记录流水号 必填 key
    to_char(:new.BRID00),                            --病人ID必填
    :new.YBKH00,                                     --病人医保号
    :new.BRXM00,                                     --病人姓名必填
    '正式',                                          --临时用名标志（正式、临时）
    substr(:new.BRXM00,1,1),                         --病人姓氏
    substr(:new.BRXM00,2,20),                        --病人名
    SF_XT_GETPYSM(:new.BRXM00),                      --病人姓名拼音码
    SF_XT_GETWBSM(:new.BRXM00),                      --病人姓名五笔码
    nvl(:new.XBBH00,decode(:new.BRXB00,'男','1','女','2','9')),                                     --病人性别代码必填
    :new.BRXB00,                                     --病人性别必填
    LS_CSRQ00,                                     --病人出生日期 格式 yyyyMMdd
    :new.BRCSSJ,                                     --病人出生时间 格式 hhmmss
    :new.HYZKBH,                                     --病人婚姻状况代码必填
    :new.BRHYZK,                                     --病人婚姻状况必填
    :new.ZYBH00,                                     --病人职业代码
    :new.BRZY00,                                     --病人职业
    :new.MZBH00,                                     --病人民族代码必填
    :new.BRMZ00,                                     --病人民族必填
    :new.GJBH00,                                     --病人国籍代码必填
    :new.BRGJ00,                                     --病人国籍必填
    null,                                            --病人文化水平代码
    null,                                            --病人文化水平
    null,                                            --病人宗教信仰
    null,                                            --病人出生地代码
    null,                                            --病人出生地
    null,                                            --病人籍贯代码
    null,                                            --病人籍贯
    :new.ZJLXBH,                                     --病人证件类型代码
    :new.BRZJLX,                                     --病人证件类型
    :new.BRZJBH,                                     --病人证件号
    :new.BRZJBH,                                     --病人身份代码
    :new.BRZTQK,                                     --病人身份
    to_char(:new.FBBH00),                            --病人费用类型代码
    LS_FBMC00,                                       --病人费用类型
    :new.TYDWMC,                                     --病人工作单位
    null,                                            --病人医疗证号
    to_char(:new.TYDWID),                            --合同单位代码
    :new.TYDWMC,                                     --合同单位
    null,                                            --病人工作单位地址代码
    null,                                            --病人工作单位地址
    :new.TYDWYB,                                     --病人工作单位邮编
    null,                                            --病人工作单位电话
    null,                                            --病人家庭住址代码
    :new.BRJTDZ,                                     --病人家庭住址
    :new.BRYB00,                                     --病人家庭地址邮编
    :new.BRDH00,                                     --病人手机号
    :new.BRLXXM,                                     --联系人
    :new.LXGXBH,                                     --联系人关系代码
    :new.BRLXGX,                                     --联系人关系
    :new.EMAIL0,                                     --联系邮箱
    :new.BRLXDH,                                     --联系方式
    null,                                            --重点病人类型
    to_char(:new.CZY000),                            --经办人ID
    to_char(:new.CZY000),                            --经办人
    :new.CZRQ00||replace(:new.CZSJ00,':',''),        --办理时间,格式yyyyMMddHHmmss
    'Y',                                             --可用标志 Y-可用 N-停用
    LS_CZBZ00,                                       --处理类型 1-新增 2-修改 3-删除
    LS_YLFKFS,                                       --医保类型代码
    LS_FKFSMC,                                       --医保类型
    null,                                            --户口地址代码
    :new.BRJTDZ,                                     --户口地址
    null,                                            --联系人地址代码
    :new.BRLXDZ,                                     --联系人地址
    :new.BRYB00,                                     --户籍所在地邮编
    :new.BRYB01,                                     --联系人邮编
    :new.BRXX00,                                     --血型
    :new.RH0000,                                     --RH血型
    to_char(SF_BM_CSRQZNL(:new.BRCSRQ,0)),           --不足一周岁年龄
    :new.BRSZSF,                                     --户口地址省
    :new.BRSZS0,                                     --户口地址市
    :new.BRSZZ0,                                     --户口地址区
    substrb(:new.BRSZC0, 1, 30),                     --户口详细地址
    :new.BRXZSF,                                     --现住址省
    :new.BRXZS0,                                     --现住址市
    :new.BRXZZ0,                                     --现住址区
    :new.BRXZC0,                                     --现住址详细
    :new.BRXZDZ,                                     --现住址（全）
    null,                                            --现住址代码
    null,                                            --籍贯省
    null,                                            --籍贯市
    null,                                            --出生地省
    null,                                            --出生地市
    null                                             --出生地区
  );
  
  if LS_HISTS0 = '1' then
    if inserting then
       LS_FLAG := '3';
    else
       LS_FLAG := '0';
    end if ;
  end if;

  --写患者主索引推送中间表
  if (LS_HISTS0 = '1' and nvl(:new.CZY000,0) not in ('2864','2895','2906','2870','2876','2877','2828','2915')) then
  insert into SD_DZBLJK.JCPT_EMPIREGISTER(
    RECORDFLOW,                                      --记录流水号 必填 key
    PIDSRC,                                          --患者ID
    SRCSYSCODE,                                      --源系统代码
    DATASOURCE,                                      --数据来源
    SRCSYSNAME,                                      --源系统名称
    SRCCORP,                                         --源提供商名称
    INSTCARDNO,                                      --机构内卡号
    MDCCARDNO,                                       --医保卡号
    SCLCARDNO,                                       --社保卡号
    HLTCARDNO,                                       --健康卡号
    IDCARDNO,                                        --身份证号
    PASSPORTNO,                                      --护照号
    MILITARYCERTNO,                                  --军人证件号
    PATNAME,                                         --患者姓名
    PATNAMEPY,                                       --患者姓名拼音码
    PATNAMEWB,                                       --患者姓名五笔码
    SEXCODE,                                         --性别编码
    SEX,                                             --性别
    DATEOFBIRTH,                                     --出生日期
    TIMEOFBIRTH,                                     --出生时间
    AGE,                                             --年龄
    AGEUNITCODE,                                     --年龄单位代码
    AGEUNIT,                                         --年龄单位(岁月)
    AGEDESC,                                         --年龄描述
    TELEPHONENUM,                                    --电话号码
    MOBILEPHONE,                                     --手机号码
    OCCUPATIONCODE,                                  --职业代码
    OCCUPATION,                                      --职业
    COUNTRYCODE,                                     --国籍代码
    COUNTRY,                                         --国籍
    NATIONALITYCODE,                                 --民族代码
    NATIONALITY,                                     --民族
    MARRIAGESTATUSCODE,                              --婚姻状况编码
    MARRIAGESTATUS,                                  --婚姻状况
    BIRTHPLACECODE,                                  --出生地代码
    BIRTHPLACE,                                      --出生地
    BIRTHPROVINCECODE,                               --出生地省代码
    BIRTHPROVINCE,                                   --出生地省
    BIRTHCITYCODE,                                   --出生地市代码
    BIRTHCITY,                                       --出生地市
    BIRTHDISTRICTCODE,                               --出生地区县代码
    BIRTHDISTRICT,                                   --出生地区县
    NATIVECODE,                                      --籍贯代码
    NATIVENAME,                                      --籍贯
    NATIVEPROVINCECODE,                              --籍贯省代码
    NATIVEPROVINCE,                                  --籍贯省
    NATIVECITYCODE,                                  --籍贯市代码
    NATIVECITY,                                      --籍贯市
    PRESENTADDRESSCODE,                              --现住址代码
    PRESENTADDRESS,                                  --现住址
    PADDRESSPROVINCECODE,                            --现住址省代码
    PADDRESSPROVINCE,                                --现住址省
    PADDRESSCITYCODE,                                --现住址市代码
    PADDRESSCITY,                                    --现住址市
    PADDRESSDISTRICTCODE,                            --现住址区代码
    PADDRESSDISTRICT,                                --现住址区
    PRESENTADDRESSDTL,                               --现住址_具体地址
    PADDRESSPHONE,                                   --现住址电话
    PADDRESSZIPCODE,                                 --现住址邮编
    RESIDENCEADDRESSCODE,                            --户口地址代码
    RESIDENCEADDRESS,                                --户口地址
    RADDRESSPROVINCECODE,                            --户口地址省代码
    RADDRESSPROVINCE,                                --户口地址省
    RADDRESSCITYCODE,                                --户口地址市代码
    RADDRESSCITY,                                    --户口地址市
    RADDRESSDISTRICTCODE,                            --户口地址区代码
    RADDRESSDISTRICT,                                --户口地址区
    RESIDENCEADDRESSDTL,                             --户口地址
    RADDRESSPHONE,                                   --户口地址电话
    RADDRESSZIPCODE,                                 --户口地址邮编
    WORKUNITCODE,                                    --工作单位代码
    WORKUNIT,                                        --工作单位
    WORKADDRESSCODE,                                 --工作单位地址代码
    WORKADDRESS,                                     --工作单位地址
    WADDRESSPROVINCECODE,                            --工作单位地址省代码
    WADDRESSPROVINCE,                                --工作单位地址省
    WADDRESSCITYCODE,                                --工作单位地址市代码
    WADDRESSCITY,                                    --工作单位地址市
    WADDRESSDISTRICTCODE,                            --工作单位地址区代码
    WADDRESSDISTRICT,                                --工作单位地址区
    WORKADDRESSDTL,                                  --工作单位地址_具体
    WADDRESSPHONE,                                   --工作单位地址电话
    WADDRESSZIPCODE,                                 --工作单位地址邮编
    CONTACT,                                         --联系人
    RELATIONCODE,                                    --联系人关系代码
    RELATION,                                        --联系人关系
    CONTACTADDRESSCODE,                              --联系人地址代码
    CONTACTADDRESS,                                  --联系人地址
    CONTACTPHONE,                                    --联系人电话
    MEDICALINSTITUTION,                              --医疗机构
    ORGANIZATIONCODE,                                --组织机构代码
    SECRECYLVCODE,                                   --密级代码
    SECRECYLV,                                       --密级
    FILINGTIME,                                      --建档时间
    SYNC_FLAG
  )
  values(
    SQ_JCPT_EMPIREGISTER_RECORD.nextval,             --记录流水号 必填 key
    to_char(:new.BRID00),                            --患者ID
    'HIS',                                           --源系统代码
    'EMR',                                           --数据来源
    'EMR',                                           --源系统名称
    '海泰',                                          --源提供商名称
    LS_ICKH00,                                       --机构内卡号
    decode(:new.FBBH00,'1','',:new.YBKH00),          --医保卡号
    null,                                            --社保卡号
    null,                                            --健康卡号
    :new.BRZJBH,                                     --身份证号
    null,                                            --护照号
    null,                                            --军人证件号
    :new.BRXM00,                                     --患者姓名
    SF_XT_GETPYSM(:new.BRXM00),                      --患者姓名拼音码
    SF_XT_GETWBSM(:new.BRXM00),                      --患者姓名五笔码
    --:new.XBBH00,                                     --性别编码
    nvl(:new.XBBH00,decode(:new.BRXB00,'男','1','女','2','9')),
    :new.BRXB00,                                     --性别
    LS_CSRQ00,                                       --出生日期
    :new.BRCSSJ,                                     --出生时间
    LN_NL0000,                                       --年龄
    LS_NLDW00,                                       --年龄单位代码
    LS_NLDW00,                                       --年龄单位(岁月)
    LS_NLSM00,                                       --年龄描述
    :new.BRDH00,                                     --电话号码
    :new.BRDH00,                                     --手机号码
    :new.ZYBH00,                                     --职业代码
    :new.BRZY00,                                     --职业
    :new.GJBH00,                                     --国籍代码
    :new.BRGJ00,                                     --国籍
    :new.MZBH00,                                     --民族代码
    :new.BRMZ00,                                     --民族
    :new.HYZKBH,                                     --婚姻状况编码
    :new.BRHYZK,                                     --婚姻状况
    null,                                            --出生地代码
    null,                                            --出生地
    null,                                            --出生地省代码
    null,                                            --出生地省
    null,                                            --出生地市代码
    null,                                            --出生地市
    null,                                            --出生地区县代码
    null,                                            --出生地区县
    null,                                            --籍贯代码
    null,                                            --籍贯
    null,                                            --籍贯省代码
    null,                                            --籍贯省
    null,                                            --籍贯市代码
    null,                                            --籍贯市
    null,                                            --现住址代码
    :new.BRXZDZ,                                     --现住址
    null,                                            --现住址省代码
    :new.BRXZSF,                                     --现住址省
    null,                                            --现住址市代码
    :new.BRXZS0,                                     --现住址市
    null,                                            --现住址区代码
    :new.BRXZZ0,                                     --现住址区
    :new.BRXZC0,                                     --现住址_具体地址
    :new.BRDH00,                                     --现住址电话
    :new.BRYB00,                                     --现住址邮编
    null,                                            --户口地址代码
    substr(:new.BRJTDZ,1,60),                        --户口地址
    null,                                            --户口地址省代码
    :new.BRSZSF,                                     --户口地址省
    null,                                            --户口地址市代码
    :new.BRSZS0,                                     --户口地址市
    null,                                            --户口地址区代码
    :new.BRSZZ0,                                     --户口地址区
    :new.BRSZC0,                                     --户口地址
    :new.BRDH00,                                     --户口地址电话
    :new.BRYB00,                                     --户口地址邮编
    :new.TYDWID,                                     --工作单位代码
    :new.TYDWMC,                                     --工作单位
    null,                                            --工作单位地址代码
    null,                                            --工作单位地址
    null,                                            --工作单位地址省代码
    null,                                            --工作单位地址省
    null,                                            --工作单位地址市代码
    null,                                            --工作单位地址市
    null,                                            --工作单位地址区代码
    null,                                            --工作单位地址区
    null,                                            --工作单位地址_具体
    null,                                            --工作单位地址电话
    :new.TYDWYB,                                     --工作单位地址邮编
    :new.BRLXXM,                                     --联系人
    :new.LXGXBH,                                     --联系人关系代码
    :new.BRLXGX,                                     --联系人关系
    null,                                            --联系人地址代码
    :new.BRLXDZ,                                     --联系人地址
    null,                                            --联系人电话
    null,                                            --医疗机构
    null,                                            --组织机构代码
    null,                                            --密级代码
    null,                                            --密级
    :new.CZRQ00||replace(:new.CZSJ00,':',''),        --建档时间
    LS_FLAG
   );
  else
  insert into SD_DZBLJK.JCPT_EMPIREGISTER(
    RECORDFLOW,                                      --记录流水号 必填 key
    PIDSRC,                                          --患者ID
    SRCSYSCODE,                                      --源系统代码
    DATASOURCE,                                      --数据来源
    SRCSYSNAME,                                      --源系统名称
    SRCCORP,                                         --源提供商名称
    INSTCARDNO,                                      --机构内卡号
    MDCCARDNO,                                       --医保卡号
    SCLCARDNO,                                       --社保卡号
    HLTCARDNO,                                       --健康卡号
    IDCARDNO,                                        --身份证号
    PASSPORTNO,                                      --护照号
    MILITARYCERTNO,                                  --军人证件号
    PATNAME,                                         --患者姓名
    PATNAMEPY,                                       --患者姓名拼音码
    PATNAMEWB,                                       --患者姓名五笔码
    SEXCODE,                                         --性别编码
    SEX,                                             --性别
    DATEOFBIRTH,                                     --出生日期
    TIMEOFBIRTH,                                     --出生时间
    AGE,                                             --年龄
    AGEUNITCODE,                                     --年龄单位代码
    AGEUNIT,                                         --年龄单位(岁月)
    AGEDESC,                                         --年龄描述
    TELEPHONENUM,                                    --电话号码
    MOBILEPHONE,                                     --手机号码
    OCCUPATIONCODE,                                  --职业代码
    OCCUPATION,                                      --职业
    COUNTRYCODE,                                     --国籍代码
    COUNTRY,                                         --国籍
    NATIONALITYCODE,                                 --民族代码
    NATIONALITY,                                     --民族
    MARRIAGESTATUSCODE,                              --婚姻状况编码
    MARRIAGESTATUS,                                  --婚姻状况
    BIRTHPLACECODE,                                  --出生地代码
    BIRTHPLACE,                                      --出生地
    BIRTHPROVINCECODE,                               --出生地省代码
    BIRTHPROVINCE,                                   --出生地省
    BIRTHCITYCODE,                                   --出生地市代码
    BIRTHCITY,                                       --出生地市
    BIRTHDISTRICTCODE,                               --出生地区县代码
    BIRTHDISTRICT,                                   --出生地区县
    NATIVECODE,                                      --籍贯代码
    NATIVENAME,                                      --籍贯
    NATIVEPROVINCECODE,                              --籍贯省代码
    NATIVEPROVINCE,                                  --籍贯省
    NATIVECITYCODE,                                  --籍贯市代码
    NATIVECITY,                                      --籍贯市
    PRESENTADDRESSCODE,                              --现住址代码
    PRESENTADDRESS,                                  --现住址
    PADDRESSPROVINCECODE,                            --现住址省代码
    PADDRESSPROVINCE,                                --现住址省
    PADDRESSCITYCODE,                                --现住址市代码
    PADDRESSCITY,                                    --现住址市
    PADDRESSDISTRICTCODE,                            --现住址区代码
    PADDRESSDISTRICT,                                --现住址区
    PRESENTADDRESSDTL,                               --现住址_具体地址
    PADDRESSPHONE,                                   --现住址电话
    PADDRESSZIPCODE,                                 --现住址邮编
    RESIDENCEADDRESSCODE,                            --户口地址代码
    RESIDENCEADDRESS,                                --户口地址
    RADDRESSPROVINCECODE,                            --户口地址省代码
    RADDRESSPROVINCE,                                --户口地址省
    RADDRESSCITYCODE,                                --户口地址市代码
    RADDRESSCITY,                                    --户口地址市
    RADDRESSDISTRICTCODE,                            --户口地址区代码
    RADDRESSDISTRICT,                                --户口地址区
    RESIDENCEADDRESSDTL,                             --户口地址
    RADDRESSPHONE,                                   --户口地址电话
    RADDRESSZIPCODE,                                 --户口地址邮编
    WORKUNITCODE,                                    --工作单位代码
    WORKUNIT,                                        --工作单位
    WORKADDRESSCODE,                                 --工作单位地址代码
    WORKADDRESS,                                     --工作单位地址
    WADDRESSPROVINCECODE,                            --工作单位地址省代码
    WADDRESSPROVINCE,                                --工作单位地址省
    WADDRESSCITYCODE,                                --工作单位地址市代码
    WADDRESSCITY,                                    --工作单位地址市
    WADDRESSDISTRICTCODE,                            --工作单位地址区代码
    WADDRESSDISTRICT,                                --工作单位地址区
    WORKADDRESSDTL,                                  --工作单位地址_具体
    WADDRESSPHONE,                                   --工作单位地址电话
    WADDRESSZIPCODE,                                 --工作单位地址邮编
    CONTACT,                                         --联系人
    RELATIONCODE,                                    --联系人关系代码
    RELATION,                                        --联系人关系
    CONTACTADDRESSCODE,                              --联系人地址代码
    CONTACTADDRESS,                                  --联系人地址
    CONTACTPHONE,                                    --联系人电话
    MEDICALINSTITUTION,                              --医疗机构
    ORGANIZATIONCODE,                                --组织机构代码
    SECRECYLVCODE,                                   --密级代码
    SECRECYLV,                                       --密级
    FILINGTIME                                       --建档时间
  )
  values(
    SQ_JCPT_EMPIREGISTER_RECORD.nextval,             --记录流水号 必填 key
    to_char(:new.BRID00),                            --患者ID
    'HIS',                                           --源系统代码
    'EMR',                                           --数据来源
    'EMR',                                           --源系统名称
    '海泰',                                          --源提供商名称
    LS_ICKH00,                                       --机构内卡号
    :new.YBKH00,                                     --医保卡号
    null,                                            --社保卡号
    null,                                            --健康卡号
    :new.BRZJBH,                                     --身份证号
    null,                                            --护照号
    null,                                            --军人证件号
    :new.BRXM00,                                     --患者姓名
    SF_XT_GETPYSM(:new.BRXM00),                      --患者姓名拼音码
    SF_XT_GETWBSM(:new.BRXM00),                      --患者姓名五笔码
    nvl(:new.XBBH00,decode(:new.BRXB00,'男','1','女','2','9')),                                     --性别编码
    :new.BRXB00,                                     --性别
    LS_CSRQ00,                                       --出生日期
    :new.BRCSSJ,                                     --出生时间
    LN_NL0000,                                       --年龄
    LS_NLDW00,                                       --年龄单位代码
    LS_NLDW00,                                       --年龄单位(岁月)
    LS_NLSM00,                                       --年龄描述
    :new.BRDH00,                                     --电话号码
    :new.BRDH00,                                     --手机号码
    :new.ZYBH00,                                     --职业代码
    :new.BRZY00,                                     --职业
    :new.GJBH00,                                     --国籍代码
    :new.BRGJ00,                                     --国籍
    :new.MZBH00,                                     --民族代码
    :new.BRMZ00,                                     --民族
    :new.HYZKBH,                                     --婚姻状况编码
    :new.BRHYZK,                                     --婚姻状况
    null,                                            --出生地代码
    null,                                            --出生地
    null,                                            --出生地省代码
    null,                                            --出生地省
    null,                                            --出生地市代码
    null,                                            --出生地市
    null,                                            --出生地区县代码
    null,                                            --出生地区县
    null,                                            --籍贯代码
    null,                                            --籍贯
    null,                                            --籍贯省代码
    null,                                            --籍贯省
    null,                                            --籍贯市代码
    null,                                            --籍贯市
    null,                                            --现住址代码
    :new.BRXZDZ,                                     --现住址
    null,                                            --现住址省代码
    :new.BRXZSF,                                     --现住址省
    null,                                            --现住址市代码
    :new.BRXZS0,                                     --现住址市
    null,                                            --现住址区代码
    :new.BRXZZ0,                                     --现住址区
    :new.BRXZC0,                                     --现住址_具体地址
    :new.BRDH00,                                     --现住址电话
    :new.BRYB00,                                     --现住址邮编
    null,                                            --户口地址代码
    substr(:new.BRJTDZ,1,60),                                     --户口地址
    null,                                            --户口地址省代码
    :new.BRSZSF,                                     --户口地址省
    null,                                            --户口地址市代码
    :new.BRSZS0,                                     --户口地址市
    null,                                            --户口地址区代码
    :new.BRSZZ0,                                     --户口地址区
    :new.BRSZC0,                                     --户口地址
    :new.BRDH00,                                     --户口地址电话
    :new.BRYB00,                                     --户口地址邮编
    :new.TYDWID,                                     --工作单位代码
    :new.TYDWMC,                                     --工作单位
    null,                                            --工作单位地址代码
    null,                                            --工作单位地址
    null,                                            --工作单位地址省代码
    null,                                            --工作单位地址省
    null,                                            --工作单位地址市代码
    null,                                            --工作单位地址市
    null,                                            --工作单位地址区代码
    null,                                            --工作单位地址区
    null,                                            --工作单位地址_具体
    null,                                            --工作单位地址电话
    :new.TYDWYB,                                     --工作单位地址邮编
    :new.BRLXXM,                                     --联系人
    :new.LXGXBH,                                     --联系人关系代码
    :new.BRLXGX,                                     --联系人关系
    null,                                            --联系人地址代码
    :new.BRLXDZ,                                     --联系人地址
    :new.BRLXDH,                                     --联系人电话
    null,                                            --医疗机构
    null,                                            --组织机构代码
    null,                                            --密级代码
    null,                                            --密级
    :new.CZRQ00||replace(:new.CZSJ00,':','')         --建档时间
   );
  end if;

exception
  when others then
    raise_application_error(-20001,'产生推送集成平台中间表错误!'||sqlerrm);
end;
/
--%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%