소스 검색

Merge branch 'medicare' of liubing/wlyy2.0 into medicare

liubing 2 년 전
부모
커밋
7a50d2d0cf

+ 4 - 0
common/common-entity/sql记录

@ -1676,3 +1676,7 @@ alter table t_mediicine_order add column reviewer_state tinyint(2) default null
alter table t_mediicine_order add column reviewer_doctor_name varchar(255) default null comment '审方医生';
 alter table t_mediicine_order add column reviewer_time varchar(255) default null comment '审方时间';
 -- 2022-11-11
 alter table base_ylz_medical_recharge add column pay_url varchar(255) default null comment '支付地址';

+ 9 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/hospital/healthCare/YlzMedicalRecharge.java

@ -24,6 +24,15 @@ public class YlzMedicalRecharge extends UuidIdentityEntity {
    private String ssc;
    private String depositType; //支付方式 支付方式ALI_QR 支付宝二维码支付;WX_QR微信二维码
    private Date createTime;
    private String payUrl; //支付地址
    public String getPayUrl() {
        return payUrl;
    }
    public void setPayUrl(String payUrl) {
        this.payUrl = payUrl;
    }
    public String getOutChargeNo() {
        return outChargeNo;

+ 10 - 6
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/YlzService.java

@ -128,7 +128,7 @@ public class YlzService {
        if (null!=dmHospitalDO){
            ylzMedicalRecharge.setOrgName(dmHospitalDO.getName());
        }
        ylzMedicalRechargeDao.save(ylzMedicalRecharge);
        ylzMedicalRecharge = ylzMedicalRechargeDao.save(ylzMedicalRecharge);
        WlyyHttpLogDO wlyyHttpLogDO = new WlyyHttpLogDO();
        wlyyHttpLogDO.setCode("hlwyyRecharge");
@ -141,7 +141,10 @@ public class YlzService {
        if (re.getString("status").equalsIgnoreCase("200")) {//i健康返回值
            JSONObject responseData = re.getJSONObject("data");
            if (responseData.getBoolean("isSuccess")){
                return responseData.getString("payUrl");
                String payUrl = responseData.getString("payUrl");
                ylzMedicalRecharge.setPayUrl(payUrl);
                ylzMedicalRechargeDao.save(ylzMedicalRecharge);
                return payUrl;
            }else {
                throw  new Exception(responseData.getString("error"));
            }
@ -309,14 +312,15 @@ public class YlzService {
                            /**
                             * 支付状态确认 通知药柜结算状态是什么情况
                             */
                            JSONObject chargeNotice = new JSONObject();
                            chargeNotice.put("result",result);
                            chargeNotice.put("resultName",resultName);
                            medicineServive.sendSocketMessage(ylzMedicalRecharge.getEquNum()+"_T","medical_recharge", URLEncoder.encode(chargeNotice.toJSONString(),"UTF-8"));
                            ylzMedicalRecharge.setChargeResult(result);
                            ylzMedicalRecharge.setChargeResultName(resultName);
                            ylzMedicalRechargeDao.save(ylzMedicalRecharge);
                            if ("succ".equals(result)){//交易成功 (微信/支付宝成功,HIS成功)
                                JSONObject chargeNotice = new JSONObject();
                                chargeNotice.put("result",result);
                                chargeNotice.put("resultName",resultName);
                                chargeNotice.put("payUrl",ylzMedicalRecharge.getPayUrl());
                                medicineServive.sendSocketMessage(ylzMedicalRecharge.getEquNum()+"_T","medical_recharge", URLEncoder.encode(chargeNotice.toJSONString(),"UTF-8"));
                                String recipeNoStr = ylzMedicalRecharge.getValue();
                                if (StringUtils.isNoneBlank(recipeNoStr)){//关联处方号
                                    String[] recipeNos = recipeNoStr.split(",");

+ 2 - 1
svr/svr-internet-hospital-job/src/main/java/com/yihu/jw/job/YJJChargeResultOverTimeJob.java

@ -2,6 +2,7 @@ package com.yihu.jw.job;
import com.yihu.jw.service.channel.MedicineService;
import com.yihu.jw.util.DateUtil;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
@ -13,7 +14,7 @@ import org.springframework.jdbc.core.JdbcTemplate;
/**
 * 药柜预交金充值结果更新job
 */
@DisallowConcurrentExecution
public class YJJChargeResultOverTimeJob implements Job {
    private static final Logger logger = LoggerFactory.getLogger(YJJChargeResultOverTimeJob.class);

+ 14 - 8
svr/svr-internet-hospital-job/src/main/java/com/yihu/jw/service/channel/MedicineService.java

@ -29,6 +29,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import java.net.URLEncoder;
@ -403,17 +404,22 @@ public class MedicineService {
                } else {
                    if ("succ".equals(result)) {//交易成功 (微信/支付宝成功,HIS成功)
                        String url = "http://127.0.0.1:10020/baseOrder/open/hlwyyRechargeNotify";
                        List<NameValuePair> params = new ArrayList<>();
                        JSONObject paramTmp = new JSONObject();
                        paramTmp.put("outChargeNo",tmp.getOutChargeNo());
                        JSONObject paramTmpObj = new JSONObject();
                        paramTmpObj.put("param",paramTmp);
                        params.add(new BasicNameValuePair("responsStr",paramTmpObj.toJSONString()));
                        httpClientUtil.post(url, params, "UTF-8");
                        hlwyyRechargeNotify(tmp.getOutChargeNo());
                    }
                }
            }
        }
    }
    @Async
    public void hlwyyRechargeNotify(String outChargeNo){
        String url = "http://127.0.0.1:10020/baseOrder/open/hlwyyRechargeNotify";
        List<NameValuePair> params = new ArrayList<>();
        JSONObject paramTmp = new JSONObject();
        paramTmp.put("outChargeNo",outChargeNo);
        JSONObject paramTmpObj = new JSONObject();
        paramTmpObj.put("param",paramTmp);
        params.add(new BasicNameValuePair("responsStr",paramTmpObj.toJSONString()));
        httpClientUtil.post(url, params, "UTF-8");
    }
}