Pārlūkot izejas kodu

门诊登记/补录界面的处方笺显示患者年龄

lighter 4 mēneši atpakaļ
vecāks
revīzija
e0e29b5166

+ 1 - 1
src/main/java/thyyxxk/webserver/dao/his/medicalinsurance/SiMzDao.java

@@ -34,7 +34,7 @@ public interface SiMzDao {
     @Select("SELECT rtrim(a.patient_id) as patientId,a.times,a.visit_dept_code,b.adress,rtrim(b.phone_no) as phoneNo, " +
             "rtrim(b.name) as name,b.age,sex=case when b.sex='1' then '男' when b.sex='2' then '女' else '未知' end, " +
             "visitDeptName=(select rtrim(name) from zd_unit_code where code=a.visit_dept_code), " +
-            "a.doctor_code,a.visit_date,a.receipt_no,a.order_no,a.op_day, " +
+            "a.doctor_code,a.visit_date,a.receipt_no,a.order_no,a.op_day,b.social_no, " +
             "doctorName=(select rtrim(name) from a_employee_mi where code=a.doctor_code), " +
             "doctorYbCode=(select rtrim(yb_code) from a_employee_mi where code=a.doctor_code), " +
             "icdText=case when nullif(a.icd_code_new,'') is null then rtrim(a.icd_text) else rtrim(a.icd_text_new) end, " +

+ 2 - 0
src/main/java/thyyxxk/webserver/entity/markmtfees/MzVisit.java

@@ -12,6 +12,8 @@ public class MzVisit {
     private String phoneNo;
     private String patientId;
     private Integer times;
+    private Integer age;
+    private String socialNo;
     private String visitDeptCode;
     private String visitDeptName;
     private String doctorCode;

+ 6 - 0
src/main/java/thyyxxk/webserver/service/medicalinsurance/SiMzService.java

@@ -111,6 +111,9 @@ public class SiMzService {
                 if (null == mzVisit) {
                     continue;
                 }
+                if (IdCardUtil.isValidatedIdCard(mzVisit.getSocialNo())) {
+                    mzVisit.setAge(IdCardUtil.getAgeByIdCard(mzVisit.getSocialNo()));
+                }
                 String vipFlag = String.valueOf(item.get("vipFlag"));
                 mzVisit.setReceiptNo(Integer.parseInt(hisOrdNumParts[2]));
                 mzVisit.setTableClinicReceiptNo(0);
@@ -178,6 +181,9 @@ public class SiMzService {
         if (null == mzVisit) {
             throw new BizException(ExceptionEnum.NULL_POINTER, "没有找到患者的就诊信息。");
         }
+        if (IdCardUtil.isValidatedIdCard(mzVisit.getSocialNo())) {
+            mzVisit.setAge(IdCardUtil.getAgeByIdCard(mzVisit.getSocialNo()));
+        }
         mzVisit.setSettledFlag(calSettleFlag(mzVisit));
         List<MzReceipt> mzReceipts = dao.selectMzCharge(mzDepositFile.getPatNo(),
                 mzDepositFile.getTimes(), mzDepositFile.getReceiptNo());