Ver Fonte

出院和撤销医嘱查询处理

WANGJIALIANG há 2 anos atrás
pai
commit
c234a7d9ba

+ 25 - 1
src/main/java/cn/hnthyy/thmz/mapper/his/yz/YzActOrderMapper.java

@@ -133,7 +133,7 @@ public interface YzActOrderMapper {
     int deleteYzActOrderBaby(@Param("tableName") String tableName,@Param("inpatientNoBegin") String inpatientNoBegin, @Param("inpatientNoEnd") String inpatientNoEnd, @Param("admissTimes") Integer admissTimes);
 
     /**
-     * 查询医嘱
+     * 查询医嘱(在院医嘱)
      * @param actOrderNo 序列号
      * @return
      */
@@ -159,4 +159,28 @@ public interface YzActOrderMapper {
             "#{statusFlag,jdbcType=CHAR},#{drugSpecification,jdbcType=CHAR},#{frequCode,jdbcType=CHAR},#{supplyCode,jdbcType=CHAR},#{infantFlag,jdbcType=CHAR}," +
             "#{physician,jdbcType=CHAR},#{signer,jdbcType=CHAR},#{serial,jdbcType=CHAR},#{wardCode,jdbcType=CHAR},#{deptCode,jdbcType=CHAR},#{actOrderNo,jdbcType=FLOAT}")
     int insertYzActOrder(YzActOrder yzActOrder);
+
+    /**
+     * 查询医嘱(出院后医嘱)
+     * @param actOrderNo 序列号
+     * @return
+     */
+    @Select("select act_order_no,inpatient_no,admiss_times,frequ_code,supply_code,isnull(instruction,'')instruction,dose,dose_unit," +
+            "drug_weight =isnull(drug_weight,0)," +
+            "drug_weight_unit =isnull(drug_weight_unit,'')," +
+            "drug_vol_unit =isnull(drug_vol_unit,'')," +
+            "drug_volume =isnull(drug_volume,0),mini_unit,start_time,order_name,performance_time,exec_unit,yb_self_flag,consult_physician from yz_inact_order WITH(NOLOCK) where act_order_no=#{actOrderNo}")
+    YzActOrder selectYzInactOrderByActOrderNo(@Param("actOrderNo") double actOrderNo);
+
+    /**
+     * 查询医嘱(撤销的医嘱)
+     * @param actOrderNo 序列号
+     * @return
+     */
+    @Select("select act_order_no,inpatient_no,admiss_times,frequ_code,supply_code,isnull(instruction,'')instruction,dose,dose_unit," +
+            "drug_weight =isnull(drug_weight,0)," +
+            "drug_weight_unit =isnull(drug_weight_unit,'')," +
+            "drug_vol_unit =isnull(drug_vol_unit,'')," +
+            "drug_volume =isnull(drug_volume,0),mini_unit,start_time,order_name,performance_time,exec_unit,yb_self_flag,consult_physician from yz_erase_order WITH(NOLOCK) where act_order_no=#{actOrderNo}")
+    YzActOrder selectYzEraseOrderByActOrderNo(@Param("actOrderNo") double actOrderNo);
 }

+ 11 - 4
src/main/java/cn/hnthyy/thmz/service/impl/his/yf/YfWardPrescriptionServiceImpl.java

@@ -106,6 +106,9 @@ public class YfWardPrescriptionServiceImpl implements YfWardPrescriptionService
     private YzActOrderCyMapper yzActOrderCyMapper;
     @SuppressWarnings("all")
     @Autowired
+    private YzInactOrderMapper yzInactOrderMapper;
+    @SuppressWarnings("all")
+    @Autowired
     private MzYshZdFysmMapper mzYshZdFysmMapper;
     @SuppressWarnings("all")
     @Autowired
@@ -838,15 +841,19 @@ public class YfWardPrescriptionServiceImpl implements YfWardPrescriptionService
             YfWardVo yfWardVo = yfWardVos.get(i);
             yfWardVo.setWardName(zdUnitCodeMapper.selectByCode(yfWardVo.getWardCode()).getName());
             ZyActpatient zyActpatient = zyActpatientMapper.selectByInpatientNo(ZyActpatient.ZY_ACTPATIENT, yfWardVo.getInpatientNo(), yfWardVo.getAdmissTimes());
-            if (zyActpatient == null) {
+            if (null == zyActpatient) {
                 zyActpatient = zyActpatientMapper.selectByInpatientNo(ZyActpatient.ZY_INACTPATIENT, yfWardVo.getInpatientNo(), yfWardVo.getAdmissTimes());
             }
             if (!pageClass.equals("A")) {//非医技科室领药
                 YzActOrder yzActOrder = yzActOrderMapper.selectYzActOrderByActOrderNo(yfWardVo.getActOrderNo());
-                if (yzActOrder != null) {
-                    yfWardVo.setInstruction(yzActOrder.getInstruction());
-                    yfWardVo.setSupplyName(yzSupplyTypeMapper.selectSupplyNameByCode(yzActOrder.getSupplyCode()));
+                if (null == yzActOrder) {
+                    yzActOrder = yzActOrderMapper.selectYzInactOrderByActOrderNo(yfWardVo.getActOrderNo());
+                    if(null == yzActOrder){
+                        yzActOrder = yzActOrderMapper.selectYzEraseOrderByActOrderNo(yfWardVo.getActOrderNo());
+                    }
                 }
+                yfWardVo.setInstruction(yzActOrder.getInstruction());
+                yfWardVo.setSupplyName(yzSupplyTypeMapper.selectSupplyNameByCode(yzActOrder.getSupplyCode()));
                 //毒麻药单,长期口服,临时口服,统领单
                 if (pageClass.equals("2") || pageClass.equals("5") || pageClass.equals("6") || pageClass.equals("7")) {
                     yfWardVo.setFrequCode(yzActOrder.getFrequCode());