LAPTOP-KB9HII50\70708 1 год назад
Родитель
Сommit
4d210b6d77

+ 3 - 3
gateway/ag-basic/src/main/java/com/yihu/jw/gateway/filter/BasicZuulFilter.java

@ -245,14 +245,14 @@ public class BasicZuulFilter extends ZuulFilter {
        String accessToken = this.extractToken(request);
        System.out.println("获取token"+accessToken);
        if (null == accessToken) {
            return this.forbidden(ctx, ResultStatus.NULL_TOKEN, "token can not be null");
            return this.forbidden(ctx, ResultStatus.NULL_TOKEN, "当前状态未登入,请重新登入");
        }
        OAuth2AccessToken oAuth2AccessToken = tokenStore.readAccessToken(accessToken);
        if (null == oAuth2AccessToken) {
            return this.forbidden(ctx, ResultStatus.INVALID_TOKEN, "invalid token");
            return this.forbidden(ctx, ResultStatus.INVALID_TOKEN, "当前状态未登入,请重新登入");
        }
        if (oAuth2AccessToken.isExpired()) {
            return this.forbidden(ctx, ResultStatus.EXPIRE, "expired token");
            return this.forbidden(ctx, ResultStatus.EXPIRE, "登录已过期,请重新登入");
        }
        //将token的认证信息附加到请求中,转发给下游微服务
        OAuth2Authentication auth = tokenStore.readAuthentication(accessToken);

+ 32 - 23
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/prescription/DsyyPrescriptionCotroller.java

@ -1,20 +1,11 @@
package com.yihu.jw.hospital.endpoint.prescription;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.entity.hospital.prescription.*;
import com.yihu.jw.hospital.prescription.dao.PrescriptionDao;
import com.yihu.jw.hospital.prescription.dao.PrescriptionDiagnosisDao;
import com.yihu.jw.hospital.prescription.dao.PrescriptionInfoDao;
import com.yihu.jw.elasticsearch.ElasticSearch7Util;
import com.yihu.jw.es.util.ElasticsearchUtil;
import com.yihu.jw.hospital.prescription.service.DsyyPrescriptionService;
import com.yihu.jw.hospital.prescription.service.HcyyPrescriptionService;
import com.yihu.jw.hospital.prescription.service.entrance.DsyyEntranceService;
import com.yihu.jw.hospital.prescription.service.entrance.HcyyEntranceService;
import com.yihu.jw.im.service.ImService;
import com.yihu.jw.restmodel.hospital.prescription.WlyyPrescriptionDiagnosisVO;
import com.yihu.jw.restmodel.hospital.prescription.WlyyPrescriptionInfoVO;
import com.yihu.jw.restmodel.hospital.prescription.WlyyPrescriptionVO;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.restmodel.web.ListEnvelop;
import com.yihu.jw.restmodel.web.ObjEnvelop;
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
import com.yihu.jw.rm.hospital.BaseHospitalRequestMapping;
@ -24,7 +15,7 @@ import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.net.URLDecoder;
import java.util.List;
import java.util.Map;
@ -36,21 +27,39 @@ import java.util.Map;
@Api(value = "第三医院平台服务", description = "第三医院平台服务", tags = {"第三医院平台服务"})
public class DsyyPrescriptionCotroller extends EnvelopRestEndpoint {
    @Autowired
    private HcyyEntranceService hcyyEntranceService;
    @Autowired
    private PrescriptionDao prescriptionDao;
    @Autowired
    private PrescriptionDiagnosisDao prescriptionDiagnosisDao;
    @Autowired
    private PrescriptionInfoDao prescriptionInfoDao;
    @Autowired
    private ImService imService;
    @Autowired
    private DsyyEntranceService dsyyEntranceService;
    @Autowired
    private DsyyPrescriptionService dsyyPrescriptionService;
    @Autowired
    private ElasticsearchUtil elasticsearchUtil;
    @Autowired
    private ElasticSearch7Util elasticSearch7Util;
    @PostMapping(value = "open/exportExcel/executeSQLStream")
    @ApiOperation(value = "sql查询es", notes = "sql查询es")
    public ListEnvelop executeSQLStream(String content){
        try {
            content = URLDecoder.decode(content, "UTF-8");
            List<Map<String, Object>> list = elasticSearch7Util.executeSQLStream(content);
            return ListEnvelop.getSuccess("ok",list);
        }catch (Exception e){
            e.printStackTrace();
            return ListEnvelop.getError("查询失败");
        }
    }
    @GetMapping(value = "/findDateQuotaLevel0")
    @ApiOperation(value = "查询es", notes = "查询es")
    public ListEnvelop findDateQuotaLevel0(String startDate, String endDate, String area, int level, String index, String timeLevel, String interval, String lowLevel){
        try {
            List list = elasticsearchUtil.findDateQuotaLevel0(startDate, endDate, area, level, index, timeLevel, interval, lowLevel);
            return ListEnvelop.getSuccess("ok",list);
        }catch (Exception e){
            e.printStackTrace();
            return ListEnvelop.getError("查询失败");
        }
    }
    @GetMapping(value = "/updateDept")
    @ApiOperation(value = "同步科室信息", notes = "同步科室信息")

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

@ -2362,7 +2362,7 @@ public class PrescriptionEndpoint extends EnvelopRestEndpoint {
     * 易联众统一订单查询
     *
     * @param tradeType
     * @param orderNo
     * @param relationCode
     * @return
     * @throws Exception
     */
@ -2972,10 +2972,18 @@ public class PrescriptionEndpoint extends EnvelopRestEndpoint {
    @ApiOperation(value = "无需支付时调用")
    public ObjEnvelop updatePayStatus(
            @ApiParam(name = "relationCode", value = "业务code")
            @RequestParam(value = "relationCode", required = false) String relationCode) throws Exception {
            @RequestParam(value = "relationCode", required = false) String relationCode){
        try {
            BusinessOrderDO businessOrderDO = businessOrderService.updatePayStatusByRelation(relationCode, wxId);
            if (businessOrderDO.getOrderCategory().equalsIgnoreCase("2")) {
            if("1".equals(businessOrderDO.getOrderCategory())){
                WlyyOutpatientDO wlyyOutpatientDO = outpatientDao.findById(relationCode).orElse(null);
                if (wlyyOutpatientDO.getPayStatus() != null && wlyyOutpatientDO.getPayStatus() == 1) {
                    //发送系统消息
                    SystemMessageDO systemMessageDO = prescriptionService.sendOutPatientMes(wlyyOutpatientDO, payFlag);
                    //发送IM消息
                    hospitalSystemMessageService.sendImMessage(systemMessageDO);
                }
            }else if (businessOrderDO.getOrderCategory().equalsIgnoreCase("2")) {
                SystemMessageDO systemMessageDO = new SystemMessageDO();
                systemMessageDO.setType("1");
                systemMessageDO.setReceiver(businessOrderDO.getDoctor());

+ 52 - 34
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/door/service/WlyyDoorServiceOrderService.java

@ -2316,26 +2316,35 @@ public class WlyyDoorServiceOrderService extends BaseJpaService<WlyyDoorServiceO
        if (CollectionUtils.isEmpty(messages)) {
            logger.error("当前工单没有 居民新增预约 消息!!orderId:" + orderId);
        } else {
            // 设置消息处理完毕
            messages.forEach(
                    message -> {
                        String title = "调度员派单(派给本社区医生)";
                        if ("system".equals(dispatcher)) {
                            title = "系统派单(派给服务医生)";
                        }
                        if (message.getType().equals("430")) {
                            message.setTitle(title);
                            message.setContent(doorServiceOrderDO.getDispatcherName() + "已将服务工单" + doorServiceOrderDO.getNumber() + "指派给" + doctorName + "医生");
                            message.setType("431");
                            message.setReceiver(dispatcher);
                            message.setSender(dispatcher);
                            message.setCreateTime(new Date());
                        } else {
                            message.setOver("0");
                        }
                        systemMessageDao.save(message);
            String dispatcherName = "";
            if(doorServiceOrderDO.getDispatcherName()==null){
                if("system".equals(dispatcher)){
                    dispatcherName = "系统";
                }else {
                    BaseDoctorDO baseDoctorDO = doctorDao.findById(dispatcher).orElse(null);
                    if(baseDoctorDO!=null){
                        dispatcherName = baseDoctorDO.getName();
                    }
            );
                }
            }
            // 设置消息处理完毕
            for(SystemMessageDO message:messages){
                String title = "调度员派单(派给本社区医生)";
                if ("system".equals(dispatcher)) {
                    title = "系统派单(派给服务医生)";
                }
                if (message.getType().equals("430")) {
                    message.setTitle(title);
                    message.setContent(dispatcherName + "已将服务工单" + doorServiceOrderDO.getNumber() + "指派给" + doctorName + "医生");
                    message.setType("431");
                    message.setReceiver(dispatcher);
                    message.setSender(dispatcher);
                    message.setCreateTime(new Date());
                } else {
                    message.setOver("0");
                }
                systemMessageDao.save(message);
            }
        }
        // 工单状态变更记录
@ -2417,22 +2426,31 @@ public class WlyyDoorServiceOrderService extends BaseJpaService<WlyyDoorServiceO
        if (CollectionUtils.isEmpty(messages)) {
            logger.error("当前工单没有 居民新增预约 消息!!orderId:" + orderId);
        } else {
            // 设置消息处理完毕
            messages.forEach(
                    message -> {
                        if (message.getType().equals("430")) {
                            message.setTitle("医生转派单(派给本社区医生)");
                            message.setContent(doorServiceOrderDO.getDispatcherName() + "已将服务工单" + doorServiceOrderDO.getNumber() + "转派给" + doctorName + "医生");
                            message.setType("431");
                            message.setReceiver(dispatcher);
                            message.setSender(dispatcher);
                            message.setCreateTime(new Date());
                        } else {
                            message.setOver("0");
                        }
                        systemMessageDao.save(message);
            String dispatcherName = "";
            if(doorServiceOrderDO.getDispatcherName()==null){
                if("system".equals(dispatcher)){
                    dispatcherName = "系统";
                }else {
                    BaseDoctorDO baseDoctorDO = doctorDao.findById(dispatcher).orElse(null);
                    if(baseDoctorDO!=null){
                        dispatcherName = baseDoctorDO.getName();
                    }
            );
                }
            }
            // 设置消息处理完毕
            for (SystemMessageDO message:messages){
                if (message.getType().equals("430")) {
                    message.setTitle("医生转派单(派给本社区医生)");
                    message.setContent(dispatcherName + "已将服务工单" + doorServiceOrderDO.getNumber() + "转派给" + doctorName + "医生");
                    message.setType("431");
                    message.setReceiver(dispatcher);
                    message.setSender(dispatcher);
                    message.setCreateTime(new Date());
                } else {
                    message.setOver("0");
                }
                systemMessageDao.save(message);
            }
        }
        // 工单状态变更记录