Ver código fonte

已发药药单改为从发药记录表获取,汇总药单修改

WANGJIALIANG 2 anos atrás
pai
commit
63e55fd9e4

+ 2 - 3
src/main/java/cn/hnthyy/thmz/mapper/his/yz/YzYpPageNoMapper.java

@@ -103,13 +103,12 @@ public interface YzYpPageNoMapper {
     @Select({"<script>",
             " SELECT " +
             "      c.page_no " +
-            " FROM yz_yp_page_no c WITH(NOLOCK),yz_yp_zy_order a WITH(NOLOCK)" +
+            " FROM yz_yp_page_no c WITH(NOLOCK)" +
             " where c.group_no=#{groupNo} and " +
             "       c.ward_code=#{wardCode} and " +
             "       c.page_class =#{pageClass} and " +
             "       c.submit_time>=DATEADD(DD,-3,GETDATE()) and" +
-            "       c.page_no = a.page_no and" +
-        "           a.status_flag in ('1','3','4')" +
+            "       c.submit_flag=1" +
             " group by c.page_no"
             , "</script>"})
     String[] selectYzYpPageNos(@Param("groupNo") String groupNo,@Param("wardCode") String wardCode

+ 45 - 2
src/main/java/cn/hnthyy/thmz/mapper/his/zy/YpZyPatientMapper.java

@@ -1,6 +1,7 @@
 package cn.hnthyy.thmz.mapper.his.zy;
 
 import cn.hnthyy.thmz.entity.his.yz.YzYpPageNo;
+import cn.hnthyy.thmz.entity.his.yz.YzYpZyOrder;
 import cn.hnthyy.thmz.entity.his.zy.YpZyPatient;
 import cn.hnthyy.thmz.vo.YzYpPageNoVo;
 import org.apache.ibatis.annotations.Insert;
@@ -176,7 +177,8 @@ public interface YpZyPatientMapper {
      * @return
      */
     @Select({"<script>",
-            "SELECT page_no,dept_code,ward_code,page_type,max(confirm_time)confirm_time," +
+            "SELECT page_no,(case WHEN ISNULL(section_code,0)=0 or rtrim(section_code)='' THEN max(ward_code) else section_code end)as ward_code," +
+                    "page_type as page_class,max(confirm_time)confirm_time," +
                     "max(drawer) as submit_name,max(keeper) as contirm_id  from yp_zy_patient WITH(NOLOCK)" +
             " where group_no = #{groupNo} " +
             "<when test='pageNo!=null'>",
@@ -194,7 +196,48 @@ public interface YpZyPatientMapper {
             "<when test='submitEndDate!=null'>",
             " and confirm_time &lt;=#{submitEndDate,jdbcType=TIMESTAMP}",
             "</when>" +
-            " group by  page_no,dept_code,ward_code,page_type order by confirm_time desc"
+            " group by  page_no,section_code,page_type order by confirm_time desc"
             , "</script>"})
     List<YzYpPageNo> selectYzYpPageNo(YzYpPageNoVo yzYpPageNoVo);
+
+
+    /**
+     * 查询药品请领单发药明细
+     * @param pageNo
+     * @return
+     */
+    @Select({
+            "select charge_code=rtrim(a.charge_code) ,\n" +
+                    "       serial =a.serial ,\n" +
+                    "       amount =a.amount ,\n" +
+                    "       retprice =a.retprice,\n" +
+                    "       page_no =a.page_no,\n" +
+                    "       inpatient_no=rtrim(a.inpatient_no),\n" +
+                    "       admiss_times=a.admiss_times,\n" +
+                    "       act_order_no=a.act_order_no,\n" +
+                    "       occ_time =a.order_date,\n" +
+                    "       name =a.name,\n" +
+                    "       bed_no =a.bed_no,\n" +
+                    "       ward_code =a.ward_code,\n" +
+                    "       dept_code =a.dept_code,\n" +
+                    "       infant_flag =a.infant_flag,\n" +
+                    "       drawer =a.drawer,\n" +
+                    "       always_flag =a.always_flag,\n" +
+                    "       self_flag =a.self_flag,\n" +
+                    "       separate_flag=a.separate_flag,\n" +
+                    "       suprice_flag =a.suprice_flag,\n" +
+                    "       drug_flag =a.drug_flag,\n" +
+                    "       pay_self =a.pay_self,\n" +
+                    "       doctor_name =a.doctor_name,\n" +
+                    "       zy_serial_no =a.zy_serial_no,\n" +
+                    "       group_no=a.group_no,\n" +
+                    "       doctor_name=a.doctor_name,\n" +
+                    "       page_class=a.page_type,\n" +
+                    "       drug_class=a.drug_class\n" +
+                    "from yp_zy_patient a WITH(NOLOCK)" +
+                    " where    a.page_no =#{pageNo} " +
+                    "order by a.inpatient_no,a.occ_time,a.admiss_times,a.charge_code"
+    })
+    List<YzYpZyOrder> selectYpZyPatientFyDetail(@Param("pageNo") String pageNo);
+
 }

+ 8 - 5
src/main/java/cn/hnthyy/thmz/service/impl/his/yf/YfWardPrescriptionServiceImpl.java

@@ -122,14 +122,13 @@ public class YfWardPrescriptionServiceImpl implements YfWardPrescriptionService
     @Override
     public List<YzYpPageNoVo> queryYzYpPageNo(YzYpPageNoVo yzYpPageNoVo) {
         List<YzYpPageNoVo> yzYpPageNoVos = new ArrayList<>();
-        /*List<YzYpPageNo> yzYpPageNos = new ArrayList<>();
+        List<YzYpPageNo> yzYpPageNos;
         //查询已发状态药单在发药记录查询,解决同一药单存在已发和未发药品
         if(yzYpPageNoVo.getSubmitFlag().equals("3")){
             yzYpPageNos = ypZyPatientMapper.selectYzYpPageNo(yzYpPageNoVo);
         }else{
             yzYpPageNos = yzYpPageNoMapper.selectYzYpPageNo(yzYpPageNoVo);
-        }*/
-        List<YzYpPageNo> yzYpPageNos = yzYpPageNoMapper.selectYzYpPageNo(yzYpPageNoVo);
+        }
         yzYpPageNos.forEach(yzYpPageNo -> {
             YzYpPageNoVo vo = new YzYpPageNoVo();
             BeanUtils.copyProperties(yzYpPageNo, vo);
@@ -301,7 +300,11 @@ public class YfWardPrescriptionServiceImpl implements YfWardPrescriptionService
         if (pageClass.equals("T") || pageClass.equals("HT")) {
             yzYpZyOrders = yzYpZyOrderMapper.selectYzYpOrderTy(pageNo, flag);
         } else {
-            yzYpZyOrders = yzYpZyOrderMapper.selectYzYpOrderFy(pageNo, flag);
+            if(flag.equals("0")){
+                yzYpZyOrders = ypZyPatientMapper.selectYpZyPatientFyDetail(pageNo);
+            }else{
+                yzYpZyOrders = yzYpZyOrderMapper.selectYzYpOrderFy(pageNo, flag);
+            }
         }
         yzYpZyOrders.forEach(yzYpZyOrder -> {
             YfWardVo vo = new YfWardVo();
@@ -394,7 +397,7 @@ public class YfWardPrescriptionServiceImpl implements YfWardPrescriptionService
                 }
                 ypZyPatient.setOrderDate(yzYpZyOrder.getOccTime());
                 ypZyPatient.setActOrderNo(yzYpZyOrder.getActOrderNo());
-                ypZyPatient.setSectionCode("");
+                ypZyPatient.setSectionCode(yzYpZyOrder.getWardCode());//老系统为空
                 if (yzYpZyOrder.getPageClass().equals("A")) {
                     ypZyPatient.setAcctSign("2");
                 } else {

+ 57 - 0
src/main/resources/static/js/common/pharmacy-com.js

@@ -1004,4 +1004,61 @@ function debounce(cb, delay) {
             cb.call(this, ...args)
         }, delay)
     }
+}
+
+/**
+ * 根据编码 查询药单名称
+ */
+function getPageName(pageClass) {
+    let ypTypeName;
+    switch (pageClass){
+        case '1':
+            ypTypeName='出院带药';
+            break;
+        case '2':
+            ypTypeName='毒麻药';
+            break;
+        case '3':
+            ypTypeName='基数药';
+            break;
+        case '4':
+            ypTypeName='大输液';
+            break;
+        case '5':
+            ypTypeName='长期口服';
+            break;
+        case '6':
+            ypTypeName='临时口服';
+            break;
+        case '7':
+            ypTypeName='统领单';
+            break;
+        case '8':
+            ypTypeName='门诊领药单';
+            break;
+        case 'A':
+            ypTypeName='医技科室领药';
+            break;
+        case 'Y':
+            ypTypeName='节余药品';
+            break;
+        case 'T':
+            ypTypeName='退药单';
+            break;
+        case 'HT':
+            ypTypeName='护士退药单';
+            break;
+        case 'S':
+            ypTypeName='手术室药单';
+            break;
+        case 'HT':
+            ypTypeName='护士退药单';
+            break;
+        case 'Z':
+            ypTypeName='草药处方';
+            break;
+        default:
+            ypTypeName=pageClass;
+    }
+    return ypTypeName;
 }

+ 8 - 2
src/main/resources/static/js/yf/ward_prescription.js

@@ -384,7 +384,10 @@ function initColumns() {
         field: 'pageName',
         title: '药单类型',
         align: "center",
-        valign: 'middle'
+        valign: 'middle',
+        formatter: function (value, row, index) {
+            return getPageName(row.pageClass);
+        }
     }, {
         field: 'subName',
         title: '提交人',
@@ -395,6 +398,7 @@ function initColumns() {
         title: '提交时间',
         align: "center",
         valign: 'middle',
+        visible: $("#submitFlagSearch").val() === '3' ? false : true,
         formatter: function (value, row, index) {
             if (value != null && value != "") {
                 return format(value, "yyyy-MM-dd HH:mm:ss");
@@ -442,6 +446,7 @@ function initColumns() {
         title: '开始时间',
         align: "center",
         valign: 'middle',
+        visible: $("#submitFlagSearch").val() === '3' ? false : true,
         formatter: function (value, row, index) {
             if (value != null && value != "") {
                 return format(value, "yyyy-MM-dd");
@@ -453,6 +458,7 @@ function initColumns() {
         title: '结束时间',
         align: "center",
         valign: 'middle',
+        visible: $("#submitFlagSearch").val() === '3' ? false : true,
         formatter: function (value, row, index) {
             if (value != null && value != "") {
                 return format(value, "yyyy-MM-dd");
@@ -1065,7 +1071,7 @@ function cleanParams() {
     } else {
         $("#submitFlagSearch").val(1);
     }
-    $('#reportrange span').html(moment().subtract(10, 'days').format('YYYY-MM-DD') + ' - ' + moment().format('YYYY-MM-DD'));
+    $('#reportrange span').html(moment().subtract(5, 'days').format('YYYY-MM-DD') + ' - ' + moment().format('YYYY-MM-DD'));
     $("#submitFlagSearch").selectpicker('refresh');
     $("#wardCode").removeAttr('disabled');
     $("#pageNoSearch").removeAttr('disabled');