Преглед изворни кода

病案首页可以修改门诊诊断;空值以‘-’显示

lighter пре 3 година
родитељ
комит
1458a3c56d

+ 1 - 1
pom.xml

@@ -10,7 +10,7 @@
     </parent>
     <groupId>thyyxxk</groupId>
     <artifactId>web-server</artifactId>
-    <version>1</version>
+    <version>2</version>
     <name>web-server</name>
     <description>server for yibao-web</description>
     <properties>

+ 14 - 10
src/main/java/thyyxxk/webserver/dao/his/casefrontsheet/CaseFrontSheetDao.java

@@ -364,31 +364,35 @@ public interface CaseFrontSheetDao extends BaseMapper<CaseFrontsheetMain> {
             "where inpatient_no=#{bah}")
     void updateAPatientMi(CaseFrontsheetMain sheet);
 
-    @Update("update zy_actpatient set autopsy_mark=#{autopsy}, " +
+    @Update("update zy_actpatient set autopsy_mark=#{autopsy},clinic_diag_str=#{clinicDiagStr}, " +
             "diagnose_conform1=#{dc1},diagnose_conform2=#{dc2},diagnose_conform3=#{dc3}," +
             "diagnose_conform4=#{dc4}, diagnose_conform5=#{dc5}, operation=#{hasSurgery}," +
-            "pathology_diag_comment=#{pathologicDiagStr},pathology_diag=#{pathologicDiagCode} " +
-            "where inpatient_no=#{bah} and admiss_times=#{times}")
+            "pathology_diag_comment=#{pathologicDiagStr},pathology_diag=#{pathologicDiagCode}, " +
+            "clinic_diag=#{clinicDiagCode} where inpatient_no=#{bah} and admiss_times=#{times}")
     void updateZyActPatient(@Param("bah") String bah, @Param("times") int times,
                             @Param("autopsy") String autopsy,
                             @Param("dc1") String dc1, @Param("dc2") String dc2,
                             @Param("dc3") String dc3, @Param("dc4") String dc4,
                             @Param("dc5") String dc5, @Param("hasSurgery") String hasSurgery,
                             @Param("pathologicDiagStr") String pathologicDiagStr,
-                            @Param("pathologicDiagCode") String pathologicDiagCode);
+                            @Param("pathologicDiagCode") String pathologicDiagCode,
+                            @Param("clinicDiagCode") String clinicDiagCode,
+                            @Param("clinicDiagStr") String clinicDiagStr);
 
-    @Update("update zy_inactpatient set autopsy_mark=#{autopsy}," +
+    @Update("update zy_inactpatient set autopsy_mark=#{autopsy},clinic_diag_str=#{clinicDiagStr}, " +
             "diagnose_conform1=#{dc1},diagnose_conform2=#{dc2},diagnose_conform3=#{dc3}," +
             "diagnose_conform4=#{dc4}, diagnose_conform5=#{dc5}, operation=#{hasSurgery}," +
-            "pathology_diag_comment=#{pathologicDiagStr},pathology_diag=#{pathologicDiagCode} " +
-            "where inpatient_no=#{bah} and admiss_times=#{times}")
+            "pathology_diag_comment=#{pathologicDiagStr},pathology_diag=#{pathologicDiagCode}, " +
+            "clinic_diag=#{clinicDiagCode} where inpatient_no=#{bah} and admiss_times=#{times}")
     void updateZyInActPatient(@Param("bah") String bah, @Param("times") int times,
                               @Param("autopsy") String autopsy,
                               @Param("dc1") String dc1, @Param("dc2") String dc2,
                               @Param("dc3") String dc3, @Param("dc4") String dc4,
                               @Param("dc5") String dc5, @Param("hasSurgery") String hasSurgery,
                               @Param("pathologicDiagStr") String pathologicDiagStr,
-                              @Param("pathologicDiagCode") String pathologicDiagCode);
+                              @Param("pathologicDiagCode") String pathologicDiagCode,
+                              @Param("clinicDiagCode") String clinicDiagCode,
+                              @Param("clinicDiagStr") String clinicDiagStr);
 
     @Select("select count(*) from batj_ba1 with(nolock) where bah=#{bah} and zycs=#{times}")
     int isBatjBa1Exist(@Param("bah") String bah, @Param("times") int times);
@@ -488,10 +492,10 @@ public interface CaseFrontSheetDao extends BaseMapper<CaseFrontsheetMain> {
             "where bah=#{bah} and zycs=#{admissTimes}")
     void updateBatjBa2(CaseFrontsheetMain info);
 
-    @Delete("delete from ba_first_page1 with(nolock) where inpatient_no=#{bah} and admiss_times=#{times}")
+    @Delete("delete from ba_first_page1 where inpatient_no=#{bah} and admiss_times=#{times}")
     void deleteOldDisdiag(@Param("bah") String bah, @Param("times") int times);
 
-    @Delete("delete from batj_ba4 with(nolock) where bah=#{bah} and zycs=#{times}")
+    @Delete("delete from batj_ba4 where bah=#{bah} and zycs=#{times}")
     void deleteOldSurgeryRecord(@Param("bah") String bah, @Param("times") int times);
 
     @Insert("insert into ba_first_page1 (inpatient_no, admiss_times, dis_diag_no," +

+ 29 - 29
src/main/java/thyyxxk/webserver/dao/his/casefrontsheet/SheetCreatedDao.java

@@ -26,90 +26,90 @@ public interface SheetCreatedDao extends BaseMapper<CaseFrontsheetDisdiag> {
             "where dept_code not like '8%' order by dept_code")
     List<PureCodeName> getAllWards();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_marital_status with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_marital_status with(nolock)")
     List<PureCodeName> getMarriageCode();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_sex_code with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_sex_code with(nolock)")
     List<PureCodeName> getSexCode();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zy_zd_admiss_way with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zy_zd_admiss_way with(nolock)")
     List<PureCodeName> getAdmissWay();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_blood_type with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_blood_type with(nolock) union select code='-',name='-'")
     List<PureCodeName> getBloodType();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_anaesthesia with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_anaesthesia with(nolock)")
     List<PureCodeName> getAnaesthesia();
 
-    @Select("select rtrim(code_sy) code,rtrim(name_sy) name from op_zd_scale with(nolock) order by code")
+    @Select("select rtrim(code_sy) code,rtrim(name_sy) name from op_zd_scale with(nolock)")
     List<PureCodeName> getOperateScale();
 
-    @Select("select rtrim(code) code, rtrim(name_new) name from zd_cut_heal_grade with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name_new) name from zd_cut_heal_grade with(nolock)")
     List<PureCodeName> getCutHealGrade();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_dis_admiss_status with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_dis_admiss_status with(nolock)")
     List<PureCodeName> getDisAdmissStatus();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_dis_diag_status with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_dis_diag_status with(nolock)")
     List<PureCodeName> getDisdiagStatus();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_hbsag with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_hbsag with(nolock) union select code='-',name='-'")
     List<PureCodeName> getHbsag();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_diag_conform with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_diag_conform with(nolock)")
     List<PureCodeName> getDiagConform();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_dis_diag_type with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_dis_diag_type with(nolock)")
     List<PureCodeName> getDisdiagType();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_patient_status with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_patient_status with(nolock)")
     List<PureCodeName> getPatientStatus();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_admiss_status with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_admiss_status with(nolock)")
     List<PureCodeName> getAdmissStatus();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_quality_level with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_quality_level with(nolock)")
     List<PureCodeName> getQualityLevel();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_zy_dismiss_way with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_zy_dismiss_way with(nolock)")
     List<PureCodeName> getZyDismissWay();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zy_zd_relative_code with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zy_zd_relative_code with(nolock)")
     List<PureCodeName> getRelations();
 
-    @Select("select code, name from zd_statutory_epidemic with(nolock) order by code")
+    @Select("select code, name from zd_statutory_epidemic with(nolock) union select code='-',name='-'")
     List<PureCodeName> getStatutoryEpidemic();
 
-    @Select("select code, name from zd_clinical_pathway_management with(nolock) order by code")
+    @Select("select code, name from zd_clinical_pathway_management with(nolock) union select code='-',name='-'")
     List<PureCodeName> getClinicalPathwayManagement();
 
-    @Select("select code, name from zd_drgs_management with(nolock) order by code")
+    @Select("select code, name from zd_drgs_management with(nolock) union select code='-',name='-'")
     List<PureCodeName> getDrgsManagement();
 
-    @Select("select code, name from zd_case_classification with(nolock) order by code")
+    @Select("select code, name from zd_case_classification with(nolock) union select code='-',name='-'")
     List<PureCodeName> getCaseClassification();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zy_occupation_code with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zy_occupation_code with(nolock)")
     List<PureCodeName> getOccupation();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_country_code with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_country_code with(nolock)")
     List<PureCodeName> getCountry();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_nation_code with(nolock) order by code")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_nation_code with(nolock)")
     List<PureCodeName> getNation();
 
-    @Select("select rtrim(code) code, rtrim(name) name from zd_pay_method with(nolock)")
+    @Select("select rtrim(code) code, rtrim(name) name from zd_pay_method with(nolock) union select code='-',name='-'")
     List<PureCodeName> getPayMethod();
 
-    @Select("select rtrim(code) code, rtrim(code) name from zd_tnm with(nolock) where T=1")
+    @Select("select rtrim(code) code, rtrim(code) name from zd_tnm with(nolock) where T=1 union select code='-',name='-'")
     List<PureCodeName> getTumorLevelT();
 
-    @Select("select rtrim(code) code, rtrim(code) name from zd_tnm with(nolock) where N=1")
+    @Select("select rtrim(code) code, rtrim(code) name from zd_tnm with(nolock) where N=1 union select code='-',name='-'")
     List<PureCodeName> getTumorLevelN();
 
-    @Select("select rtrim(code) code, rtrim(code) name from zd_tnm with(nolock) where M=1")
+    @Select("select rtrim(code) code, rtrim(code) name from zd_tnm with(nolock) where M=1 union select code='-',name='-'")
     List<PureCodeName> getTumorLevelM();
 
