zjh
2025-01-24 2b39b654975aa9cb40254f20e545b9f389a82de7
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TestMapper.java
@@ -1,14 +1,13 @@
package com.ltkj.hosp.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ltkj.common.annotation.DataSource;
import com.ltkj.common.enums.DataSourceType;
import com.ltkj.hosp.sqlDomain.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
import java.util.Map;
/**
 * @Company: 西安路泰科技有限公司
@@ -22,9 +21,18 @@
    @DataSource(value = DataSourceType.SLAVE_HIS)
    public List<LtkjMiddleDetail> getMiddleDetail();
    @Select("SELECT * FROM histjv_Ltkj_middle_detail where fhead_id=#{feadId}")
    @DataSource(value = DataSourceType.SLAVE_HIS)
    public List<LtkjMiddleDetail> getMiddleDetailByFeadId(String feadId);
    @DataSource(value = DataSourceType.SLAVE_LIS)
    @Select("SELECT * FROM histjv_Ltkj_middle_head")
    public List<LtkjMiddleHead> getMiddleHead();
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_Ltkj_middle_head where fead_id=#{partId}")
    public LtkjMiddleHead getMiddleHeadByPartId(String partId);
//    @Select("SELECT * FROM histjv_LTKJVBJITEM")
//    public List<LtkjVbjitem> getVbjitem();
@@ -34,13 +42,63 @@
    public List<LtkjTjPat> getTjPat();
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_LTKJVTJPAT where Ltrim(Rtrim(fcard_no)) = #{id} ")
    @Select({"<script> select isnull(fcard_no,'不详') xh,fcard_iD pacCode,pat_name pacName,\n" +
            " (case when patsex_id='0' then '男' when patsex_id='1' then '女' else '未知' end )+';'+brnl detail,\n" +
            " pat_id price , mobile+tjbz pacRemark" +
            "  from histjv_ltkjvtjpat where 1=1 "+
            " <when test='pacCode!=null'>" +
            "  AND fcard_no like '%'+#{pacCode}+'%'" +
            "</when>" +
            " <when test='pacName!=null'>" +
            "  AND pat_name like '%'+#{pacName}+'%' " +
            "</when>" +
            " <when test='pacRemark!=null'>" +
            "  AND mobile = #{pacRemark}" +
            "</when>" +
            " order by fcard_iD desc"+
            "</script>"})
    public List<Map<String,Object>> newGetTjPat(@Param("pacCode")String pacCode,
                                                @Param("pacName")String pacName,
                                                @Param("pacRemark")String pacRemark);
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_LTKJVTJPAT where Ltrim(Rtrim(fcard_no)) = #{id} or Ltrim(Rtrim(fcard_id))=#{id} ")
    public LtkjTjPat getTjPatByIdCard(String id);
    @DataSource(value = DataSourceType.MASTER)
    @Select("call pro_his_tjpart(#{sfzh,mode=IN})")
    public void getTjPatByCusId(String cusId);
    @DataSource(value = DataSourceType.MASTER)
    @Select("call pro_his_middle(#{sfzh,mode=IN},#{sfzbm,mode=IN})")
    public void saveTjProByCusId(@Param("sfzh") String sfzh,@Param("sfzbm")String sfzbm);
    @DataSource(value = DataSourceType.MASTER)
    @Select("call tj_update_detatil(#{cardId,mode=IN},#{orderId,mode=IN},#{tjnum,mode=IN},#{dockerId,mode=IN})")
    public void updateDetailByCall(@Param("cardId") String cardId,
                                   @Param("orderId")String orderId,
                                   @Param("tjnum")String tjnum,
                                   @Param("dockerId")String dockerId);
    @DataSource(value = DataSourceType.MASTER)
//    @Select("call tj_update_detatil_by_vi(#{tjnum,mode=IN}")
    public void tjUpdateDetatilByVi(Map<String,Object> map);
    @DataSource(value = DataSourceType.MASTER)
    @Select("call tj_jc_update_detatil(#{cardId,mode=IN},#{orderId,mode=IN},#{tjnum,mode=IN},#{dockerId,mode=IN})")
    public void updateDetailByTjJcCall(@Param("cardId") String cardId,
                                   @Param("orderId")String orderId,
                                   @Param("tjnum")String tjnum,
                                   @Param("dockerId")String dockerId);
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_exam_jcbgd")
@@ -50,7 +108,6 @@
    @Select("SELECT * FROM histjv_exam_jcsqd")
    public List<LtkjExamJcsqd> getExamJcsqd();
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_Ltkj_hybgd")
    public List<LtkjHybgd> getHybgd();
@@ -58,7 +115,6 @@
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_Ltkj_hysqd")
    public List<LtkjHysqd> getHysqd();
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_LTKJVTJPAT where pat_id=#{id}")
@@ -80,7 +136,6 @@
    @Select("SELECT * FROM histjv_exam_jcsqd  where tjh=#{id}")
    public LtkjExamJcsqd getExamJcsqdById(String id);
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_Ltkj_hybgd  where tmh=#{id}")
    public LtkjHybgd getHybgdById(String id);
@@ -88,7 +143,6 @@
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_Ltkj_hysqd  where tmh=#{id}")
    public LtkjHysqd getHysqdById(String id);
    //体检登记接口  调用后  查询收费单据和详情
    @DataSource(value = DataSourceType.SLAVE_HIS)
@@ -98,7 +152,6 @@
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_Ltkj_middle_detail where fead_id=#{id}")
    public List<LtkjMiddleDetail> getMiddleDetailByHeadId(String id);
    //根据体检号  对应的   化验项目    +标本
    @DataSource(value = DataSourceType.SLAVE_HIS)
@@ -110,10 +163,9 @@
    @Select("SELECT * FROM histjv_Ltkj_hybgd where tmh=#{id}")
    public  List<LtkjHybgd> getHybgdByTmh(String id);
    //根据体检号  对应的  检查项目
    @DataSource(value = DataSourceType.SLAVE_HIS)
    @Select("SELECT * FROM histjv_exam_jcsqd where tjh=#{id}")
    @Select("SELECT * FROM histjv_Ltkj_hybgd where tjh=#{id}")
    public List<LtkjExamJcsqd> getExamJcsqdTmh(String id);
    //检查项目对应的检查结果  传上面的接口的结果tmh
@@ -121,4 +173,264 @@
    @Select("SELECT * FROM histjv_exam_jcbgd where tmh=#{id}")
    public List<LtkjExamJcbgd> getExamJcbgdByTjh(String id);
    @DataSource(value = DataSourceType.SLAVE_LIS)
    @Select({"<script> select  *"+
            "  from histjv_Ltkj_hyxm where 1=1 "+
            " <when test='pacCode!=null'>" +
            "  AND pacCode like '%'+#{pacCode}+'%'" +
            "</when>" +
            " <when test='pacName!=null'>" +
            "  AND pacName like '%'+#{pacName}+'%' " +
            "</when>" +
            " <when test='pacRemark!=null'>" +
            "  AND pacRemark = #{pacRemark}" +
            "</when>" +
            "</script>"})
    public List<Map<String,Object>> getTjHyBgList(@Param("pacCode")String pacCode,
                                                  @Param("pacName")String pacName,
                                                  @Param("pacRemark")String pacRemark);
    @Select("SELECT * FROM histjv_ltkj_userinfo")
    @DataSource(value = DataSourceType.SLAVE_HIS)
    public List<LtkjHisUser> getLtkjHisUser();
    @DataSource(value = DataSourceType.SLAVE_PACS)
    @Select({"<script> select bgid xh,patname pacName ,rptid  pacCode,patage+patagename+'['+sex+']'+patbirth detail,djrq+jcxm pacRemark,lxhd price \n" +
            "\tfrom V_HIS_PACS_SQ\n" +
            "\twhere 1=1 " +
            " <when test='patname!=null'>" +
            "  AND patname=#{patname}" +
            "</when>"+
            " <when test='sex!=null'>" +
            "  AND  sex=#{sex} "+
            "</when>"+
            " <when test='nn!=null'>" +
             " AND  patage+patagename=#{nn}" +
             "</when>"+
            "</script>"})
    public List<Map<String,Object>> getTjYxjcList(@Param("patname")String patname,
                                                  @Param("sex")String sex,
                                                  @Param("nn")String nn);
    @DataSource(value = DataSourceType.SLAVE_PACS)
    @Select({"<script>" +
                "select * from V_JCBGLBHIS where mzh is not null " +
                "<when test='name != null'>" +
                "and name = #{name}" +
                "</when>" +
                "<when test='mzh != null'>" +
                "and mzh = #{mzh}" +
                "</when>" +
                "<when test='start != null and end != null'>" +
                "and examinationDate between #{start} and #{end}" +
                "</when>" +
                "order by examinationDate" +
            "</script>"})
    List<Map<String ,Object>> getPacsJcList(@Param("name")String name,@Param("mzh")String mzh,@Param("start")String start,@Param("end")String end);
    @DataSource(value = DataSourceType.SLAVE_LIS)
    @Select({"<script>" +
            "select * from V_JYBGHIS where mzh is not null " +
            "<when test='name != null'>" +
            "and name = #{name}" +
            "</when>" +
            "<when test='mzh != null'>" +
            "and mzh = #{mzh}" +
            "</when>" +
            "<when test='start != null and end != null'>" +
            "and examinationDate between #{start} and #{end}" +
            "</when>" +
            "order by examinationDate" +
            "</script>"})
    List<Map<String ,Object>> getLisJyList(@Param("name")String name,@Param("mzh")String mzh,@Param("start")String start,@Param("end")String end);
    @DataSource(value = DataSourceType.SLAVE_LIS)
    @Select("select t.* from vi_his_patientresult t \n" +
            "\tjoin(select * from vi_his_patientinfo t where t.HOSPITALID='chkwyy' and t.PATIENTNO like '800%') b on b.SAMPLEID = t.SAMPLEID")
    List<Map<String, Object>> getCcXZxYyLisJgSt();
    @DataSource(value = DataSourceType.SLAVE_LIS)
    @Select("SELECT\n" +
            "  a.GH_PATIENTNO tjh,\n" +
            "  a.SAMPLEID tmh,\n" +
            "  NULL bbbh,\n" +
            "  NULL bbmc,\n" +
            "  a.SFXMID xmid,\n" +
            "  REPLACE(a.SFXMNAME,'tj_','') xmmc,\n" +
            "  a.SENDDATE sqsj,\n" +
            "  a.SENDDOCTOR sqys,\n" +
            "  a.CHECKDATE jgsj,\n" +
            "  a.TXM sqdh,\n" +
            "  a.SENDDOCTOR sqrxm,\n" +
            "  '8001' sqrdm,\n" +
            "  a.AUDITDOCTOR shrxm,\n" +
            "  '已审' jybgjg,\n" +
            "  SYSDATE() create_time\n" +
            "  \n" +
            "FROM\n" +
            "  vi_his_patientinfo a\n" +
            "WHERE  a.PATIENTTYPE=3 AND a.GH_PATIENTNO =#{tjNum}")
    List<LtkjHysqd> getCcXZxYyLtkjHysqdByLisVi(String tjNum);
    @DataSource(value = DataSourceType.SLAVE_LIS)
    @Select("SELECT\n" +
            "  a.SAMPLEID tmh,\n" +
            "  a.ITEMCODE jcxmid,\n" +
            "  a.ITEMNAME jcxm,\n" +
            "  NULL tdh,\n" +
            "  a.RESULT jyjg,\n" +
            "  a.UNIT jgdw,\n" +
            "  a.RANGEDOWN fwzdz,\n" +
            "  a.RANGEUP fwzgz,\n" +
            "  CONCAT(a.RANGEDOWN,'-',a.RANGEUP) fwz,\n" +
            "  b.CHECKDATE jysj,\n" +
            "  b.CHECKER jyys,\n" +
            "  b.AUDITDATE shsj,\n" +
            "  NULL shys,\n" +
            "  b.AUDITDOCTOR shysmc,\n" +
            "  NULL tpurl,\n" +
            "  a.JUDGE ycbz,\n" +
            "  SYSDATE() create_time\n" +
            "FROM\n" +
            "  vi_his_patientresult a JOIN vi_his_patientinfo b ON b.SAMPLEID=a.SAMPLEID\n" +
            "WHERE  b.PATIENTTYPE=3 AND\n" +
            "  a.SAMPLEID = #{tmh}")
    List<LtkjHybgd> getCcXZxYyLtkjHybgdByLisVi(String tmh);
//    @DataSource(value = DataSourceType.SLAVE_WS)
    @Select("SELECT aa.tjh,ws.pro_id tmh,aa.bbbh,aa.bbmc,ws.pro_id xmid,aa.xmmc,aa.sqsj,aa.sqys,aa.jgsj,aa.sqdh,aa.sqrxm,aa.sqrdm,aa.jybgjg,aa.create_time FROM tj_wsxm ws LEFT JOIN (\n" +
            "   SELECT\n" +
            "        a.brid tjh,\n" +
            "         a.brid tmh,\n" +
            "        NULL bbbh,\n" +
            "        NULL bbmc,\n" +
            "        a.xmmc xmid,\n" +
            "        REGEXP_REPLACE(a.xmmc, '[0-9]', '') xmmc,\n" +
            "        a.bgsj sqsj,\n" +
            "        a.bgys sqys,\n" +
            "        a.bgsj jgsj,\n" +
            "        null sqdh,\n" +
            "        null sqrxm,\n" +
            "        '8001' sqrdm,\n" +
            "        a.bgys shrxm,\n" +
            "        '已审' jybgjg,\n" +
            "        SYSDATE() create_time  \n" +
            "      FROM\n" +
            "        aws a \n" +
            "      WHERE  a.brid=#{tjNum} GROUP BY REGEXP_REPLACE(a.xmmc, '[0-9]', '') )aa ON ws.pro_name=aa.xmmc WHERE LOCATE(ws.pro_name,aa.xmmc);")
    List<LtkjHysqd> getWsxmLtkjHysqdByLisVi(String tjNum);
//    @DataSource(value = DataSourceType.SLAVE_WS)
    @Select("SELECT ws.pro_id tmh,aa.jcxmid,aa.jcxm,NULL tdh,aa.jyjg,null jgdw,null fwzdz,null fwzgz,aa.jysj,aa.shsj,NULL shys,aa.shysmc,NULL tpurl,NULL ycbz,aa.create_time\n" +
            " FROM tj_wsxm ws \n" +
            " LEFT JOIN (\n" +
            "   SELECT distinct a.brid tmh,a.xmbm jcxmid,a.xmmc jcxm,NULL tdh,a.result jyjg,null jgdw,null fwzdz,null fwzgz,null fwz,a.bgsj jysj,a.bgys jyys,a.bgsj shsj," +
            " NULL shys,a.bgys shysmc, NULL tpurl,NULL ycbz,SYSDATE()  create_time FROM aws a WHERE  a.brid =#{tmh} )aa \n" +
            "\t\tON ws.pro_name=REGEXP_REPLACE(aa.jcxm, '[0-9]', '') WHERE LOCATE(ws.pro_name,REGEXP_REPLACE(aa.jcxm, '[0-9]', ''))")
    List<LtkjHybgd> getWsxmLtkjHybgdByLisVi(String tmh);
    @DataSource(value = DataSourceType.SLAVE_PACS)
    @Select("SELECT * FROM ris.V_TJ_JCBGXX_NEWTJ")
    List<Map<String, Object>> getCcXZxYyPacsJgSt();
    @DataSource(value = DataSourceType.SLAVE_PACS)
    @Select("SELECT\n" +
            "  trim(a.HIS_ID) tjh,\n" +
            "  trim(a.HIS_ID) tmh,\n" +
            "  a.JCLX jclx,\n" +
            "  NULL jczlx,\n" +
            "  a.BGYS bgys,\n" +
            "  NULL bgysid,\n" +
            "  a.SQRJ sqsj,\n" +
            "  a.BGSJ jgsj,\n" +
            "  REPLACE(a.JCMC,'tj_','') jcxmmc,\n" +
            "  trim(a.JCMID) jcxmid,\n" +
            "  a.JCBW bw,\n" +
            "  TRIM(a.JCJL) jgzt,\n" +
            "  TRIM(a.JCSJ) jgbx,\n" +
            "  SYSDATE create_time\n" +
            "   \n" +
            "FROM\n" +
            "  ris.V_TJ_JCBGXX_NEWTJ a  WHERE trim(a.HIS_ID)=#{tjNum}")
    List<LtkjExamJcsqd> getCcXZxYyPacsLtkjExamJcsqd(String tjNum);
    @DataSource(value = DataSourceType.SLAVE_PACS)
    @Select(" SELECT\n" +
            "  trim(a.HIS_ID) tjh,\n" +
            "  trim(a.HIS_ID) tmh,\n" +
            "  trim(a.JCMID) xmdm,\n" +
            "  a.JCMC xmmc,\n" +
            "  NULL bg_mig,\n" +
            "  NULL bg_url,\n" +
            "  TRIM(a.JCSJ) bg_nr,\n" +
            "  a.SHYS shysdm,\n" +
            "  a.SHYS shysxm,\n" +
            "  TRIM(a.JCJL) yxbx,\n" +
            "  a.BGSJ zdsj,\n" +
            "  a.SQRJ sqsj,\n" +
            "  a.JCBW jcbw,\n" +
            "  SYSDATE create_time\n" +
            "FROM\n" +
            "  ris.V_TJ_JCBGXX_NEWTJ a  WHERE a.HIS_ID=#{tjNum}")
    List<LtkjExamJcbgd> getCcXZxYyPacsLtkjExamJcbgd(String tjNum);
    List<List<?>> tjplUpdateDetatilByVi(Map<String,Object> map);
    @DataSource(value = DataSourceType.SLAVE_PACS)
    @Select("SELECT\n" +
            "  trim(a.HIS_ID) tjh,\n" +
            "  trim(a.HIS_ID) tmh,\n" +
            "  a.JCLX jclx,\n" +
            "  NULL jczlx,\n" +
            "  a.BGYS bgys,\n" +
            "  NULL bgysid,\n" +
            "  a.SQRJ sqsj,\n" +
            "  a.BGSJ jgsj,\n" +
            "  REPLACE(a.JCMC,'tj_','') jcxmmc,\n" +
            "  trim(a.JCMID) jcxmid,\n" +
            "  a.JCBW bw,\n" +
            "  TRIM(a.JCJL) jgzt,\n" +
            "  TRIM(a.JCSJ) jgbx,\n" +
            "  SYSDATE create_time \n" +
            "   \n" +
            "FROM\n" +
            "  LTEMR.V_TJ_JCBGXX_NEWTJ a  WHERE trim(a.HIS_ID)=#{tjNum}")
    List<LtkjExamJcsqd> getCcXZxYyPacsLtkjExamJcsqd1(String tjNum);
    @DataSource(value = DataSourceType.SLAVE_PACS)
    @Select(" SELECT\n" +
            "  trim(a.HIS_ID) tjh,\n" +
            "  trim(a.HIS_ID) tmh,\n" +
            "  trim(a.JCMID) xmdm,\n" +
            "  a.JCMC xmmc,\n" +
            "  NULL bg_mig,\n" +
            "  NULL bg_url,\n" +
            "  TRIM(a.JCSJ) bg_nr,\n" +
            "  a.SHYS shysdm,\n" +
            "  a.SHYS shysxm,\n" +
            "  TRIM(a.JCJL) yxbx,\n" +
            "  a.BGSJ zdsj,\n" +
            "  a.SQRJ sqsj,\n" +
            "  a.JCBW jcbw,\n" +
            "  SYSDATE create_time\n" +
            "FROM\n" +
            "  LTEMR.V_TJ_JCBGXX_NEWTJ a  WHERE trim(a.HIS_ID)=#{tjNum}")
    List<LtkjExamJcbgd> getCcXZxYyPacsLtkjExamJcbgd1(String tjNum);
}