create or replace view vw_zs_swbgcx as
select a.BGLSH0, --报告流水号
       a.SWKBH0, --报告卡编号
       a.ZYID00, --住院ID
       (select bmmc00
          from bm_bmbm00
         where bmbh00 = b.dqks00
           and rownum <= 1) BMMC00, --当前科室名称
       b.DQKS00,--当前科室编号
       b.ZYH000, --住院号
       b.RYCWH0 CH0000, --床号
       b.XM0000, --姓名
       trim(JBMC01) ZJSWYY, --直接死亡原因
       trim(JBMC04) GBSWYY, --根本死亡原因
       decode(a.SFDY00, '1', '已打印', '未打印') DYZTMC, --打印状态
       a.SFDY00,--打印状态编号
       case
         when a.SHYSMC is not null and a.SHRQ00 is not null then
          '已审核'
         else
          '未审核'
       end as SHZT00, --审核状态
       a.SHYSMC, --审核人
       a.SHRQ00, --审核日期
       decode(a.ZYMZBZ, '1', '住院', '0', '门诊', '住院') ZYMZMC, --住院门诊名称
       nvl(a.ZYMZBZ, '1') ZYMZBZ, --住院门诊标识编号
       decode(a.CLLX00,
              '01',
              '填报新增',
              '02',
              '填报修改',
              '03',
              '填报删除',
              '04',
              '填报撤回',
              '05',
              '打印新增',
              '06',
              '打印修改',
              '07',
              '打印删除',
              '未上报') CLLXMC, --上报处理类型
       a.CLLX00, --上报处理类型
       a.TKRQ00, --填卡日期
       a.TKYSXM, --填卡医生
       b.RYRQ00, --入院日期
       a.SWRQ00, --死亡日期
       decode(a.SFTJ00,'0','已保存','1','已提交','已保存') TJZTMC, --是否提交
       a.SFTJ00, --是否提交
       a.BGDWDM, --报告单位代码
       a.BGDQDM, --报告地区代码
       a.YYID00, --医院ID
       (select YYJC00 from xt_yyxx00 where YYID00 = a.YYID00) YYMC00 --医院名称
       from ZS_SWBGK0 a left join ZY_BRXXB0 b on a.ZYID00 = b.ZYID00 where nvl(a.ZYMZBZ, '1') = '1'
  union all
       select a.BGLSH0, --报告流水号
       a.SWKBH0, --报告卡编号
       a.ZYID00, --住院ID
       (select bmmc00
          from bm_bmbm00
         where bmbh00 = b.jzks00
           and rownum <= 1) BMMC00, --当前科室名称
       b.jzks00 DQKS00,--当前科室编号
       b.ghh000 ZYH000, --住院号
       '' CH0000, --床号
       b.XM0000, --姓名
       trim(JBMC01) ZJSWYY, --直接死亡原因
       trim(JBMC04) GBSWYY, --根本死亡原因
       decode(a.SFDY00, '1', '已打印', '未打印') DYZTMC, --打印状态
       a.SFDY00,--打印状态编号
       case
         when a.SHYSMC is not null and a.SHRQ00 is not null then
          '已审核'
         else
          '未审核'
       end as SHZT00, --审核状态
       a.SHYSMC, --审核人
       a.SHRQ00, --审核日期
       decode(a.ZYMZBZ, '1', '住院', '0', '门诊', '住院') ZYMZMC, --住院门诊名称
       nvl(a.ZYMZBZ, '1') ZYMZBZ, --住院门诊标识编号
       decode(a.CLLX00,
              '01',
              '填报新增',
              '02',
              '填报修改',
              '03',
              '填报删除',
              '04',
              '填报撤回',
              '05',
              '打印新增',
              '06',
              '打印修改',
              '07',
              '打印删除',
              '未上报') CLLXMC, --上报处理类型
       a.CLLX00, --上报处理类型
       a.TKRQ00, --填卡日期
       a.TKYSXM, --填卡医生
       b.ghrq00 RYRQ00, --入院日期
       a.SWRQ00, --死亡日期
       decode(a.SFTJ00,'0','已保存','1','已提交','已保存') TJZTMC, --是否提交
       a.SFTJ00, --是否提交
       a.BGDWDM, --报告单位代码
       a.BGDQDM, --报告地区代码
       a.YYID00, --医院ID
       (select YYJC00 from xt_yyxx00 where YYID00 = a.YYID00) YYMC00 --医院名称
  from ZS_SWBGK0 a left join SF_BRXXB0 b on a.ZYID00 = b.GHID00 where a.ZYMZBZ = '0';