-    @Select("select rtrim(code) code, rtrim(code) name from zd_tnm with(nolock) where stage=1")
+    @Select("select rtrim(code) code, rtrim(code) name from zd_tnm with(nolock) where stage=1 union select code='-',name='-'")
     List<PureCodeName> getTumorLevel();
 }

+ 18 - 0
src/main/java/thyyxxk/webserver/dao/his/casefrontsheet/SheetSearchDao.java

@@ -28,6 +28,24 @@ public interface SheetSearchDao {
             "where a.[Number]>10*(#{page}-1)")
     List<PureCodeName> searchSurgeryByName(@Param("content") String content, @Param("page") int page);
 
+    @Select("select top 10 rtrim(code) as code, rtrim(name) as name from " +
+            "(SELECT ROW_NUMBER() OVER(ORDER BY code) AS 'Number',  * " +
+            "from zd_icd_code with(nolock) where py_code like #{content}) a " +
+            "where a.[Number]>10*(#{page}-1)")
+    List<PureCodeName> searchClinicdiagByAlpha(@Param("content") String content, @Param("page") int page);
+
+    @Select("select top 10 rtrim(code) as code, rtrim(name) as name from " +
+            "(SELECT ROW_NUMBER() OVER(ORDER BY code) AS 'Number',  * " +
+            "from zd_icd_code with(nolock) where code like #{content}) a " +
+            "where a.[Number]>10*(#{page}-1)")
+    List<PureCodeName> searchClinicdiagByCode(@Param("content") String content, @Param("page") int page);
+
+    @Select("select top 10 rtrim(code) as code, rtrim(name) as name from " +
+            "(SELECT ROW_NUMBER() OVER(ORDER BY code) AS 'Number',  * " +
+            "from zd_icd_code with(nolock) where name like #{content}) a " +
+            "where a.[Number]>10*(#{page}-1)")
+    List<PureCodeName> searchClinicdiagByName(@Param("content") String content, @Param("page") int page);
+
     @Select("select top 10 rtrim(CODE) code, rtrim(NAME) name from " +
             "(SELECT ROW_NUMBER() OVER(ORDER BY CODE) AS 'Number',  * " +
             "from zd_pathologic_diag_code with(nolock) where PY_CODE like #{content}) a " +

+ 9 - 0
src/main/java/thyyxxk/webserver/dao/his/yibao/DictionaryDao.java

@@ -67,4 +67,13 @@ public interface DictionaryDao {
     @Select("select rtrim(new_code) as code, rtrim(new_name) as name " +
             "from si_icd_single_diseases where name like #{content} ")
     List<PureCodeName> selectSpcDssDiagForFrontSheetByName(@Param("content") String content);
+
+    @Select("select code, name from t_zd_injury_disease where py_code like #{content} ")
+    List<PureCodeName> selectInjuryDssDiagForFrontSheetByPyCode(@Param("content") String content);
+
+    @Select("select code, name from t_zd_injury_disease where code like #{content} ")
+    List<PureCodeName> selectInjuryDssDiagForFrontSheetByCode(@Param("content") String content);
+
+    @Select("select code, name from t_zd_injury_disease where name like #{content} ")
+    List<PureCodeName> selectInjuryDssDiagForFrontSheetByName(@Param("content") String content);
 }

+ 1101 - 891
src/main/java/thyyxxk/webserver/entity/casefrontsheet/CaseFrontsheetMain.java

@@ -7,12 +7,13 @@ import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import org.springframework.format.annotation.DateTimeFormat;
-import thyyxxk.webserver.utils.StringUtil;
 
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
+import static thyyxxk.webserver.utils.StringUtil.isBlank;
+
 /**
  * @author dj
  */
@@ -20,895 +21,1104 @@ import java.util.List;
 @TableName(value = "t_case_frontsheet_main")
 public class CaseFrontsheetMain implements Serializable {
 
-	private static final long serialVersionUID =  3870281948419892424L;
-
-	/**
-	 * 病案号,和住院号一样
-	 */
-	private String bah;
-
-	/**
-	 * 住院次数
-	 */
-	private Integer admissTimes;
-
-	/**
-	 * 签收状态 0,未签收   1,已签收   2,已打印
-	 */
-	private Integer fileStatus;
-
-	/**
-	 * 迟交标志,0,否   1,是
-	 */
-	private Integer lateFlag;
-
-	/**
-	 * 签收日期
-	 */
-	private Date signDate;
-
-	/**
-	 *  0,未借阅   1,已借阅   2,已归还
-	 */
-	private Integer lendFlag;
-
-	/**
-	 * 借阅时间
-	 */
-	private Date borrowDate;
-
-	/**
-	 * 借阅人id
-	 */
-	private String borrowId;
-
-	/**
-	 * 医疗付费方式
-	 */
-	private String payMethod;
-
-	/**
-	 * 健康卡号
-	 */
-	private String healthCardNo;
-
-	/**
-	 * name
-	 */
-	private String name;
-
-	/**
-	 * sex
-	 */
-	private String sex;
-
-	/**
-	 * 出生日期
-	 */
-	@DateTimeFormat(pattern = "yyyy-MM-dd")
-	@JsonFormat(pattern = "yyyy-MM-dd")
-	private Date birthDate;
-
-	/**
-	 * age
-	 */
-	private Integer age;
-
-	/**
-	 * 国籍
-	 */
-	private String country;
-
-	/**
-	 * 出生天数
-	 */
-	private String ageDays;
-
-	/**
-	 * 新生儿体重
-	 */
-	private String newBornWeight;
-
-	/**
-	 * 新生儿入院体重
-	 */
-	private String newBornAdmissWeight;
-
-	/**
-	 * 出生地编码
-	 */
-	private String birthPlace;
-
-	/**
-	 * 出生地名称
-	 */
-	private String birthPlaceName;
-
-	/**
-	 * 籍贯编码
-	 */
-	private String nativePlace;
-
-	/**
-	 * 籍贯名称
-	 */
-	private String nativePlaceName;
-
-	/**
-	 * 国家
-
-	 */
-	private String nation;
-
-	/**
-	 * 身份证
-
-	 */
-	private String socialNo;
-
-	/**
-	 * 职业
-
-	 */
-	private String occupation;
-
-	/**
-	 * 婚姻情况
-	 */
-	private String marriage;
-
-	/**
-	 * 现住址
-	 */
-	private String livePlace;
-
-	/**
-	 * 手机号
-	 */
-	private String phone;
-
-	/**
-	 * 居住他邮编
-
-	 */
-	private String addrZipCode;
-
-	/**
-	 * 户口地址编码
-	 */
-	private String hkPlace;
-
-	/**
-	 * 户口地址
-	 */
-	private String hkPlaceName;
-
-	/**
-	 * 户口地址邮编
-	 */
-	private String hkZipCode;
-
-	/**
-	 * 工作单位
-	 */
-	private String unitName;
-
-	/**
-	 * 工作单位地址
-	 */
-	private String unitPlace;
-
-	/**
-	 * 工作单位电话
-	 */
-	private String unitPhone;
-
-	/**
-	 * 工作单位邮编
-	 */
-	private String unitZipCode;
-
-	/**
-	 * 联系人姓名
-	 */
-	private String contactName;
-
-	/**
-	 * 联系人关系
-	 */
-	private String contactRelation;
-
-	/**
-	 * 联系人地址编码
-	 */
-	private String contactAddr;
-
-	/**
-	 * 联系人地址
-	 */
-	private String contactAddrName;
-
-	/**
-	 * 联系人电话
-	 */
-	private String contactPhone;
-
-	/**
-	 * 入院方式
-	 */
-	private String zyAdmissWay;
-
-	/**
-	 * 是否有手术
-
-	 */
-	private String hasSurgery;
-
-	/**
-	 * 入院日期
-	 */
-	private Date admissDate;
-
-	/**
-	 * 入院科室
-	 */
-	private String admissDept;
-
-	/**
-	 * 入院病房
-	 */
-	private String admissWard;
-
-	/**
-	 * 转科科室
-	 */
-	private String transDept;
-
-	/**
-	 * 出院日期
-	 */
-	private Date dismissDate;
-
-	/**
-	 * 出院科室
-	 */
-	private String dismissDept;
-
-	/**
-	 * 出院病房
-	 */
-	private String dismissWard;
-
-	/**
-	 * 住院天数
-	 */
-	private String admissDays;
-
-	/**
-	 * 门诊诊断编码
-	 * */
-	private String clinicDiagCode;
-
-	/**
-	 * 门诊诊断名称
-	 */
-	private String clinicDiagStr;
-
-	/**
-	 * 意外伤害名称
-	 */
-	private String hurtReasonName;
-
-	/**
-	 * 意外伤害编码
-	 */
-	private String hurtReasonCode;
-
-	/**
-	 * 病理诊断名称
-	 */
-	private String pathologicDiagStr;
-
-	/**
-	 * 病理诊断编码
-	 */
-	private String pathologicDiagCode;
-
-	/**
-	 * 病历号
-	 */
-	private String blh;
-
-	/**
-	 * 是否有过敏
-	 */
-	private String allergy;
-
-	/**
-	 * 过敏药物
-	 */
-	private String allergicMedicine;
-
-	/**
-	 * 是否进行过尸检
-	 */
-	private String autopsy;
-
-	/**
-	 * 输血前四项(HbsAg)
-	 */
-	private String hbsAg;
-
-	/**
-	 * 输血前四项(HCV-Ab)
-	 */
-	private String hcvAb;
-
-	/**
-	 * 输血前四项(HIV-Ab)
-	 */
-	private String hivAb;
-
-	/**
-	 * 输血前四项(TP-Ab)
-	 */
-	private String tpAb;
-
-	/**
-	 * 血型
-	 */
-	private String bloodType;
-
-	/**
-	 * Rh
-	 */
-	private String rh;
-
-	/**
-	 * 科室主任
-	 */
-	private String deptLeader;
-
-	/**
-	 * 主任(副主任)医师
-	 */
-	private String leaderDoctor;
-
-	/**
-	 * 主治医师
-	 */
-	private String mainDoctor;
-
-	/**
-	 * 住院医师
-	 */
-	private String admissDoctor;
-
-	/**
-	 * 责任护士
-	 */
-	private String dutyNurse;
-
-	/**
-	 * 进修医师
-	 */
-	private String studyDoctor;
-
-	/**
-	 * 实习医师
-	 */
-	private String internshipDoctor;
-
-	/**
-	 * 编码员
-	 */
-	private String coder;
-
-	/**
-	 * 科室主任姓名
-	 */
-	private String deptLeaderName;
-
-	/**
-	 * 主任(副主任)医师姓名
-	 */
-	private String leaderDoctorName;
-
-	/**
-	 * 主治医师姓名
-	 */
-	private String mainDoctorName;
-
-	/**
-	 * 住院医师姓名
-	 */
-	private String admissDoctorName;
-
-	/**
-	 * 责任护士姓名
-	 */
-	private String dutyNurseName;
-
-	/**
-	 * 进修医师姓名
-	 */
-	private String studyDoctorName;
-
-	/**
-	 * 实习医师姓名
-	 */
-	private String internshipDoctorName;
-
-	/**
-	 * 编码员姓名
-	 */
-	private String coderName;
-
-	/**
-	 * 病案质量
-	 */
-	private String qualityControlLevel;
-
-	/**
-	 * 质控医师
-	 */
-	private String qualityControlDoctor;
-
-	/**
-	 * 质控护士
-	 */
-	private String qualityControlNurse;
-
-	/**
-	 * 质控医师姓名
-	 */
-	private String qualityControlDoctorName;
-
-	/**
-	 * 质控护士姓名
-	 */
-	private String qualityControlNurseName;
-
-	/**
-	 * 质控日期
-	 */
-	@DateTimeFormat(pattern = "yyyy-MM-dd")
-	@JsonFormat(pattern = "yyyy-MM-dd")
-	private Date qualityControlDate;
-
-	/**
-	 * 离院方式
-	 */
-	private String zyDismissWay;
-
-	/**
-	 * 拟接收医疗机构名称
-	 */
-	private String dismissDestination;
-
-	/**
-	 * 是否有出院31天内再住院计划
-	 */
-	private String admissAgainInOneMonth;
-
-	/**
-	 * 出院31天内再住院目的
-	 */
-	private String admissAgainPurpose;
-
-	/**
-	 * 颅脑损伤患者入院前昏迷时间(天)
-	 */
-	private String comaDaysBeforeAdmiss;
-
-	/**
-	 * 颅脑损伤患者入院前昏迷时间(小时)
-	 */
-	private String comaHoursBeforeAdmiss;
-
-	/**
-	 * 颅脑损伤患者入院前昏迷时间(分钟)
-	 */
-	private String comaMinutesBeforeAdmiss;
-
-	/**
-	 * 颅脑损伤患者入院后昏迷时间(天)
-	 */
-	private String comaDaysAfterAdmiss;
-
-	/**
-	 * 颅脑损伤患者入院后昏迷时间(小时)
-	 */
-	private String comaHoursAfterAdmiss;
-
-	/**
-	 * 颅脑损伤患者入院后昏迷时间(分钟)
-	 */
-	private String comaMinutesAfterAdmiss;
-
-	/**
-	 * 住院总费用
-	 */
-	private String totalCost;
-
-	/**
-	 * 住院自费金额
-	 */
-	private String selfPay;
-
-	/**
-	 * 一般医疗服务费
-	 */
-	private String generalMedicalServiceFee;
-
-	/**
-	 * 一般治疗操作费
-	 */
-	private String generalTreatmentOperatingFee;
-
-	/**
-	 * 护理费
-	 */
-	private String careFee;
-
-	/**
-	 * 其他费
-	 */
-	private String elseFee;
-
-	/**
-	 * 病理诊断费
-	 */
-	private String pathologicDiagFee;
-
-	/**
-	 * 实验室诊断费
-	 */
-	private String experimentDiagFee;
-
-	/**
-	 * 影像学诊断费
-	 */
-	private String ctDiagFee;
-
-	/**
-	 * 临床诊断项目费
-	 */
-	private String clinicalDiagFee;
-
-	/**
-	 * 非手术治疗项目费
-	 */
-	private String notSurgicalFee;
-
-	/**
-	 * 临床物理治疗费
-	 */
-	private String clinicalPhysicalFee;
-
-	/**
-	 * 手术治疗费
-	 */
-	private String surgicalFee;
-
-	/**
-	 * 麻醉费
-	 */
-	private String anesthetizeFee;
-
-	/**
-	 * 手术费
-	 */
-	private String surgeryFee;
-
-	/**
-	 * 康复费
-	 */
-	private String recoverFee;
-
-	/**
-	 * 中医治疗费
-	 */
-	private String tcmTreatmentFee;
-
-	/**
-	 * 西药费
-	 */
-	private String westMedicineFee;
-
-	/**
-	 * 中成药费
-	 */
-	private String chinesePatentMedicineFee;
-
-	/**
-	 * 中草药费
-	 */
-	private String chineseHerbalMedicineFee;
-
-	/**
-	 * 血费
-	 */
-	private String bloodFee;
-
-	/**
-	 * 白蛋白类制品费
-	 */
-	private String albuminProductsFee;
-
-	/**
-	 * 球蛋白类制品费
-	 */
-	private String globulinProductsFee;
-
-	/**
-	 * 凝血因子类制品费
-	 */
-	private String coagulationFactorProductsFee;
-
-	/**
-	 * 细胞因子类制品费
-	 */
-	private String cytokineProductsFee;
-
-	/**
-	 * 检查用一次性医用材料费
-	 */
-	private String costOfDisposableMedicalMaterialsForExamination;
-
-	/**
-	 * 治疗用一次性医用材料费
-	 */
-	private String costOfDisposableMedicalMaterialsForTreatment;
-
-	/**
-	 * 手术用一次性医用材料费
-	 */
-	private String costOfDisposableMedicalMaterialsForOperation;
-
-	/**
-	 * 其他费
-	 */
-	private String otherFees;
-
-	/**
-	 * 门诊与出院
-	 */
-	private String diagConform1;
-
-	/**
-	 * 入院与出院
-	 */
-	private String diagConform2;
-
-	/**
-	 * 术前与术后
-	 */
-	private String diagConform3;
-
-	/**
-	 * 临床与病理
-	 */
-	private String diagConform4;
-
-	/**
-	 * 放射与病理
-	 */
-	private String diagConform5;
-
-	/**
-	 * 抢救次数
-	 */
-	private String rescueTimes;
-
-	/**
-	 * 抢救成功次数
-	 */
-	private String rescueSuccessTimes;
-
-	/**
-	 * 病例分型
-	 */
-	private String caseClassification;
-
-	/**
-	 * 是否实施重症监护
-	 */
-	private String hasIcu;
-
-	/**
-	 * 重症监护时间(天)
-	 */
-	private String icuDays;
-
-	/**
-	 * 重症监护时间(小时)
-	 */
-	private String icuHours;
-
-	/**
-	 * 单病种管理
-	 */
-	private String monopathyManagement;
-
-	/**
-	 * 临床路径管理
-	 */
-	private String clinicalPathwayManagement;
-
-	/**
-	 * DRGs管理
-	 */
-	private String drgsManagement;
-
-	/**
-	 * 抗生素使用
-	 */
-	private String useAntibiotic;
-
-	/**
-	 * 细菌培养标本送检
-	 */
-	private String bacilliculture;
-
-	/**
-	 * 法定传染病
-	 */
-	private String statutoryEpidemic;
-
-	/**
-	 * 肿瘤分期(T)
-	 */
-	private String tumorLevelT;
-
-	/**
-	 * 肿瘤分期(N)
-	 */
-	private String tumorLevelN;
-
-	/**
-	 * 肿瘤分期(M)
-	 */
-	private String tumorLevelM;
-
-	/**
-	 * 肿瘤分期
-	 */
-	private String tumorLevel;
-
-	/**
-	 * 新生儿Apgar评分
-	 */
-	private String xxeApgar;
-
-	/**
-	 * 医疗类别
-	 */
-	private String medType;
-
-	/**
-	 * 是否有婴儿
-	 * */
-	private String hasInfant;
-
-	/**
-	 *
-	 */
-	private String zkWardCode;
-
-	/**
-	 * 诊断列表
-	 * */
-	@TableField(exist = false)
-	private List<CaseFrontsheetDisdiag> disdiagList;
-
-	/**
-	 * 手术列表
-	 * */
-	@TableField(exist = false)
-	private List<CaseFrontsheetSurgery> surgeryList;
-
-	public List<CaseFrontsheetDisdiag> getDisdiagList() {
-		return null == disdiagList ? new ArrayList<>() : disdiagList;
-	}
-
-	public List<CaseFrontsheetSurgery> getSurgeryList() {
-		return null == surgeryList ? new ArrayList<>() : surgeryList;
-	}
-
-	public String getRescueTimes() {
-		return StringUtil.isBlank(rescueTimes) ? "0" : rescueTimes;
-	}
-
-	public String getRescueSuccessTimes() {
-		return StringUtil.isBlank(rescueSuccessTimes) ? "0" : rescueSuccessTimes;
-	}
-
-	public String getNewBornAdmissWeight() {
-		return (newBornAdmissWeight) == null ? "-" : (newBornAdmissWeight).trim();
-	}
-
-	public String getAddrZipCode() {
-		return (addrZipCode) == null ? "-" : (addrZipCode).trim();
-	}
-
-	public String getHkZipCode() {
-		return (hkZipCode) == null ? "-" : (hkZipCode).trim();
-	}
-
-	public String getUnitName() {
-		return (unitName) == null ? "-" : (unitName).trim();
-	}
-
-	public String getUnitPlace() {
-		return (unitPlace) == null ? "-" : (unitPlace).trim();
-	}
-
-	public String getUnitPhone() {
-		return (unitPhone) == null ? "-" : (unitPhone).trim();
-	}
-
-	public String getUnitZipCode() {
-		return (unitZipCode) == null ? "-" : (unitZipCode).trim();
-	}
-
-	public String getHurtReasonName() {
-		return (hurtReasonName) == null ? "-" : (hurtReasonName).trim();
-	}
-
-	public String getHurtReasonCode() {
-		return (hurtReasonCode) == null ? "-" : (hurtReasonCode).trim();
-	}
-
-	public String getPathologicDiagStr() {
-		return (pathologicDiagStr) == null ? "-" : (pathologicDiagStr).trim();
-	}
-
-	public String getPathologicDiagCode() {
-		return (pathologicDiagCode) == null ? "-" : (pathologicDiagCode).trim();
-	}
-
-	public String getBlh() {
-		return (blh) == null ? "-" : (blh).trim();
-	}
-
-	public String getComaDaysBeforeAdmiss() {
-		return StringUtil.isBlank(comaDaysBeforeAdmiss) ? "0" : (comaDaysBeforeAdmiss);
-	}
-
-	public String getComaHoursBeforeAdmiss() {
-		return StringUtil.isBlank(comaHoursBeforeAdmiss) ? "0" : (comaHoursBeforeAdmiss);
-	}
-
-	public String getComaMinutesBeforeAdmiss() {
-		return StringUtil.isBlank(comaMinutesBeforeAdmiss) ? "0" : (comaMinutesBeforeAdmiss);
-	}
-
-	public String getComaDaysAfterAdmiss() {
-		return StringUtil.isBlank(comaDaysAfterAdmiss) ? "0" : (comaDaysAfterAdmiss);
-	}
-
-	public String getComaHoursAfterAdmiss() {
-		return StringUtil.isBlank(comaHoursAfterAdmiss) ? "0" : (comaHoursAfterAdmiss);
-	}
-
-	public String getComaMinutesAfterAdmiss() {
-		return StringUtil.isBlank(comaMinutesAfterAdmiss) ? "0" : (comaMinutesAfterAdmiss);
-	}
-
-	public String getTotalCost() {
-		return StringUtil.isBlank(totalCost) ? "0" : (totalCost).trim();
-	}
-
-	public String getSelfPay() {
-		return StringUtil.isBlank(selfPay) ? "0" : (selfPay).trim();
-	}
-
-	public String getDismissDept() {
-		return StringUtil.isBlank(dismissDept) ? getAdmissDept() : (dismissDept).trim();
-	}
+    private static final long serialVersionUID = 3870281948419892424L;
+
+    /**
+     * 病案号,和住院号一样
+     */
+    private String bah;
+
+    /**
+     * 住院次数
+     */
+    private Integer admissTimes;
+
+    /**
+     * 签收状态 0,未签收   1,已签收   2,已打印
+     */
+    private Integer fileStatus;
+
+    /**
+     * 迟交标志,0,否   1,是
+     */
+    private Integer lateFlag;
+
+    /**
+     * 签收日期
+     */
+    private Date signDate;
+
+    /**
+     * 0,未借阅   1,已借阅   2,已归还
+     */
+    private Integer lendFlag;
+
+    /**
+     * 借阅时间
+     */
+    private Date borrowDate;
+
+    /**
+     * 借阅人id
+     */
+    private String borrowId;
+
+    /**
+     * 医疗付费方式
+     */
+    private String payMethod;
+
+    /**
+     * 健康卡号
+     */
+    private String healthCardNo;
+
+    /**
+     * name
+     */
+    private String name;
+
+    /**
+     * sex
+     */
+    private String sex;
+
+    /**
+     * 出生日期
+     */
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date birthDate;
+
+    /**
+     * age
+     */
+    private Integer age;
+
+    /**
+     * 国籍
+     */
+    private String country;
+
+    /**
+     * 出生天数
+     */
+    private String ageDays;
+
+    /**
+     * 新生儿体重
+     */
+    private String newBornWeight;
+
+    /**
+     * 新生儿入院体重
+     */
+    private String newBornAdmissWeight;
+
+    /**
+     * 出生地编码
+     */
+    private String birthPlace;
+
+    /**
+     * 出生地名称
+     */
+    private String birthPlaceName;
+
+    /**
+     * 籍贯编码
+     */
+    private String nativePlace;
+
+    /**
+     * 籍贯名称
+     */
+    private String nativePlaceName;
+
+    /**
+     * 国家
+     */
+    private String nation;
+
+    /**
+     * 身份证
+     */
+    private String socialNo;
+
+    /**
+     * 职业
+     */
+    private String occupation;
+
+    /**
+     * 婚姻情况
+     */
+    private String marriage;
+
+    /**
+     * 现住址
+     */
+    private String livePlace;
+
+    /**
+     * 手机号
+     */
+    private String phone;
+
+    /**
+     * 居住他邮编
+     */
+    private String addrZipCode;
+
+    /**
+     * 户口地址编码
+     */
+    private String hkPlace;
+
+    /**
+     * 户口地址
+     */
+    private String hkPlaceName;
+
+    /**
+     * 户口地址邮编
+     */
+    private String hkZipCode;
+
+    /**
+     * 工作单位
+     */
+    private String unitName;
+
+    /**
+     * 工作单位地址
+     */
+    private String unitPlace;
+
+    /**
+     * 工作单位电话
+     */
+    private String unitPhone;
+
+    /**
+     * 工作单位邮编
+     */
+    private String unitZipCode;
+
+    /**
+     * 联系人姓名
+     */
+    private String contactName;
+
+    /**
+     * 联系人关系
+     */
+    private String contactRelation;
+
+    /**
+     * 联系人地址编码
+     */
+    private String contactAddr;
+
+    /**
+     * 联系人地址
+     */
+    private String contactAddrName;
+
+    /**
+     * 联系人电话
+     */
+    private String contactPhone;
+
+    /**
+     * 入院方式
+     */
+    private String zyAdmissWay;
+
+    /**
+     * 是否有手术
+     */
+    private String hasSurgery;
+
+    /**
+     * 入院日期
+     */
+    private Date admissDate;
+
+    /**
+     * 入院科室
+     */
+    private String admissDept;
+
+    /**
+     * 入院病房
+     */
+    private String admissWard;
+
+    /**
+     * 转科科室
+     */
+    private String transDept;
+
+    /**
+     * 出院日期
+     */
+    private Date dismissDate;
+
+    /**
+     * 出院科室
+     */
+    private String dismissDept;
+
+    /**
+     * 出院病房
+     */
+    private String dismissWard;
+
+    /**
+     * 住院天数
+     */
+    private String admissDays;
+
+    /**
+     * 门诊诊断编码
+     */
+    private String clinicDiagCode;
+
+    /**
+     * 门诊诊断名称
+     */
+    private String clinicDiagStr;
+
+    /**
+     * 意外伤害名称
+     */
+    private String hurtReasonName;
+
+    /**
+     * 意外伤害编码
+     */
+    private String hurtReasonCode;
+
+    /**
+     * 病理诊断名称
+     */
+    private String pathologicDiagStr;
+
+    /**
+     * 病理诊断编码
+     */
+    private String pathologicDiagCode;
+
+    /**
+     * 病历号
+     */
+    private String blh;
+
+    /**
+     * 是否有过敏
+     */
+    private String allergy;
+
+    /**
+     * 过敏药物
+     */
+    private String allergicMedicine;
+
+    /**
+     * 是否进行过尸检
+     */
+    private String autopsy;
+
+    /**
+     * 输血前四项(HbsAg)
+     */
+    private String hbsAg;
+
+    /**
+     * 输血前四项(HCV-Ab)
+     */
+    private String hcvAb;
+
+    /**
+     * 输血前四项(HIV-Ab)
+     */
+    private String hivAb;
+
+    /**
+     * 输血前四项(TP-Ab)
+     */
+    private String tpAb;
+
+    /**
+     * 血型
+     */
+    private String bloodType;
+
+    /**
+     * Rh
+     */
+    private String rh;
+
+    /**
+     * 科室主任
+     */
+    private String deptLeader;
+
+    /**
+     * 主任(副主任)医师
+     */
+    private String leaderDoctor;
+
+    /**
+     * 主治医师
+     */
+    private String mainDoctor;
+
+    /**
+     * 住院医师
+     */
+    private String admissDoctor;
+
+    /**
+     * 责任护士
+     */
+    private String dutyNurse;
+
+    /**
+     * 进修医师
+     */
+    private String studyDoctor;
+
+    /**
+     * 实习医师
+     */
+    private String internshipDoctor;
+
+    /**
+     * 编码员
+     */
+    private String coder;
+
+    /**
+     * 科室主任姓名
+     */
+    private String deptLeaderName;
+
+    /**
+     * 主任(副主任)医师姓名
+     */
+    private String leaderDoctorName;
+
+    /**
+     * 主治医师姓名
+     */
+    private String mainDoctorName;
+
+    /**
+     * 住院医师姓名
+     */
+    private String admissDoctorName;
+
+    /**
+     * 责任护士姓名
+     */
+    private String dutyNurseName;
+
+    /**
+     * 进修医师姓名
+     */
+    private String studyDoctorName;
+
+    /**
+     * 实习医师姓名
+     */
+    private String internshipDoctorName;
+
+    /**
+     * 编码员姓名
+     */
+    private String coderName;
+
+    /**
+     * 病案质量
+     */
+    private String qualityControlLevel;
+
+    /**
+     * 质控医师
+     */
+    private String qualityControlDoctor;
+
+    /**
+     * 质控护士
+     */
+    private String qualityControlNurse;
+
+    /**
+     * 质控医师姓名
+     */
+    private String qualityControlDoctorName;
+
+    /**
+     * 质控护士姓名
+     */
+    private String qualityControlNurseName;
+
+    /**
+     * 质控日期
+     */
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date qualityControlDate;
+
+    /**
+     * 离院方式
+     */
+    private String zyDismissWay;
+
+    /**
+     * 拟接收医疗机构名称
+     */
+    private String dismissDestination;
+
+    /**
+     * 是否有出院31天内再住院计划
+     */
+    private String admissAgainInOneMonth;
+
+    /**
+     * 出院31天内再住院目的
+     */
+    private String admissAgainPurpose;
+
+    /**
+     * 颅脑损伤患者入院前昏迷时间(天)
+     */
+    private String comaDaysBeforeAdmiss;
+
+    /**
+     * 颅脑损伤患者入院前昏迷时间(小时)
+     */
+    private String comaHoursBeforeAdmiss;
+
+    /**
+     * 颅脑损伤患者入院前昏迷时间(分钟)
+     */
+    private String comaMinutesBeforeAdmiss;
+
+    /**
+     * 颅脑损伤患者入院后昏迷时间(天)
+     */
+    private String comaDaysAfterAdmiss;
+
+    /**
+     * 颅脑损伤患者入院后昏迷时间(小时)
+     */
+    private String comaHoursAfterAdmiss;
+
+    /**
+     * 颅脑损伤患者入院后昏迷时间(分钟)
+     */
+    private String comaMinutesAfterAdmiss;
+
+    /**
+     * 住院总费用
+     */
+    private String totalCost;
+
+    /**
+     * 住院自费金额
+     */
+    private String selfPay;
+
+    /**
+     * 一般医疗服务费
+     */
+    private String generalMedicalServiceFee;
+
+    /**
+     * 一般治疗操作费
+     */
+    private String generalTreatmentOperatingFee;
+
+    /**
+     * 护理费
+     */
+    private String careFee;
+
+    /**
+     * 其他费
+     */
+    private String elseFee;
+
+    /**
+     * 病理诊断费
+     */
+    private String pathologicDiagFee;
+
+    /**
+     * 实验室诊断费
+     */
+    private String experimentDiagFee;
+
+    /**
+     * 影像学诊断费
+     */
+    private String ctDiagFee;
+
+    /**
+     * 临床诊断项目费
+     */
+    private String clinicalDiagFee;
+
+    /**
+     * 非手术治疗项目费
+     */
+    private String notSurgicalFee;
+
+    /**
+     * 临床物理治疗费
+     */
+    private String clinicalPhysicalFee;
+
+    /**
+     * 手术治疗费
+     */
+    private String surgicalFee;
+
+    /**
+     * 麻醉费
+     */
+    private String anesthetizeFee;
+
+    /**
+     * 手术费
+     */
+    private String surgeryFee;
+
+    /**
+     * 康复费
+     */
+    private String recoverFee;
+
+    /**
+     * 中医治疗费
+     */
+    private String tcmTreatmentFee;
+
+    /**
+     * 西药费
+     */
+    private String westMedicineFee;
+
+    /**
+     * 中成药费
+     */
+    private String chinesePatentMedicineFee;
+
+    /**
+     * 中草药费
+     */
+    private String chineseHerbalMedicineFee;
+
+    /**
+     * 血费
+     */
+    private String bloodFee;
+
+    /**
+     * 白蛋白类制品费
+     */
+    private String albuminProductsFee;
+
+    /**
+     * 球蛋白类制品费
+     */
+    private String globulinProductsFee;
+
+    /**
+     * 凝血因子类制品费
+     */
+    private String coagulationFactorProductsFee;
+
+    /**
+     * 细胞因子类制品费
+     */
+    private String cytokineProductsFee;
+
+    /**
+     * 检查用一次性医用材料费
+     */
+    private String costOfDisposableMedicalMaterialsForExamination;
+
+    /**
+     * 治疗用一次性医用材料费
+     */
+    private String costOfDisposableMedicalMaterialsForTreatment;
+
+    /**
+     * 手术用一次性医用材料费
+     */
+    private String costOfDisposableMedicalMaterialsForOperation;
+
+    /**
+     * 其他费
+     */
+    private String otherFees;
+
+    /**
+     * 门诊与出院
+     */
+    private String diagConform1;
+
+    /**
+     * 入院与出院
+     */
+    private String diagConform2;
+
+    /**
+     * 术前与术后
+     */
+    private String diagConform3;
+
+    /**
+     * 临床与病理
+     */
+    private String diagConform4;
+
+    /**
+     * 放射与病理
+     */
+    private String diagConform5;
+
+    /**
+     * 抢救次数
+     */
+    private String rescueTimes;
+
+    /**
+     * 抢救成功次数
+     */
+    private String rescueSuccessTimes;
+
+    /**
+     * 病例分型
+     */
+    private String caseClassification;
+
+    /**
+     * 是否实施重症监护
+     */
+    private String hasIcu;
+
+    /**
+     * 重症监护时间(天)
+     */
+    private String icuDays;
+
+    /**
+     * 重症监护时间(小时)
+     */
+    private String icuHours;
+
+    /**
+     * 单病种管理
+     */
+    private String monopathyManagement;
+
+    /**
+     * 临床路径管理
+     */
+    private String clinicalPathwayManagement;
+
+    /**
+     * DRGs管理
+     */
+    private String drgsManagement;
+
+    /**
+     * 抗生素使用
+     */
+    private String useAntibiotic;
+
+    /**
+     * 细菌培养标本送检
+     */
+    private String bacilliculture;
+
+    /**
+     * 法定传染病
+     */
+    private String statutoryEpidemic;
+
+    /**
+     * 肿瘤分期(T)
+     */
+    private String tumorLevelT;
+
+    /**
+     * 肿瘤分期(N)
+     */
+    private String tumorLevelN;
+
+    /**
+     * 肿瘤分期(M)
+     */
+    private String tumorLevelM;
+
+    /**
+     * 肿瘤分期
+     */
+    private String tumorLevel;
+
+    /**
+     * 新生儿Apgar评分
+     */
+    private String xxeApgar;
+
+    /**
+     * 医疗类别
+     */
+    private String medType;
+
+    /**
+     * 是否有婴儿
+     */
+    private String hasInfant;
+
+    /**
+     *
+     */
+    private String zkWardCode;
+
+    /**
+     * 诊断列表
+     */
+    @TableField(exist = false)
+    private List<CaseFrontsheetDisdiag> disdiagList;
+
+    /**
+     * 手术列表
+     */
+    @TableField(exist = false)
+    private List<CaseFrontsheetSurgery> surgeryList;
+
+    public List<CaseFrontsheetDisdiag> getDisdiagList() {
+        return null == disdiagList ? new ArrayList<>() : disdiagList;
+    }
+
+    public List<CaseFrontsheetSurgery> getSurgeryList() {
+        return null == surgeryList ? new ArrayList<>() : surgeryList;
+    }
+
+    public String getPayMethod() {
+        return isBlank(payMethod) ? "-" : payMethod.trim();
+    }
+
+    public String getRescueTimes() {
+        return isBlank(rescueTimes) ? "0" : rescueTimes;
+    }
+
+    public String getRescueSuccessTimes() {
+        return isBlank(rescueSuccessTimes) ? "0" : rescueSuccessTimes;
+    }
+
+    public String getNewBornAdmissWeight() {
+        return isBlank(newBornAdmissWeight) ? "-" : newBornAdmissWeight.trim();
+    }
+
+    public String getAddrZipCode() {
+        return isBlank(addrZipCode) ? "-" : addrZipCode.trim();
+    }
+
+    public String getHkZipCode() {
+        return isBlank(hkZipCode) ? "-" : hkZipCode.trim();
+    }
+
+    public String getUnitName() {
+        return isBlank(unitName) ? "-" : unitName.trim();
+    }
+
+    public String getUnitPlace() {
+        return isBlank(unitPlace) ? "-" : unitPlace.trim();
+    }
+
+    public String getUnitPhone() {
+        return isBlank(unitPhone) ? "-" : unitPhone.trim();
+    }
+
+    public String getUnitZipCode() {
+        return isBlank(unitZipCode) ? "-" : unitZipCode.trim();
+    }
+
+    public String getHurtReasonName() {
+        return isBlank(hurtReasonName) ? "-" : hurtReasonName.trim();
+    }
+
+    public String getHurtReasonCode() {
+        return isBlank(hurtReasonCode) ? "-" : hurtReasonCode.trim();
+    }
+
+    public String getPathologicDiagStr() {
+        return isBlank(pathologicDiagStr) ? "-" : pathologicDiagStr.trim();
+    }
+
+    public String getPathologicDiagCode() {
+        return isBlank(pathologicDiagCode) ? "-" : pathologicDiagCode.trim();
+    }
+
+    public String getBlh() {
+        return isBlank(blh) ? "-" : blh.trim();
+    }
+
+    public String getComaDaysBeforeAdmiss() {
+        return isBlank(comaDaysBeforeAdmiss) ? "0" : comaDaysBeforeAdmiss;
+    }
+
+    public String getComaHoursBeforeAdmiss() {
+        return isBlank(comaHoursBeforeAdmiss) ? "0" : comaHoursBeforeAdmiss;
+    }
+
+    public String getComaMinutesBeforeAdmiss() {
+        return isBlank(comaMinutesBeforeAdmiss) ? "0" : comaMinutesBeforeAdmiss;
+    }
+
+    public String getComaDaysAfterAdmiss() {
+        return isBlank(comaDaysAfterAdmiss) ? "0" : comaDaysAfterAdmiss;
+    }
+
+    public String getComaHoursAfterAdmiss() {
+        return isBlank(comaHoursAfterAdmiss) ? "0" : comaHoursAfterAdmiss;
+    }
+
+    public String getComaMinutesAfterAdmiss() {
+        return isBlank(comaMinutesAfterAdmiss) ? "0" : comaMinutesAfterAdmiss;
+    }
+
+
+
+    public String getTotalCost() {
+        return isBlank(totalCost) ? "0" : totalCost.trim();
+    }
+
+    public String getSelfPay() {
+        return isBlank(selfPay) ? "0" : selfPay.trim();
+    }
+
+    public String getDismissDept() {
+        return isBlank(dismissDept) ? getAdmissDept() : dismissDept.trim();
+    }
+
+    public String getDismissWard() {
+        return isBlank(dismissWard) ? getAdmissWard() : dismissWard.trim();
+    }
+
+    public String getHealthCardNo() {
+        return isBlank(healthCardNo) ? "-" : healthCardNo;
+    }
+
+    public String getAgeDays() {
+        return isBlank(ageDays) ? "-" : ageDays;
+    }
+
+    public String getNewBornWeight() {
+        return isBlank(newBornWeight) ? "-" : newBornWeight;
+    }
+
+    public String getBirthPlaceName() {
+        return isBlank(birthPlaceName) ? "-" : birthPlaceName;
+    }
+
+    public String getNativePlaceName() {
+        return isBlank(nativePlaceName) ? "-" : nativePlaceName;
+    }
+
+    public String getSocialNo() {
+        return isBlank(socialNo) ? "-" : socialNo;
+    }
+
+    public String getLivePlace() {
+        return isBlank(livePlace) ? "-" : livePlace;
+    }
+
+    public String getPhone() {
+        return isBlank(phone) ? "-" : phone;
+    }
+
+    public String getHkPlaceName() {
+        return isBlank(hkPlaceName) ? "-" : hkPlaceName;
+    }
+
+    public String getContactName() {
+        return isBlank(contactName) ? "-" : contactName;
+    }
+
+    public String getContactRelation() {
+        return isBlank(contactRelation) ? "-" : contactRelation;
+    }
+
+    public String getContactAddrName() {
+        return isBlank(contactAddrName) ? "-" : contactAddrName;
+    }
+
+    public String getContactPhone() {
+        return isBlank(contactPhone) ? "-" : contactPhone;
+    }
+
+    public String getTransDept() {
+        return isBlank(transDept) ? "-" : transDept;
+    }
+
+    public String getClinicDiagCode() {
+        return isBlank(clinicDiagCode) ? "-" : clinicDiagCode;
+    }
+
+    public String getClinicDiagStr() {
+        return isBlank(clinicDiagStr) ? "-" : clinicDiagStr;
+    }
+
+    public String getAllergy() {
+        return isBlank(allergy) ? "-" : allergy;
+    }
+
+    public String getAutopsy() {
+        return isBlank(autopsy) ? "-" : autopsy;
+    }
+
+    public String getHbsAg() {
+        return isBlank(hbsAg) ? "-" : hbsAg;
+    }
+
+    public String getHcvAb() {
+        return isBlank(hcvAb) ? "-" : hcvAb;
+    }
+
+    public String getHivAb() {
+        return isBlank(hivAb) ? "-" : hivAb;
+    }
+
+    public String getTpAb() {
+        return isBlank(tpAb) ? "-" : tpAb;
+    }
+
+    public String getBloodType() {
+        return isBlank(bloodType) ? "-" : bloodType;
+    }
+
+    public String getRh() {
+        return isBlank(rh) ? "-" : rh;
+    }
+
+    public String getAllergicMedicine() {
+        return isBlank(allergicMedicine) ? "-" : allergicMedicine;
+    }
+
+    public String getDeptLeaderName() {
+        return isBlank(deptLeaderName) ? "-" : deptLeaderName;
+    }
+
+    public String getLeaderDoctorName() {
+        return isBlank(leaderDoctorName) ? "-" : leaderDoctorName;
+    }
+
+    public String getMainDoctorName() {
+        return isBlank(mainDoctorName) ? "-" : mainDoctorName;
+    }
+
+    public String getAdmissDoctorName() {
+        return isBlank(admissDoctorName) ? "-" : admissDoctorName;
+    }
+
+    public String getDutyNurseName() {
+        return isBlank(dutyNurseName) ? "-" : dutyNurseName;
+    }
+
+    public String getStudyDoctorName() {
+        return isBlank(studyDoctorName) ? "-" : studyDoctorName;
+    }
+
+    public String getInternshipDoctorName() {
+        return isBlank(internshipDoctorName) ? "-" : internshipDoctorName;
+    }
+
+    public String getCoderName() {
+        return isBlank(coderName) ? "-" : coderName;
+    }
+
+    public String getQualityControlDoctorName() {
+        return isBlank(qualityControlDoctorName) ? "-" : qualityControlDoctorName;
+    }
+
+    public String getQualityControlNurseName() {
+        return isBlank(qualityControlNurseName) ? "-" : qualityControlNurseName;
+    }
+
+    public String getDismissDestination() {
+        return isBlank(dismissDestination) ? "-" : dismissDestination;
+    }
+
+    public String getAdmissAgainPurpose() {
+        return isBlank(admissAgainPurpose) ? "-" : admissAgainPurpose;
+    }
+
+    public String getCaseClassification() {
+        return isBlank(caseClassification) ? "-" : caseClassification;
+    }
+
+    public String getHasIcu() {
+        return isBlank(hasIcu) ? "-" : hasIcu;
+    }
+
+    public String getIcuDays() {
+        return isBlank(icuDays) ? "0" : icuDays;
+    }
+
+    public String getIcuHours() {
+        return isBlank(icuHours) ? "0" : icuHours;
+    }
+
+    public String getMonopathyManagement() {
+        return isBlank(monopathyManagement) ? "-" : monopathyManagement;
+    }
+
+    public String getClinicalPathwayManagement() {
+        return isBlank(clinicalPathwayManagement) ? "-" : clinicalPathwayManagement;
+    }
+
+    public String getDrgsManagement() {
+        return isBlank(drgsManagement) ? "-" : drgsManagement;
+    }
+
+    public String getUseAntibiotic() {
+        return isBlank(useAntibiotic) ? "-" : useAntibiotic;
+    }
+
+    public String getBacilliculture() {
+        return isBlank(bacilliculture) ? "-" : bacilliculture;
+    }
+
+    public String getStatutoryEpidemic() {
+        return isBlank(statutoryEpidemic) ? "-" : statutoryEpidemic;
+    }
+
+    public String getTumorLevelT() {
+        return isBlank(tumorLevelT) ? "-" : tumorLevelT;
+    }
+
+    public String getTumorLevelN() {
+        return isBlank(tumorLevelN) ? "-" : tumorLevelN;
+    }
+
+    public String getTumorLevelM() {
+        return isBlank(tumorLevelM) ? "-" : tumorLevelM;
+    }
+
+    public String getTumorLevel() {
+        return isBlank(tumorLevel) ? "-" : tumorLevel;
+    }
 
-	public String getDismissWard() {
-		return StringUtil.isBlank(dismissWard) ? getAdmissWard() : (dismissWard).trim();
-	}
+    public String getXxeApgar() {
+        return isBlank(xxeApgar) ? "-" : xxeApgar;
+    }
 }

+ 4 - 5
src/main/java/thyyxxk/webserver/service/casefrontsheet/CaseFrontSheetService.java

@@ -299,11 +299,10 @@ public class CaseFrontSheetService {
             dao.updateZyActPatient(bah, times, sheet.getAutopsy(), sheet.getDiagConform1(),
                     sheet.getDiagConform2(), sheet.getDiagConform3(), sheet.getDiagConform4(),
                     sheet.getDiagConform5(), sheet.getHasSurgery(), sheet.getPathologicDiagStr(),
-                    sheet.getPathologicDiagCode());
-            dao.updateZyInActPatient(bah, times, sheet.getAutopsy(),
-                    sheet.getDiagConform1(), sheet.getDiagConform2(), sheet.getDiagConform3(),
-                    sheet.getDiagConform4(), sheet.getDiagConform5(), sheet.getHasSurgery(),
-                    sheet.getPathologicDiagStr(), sheet.getPathologicDiagCode());
+                    sheet.getPathologicDiagCode(), sheet.getClinicDiagCode(), sheet.getClinicDiagStr());
+            dao.updateZyInActPatient(bah, times, sheet.getAutopsy(), sheet.getDiagConform1(), sheet.getDiagConform2(),
+                    sheet.getDiagConform3(), sheet.getDiagConform4(), sheet.getDiagConform5(), sheet.getHasSurgery(),
+                    sheet.getPathologicDiagStr(), sheet.getPathologicDiagCode(), sheet.getClinicDiagCode(), sheet.getClinicDiagStr());
             dao.updateBatjBa1(sheet);
             dao.updateBatjBa2(sheet);
             dao.deleteOldDisdiag(bah, times);

+ 15 - 0
src/main/java/thyyxxk/webserver/service/casefrontsheet/SheetSearchService.java

@@ -45,6 +45,8 @@ public class SheetSearchService {
                 return ResultVoUtil.success(searchEmployee(param.getMethod(), content, param.getPage() - 1));
             case "diag":
                 return service.searchYbDiag(param);
+            case "clinicdiag":
+                return ResultVoUtil.success(searchClinicdiag(param.getMethod(), content, param.getPage() - 1));
             default:
                 return ResultVoUtil.success(new ArrayList<>());
         }
@@ -63,6 +65,19 @@ public class SheetSearchService {
         }
     }
 
