Procházet zdrojové kódy

excel 编码、关联编码循环嵌套

lenovodn před 2 roky
rodič
revize
a6bccb5056
11 změnil soubory, kde provedl 50 přidání a 20 odebrání
  1. 4 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/before/PrescriptionDetail.java
  2. 1 1
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/AdvanceWarningAuditController.java
  3. 2 2
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/AdvanceWarningAuditMapper.java
  4. 1 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/MidIncidentAuditDetailMapper.java
  5. 12 13
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/AdvanceWarningAuditMapper.xml
  6. 17 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/MidIncidentAuditDetailMapper.xml
  7. 1 1
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IAdvanceWarningAuditService.java
  8. 2 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMidIncidentAuditDetailService.java
  9. 3 2
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/AdvanceWarningAuditServiceImpl.java
  10. 6 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MidIncidentAuditDetailServiceImpl.java
  11. 1 1
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/ViolationAnalysisServiceImpl.java

+ 4 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/before/PrescriptionDetail.java

@@ -21,12 +21,16 @@ public class PrescriptionDetail implements Serializable {
 
     @ApiModelProperty(value = "科室")
     private String department;
+    @ApiModelProperty(value = "科室编码")
+    private String admissionDeptId;
 
     @ApiModelProperty(value = "开药时间")
     private Date usageDate;
 
     @ApiModelProperty(value = "医生名称")
     private String doctorName;
+    @ApiModelProperty(value = "医生编码")
+    private String doctorId;
 
     @ApiModelProperty("药量使用天数")
     private Long useDay;

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/AdvanceWarningAuditController.java

@@ -83,7 +83,7 @@ public class AdvanceWarningAuditController extends JeecgController<AdvanceWarnin
     @ApiOperation(value = "事前工单-根据病例查询开药信息", notes = "根据病例查询开药信息")
     @GetMapping(value = "/case/prescriptions")
     public Result<IPage<PrescriptionDetail>> getPrescriptionsByCase(
-            @RequestParam(name = "id", required = true) Integer id,
+            @RequestParam(name = "id", required = true) String id,
             @RequestParam(name = "treatmentType", required = true) String treatmentType,
             @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
             @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {

+ 2 - 2
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/AdvanceWarningAuditMapper.java

@@ -39,11 +39,11 @@ public interface AdvanceWarningAuditMapper extends BaseMapper<AdvanceWarningAudi
      */
     PatientDiagnosisInfo loadOutpatientPatientDiagnosisInfo(@Param("id") String id);
 
-    IPage<PrescriptionDetail> loadPrescriptionsByCase(Page<MedicalHistoryRecord> page, @Param("id") Integer id,
+    IPage<PrescriptionDetail> loadPrescriptionsByCase(Page<MedicalHistoryRecord> page, @Param("id") String id,
                                                       @Param("tableName") String tableName);
 
     List<PrescriptionDetail> listPrescriptionsByCase(@Param("id") String id,
                                                      @Param("tableName") String tableName);
 
-    PrescriptionDetail loadTreatmentMasterInfo(@Param("id") Integer id, @Param("tableName") String tableName);
+    PrescriptionDetail loadTreatmentMasterInfo(@Param("id") String id, @Param("tableName") String tableName);
 }

+ 1 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/MidIncidentAuditDetailMapper.java

@@ -24,6 +24,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 public interface MidIncidentAuditDetailMapper extends BaseMapper<MidIncidentAuditDetail> {
 
     PatientInformationResponse loadPatientInfoById(@Param("id") String id);
+    PatientInformationResponse loadBeforePatientInfoById(@Param("id") String id);
 
     List<ViolationInfo> loadViolationInfoList(@Param("id") Integer id);
 

+ 12 - 13
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/AdvanceWarningAuditMapper.xml

@@ -127,33 +127,32 @@
         FROM
             ${tableName} AS hd
         WHERE
-            hd.hisid = #{id,jdbcType=INTEGER}
+            hd.hisid = #{id}
     </select>
     <select id="listPrescriptionsByCase"
             resultType="org.jeecg.modules.medical.common.bo.before.PrescriptionDetail">
         SELECT
-            hd.item_name_hosp as itemNameHosp, -- "药品名称"
-            "" as department, -- "科室
-            hd.usage_date as usageDate, --  "开药时间
-            "" as doctorName, -- "医生名称", -- 从主表带出来
-            hd.use_day as useDay -- 药量使用天数
---             hd.use_day - (NOW() - hd.usage_date) as "剩余天数"
+            hd.item_name_hosp as itemNameHosp,
+            "" as department,
+            hd.usage_date as usageDate,
+            "" as doctorName,
+            hd.use_day as useDay
         FROM
             ${tableName} AS hd
         WHERE
-            hd.hisid = #{id,jdbcType=INTEGER}
+            hd.hisid = #{id}
     </select>
 
     <select id="loadTreatmentMasterInfo"
             resultType="org.jeecg.modules.medical.common.bo.before.PrescriptionDetail">
         SELECT
-            admission_dept_name as department, -- "科室名称",
-            admission_dept_id AS "科室编码",
-            doctor_id AS "医生编码",
-            doctor_name as doctorName -- "医生名称"
+            admission_dept_name as department,
+            admission_dept_id ,
+            doctor_id,
+            doctor_name as doctorName
         FROM
             ${tableName}
         WHERE
-            id = #{id,jdbcType=INTEGER}
+            id = #{id}
     </select>
 </mapper>

+ 17 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/MidIncidentAuditDetailMapper.xml

@@ -20,6 +20,23 @@
                  LEFT JOIN his_patient as p on ad.patient_id = p.patient_no
         WHERE ad.id = #{id,jdbcType=INTEGER}
     </select>
+    <select id="loadBeforePatientInfoById"
+            resultType="org.jeecg.modules.medical.common.bo.before.PatientInformationResponse">
+        SELECT
+            ad.patient_id AS patientId, -- 患者编码
+            p.patient_name AS patientName, -- 患者姓名
+            p.gender AS gender, -- 性别
+            p.birthday AS birthday, -- 生日
+            "" AS age, -- 年龄
+            "" AS medicalInsurance, -- 是否医保(从主表查询)
+            "" AS visitSerialNumber, -- 就诊流水号(从主表查询)
+            ad.medical_dept_name AS medicalDeptName, -- 科室名称
+            ad.medical_dept_code AS medicalDeptCode -- 科室编码
+                ,ad.treatment_type as treatmentType -- 就诊类型
+        FROM advance_warning_audit_detail as ad
+                 LEFT JOIN his_patient as p on ad.patient_id = p.patient_no
+        WHERE ad.id = #{id}
+    </select>
 
     <select id="loadViolationInfoList" resultType="org.jeecg.modules.medical.common.bo.mid.ViolationInfo">
         SELECT

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IAdvanceWarningAuditService.java

@@ -44,6 +44,6 @@ public interface IAdvanceWarningAuditService extends IService<AdvanceWarningAudi
      * @param treatmentType 就诊类型; 1=住院;2=门诊
      * @return
      */
-    IPage<PrescriptionDetail> loadPrescriptionsByCase(Page<MedicalHistoryRecord> page, Integer id, String treatmentType);
+    IPage<PrescriptionDetail> loadPrescriptionsByCase(Page<MedicalHistoryRecord> page, String id, String treatmentType);
     List<PrescriptionDetail> listPrescriptionsByCase( String id, String treatmentType);
 }

+ 2 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMidIncidentAuditDetailService.java

@@ -34,6 +34,8 @@ public interface IMidIncidentAuditDetailService extends IService<MidIncidentAudi
      */
     PatientInformationResponse loadPatientInfoById(String id, IMidIncidentAuditService midIncidentAuditService);
 
+    PatientInformationResponse loadPatientInfoById(String id);
+
     /**
      * 根据事中工单id获取违规明细
      * @param page

+ 3 - 2
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/AdvanceWarningAuditServiceImpl.java

@@ -170,7 +170,7 @@ public class AdvanceWarningAuditServiceImpl extends ServiceImpl<AdvanceWarningAu
     }
 
     @Override
-    public IPage<PrescriptionDetail> loadPrescriptionsByCase(Page<MedicalHistoryRecord> page, Integer id, String treatmentType) {
+    public IPage<PrescriptionDetail> loadPrescriptionsByCase(Page<MedicalHistoryRecord> page, String id, String treatmentType) {
 
         String detailTableName = "";
         String masterTableName = "";
@@ -214,6 +214,7 @@ public class AdvanceWarningAuditServiceImpl extends ServiceImpl<AdvanceWarningAu
 
         String detailTableName = "";
         String masterTableName = "";
+         treatmentType = treatmentType == null ? "1" : treatmentType;
         if ("1".equalsIgnoreCase(treatmentType)) { // 住院
             detailTableName = "hospitalizatio_settle_detail";
             masterTableName = "master_admission_bill";
@@ -222,7 +223,7 @@ public class AdvanceWarningAuditServiceImpl extends ServiceImpl<AdvanceWarningAu
             masterTableName = "outpatient_settle_bill";
         }
         //获取结算主单的科室,和医生信息
-        PrescriptionDetail masterInfo = baseMapper.loadTreatmentMasterInfo(Integer.valueOf(id), masterTableName);
+        PrescriptionDetail masterInfo = baseMapper.loadTreatmentMasterInfo(id, masterTableName);
         List<PrescriptionDetail> result = baseMapper.listPrescriptionsByCase( id, detailTableName);
         if (!CollectionUtils.isEmpty(result)) {
             for (PrescriptionDetail record : result) {

+ 6 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MidIncidentAuditDetailServiceImpl.java

@@ -85,6 +85,12 @@ public class MidIncidentAuditDetailServiceImpl extends ServiceImpl<MidIncidentAu
         return result;
     }
 
+    @Override
+    public PatientInformationResponse loadPatientInfoById(String id) {
+        PatientInformationResponse result = baseMapper.loadBeforePatientInfoById(id);
+        return result;
+    }
+
     private List<MidIncidentAuditDetail> loadDetailList(String id) {
         LambdaQueryWrapper<MidIncidentAuditDetail> queryWrapper = Wrappers.<MidIncidentAuditDetail>lambdaQuery()
                 .eq(MidIncidentAuditDetail::getMidIncidentAuditId, id);

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/ViolationAnalysisServiceImpl.java

@@ -200,7 +200,7 @@ public class ViolationAnalysisServiceImpl implements IViolationAnalysisService {
         }
         // 构建患者信息
         PatientInformationResponse patientInformationResponse =
-                midIncidentAuditDetailService.loadPatientInfoById(detailInfo.getPatientId().toString(), midIncidentAuditService);
+                midIncidentAuditDetailService.loadPatientInfoById(detailInfo.getPatientId().toString());
         result.setPatientInfo(patientInformationResponse);
         // 构建医生信息
         MidAuditDoctorInfo midAuditDoctorInfo = new MidAuditDoctorInfo();