Browse Source

Merge branch 'dev' of http://192.168.1.220:10080/Amoy2/wlyy2.0 into dev

wangzhinan 3 years ago
parent
commit
6ec669bfaf

+ 214 - 2
business/base-service/src/main/java/com/yihu/jw/hospital/prescription/service/PrescriptionService.java

@ -3219,7 +3219,7 @@ public class PrescriptionService extends BaseJpaService<WlyyPrescriptionDO, Pres
    }
    }
    /**
    /**
     * 订单查询
     * 导出订单查询
     *
     *
     * @param status
     * @param status
     * @param oneselfPickupFlg
     * @param oneselfPickupFlg
@ -3230,7 +3230,7 @@ public class PrescriptionService extends BaseJpaService<WlyyPrescriptionDO, Pres
     * @param size
     * @param size
     * @return
     * @return
     */
     */
    public MixEnvelop findExpressageList(String status, String oneselfPickupFlg, String nameKey, String startTime, String endTime, Integer page, Integer size, String wxId,String patientName) {
    public MixEnvelop findExpressageList2(String status, String oneselfPickupFlg, String nameKey, String startTime, String endTime, Integer page, Integer size, String wxId,String patientName) {
        String totalSql = "SELECT " +
        String totalSql = "SELECT " +
                " COUNT(1) AS \"total\" " +
                " COUNT(1) AS \"total\" " +
                " FROM " +
                " FROM " +
@ -3429,6 +3429,218 @@ public class PrescriptionService extends BaseJpaService<WlyyPrescriptionDO, Pres
        return MixEnvelop.getSuccessListWithPage2(BaseHospitalRequestMapping.Prescription.api_success, mapList);
        return MixEnvelop.getSuccessListWithPage2(BaseHospitalRequestMapping.Prescription.api_success, mapList);
    }
    }
    /**
     * 订单查询
     *
     * @param status
     * @param oneselfPickupFlg
     * @param nameKey
     * @param startTime
     * @param endTime
     * @param page
     * @param size
     * @return
     */
    public MixEnvelop findExpressageList(String status, String oneselfPickupFlg, String nameKey, String startTime, String endTime, Integer page, Integer size, String wxId,String patientName) {
        String totalSql = "SELECT " +
                " COUNT(1) AS \"total\" " +
                " FROM " +
                " wlyy_outpatient o " +
                " JOIN wlyy_prescription p ON p.outpatient_id = o.id " +
                " JOIN wlyy_prescription_expressage e ON e.outpatient_id = o.id" +
                " WHERE" +
                " 1=1 ";
        if (StringUtils.isNotBlank(status)) {
            totalSql += " AND p.status in(" + status + ") ";
        }
        if (StringUtils.isNotBlank(oneselfPickupFlg)) {
            totalSql += " AND e.oneself_pickup_flg = " + oneselfPickupFlg+" ";
        }
        if (StringUtils.isNotBlank(nameKey)) {
            totalSql += " AND e.name like '%" + nameKey + "%' ";
        }
        if (StringUtils.isNotBlank(patientName)) {
            totalSql += " AND o.patient_name like '%" + patientName + "%' ";
        }
        if (StringUtils.isNotBlank(startTime)) {
            if ("xm_ykyy_wx".equals(wxId)) {
                if (flag){
                    totalSql += " and p.create_time >= str_to_date('" + startTime + " 00:00:00','YYYY-MM-DD HH24:MI:SS')";
                }else {
                    totalSql += " and p.create_time >= to_date('" + startTime + " 00:00:00','YYYY-MM-DD HH24:MI:SS')";
                }
            } else {
                totalSql += " AND p.create_time >='" + startTime + " 00:00:00'";
            }
        }
        if (StringUtils.isNotBlank(endTime)) {
            if ("xm_ykyy_wx".equals(wxId)) {
                if (flag){
                    totalSql += " and p.create_time <= str_to_date('" + endTime + " 23:59:59','YYYY-MM-DD HH24:MI:SS')";
                }else {
                    totalSql += " and p.create_time <= to_date('" + endTime + " 23:59:59','YYYY-MM-DD HH24:MI:SS')";
                }
            } else {
                totalSql += " AND p.create_time <='" + endTime + " 23:59:59'";
            }
        }
        List<Map<String, Object>> rstotal = hibenateUtils.createSQLQuery(totalSql);
        Long count = 0L;
        if (rstotal != null && rstotal.size() > 0) {
            count = Long.parseLong(rstotal.get(0).get("total").toString());
        }
        String sql = "SELECT  ";
        if ("xm_ykyy_wx".equals(wxId)) {
            if (flag){
                sql = sql + "date_format(e.create_time,'YYYY-MM-DD hh24:mi:ss')  AS \"expressCreateTime\",";
            }else {
                sql = sql + "to_char(e.create_time,'YYYY-MM-DD hh24:mi:ss')  AS \"expressCreateTime\",";
            }
        } else {
            sql = sql + "date_format(e.create_time,'%Y-%m-%d %H:%i:%S' )  AS \"expressCreateTime\",";
        }
        if ("xm_ykyy_wx".equals(wxId)) {
            if (flag){
                sql = sql + "date_format(p.create_time,'YYYY-MM-DD hh24:mi:ss')  AS \"createTime\",";
            }else {
                sql = sql + "to_char(p.create_time,'YYYY-MM-DD hh24:mi:ss')  AS \"createTime\",";
            }
        } else {
            sql = sql + "date_format(p.create_time,'%Y-%m-%d %H:%i:%S' )  AS \"createTime\",";
        }
        if ("xm_ykyy_wx".equals(wxId)) {
            if (flag){
                sql = sql + "date_format(p.pay_time,'YYYY-MM-DD hh24:mi:ss')  AS \"payTime\",";
            }else {
                sql = sql + "to_char(p.pay_time,'YYYY-MM-DD hh24:mi:ss')  AS \"payTime\",";
            }
        } else {
            sql = sql + "date_format(p.pay_time,'%Y-%m-%d %H:%i:%S' )  AS \"payTime\",";
        }
        sql = sql + "p.create_time\n" +
                "as time,\n" +
                "e. NAME\n" +
                "as NAME,\n" +
                "p.pay_time\n" +
                "as pay_time,\n" +
                "p.real_order\n" +
                "as realOrder,\n" +
                "o.patient_name\n" +
                "as patientName,\n" +
                "i.drug_name\n" +
                "as infoName,\n" +
                " CASE p.create_time\n" +
                "WHEN NULL THEN\n" +
                "\t'否'\n" +
                "ELSE\n" +
                "\t'是'\n" +
                "END \"create_time\",\n" +
                " CASE e.oneself_pickup_flg\n" +
                "WHEN 1 THEN\n" +
                "\t'自取'\n" +
                "WHEN 2 THEN\n" +
                "\t'快递配送'\n" +
                "ELSE\n" +
                "\t' '\n" +
                "END \"oneself_pickup_flg\",\n" +
                " CASE p. STATUS\n" +
                "WHEN - 4 THEN\n" +
                "\t'已作废'\n" +
                "WHEN - 3 THEN\n" +
                "\t'支付过期取消'\n" +
                "WHEN - 2 THEN\n" +
                "\t'患者自己取消'\n" +
                "WHEN - 1 THEN\n" +
                "\t'医生取消'\n" +
                "WHEN 0 THEN\n" +
                "\t'候诊中'\n" +
                "WHEN 10 THEN\n" +
                "\t'诊断中'\n" +
                "WHEN 11 THEN\n" +
                "\t'药师审核失败 / 调整中'\n" +
                "WHEN 12 THEN\n" +
                "\t'药师审核完成'\n" +
                "WHEN 13 THEN\n" +
                "\t'开方失败/调整中'\n" +
                "WHEN 20 THEN\n" +
                "\t'诊断完成/开方成功/待支付'\n" +
                "WHEN 30 THEN\n" +
                "\t'支付成功/等待配药'\n" +
                "WHEN 31 THEN\n" +
                "\t'配药成功/等待取药'\n" +
                "WHEN 32 THEN\n" +
                "\t'配送中'\n" +
                "WHEN 100 THEN\n" +
                "\t'已完成/未评价'\n" +
                "WHEN 101 THEN\n" +
                "\t'已完成/已经评价'\n" +
                "ELSE\n" +
                "\t' '\n" +
                "END STATUS\n" +
                "FROM\n" +
                "\twlyy_outpatient o\n" +
                "LEFT JOIN wlyy_prescription p ON p.outpatient_id = o.id\n" +
                "LEFT JOIN wlyy_prescription_expressage e ON e.outpatient_id = o.id\n" +
                "LEFT JOIN wlyy_prescription_info i ON i.prescription_id = p.id\n" +
                "WHERE\n" +
                "\t1 = 1";
        if (StringUtils.isNotBlank(status)) {
            sql += " AND p.status in(" + status + ") ";
        }
        if (StringUtils.isNotBlank(oneselfPickupFlg)) {
            sql += " AND e.oneself_pickup_flg =" + oneselfPickupFlg+" ";
        }
        if (StringUtils.isNotBlank(nameKey)) {
            sql += " AND e.name like '%" + nameKey + "%' ";
        }
        if (StringUtils.isNotBlank(patientName)) {
            sql += " AND o.patient_name like '%" + patientName + "%' ";
        }
        if (StringUtils.isNotBlank(startTime)) {
            if ("xm_ykyy_wx".equals(wxId)) {
                if (flag){
                    sql += " and p.create_time >= str_to_date('" + startTime + " 00:00:00','YYYY-MM-DD HH24:MI:SS')";
                }else {
                    sql += " and p.create_time >= to_date('" + startTime + " 00:00:00','YYYY-MM-DD HH24:MI:SS')";
                }
            } else {
                sql += " AND p.create_time >='" + startTime + " 00:00:00'";
            }
        }
        if (StringUtils.isNotBlank(endTime)) {
            if ("xm_ykyy_wx".equals(wxId)) {
                if (flag){
                    sql += " and p.create_time <= str_to_date('" + endTime + " 23:59:59','YYYY-MM-DD HH24:MI:SS')";
                }else {
                    sql += " and p.create_time <= to_date('" + endTime + " 23:59:59','YYYY-MM-DD HH24:MI:SS')";
                }
            } else {
                sql += " AND p.create_time <='" + endTime + " 23:59:59'";
            }
        }
        sql +=" order by p.create_time desc ";
        /*       sql += " LIMIT " + (page - 1) * size + "," + size + "";*/
        List<Map<String, Object>> mapList = hibenateUtils.createSQLQuery(sql,page,size);
        for (Map<String, Object> map : mapList) {
            if (map.get("prescriptionId") != null) {
                List<WlyyPrescriptionInfoDO> wlyyPrescriptionInfoDOS = prescriptionInfoDao.findByPrescriptionId(map.get("prescriptionId").toString(), 1);
                map.put("info", wlyyPrescriptionInfoDOS);
            }
        }
        return MixEnvelop.getSuccessListWithPage(BaseHospitalRequestMapping.Prescription.api_success, mapList,page,size,count);
    }
    public Boolean setMailno(String mailno, String expressageId) {
    public Boolean setMailno(String mailno, String expressageId) {
        WlyyPrescriptionExpressageDO expressageDO = prescriptionExpressageDao.findOne(expressageId);
        WlyyPrescriptionExpressageDO expressageDO = prescriptionExpressageDao.findOne(expressageId);
        expressageDO.setMailno(mailno);
        expressageDO.setMailno(mailno);

+ 1 - 1
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/prescription/PrescriptionEndpoint.java

@ -823,7 +823,7 @@ public class PrescriptionEndpoint extends EnvelopRestEndpoint {
                              @ApiParam(name = "endTime", value = "结束时间,yyyy-MM-dd")
                              @ApiParam(name = "endTime", value = "结束时间,yyyy-MM-dd")
                              @RequestParam(value = "endTime", required = false) String endTime,
                              @RequestParam(value = "endTime", required = false) String endTime,
                              HttpServletResponse response) throws Exception {
                              HttpServletResponse response) throws Exception {
        MixEnvelop expressages = prescriptionService.findExpressageList(status, oneselfPickupFlg, nameKey, startTime, endTime, 1, 10000, wxId, patientName);
        MixEnvelop expressages = prescriptionService.findExpressageList2(status, oneselfPickupFlg, nameKey, startTime, endTime, 1, 10000, wxId, patientName);
        List<Map<String, Object>> list = expressages.getDetailModelList();
        List<Map<String, Object>> list = expressages.getDetailModelList();
        response.setContentType("octets/stream");
        response.setContentType("octets/stream");
        response.setHeader("Content-Disposition", "attachment; filename=" + new String("pushDataList.xls"));
        response.setHeader("Content-Disposition", "attachment; filename=" + new String("pushDataList.xls"));