+    private List<PureCodeName> searchClinicdiag(String method, String content, int page) {
+        switch (method) {
+            case "alpha":
+                return dao.searchClinicdiagByAlpha(content, page);
+            case "code":
+                return dao.searchClinicdiagByCode(content, page);
+            case "name":
+                return dao.searchClinicdiagByName(content, page);
+            default:
+                return null;
+        }
+    }
+
     private List<PureCodeName> searchPathologicDiag(String method, String content, int page) {
         switch (method) {
             case "alpha":

+ 54 - 58
src/main/java/thyyxxk/webserver/service/casefrontsheet/VerifyCaseFrontSheet.java

@@ -57,7 +57,7 @@ public class VerifyCaseFrontSheet {
 
     public List<PureCodeName> printVerify(CaseFrontsheetMain info) {
         List<PureCodeName> array = new ArrayList<>();
-        if (StringUtil.isBlank(info.getName())) {
+        if (StringUtil.invalidValue(info.getName())) {
             array.add(new PureCodeName("name", "患者姓名不能为空!"));
         }
         if (null == info.getBirthDate()) {
@@ -66,31 +66,31 @@ public class VerifyCaseFrontSheet {
         if (null == info.getAge()) {
             array.add(new PureCodeName("age","患者年龄不能为空!"));
         }
-        if (StringUtil.isBlank(info.getCountry())) {
+        if (StringUtil.invalidValue(info.getCountry())) {
             array.add(new PureCodeName("country","患者国籍不能为空!"));
         }
-        if (StringUtil.isBlank(info.getBirthPlace())) {
+        if (StringUtil.invalidValue(info.getBirthPlace())) {
             array.add(new PureCodeName("birthPlaceName","患者出生地不能为空!"));
         }
-        if (StringUtil.isBlank(info.getNativePlace())) {
+        if (StringUtil.invalidValue(info.getNativePlace())) {
             array.add(new PureCodeName("nativePlaceName","患者籍贯不能为空!"));
         }
-        if (StringUtil.isBlank(info.getNation())) {
+        if (StringUtil.invalidValue(info.getNation())) {
             array.add(new PureCodeName("nation","患者民族不能为空!"));
         }
-        if (StringUtil.isBlank(info.getSocialNo())) {
+        if (StringUtil.invalidValue(info.getSocialNo())) {
             array.add(new PureCodeName("socialNo","患者身份证不能为空!"));
         }
-        if (StringUtil.isBlank(info.getOccupation())) {
+        if (StringUtil.invalidValue(info.getOccupation())) {
             array.add(new PureCodeName("occupation","患者职业不能为空!"));
         }
-        if (null == info.getMarriage()) {
+        if (StringUtil.invalidValue(info.getMarriage())) {
             array.add(new PureCodeName("marriage","患者婚姻状况不能为空!"));
         }
-        if (StringUtil.isBlank(info.getLivePlace())) {
+        if (StringUtil.invalidValue(info.getLivePlace())) {
             array.add(new PureCodeName("livePlace","患者现住址不能为空!"));
         }
-        if (StringUtil.isBlank(info.getPhone())) {
+        if (StringUtil.invalidValue(info.getPhone())) {
             array.add(new PureCodeName("phone","患者电话不能为空!"));
         }
         if (StringUtil.isBlank(info.getAddrZipCode())) {
@@ -102,7 +102,7 @@ public class VerifyCaseFrontSheet {
         if (StringUtil.isBlank(info.getUnitZipCode())) {
             array.add(new PureCodeName("unitZipCode","工作住址邮编不能为空!"));
         }
-        if (StringUtil.isBlank(info.getHkPlaceName())) {
+        if (StringUtil.invalidValue(info.getHkPlaceName())) {
             array.add(new PureCodeName("hkPlaceName","患者户口地址不能为空!"));
         }
         if (StringUtil.isBlank(info.getUnitName()) || StringUtil.isBlank(info.getUnitPlace())) {
@@ -111,46 +111,46 @@ public class VerifyCaseFrontSheet {
         if (StringUtil.isBlank(info.getUnitPhone())) {
             array.add(new PureCodeName("unitPhone","患者单位电话不能为空!"));
         }
-        if (StringUtil.isBlank(info.getContactName())) {
+        if (StringUtil.invalidValue(info.getContactName())) {
             array.add(new PureCodeName("contactName","患者联系人姓名不能为空!"));
         }
-        if (StringUtil.isBlank(info.getContactRelation())) {
+        if (StringUtil.invalidValue(info.getContactRelation())) {
             array.add(new PureCodeName("contactRelation","患者联系人关系不能为空!"));
         }
-        if (StringUtil.isBlank(info.getContactAddrName())) {
+        if (StringUtil.invalidValue(info.getContactAddrName())) {
             array.add(new PureCodeName("contactAddrName","患者联系人地址不能为空!"));
         }
-        if (StringUtil.isBlank(info.getContactPhone())) {
+        if (StringUtil.invalidValue(info.getContactPhone())) {
             array.add(new PureCodeName("contactPhone","患者联系人电话不能为空!"));
         }
-        if (StringUtil.isBlank(info.getZyAdmissWay())) {
+        if (StringUtil.invalidValue(info.getZyAdmissWay())) {
             array.add(new PureCodeName("zyAdmissWay","患者入院途径不能为空!"));
         }
         if (null == info.getAdmissDate()) {
             array.add(new PureCodeName("admissDate","患者入院时间不能为空!"));
         }
-        if (StringUtil.isBlank(info.getAdmissDept())) {
+        if (StringUtil.invalidValue(info.getAdmissDept())) {
             array.add(new PureCodeName("admissDept","患者入院科别不能为空!"));
         }
-        if (StringUtil.isBlank(info.getHasSurgery())) {
+        if (StringUtil.invalidValue(info.getHasSurgery())) {
             array.add(new PureCodeName("hasSurgery","患者是否手术不能为空!"));
         }
         if (null == info.getDismissDate()) {
             array.add(new PureCodeName("dismissDate","患者出院时间不能为空!"));
         }
-        if (StringUtil.isBlank(info.getDismissDept())) {
+        if (StringUtil.invalidValue(info.getDismissDept())) {
             array.add(new PureCodeName("dismissDept","患者出院科别不能为空!"));
         }
-        if (StringUtil.isBlank(info.getAdmissDays())) {
+        if (StringUtil.invalidValue(info.getAdmissDays())) {
             array.add(new PureCodeName("admissDays","患者住院天数不能为空!"));
         }
-        if (StringUtil.isBlank(info.getDisdiagList().get(0).getName())) {
+        if (StringUtil.invalidValue(info.getDisdiagList().get(0).getName())) {
             array.add(new PureCodeName("disdiagMain","患者主要诊断不能为空!"));
         }
         if (null == info.getDisdiagList().get(0).getAdmissStatus()) {
             array.add(new PureCodeName("disdiagMainAdmStatus","患者主要诊断入院病情不能为空!"));
         }
-        if (StringUtil.isBlank(info.getAllergy())) {
+        if (StringUtil.invalidValue(info.getAllergy())) {
             array.add(new PureCodeName("allergy","患者有无药物过敏不能为空!"));
         }
         if (null == info.getBloodType()) {
@@ -159,34 +159,34 @@ public class VerifyCaseFrontSheet {
         if (null == info.getRh()) {
             array.add(new PureCodeName("rh","患者Rh血型不能为空!"));
         }
-        if (StringUtil.isBlank(info.getDeptLeader())) {
+        if (StringUtil.invalidValue(info.getDeptLeader())) {
             array.add(new PureCodeName("deptLeaderName","科主任不能为空!"));
         }
-        if (StringUtil.isBlank(info.getLeaderDoctor())) {
+        if (StringUtil.invalidValue(info.getLeaderDoctor())) {
             array.add(new PureCodeName("leaderDoctorName","主任(副主任)医师不能为空!"));
         }
-        if (StringUtil.isBlank(info.getMainDoctor())) {
+        if (StringUtil.invalidValue(info.getMainDoctor())) {
             array.add(new PureCodeName("mainDoctorName","主治医师不能为空!"));
         }
-        if (StringUtil.isBlank(info.getAdmissDoctor())) {
+        if (StringUtil.invalidValue(info.getAdmissDoctor())) {
             array.add(new PureCodeName("admissDoctorName","住院医师不能为空!"));
         }
-        if (StringUtil.isBlank(info.getQualityControlLevel())) {
+        if (StringUtil.invalidValue(info.getQualityControlLevel())) {
             array.add(new PureCodeName("qualityControlLevel","病案质量不能为空!"));
         }
-        if (StringUtil.isBlank(info.getZyDismissWay())) {
+        if (StringUtil.invalidValue(info.getZyDismissWay())) {
             array.add(new PureCodeName("zyDismissWay","患者离院方式不能为空!"));
         }
-        if (StringUtil.isBlank(info.getAdmissAgainInOneMonth())) {
+        if (StringUtil.invalidValue(info.getAdmissAgainInOneMonth())) {
             array.add(new PureCodeName("admissAgainInOneMonth","患者是否有出院31天内再住院计划不能为空!"));
         }
-        if (StringUtil.isBlank(info.getQualityControlDoctor())) {
+        if (StringUtil.invalidValue(info.getQualityControlDoctor())) {
             array.add(new PureCodeName("qualityControlDoctorName","质控医生不能为空!"));
         }
-        if (StringUtil.isBlank(info.getCaseClassification())) {
+        if (StringUtil.invalidValue(info.getCaseClassification())) {
             array.add(new PureCodeName("caseClassification","病例分型不能为空!"));
         }
-        if (StringUtil.isBlank(info.getHasIcu())) {
+        if (StringUtil.invalidValue(info.getHasIcu())) {
             array.add(new PureCodeName("hasIcu","实施重症监护不能为空!"));
         }
         if (StringUtil.isBlank(info.getMonopathyManagement())) {
@@ -232,16 +232,16 @@ public class VerifyCaseFrontSheet {
             array.add(new PureCodeName("qualityControlDate","质控日期不能大于出院7天!"));
         }
         if (isNewBorn(info.getHasInfant(), info.getBirthDate())) {
-            if (isNewBornInfoNull(info.getNewBornWeight()) ||
-                    isNewBornInfoNull(info.getNewBornAdmissWeight())) {
+            if (StringUtil.invalidValue(info.getNewBornWeight()) ||
+                    StringUtil.invalidValue(info.getNewBornAdmissWeight())) {
                 array.add(new PureCodeName("newBornWeight","请填写新生儿信息!"));
             }
-            if (StringUtil.isBlank(info.getXxeApgar())) {
+            if (StringUtil.invalidValue(info.getXxeApgar())) {
                 array.add(new PureCodeName("xxeApgar","新生儿Apgar评分不能为空!"));
             }
         } else {
-            if (!isNewBornInfoNull(info.getNewBornWeight()) ||
-                    !isNewBornInfoNull(info.getNewBornAdmissWeight())) {
+            if (StringUtil.validValue(info.getNewBornWeight()) ||
+                    StringUtil.validValue(info.getNewBornAdmissWeight())) {
                 array.add(new PureCodeName("newBornWeight","非新生儿请保持新生信息为空!"));
             }
         }
@@ -251,7 +251,7 @@ public class VerifyCaseFrontSheet {
     private List<PureCodeName> connectedVerify(List<PureCodeName> array, CaseFrontsheetMain info) {
         if (StringUtil.notBlank(info.getZyDismissWay())) {
             if ("1".equals(info.getZyDismissWay())  || "2".equals(info.getZyDismissWay())) {
-                if (StringUtil.isBlank(info.getDismissDestination())) {
+                if (StringUtil.invalidValue(info.getDismissDestination())) {
                     array.add(new PureCodeName("dismissDestination","患者转入医疗机构不能为空!"));
                 }
             }
@@ -266,7 +266,7 @@ public class VerifyCaseFrontSheet {
                 }
             }
         }
-        if (StringUtil.notBlank(info.getAutopsy()) && !"".equals(info.getAutopsy())) {
+        if (StringUtil.validValue(info.getAutopsy()) && !"".equals(info.getAutopsy())) {
             if (!"4".equals(info.getZyDismissWay())) {
                 array.add(new PureCodeName("zyDismissWay","尸检不为空时,需要离院方式为死亡!"));
             }
@@ -275,28 +275,28 @@ public class VerifyCaseFrontSheet {
             checkSurgery(array, surgery);
         }
         if (needPathologicDiag(info.getDisdiagList().get(0).getCode()) &&
-                (StringUtil.isBlank(info.getPathologicDiagStr()) || StringUtil.isBlank(info.getPathologicDiagCode()))) {
+                (StringUtil.invalidValue(info.getPathologicDiagStr()) || StringUtil.invalidValue(info.getPathologicDiagCode()))) {
             array.add(new PureCodeName("pathologicDiagCode","根据患者出院主要诊断,病理诊断不能为空!"));
         }
-        if (StringUtil.notBlank(info.getHasIcu()) && "2".equals(info.getHasIcu()) &&
-                (StringUtil.isBlank(info.getIcuDays())  || StringUtil.isBlank(info.getIcuHours()))) {
+        if (StringUtil.validValue(info.getHasIcu()) && "2".equals(info.getHasIcu()) &&
+                (StringUtil.invalidValue(info.getIcuDays())  || StringUtil.invalidValue(info.getIcuHours()))) {
             array.add(new PureCodeName("icuHours","患者ICU时间不能为空!"));
         }
         if (StringUtil.notBlank(info.getHasSurgery()) && hasSurgery(info.getHasSurgery()) &&
-                StringUtil.isBlank(info.getSurgeryList().get(0).getName())) {
+                StringUtil.invalidValue(info.getSurgeryList().get(0).getName())) {
             array.add(new PureCodeName("surgeryMain","患者有手术时,手术列表不能为空!"));
         }
-        if (StringUtil.notBlank(info.getAllergy())  && "2".equals(info.getAllergy()) && StringUtil.isBlank(info.getAllergicMedicine())) {
+        if (StringUtil.validValue(info.getAllergy())  && "2".equals(info.getAllergy()) && StringUtil.invalidValue(info.getAllergicMedicine())) {
             array.add(new PureCodeName("allergicMedicine","患者有药物过敏时,过敏药物名称不能为空!"));
         }
-        if (!StringUtil.isBlank(info.getPathologicDiagFee()) && StringUtil.isBlank(info.getBlh())) {
+        if (StringUtil.validValue(info.getPathologicDiagFee()) && StringUtil.invalidValue(info.getBlh())) {
             array.add(new PureCodeName("blh","患者有病理诊断费,病理号不能为空!"));
         }
-        if (hasSurgeryFee(info.getSurgeryFee()) && StringUtil.isBlank(info.getSurgeryList().get(0).getName())) {
+        if (hasSurgeryFee(info.getSurgeryFee()) && StringUtil.invalidValue(info.getSurgeryList().get(0).getName())) {
             array.add(new PureCodeName("surgeryMain","患者有手术费,手术列表不能为空!"));
         }
         if (needHurtReason(info.getDisdiagList().get(0).getCode()) &&
-                (StringUtil.isBlank(info.getHurtReasonName()) || StringUtil.isBlank(info.getHurtReasonCode()))) {
+                (StringUtil.invalidValue(info.getHurtReasonName()) || StringUtil.invalidValue(info.getHurtReasonCode()))) {
             array.add(new PureCodeName("hurtReasonName","根据患者出院主要诊断,损伤中毒诊断不能为空!"));
         }
         if (StringUtil.notBlank(info.getBloodType()) && !"5".equals(info.getBloodType()) &&
@@ -316,7 +316,7 @@ public class VerifyCaseFrontSheet {
                 (StringUtil.notBlank(info.getRh()) && !"0".equals(info.getRh()) && !"3".equals(info.getRh()))) {
             array.add(new PureCodeName("rh","患者血型不确定时,Rh血型应为不详或未查!"));
         }
-        if (StringUtil.notBlank(info.getAutopsy()) || (StringUtil.notBlank(info.getZyDismissWay()) && "4".equals(info.getZyDismissWay()))) {
+        if (StringUtil.validValue(info.getAutopsy()) || (StringUtil.notBlank(info.getZyDismissWay()) && "4".equals(info.getZyDismissWay()))) {
             if (StringUtil.notBlank(info.getRescueTimes()) && Integer.parseInt(info.getRescueTimes()) <= 0) {
                 array.add(new PureCodeName("rescueTimes","患者死亡时,抢救次数不能小于一次!"));
             }
@@ -334,16 +334,12 @@ public class VerifyCaseFrontSheet {
     }
 
     private boolean hasSurgeryFee(String str) {
-        if (StringUtil.isBlank(str)) {
+        if (StringUtil.invalidValue(str)) {
             return false;
         }
         return Float.parseFloat(str) > 0;
     }
 
-    private boolean isNewBornInfoNull(String str) {
-        return StringUtil.isBlank(str) || "-".equals(str);
-    }
-
     private boolean hasSurgery(String flag) {
         return "1".equals(flag)  || "2".equals(flag) || "3".equals(flag);
     }
@@ -385,7 +381,7 @@ public class VerifyCaseFrontSheet {
     }
 
     private boolean needPathologicDiag(String diag) {
-        if (StringUtil.isBlank(diag)) {
+        if (StringUtil.invalidValue(diag)) {
             return false;
         }
         final char firstLetter = diag.toUpperCase().charAt(0);
@@ -407,7 +403,7 @@ public class VerifyCaseFrontSheet {
     }
 
     private boolean needHurtReason(String diag) {
-        if (StringUtil.isBlank(diag) || diag.startsWith("sy")) {
+        if (StringUtil.invalidValue(diag) || diag.startsWith("sy")) {
             return false;
         }
         final char firstLetter = diag.toUpperCase().charAt(0);
@@ -417,7 +413,7 @@ public class VerifyCaseFrontSheet {
     private boolean hasDuplicateDiag(List<CaseFrontsheetDisdiag> disdiags) {
         Map<String, String> map = new HashMap<>(Capacity.DEFAULT);
         for (CaseFrontsheetDisdiag diag : disdiags) {
-            if (!StringUtil.isBlank(diag.getCode())) {
+            if (StringUtil.validValue(diag.getCode())) {
                 if (map.containsKey(diag.getCode())) {
                     return true;
                 }
@@ -430,7 +426,7 @@ public class VerifyCaseFrontSheet {
     private boolean hasSameSurgeryInOneDay(List<CaseFrontsheetSurgery> surgeries) {
         Map<String, String> map = new HashMap<>(Capacity.DEFAULT);
         for (CaseFrontsheetSurgery surgery : surgeries) {
-            if (!StringUtil.isBlank(surgery.getCode())) {
+            if (StringUtil.validValue(surgery.getCode())) {
                 if (map.containsKey(surgery.getCode() + DateUtil.formatDatetime(surgery.getDate(), "yyyy-MM-dd HH:mm:ss"))) {
                     return true;
                 }
@@ -472,6 +468,6 @@ public class VerifyCaseFrontSheet {
     }
 
     private boolean isNewBorn(String hasInfant, Date birthDate) {
-        return (StringUtil.notBlank(hasInfant) && "1".equals(hasInfant)) || betweenDays(new Date(), birthDate) <= 28;
+        return (StringUtil.validValue(hasInfant) && "1".equals(hasInfant)) || betweenDays(new Date(), birthDate) <= 28;
     }
 }

+ 15 - 0
src/main/java/thyyxxk/webserver/service/yibao/DictionaryService.java

@@ -131,12 +131,27 @@ public class DictionaryService {
         return ResultVoUtil.fail(ExceptionEnum.NULL_POINTER);
     }
 
+    public ResultVo<List<PureCodeName>> getInjuryDssForFrontSheet(SearchDataParam param) {
+        String content = "%" + param.getContent().toUpperCase() + "%";
+        switch (param.getMethod()) {
+            case "alpha":
+                return ResultVoUtil.success(dao.selectInjuryDssDiagForFrontSheetByPyCode(content));
+            case "code":
+                return ResultVoUtil.success(dao.selectInjuryDssDiagForFrontSheetByCode(content));
+            case "name":
+                return ResultVoUtil.success(dao.selectInjuryDssDiagForFrontSheetByName(content));
+        }
+        return ResultVoUtil.fail(ExceptionEnum.NULL_POINTER);
+    }
+
     public ResultVo<List<PureCodeName>> searchYbDiag(SearchDataParam param) {
         ResultVo<List<PureCodeName>> res;
         if (param.getMedType().equals(MedType.MATERNITY_HOSPITALIZATION.getCode())) {
             res = getMaternDiagsForFrontSheet(param);
         } else if (param.getMedType().equals(MedType.SINGLE_DISEASE_HOSPITALIZATION.getCode())) {
             res = getSingleDssForFrontSheet(param);
+        } else if (param.getMedType().equals(MedType.INJURY_HOSPITALIZATION.getCode())){
+            res = getInjuryDssForFrontSheet(param);
         } else {
             res = executeSearch(param);
         }

+ 8 - 0
src/main/java/thyyxxk/webserver/utils/StringUtil.java

@@ -27,6 +27,14 @@ public class StringUtil {
         return null != str && !"".equals(str.trim());
     }
 
+    public static boolean validValue(String str) {
+        return notBlank(str) && !"-".equals(str.trim());
+    }
+
+    public static boolean invalidValue(String str) {
+        return isBlank(str) || "-".equals(str.trim());
+    }
+
     public static String[] triageDeptString2Array(String deptCodes) {
         return null == deptCodes ? new String[]{}
                 : deptCodes.substring(1, deptCodes.length() - 1)