Kaynağa Gözat

Merge branch 'dev' of http://192.168.1.220:10080/Amoy/patient-co-management into dev

huangwenjie 7 yıl önce
ebeveyn
işleme
607b19493a
47 değiştirilmiş dosya ile 1281 ekleme ve 255 silme
  1. 32 0
      common/common-entity/src/main/java/com/yihu/wlyy/entity/patient/prescription/Prescription.java
  2. 3 0
      patient-co-service/wlyy_service/src/main/java/com/yihu/wlyy/service/dao/prescription/PrescriptionDao.java
  3. 5 1
      patient-co-service/wlyy_service/src/main/java/com/yihu/wlyy/service/service/LogService.java
  4. 3 8
      patient-co-service/wlyy_service/src/main/java/com/yihu/wlyy/service/service/prescription/PrescriptionService.java
  5. BIN
      patient-co-service/wlyy_service/src/main/resources/libsehr.crypto.so
  6. 0 14
      patient-co/patient-co-statistics/src/main/java/com/yihu/wlyy/statistics/job/business/ConsultJob.java
  7. 5 16
      patient-co/patient-co-statistics/src/main/java/com/yihu/wlyy/statistics/job/business/ConsultTotalJob.java
  8. 1 1
      patient-co/patient-co-statistics/src/main/java/com/yihu/wlyy/statistics/job/business/CurrentDayAllQuotaJob.java
  9. 1 3
      patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/service/third/jw/JwPrescriptionService.java
  10. 40 39
      patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/wechat/process/WeiXinEventProcess.java
  11. 1 1
      patient-co/patient-co-wlyy-job/src/main/resources/system.properties
  12. 1 0
      patient-co/patient-co-wlyy/pom.xml
  13. 55 15
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/adapter/PresModeAdapter.java
  14. 1 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/config/SwaggerConfig.java
  15. 2 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/DoctorInterceptor.java
  16. 2 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/PatientInterceptor.java
  17. 10 6
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/message/MessageDao.java
  18. 3 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/organization/HospitalMappingDao.java
  19. 3 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/prescription/PrescriptionAdjustDao.java
  20. 2 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/prescription/PrescriptionDao.java
  21. 13 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyCommonDictDao.java
  22. 13 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvDeptDictDao.java
  23. 11 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvDeptStaffAllotDictDao.java
  24. 11 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvDiagnoseClassDictDao.java
  25. 12 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvDiagnoseDictDao.java
  26. 11 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvOrgPhysicAllotDictDao.java
  27. 11 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvPhysicDictDao.java
  28. 11 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvStaffDictDao.java
  29. 12 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvStaffRegTypeAllotDictDao.java
  30. 12 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvSubjectClassDictDao.java
  31. 482 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/ZyDictDataService.java
  32. 2 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/account/DoctorInfoService.java
  33. 12 6
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/consult/ConsultTeamService.java
  34. 144 39
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/prescription/PatientPrescriptionPayService.java
  35. 141 56
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/prescription/PrescriptionInfoService.java
  36. 1 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/third/jw/JwPrescriptionService.java
  37. 88 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/third/jw/ZyDictService.java
  38. 1 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/util/ImUtill.java
  39. 9 8
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/account/DoctorController.java
  40. 6 4
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/consult/DoctorConsultController.java
  41. 54 5
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/prescription/PrescriptionInfoController.java
  42. 3 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/prescription/PatientPrescriptionInfoController.java
  43. 4 4
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/prescription/PatientPrescriptionPayController.java
  44. 28 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/BookingController.java
  45. 16 16
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/wechat/process/WeiXinEventProcess.java
  46. 2 2
      patient-co/patient-co-wlyy/src/main/resources/application.yml
  47. 1 1
      patient-co/patient-co-wlyy/src/main/resources/system.properties

+ 32 - 0
common/common-entity/src/main/java/com/yihu/wlyy/entity/patient/prescription/Prescription.java

@ -9,6 +9,7 @@ import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.Date;
import java.util.List;
/**
 * Created by Administrator on 2017/7/21.
@ -70,6 +71,11 @@ public class Prescription extends IdEntity {
    private String originalDataAbstract;//原文的MD5摘要
    private String strOriginalData; //CA原文数据
    private List<PrescriptionInfo> prescriptionInfo;
    private String reviewedState;
    @Column(name = "code", unique = true, nullable = false)
    public String getCode() {
@ -534,4 +540,30 @@ public class Prescription extends IdEntity {
    public void setDigitalSignNo(String digitalSignNo) {
        this.digitalSignNo = digitalSignNo;
    }
    public String getStrOriginalData() {
        return strOriginalData;
    }
    public void setStrOriginalData(String strOriginalData) {
        this.strOriginalData = strOriginalData;
    }
    @Transient
    public List<PrescriptionInfo> getPrescriptionInfo() {
        return prescriptionInfo;
    }
    public void setPrescriptionInfo(List<PrescriptionInfo> prescriptionInfo) {
        this.prescriptionInfo = prescriptionInfo;
    }
    @Transient
    public String getReviewedState() {
        return reviewedState;
    }
    public void setReviewedState(String reviewedState) {
        this.reviewedState = reviewedState;
    }
}

+ 3 - 0
patient-co-service/wlyy_service/src/main/java/com/yihu/wlyy/service/dao/prescription/PrescriptionDao.java

@ -15,6 +15,9 @@ public interface PrescriptionDao extends PagingAndSortingRepository<Prescription
    @Query("from Prescription p where p.code=?1")
    Prescription findByCode(String prescriptionCode);
    @Query("from Prescription p where p.recipeNo=?1")
    Prescription findByRecipeNo(String recipeNo);
    @Modifying
    @Query("update Prescription p set p.status=?2 where p.code=?1")
    void updateStatus(String prescriptionCode, Integer status);

+ 5 - 1
patient-co-service/wlyy_service/src/main/java/com/yihu/wlyy/service/service/LogService.java

@ -77,7 +77,11 @@ public class LogService {
                log.setHeader(header);
                log.setParams(params);
                log.setCreateTime(new Date());
                log.setResponse(response);
                if(response.length()>10652261){
                    log.setResponse("超过longtext限制");
                }else {
                    log.setResponse(response);
                }
                log.setError(error);
                log.setStatus(isSuccess?"1":"0");
                httpLogDao.save(log);

+ 3 - 8
patient-co-service/wlyy_service/src/main/java/com/yihu/wlyy/service/service/prescription/PrescriptionService.java

@ -1,11 +1,6 @@
package com.yihu.wlyy.service.service.prescription;
import com.yihu.wlyy.service.common.model.Result;
import com.yihu.wlyy.service.common.util.StringUtil;
import com.yihu.wlyy.service.dao.DoctorMappingDao;
import com.yihu.wlyy.service.dao.HospitalDao;
import com.yihu.wlyy.service.dao.PatientDao;
import com.yihu.wlyy.service.dao.SignFamilyDao;
import com.yihu.wlyy.service.dao.*;
import com.yihu.wlyy.service.dao.prescription.*;
import com.yihu.wlyy.service.entity.Doctor;
@ -107,8 +102,8 @@ public class PrescriptionService extends ZysoftBaseService{
            Integer CODE= json.getInt("CODE");
            JSONObject pre = json.getJSONObject("Data");
            String prescriptionCode = pre.getString("PRESCRIPTION_CODE");
            Prescription prescription = prescriptionDao.findByCode(prescriptionCode);
            String recipeNo = pre.getString("RECIPE_NO");
            Prescription prescription = prescriptionDao.findByRecipeNo(recipeNo);
            if(prescription.getStatus()==PrescriptionLog.PrescriptionLogStatus.changeing.getValue()||prescription.getStatus()==PrescriptionLog.PrescriptionLogStatus.change_error.getValue()){
                if(CODE==1){
                    prescription.setStatus(PrescriptionLog.PrescriptionLogStatus.change_success.getValue());
@ -156,7 +151,7 @@ public class PrescriptionService extends ZysoftBaseService{
                    JSONObject message = new JSONObject();
                    message.put("title","adjustPrescription");
                    message.put("state",1);
                    message.put("prescription",prescriptionCode);
                    message.put("prescription",prescription.getCode());
                    message.put("mes","调整处方完成");
                    redisTemplate.convertAndSend(channelTopic,message.toString());
                }else {

BIN
patient-co-service/wlyy_service/src/main/resources/libsehr.crypto.so


+ 0 - 14
patient-co/patient-co-statistics/src/main/java/com/yihu/wlyy/statistics/job/business/ConsultJob.java

@ -107,20 +107,6 @@ public class ConsultJob implements Job {
        }
    }
    private String saveContent(List<ConsultTeam> consultTeams, Long qkCount, Long orgCount, Long townCount, Long cityCount, boolean isAll, StringBuffer errorContent,Long errorCount,String sql) {
        StringBuffer string=new StringBuffer("统计"+yesterday+" 的咨询数据完成 ,数据库查询到咨询数目:"+consultTeams.size());
        string.append(",sql语句:"+sql);
        string.append(",过滤的脏数据数目:"+errorCount);
        string.append(",统计到市的数据总数:"+cityCount);
        string.append(",统计到区的数据总数:"+townCount);
        string.append(",统计到机构的数据总数:"+orgCount);
        string.append(",统计到团队的数据总数:"+qkCount);
        string.append(",是否统计成功:"+isAll);
        if(!isAll){
            string.append(",失败原因:"+errorContent);
        }
        return string.toString();
    }
    public String getYesterday() {
        Calendar cal = Calendar.getInstance();

+ 5 - 16
patient-co/patient-co-statistics/src/main/java/com/yihu/wlyy/statistics/job/business/ConsultTotalJob.java

@ -83,7 +83,7 @@ public class ConsultTotalJob implements Job {
            quartzJobLog.setJobStartTime(new Date());
            quartzJobLog.setJobId(wlyyJobConfig.getId());
            quartzJobLog.setJobName(wlyyJobConfig.getJobName());
            String sql=" select admin_team_code,id from wlyy_consult_team a where a.czrq< '"+yesterday+ Constant.quota_date_last+"' and a.czrq >'"+Constant.getStartTimeByDate(yesterday)+"'";
            String sql=" select admin_team_code,id from wlyy_consult_team a where a.czrq< '"+yesterday+ Constant.quota_date_last+"' and a.czrq >='"+Constant.getStartTimeByDate(yesterday)+ Constant.quota_date_last+"'";
            //抽取數據
            List<ConsultTeam> consultTeams= dbExtract.extract(ConsultTeam.class,sql);
            //過濾數據
@ -103,25 +103,14 @@ public class ConsultTotalJob implements Job {
        }
    }
    private String saveContent(List<ConsultTeam> consultTeams, Long qkCount, Long orgCount, Long townCount, Long cityCount, boolean isAll, StringBuffer errorContent,Long errorCount,String sql) {
        StringBuffer string=new StringBuffer("统计"+yesterday+" 的咨询数据完成 ,数据库查询到咨询数目:"+consultTeams.size());
        string.append(",sql语句:"+sql);
        string.append(",过滤的脏数据数目:"+errorCount);
        string.append(",统计到市的数据总数:"+cityCount);
        string.append(",统计到区的数据总数:"+townCount);
        string.append(",统计到机构的数据总数:"+orgCount);
        string.append(",统计到团队的数据总数:"+qkCount);
        string.append(",是否统计成功:"+isAll);
        if(!isAll){
            string.append(",失败原因:"+errorContent);
        }
        return string.toString();
    }
    public String getYesterday() {
        Calendar cal = Calendar.getInstance();
        cal.add(Calendar.DATE, -1);
        String yesterday = new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime());
        return yesterday;
    }
    public static void main(String[] args) throws Exception{
        System.out.println(Constant.getStartTimeByDate("2017-08-12"));
    }
}

+ 1 - 1
patient-co/patient-co-statistics/src/main/java/com/yihu/wlyy/statistics/job/business/CurrentDayAllQuotaJob.java

@ -1117,7 +1117,7 @@ public class CurrentDayAllQuotaJob implements Job {
        String quotaId = "25";
        try {
            //找出总的咨询信息
            String sql = " select * from wlyy_consult_team a where a.czrq< '" + tomorrow + "' and  a.czrq> '" + Constant.getStartTimeByDate(tomorrow)+Constant.quota_date_last + "'";
            String sql = " select * from wlyy_consult_team a where a.czrq< '" + tomorrow + "' and  a.czrq>= '" + Constant.getStartTimeByDate(tomorrow)+Constant.quota_date_last + "'";
            //抽取數據
            List<ConsultTeam> consultTeams = SpringUtil.getBean(DBExtract.class).extract(ConsultTeam.class, sql);
            //過濾數據

+ 1 - 3
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/service/third/jw/JwPrescriptionService.java

@ -26,15 +26,13 @@ public class JwPrescriptionService {
    /**
     * 获取字典列表
     * @param dictName 字典名称
     * @param hospital 药品code
     * @return
     * @throws Exception
     */
    public String getDictForI(String dictName,String hospital) throws Exception{
    public String getDictForI(String dictName) throws Exception{
        String url = jwUrl + "/third/prescription/getDictForI";
        List<NameValuePair> params = new ArrayList<>();
        params.add(new BasicNameValuePair("dictName", dictName));
        params.add(new BasicNameValuePair("hospital", hospital));
        String response = httpClientUtil.post(url, params, "UTF-8");

+ 40 - 39
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/wechat/process/WeiXinEventProcess.java

@ -23,13 +23,14 @@ public class WeiXinEventProcess {
    private String appId;
    @Value("${server.server_url}")
    private String serverUrl;
    /**
     * 微信推送事件处理
     *
     * @param message
     * @return
     */
    public  String eventProcess(Map<String, String> message) throws Exception {
    public String eventProcess(Map<String, String> message) throws Exception {
        String result = "";
        String event = message.get("Event");
@ -60,7 +61,7 @@ public class WeiXinEventProcess {
     * @param message
     * @return
     */
    public  String clickProcess(Map<String, String> message) throws Exception {
    public String clickProcess(Map<String, String> message) throws Exception {
        String result = "";
        if (message.get("EventKey").equals("caozuoshuoming")) {
@ -84,7 +85,7 @@ public class WeiXinEventProcess {
     * @return
     * @throws Exception
     */
    private  String clickEventProcess(Map<String, String> message) throws Exception {
    private String clickEventProcess(Map<String, String> message) throws Exception {
        String result = "";
        // 配置信息
        Properties systemConf = SystemConf.getInstance().getSystemProperties();
@ -98,7 +99,7 @@ public class WeiXinEventProcess {
        // 图文消息图片URL
        String picUrlConsult = systemConf.getProperty("patient_operatinginstrutions_pic_url");
        // URL设置服务器URL、AppId
        urlConsult = urlConsult.replace("{server}",wechat_base_url)
        urlConsult = urlConsult.replace("{server}", wechat_base_url)
                .replace("{appId}", appId);
        //图片地址
        picUrlConsult = picUrlConsult.replace("{server}", serverUrl);
@ -134,7 +135,7 @@ public class WeiXinEventProcess {
        // 图文消息图片URL
        String picUrlDevice = systemConf.getProperty("patient_device_pic_url");
        // URL设置服务器URL、AppId
        urlDevice = urlDevice.replace("{server}",wechat_base_url)
        urlDevice = urlDevice.replace("{server}", wechat_base_url)
                .replace("{appId}", appId);
        //图片地址
        picUrlDevice = picUrlDevice.replace("{server}", serverUrl);
@ -153,7 +154,7 @@ public class WeiXinEventProcess {
        String picUrlFamily = systemConf.getProperty("patient_family_pic_url");
        // URL设置服务器URL、AppId
        urlFamily = urlFamily.replace("{server}", wechat_base_url)
                .replace("{appId}",appId);
                .replace("{appId}", appId);
        //图片地址
        picUrlFamily = picUrlFamily.replace("{server}", serverUrl);
@ -178,7 +179,7 @@ public class WeiXinEventProcess {
     * @return
     * @throws Exception
     */
    private  String clickEventProcessMenu(Map<String, String> message) throws Exception {
    private String clickEventProcessMenu(Map<String, String> message) throws Exception {
        String result = "";
        // 配置信息
        Properties systemConf = SystemConf.getInstance().getSystemProperties();
@ -208,8 +209,8 @@ public class WeiXinEventProcess {
        // 图文消息图片URL
        String inspect_pic = systemConf.getProperty("patient_inspect_pic");
        // URL设置服务器URL、AppId
        inspect = inspect.replace("{server}",wechat_base_url)
                .replace("{appId}",appId);
        inspect = inspect.replace("{server}", wechat_base_url)
                .replace("{appId}", appId);
        //图片地址
        inspect_pic = inspect_pic.replace("{server}", serverUrl);
@ -225,10 +226,10 @@ public class WeiXinEventProcess {
        // 图文消息图片URL
        String examination_pic = systemConf.getProperty("patient_examination_pic");
        // URL设置服务器URL、AppId
        examination = examination.replace("{server}",wechat_base_url)
        examination = examination.replace("{server}", wechat_base_url)
                .replace("{appId}", appId);
        //图片地址
        examination_pic = examination_pic.replace("{server}",serverUrl);
        examination_pic = examination_pic.replace("{server}", serverUrl);
        articleExamination.put("Url", examination);
        articleExamination.put("Title", "社区体检");
@ -237,22 +238,22 @@ public class WeiXinEventProcess {
        articles.add(articleExamination);
//        新增处方记录图文消息
//        Map<String, String> articlePrescription = new HashMap<>();
//        // 图文URL
//        String prescription = systemConf.getProperty("patient_prescription_url");
//        // 图文消息图片URL
//        String prescription_pic = systemConf.getProperty("patient_prescription_pic");
//        // URL设置服务器URL、AppId
//        prescription = prescription.replace("{server}",wechat_base_url)
//                .replace("{appId}",appId);
//        //图片地址
//        prescription_pic = prescription_pic.replace("{server}",serverUrl);
//
//        articlePrescription.put("Url", prescription);
//        articlePrescription.put("Title", "处方记录");
//        articlePrescription.put("Description", "处方记录");
//        articlePrescription.put("PicUrl", prescription_pic);
//        articles.add(articlePrescription);
        Map<String, String> articlePrescription = new HashMap<>();
        // 图文URL
        String prescription = systemConf.getProperty("patient_prescription_url");
        // 图文消息图片URL
        String prescription_pic = systemConf.getProperty("patient_prescription_pic");
        // URL设置服务器URL、AppId
        prescription = prescription.replace("{server}", wechat_base_url)
                .replace("{appId}", appId);
        //图片地址
        prescription_pic = prescription_pic.replace("{server}", serverUrl);
        articlePrescription.put("Url", prescription);
        articlePrescription.put("Title", "处方记录");
        articlePrescription.put("Description", "处方记录");
        articlePrescription.put("PicUrl", prescription_pic);
        articles.add(articlePrescription);
        // 构建回复消息XML
        result = WeiXinMessageReplyUtils.replyNewsMessage(message.get("FromUserName"), message.get("ToUserName"), articles);
@ -268,7 +269,7 @@ public class WeiXinEventProcess {
     * @return
     * @throws Exception
     */
    private  String subscribeEventProcess(Map<String, String> message) throws Exception {
    private String subscribeEventProcess(Map<String, String> message) throws Exception {
        String result = "";
        // 配置信息
        Properties systemConf = SystemConf.getInstance().getSystemProperties();
@ -307,7 +308,7 @@ public class WeiXinEventProcess {
     *
     * @param articles
     */
    public  void setUrlItems(List<Map<String, String>> articles, Properties systemConf) {
    public void setUrlItems(List<Map<String, String>> articles, Properties systemConf) {
        Map<String, String> articleConsult = new HashMap<>();
        // 图文URL
        String urlConsult = systemConf.getProperty("patient_consult_url");
@ -335,7 +336,7 @@ public class WeiXinEventProcess {
        urlBooking = urlBooking.replace("{server}", wechat_base_url)
                .replace("{appId}", appId);
        //图片地址
        picUrlBooking = picUrlBooking.replace("{server}",serverUrl);
        picUrlBooking = picUrlBooking.replace("{server}", serverUrl);
        articleBooking.put("Url", urlBooking);
        articleBooking.put("Title", "预约挂号功能使用说明");
@ -369,9 +370,9 @@ public class WeiXinEventProcess {
        String picUrlFamily = systemConf.getProperty("patient_family_pic_url");
        // URL设置服务器URL、AppId
        urlFamily = urlFamily.replace("{server}", wechat_base_url)
                .replace("{appId}",appId);
                .replace("{appId}", appId);
        //图片地址
        picUrlFamily = picUrlFamily.replace("{server}",serverUrl);
        picUrlFamily = picUrlFamily.replace("{server}", serverUrl);
        articleFamily.put("Url", urlFamily);
        articleFamily.put("Title", "我的家庭功能使用说明");
@ -388,7 +389,7 @@ public class WeiXinEventProcess {
     * @return
     * @throws Exception
     */
    private  String scanEventProcess(Map<String, String> message) throws Exception {
    private String scanEventProcess(Map<String, String> message) throws Exception {
        String result = "";
        // 场景值
        String eventKey = message.get("EventKey");
@ -443,7 +444,7 @@ public class WeiXinEventProcess {
            String[] keys = eventKey.replace("qrscene_hs_", "").replace("hs_", "").split("_");
            // 图文消息URL
            url = url.replace("{server}",wechat_base_url)
            url = url.replace("{server}", wechat_base_url)
                    .replace("{appId}", appId)
                    .replace("{hospital}", keys[0] + ":" + keys[1]);
            //图片地址
@ -478,7 +479,7 @@ public class WeiXinEventProcess {
            // 图文消息URL
            url = url.replace("{server}", wechat_base_url)
                    .replace("{appId}",appId)
                    .replace("{appId}", appId)
                    .replace("{town}", keys[0]);
            //图片地址
            picUrl = picUrl.replace("{server}", serverUrl);
@ -510,7 +511,7 @@ public class WeiXinEventProcess {
     * @param description 图文描述
     * @return
     */
    public  Map getNews(String url, String picUrl, String title, String description) {
    public Map getNews(String url, String picUrl, String title, String description) {
        Properties systemConf = SystemConf.getInstance().getSystemProperties();
        Map<String, String> news = new HashMap<>();
        // 图文URL
@ -518,8 +519,8 @@ public class WeiXinEventProcess {
        // 图文消息图片URL
        String pictureUrl = systemConf.getProperty(picUrl);
        // URL设置服务器URL、AppId
        targetUrl = targetUrl.replace("{server}",wechat_base_url)
                .replace("{appId}",appId);
        targetUrl = targetUrl.replace("{server}", wechat_base_url)
                .replace("{appId}", appId);
        //图片地址
        pictureUrl = pictureUrl.replace("{server}", serverUrl);
        System.out.println("url ====> " + targetUrl);
@ -541,7 +542,7 @@ public class WeiXinEventProcess {
     * @param message
     * @return
     */
    public  String replyKeyword(Map<String, String> message) throws Exception {
    public String replyKeyword(Map<String, String> message) throws Exception {
        String result = "";
        String description = "您的家庭医生签约将于6月30日到期,为了能继续给您提供健康服务,诚邀您续签家庭医生。";
        String description1 = "为了能给您提供健康服务,诚邀您签签约家庭医生。";

+ 1 - 1
patient-co/patient-co-wlyy-job/src/main/resources/system.properties

@ -25,7 +25,7 @@ patient_inspect_url =https://open.weixin.qq.com/connect/oauth2/authorize?appid={
#社区体检
patient_examination_url=https://open.weixin.qq.com/connect/oauth2/authorize?appid={appId}&amp;redirect_uri={server}%2fwx%2fhtml%2fjkda%2fhtml%2fjiankangtijian.html&amp;response_type=code&amp;scope=snsapi_base&amp;state=STATE#wechat_redirect
#处方记录
patient_prescription_url=https://open.weixin.qq.com/connect/oauth2/authorize?appid={appId}&amp;redirect_uri={server}%2fwx%2fhtml%2fjkda%2fhtml%2fjiankangtijian.html&amp;response_type=code&amp;scope=snsapi_base&amp;state=STATE#wechat_redirect
patient_prescription_url=https://open.weixin.qq.com/connect/oauth2/authorize?appid={appId}&amp;redirect_uri={server}%2fwx%2fhtml%2fprescription%2fhtml%2fprescription_records.html&amp;response_type=code&amp;scope=snsapi_base&amp;state=STATE#wechat_redirect
#就诊记录
patient_visit_pic ={server}/images/visit.png

+ 1 - 0
patient-co/patient-co-wlyy/pom.xml

@ -445,6 +445,7 @@
                <excludes>
                    <exclude>downloadPage.html</exclude>
                    <exclude>ssgg_doctor.plist</exclude>
                    <exclude>images/**</exclude>
                </excludes>
            </resource>
            <resource>

+ 55 - 15
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/adapter/PresModeAdapter.java

@ -2,12 +2,19 @@ package com.yihu.wlyy.adapter;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.patient.prescription.Prescription;
import com.yihu.wlyy.entity.patient.prescription.PrescriptionDiagnosis;
import com.yihu.wlyy.entity.patient.prescription.PrescriptionInfo;
import com.yihu.wlyy.service.system.Icd10DictServcie;
import com.yihu.wlyy.service.third.jw.ZyDictService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
/**
 * Created by Trick on 2017/8/10.
@ -15,6 +22,11 @@ import java.util.Iterator;
@Component
public class PresModeAdapter {
    @Autowired
    private Icd10DictServcie icd10DictServcie;
    @Autowired
    private ZyDictService zyDictService;
    /**
     * 续方模板适配器
     * @param json
@ -87,10 +99,15 @@ public class PresModeAdapter {
        return null;
    }
    public JSONArray ModeToPrescription(String json)throws Exception{
    /**
     * 处方列表解析
     * @param json
     * @return
     * @throws Exception
     */
    public JSONArray modeToPrescription(String json)throws Exception{
        JSONObject oldJson = JSONObject.parseObject(json);
        String dataStr = oldJson.getString("data");
        JSONObject data = JSONObject.parseObject(dataStr);
        JSONObject data = oldJson.getJSONObject("data");
        JSONArray returnData = data.getJSONArray("returnData");
        String code = data.getString("CODE");
        if(StringUtils.isNotBlank(code)&&"1".equals(code)){
@ -99,18 +116,41 @@ public class PresModeAdapter {
            while (iterator.hasNext()){
                JSONArray modeArray = (JSONArray) iterator.next();
                JSONObject mode = (JSONObject) modeArray.get(0);
                Prescription p  = new Prescription();
                p.setCode(mode.getInteger("RECIPE_NO")+"");
                p.setCreateTime(mode.getDate("APPLY_TIME"));
                //     "APPLY_OPERATOR_NAME": "开单医生姓名",
//                "HEALTH_ORG_CODE": "开单机构编码",
//                        "DIAGNOSE_CODE": "诊断代码",
//                        "DIAGNOSE_NAME": "诊断名称",
                JSONObject p  = new JSONObject();
                p.put("code",mode.getInteger("RECIPE_NO")+"");
                p.put("createTime",mode.getString("APPLY_TIME"));
                Doctor doctor =  zyDictService.getDoctByJw(mode.getString("APPLY_OPERATOR"),mode.getString("HEALTH_ORG_CODE"));
                // "APPLY_OPERATOR_NAME": 开单医生姓名","HEALTH_ORG_CODE": "开单机构编码",
                if(doctor!=null){
                    p.put("doctor",doctor.getCode());
                    p.put("doctorName",doctor.getName());
                    p.put("hospitalName",doctor.getHospitalName());
                    p.put("hospital",doctor.getHospital());
                }else{
                    p.put("doctor",mode.getString("APPLY_OPERATOR"));
                    p.put("hospitalName",mode.getString("APPLY_OPERATOR_NAME"));
                    //p.setHospitalName(doctor.getHospitalName());
                    p.put("hospital",mode.getString("HEALTH_ORG_CODE"));
                }
                JSONArray infos = mode.getJSONArray("TEMPLATE_DETAIL");
                PrescriptionDiagnosis diagnosis = new PrescriptionDiagnosis();
                diagnosis.setCode(mode.getString("DIAGNOSE_CODE"));//诊断代码
                diagnosis.setName(mode.getString("DIAGNOSE_NAME"));//诊断名称
                String icd10 = icd10DictServcie.getHealthProblemsByIcd10Code(mode.getString("DIAGNOSE_CODE"));
                if(!StringUtils.isEmpty(icd10)){
                    JSONObject icd = JSONObject.parseObject(icd10);
                    diagnosis.setHealthProblemName(icd.getString("value"));//诊断名称
                    diagnosis.setHealthProblem(icd.getString("key"));//诊断代码
                }else{
                    diagnosis.setHealthProblemName(mode.getString("DIAGNOSE_CODE"));//诊断名称
                    diagnosis.setHealthProblem(mode.getString("DIAGNOSE_NAME"));//诊断代码
                }
                JSONArray infos = mode.getJSONArray("RECIPE_DETAIL");
                Iterator infoIt = infos.iterator();
                JSONArray is = new JSONArray();
                List<PrescriptionInfo> prescriptionInfos = new ArrayList<>();
                while (infoIt.hasNext()){
                    JSONObject info = (JSONObject) infoIt.next();
                    PrescriptionInfo prescriptionInfo = new PrescriptionInfo();
@ -143,10 +183,10 @@ public class PresModeAdapter {
                    prescriptionInfo.setPhysicInjectPlaceName("");//注射地点名称
                    prescriptionInfo.setPhysicSkinTest(info.getString("PHYSIC_SKIN_TEST"));//皮试类型名称
                    prescriptionInfo.setPhysicSkinTestName(info.getString("PHYSIC_SKIN_TEST_NAME"));//皮试类型名称
                    is.add(prescriptionInfo);
                    prescriptionInfos.add(prescriptionInfo);
                }
//                m.put("prescriptionInfo",is);
//                rs.add(m);
                p.put("prescriptionInfo",prescriptionInfos);
                rs.add(p);
            }
            return rs;
        }

+ 1 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/config/SwaggerConfig.java

@ -98,6 +98,7 @@ public class SwaggerConfig {
                        regex("/wx/.*"),
                        regex("/area/.*"),
                        regex("/login/.*"),
                        regex("/loginPC/.*"),
                        regex("/qrcode/.*"),
                        regex("/onepay/.*"),
                        regex("/wlyy_service/.*"),

+ 2 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/DoctorInterceptor.java

@ -34,7 +34,7 @@ public class DoctorInterceptor extends BaseInterceptor {
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        boolean flag = true;
        /*try {
        try {
            request.setCharacterEncoding("UTF-8");
            request.setAttribute("log-start", new Date().getTime());
            response.setCharacterEncoding("UTF-8");
@ -153,7 +153,7 @@ public class DoctorInterceptor extends BaseInterceptor {
            }
        } catch (Exception e) {
            e.printStackTrace();
        }*/
        }
        return flag;
    }

+ 2 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/PatientInterceptor.java

@ -31,7 +31,7 @@ public class PatientInterceptor extends BaseInterceptor {
	@Override
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
		boolean flag = true;
		/*try {
		try {
			request.setCharacterEncoding("UTF-8");
			request.setAttribute("log-start", new Date().getTime());
			if(request.getRequestURI().contains("/patient/hosptail/getHositalByTownCode")||request.getRequestURI().contains("/patient/feedback/saveAppeal")){
@ -101,7 +101,7 @@ public class PatientInterceptor extends BaseInterceptor {
			}
		} catch (Exception e) {
			e.printStackTrace();
		}*/
		}
		return flag;
	}

+ 10 - 6
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/message/MessageDao.java

@ -58,7 +58,7 @@ public interface MessageDao extends PagingAndSortingRepository<Message, Long>, J
    @Query("select a from Message a where a.receiver = ?1 and a.prescriptionStatus=?2 and a.type in (6,7) order by a.createTime desc")
    List<Message> getSysTemMessageByPrescription(String doctor, String prescriptionStatus);
    @Query("select a from Message a where a.receiver = ?1 and a.type not in (1,2,6)")
    @Query("select a from Message a where a.receiver = ?1 and a.type not in (1,2,6,7)")
    List<Message> getSystemMessage(String doctor,Pageable pageRequest);
    @Query("select a from Message a where a.receiver = ?1 and a.type=?2 and a.prescriptionStatus='0' ")
@ -67,18 +67,22 @@ public interface MessageDao extends PagingAndSortingRepository<Message, Long>, J
    @Query("select count(a) from Message a where a.read = 0 and a.over ='0'  and a.receiver=?1 and a.type=?2 ")
    int findMessageNum(String doctor, Integer type);
    @Query("update Message a set a.prescriptionStatus=?2 where a.relationCode = ?1 and a.type=6 ")
    int updatePreScriptionMessage(String relateCode,String prescriptionStatus);
    @Query("update Message a set a.prescriptionStatus=?2 where a.relationCode = ?1 and a.type=?3 ")
    int updatePreScriptionMessage(String relateCode,String prescriptionStatus,Integer type);
    @Query("update Message a set a.read = 0,a.over = '0' where a.receiver = ?1 and a.type = ?2")
    @Modifying
    int setMessageReaded(String doctor,Integer type);
    int setMessageReaded(String doctor, Integer type);
    @Query("update Message a set a.read = 0,a.over = '0' where a.receiver = ?1 and a.type not in (1,2,6)")
    @Query("update Message a set a.read = 0,a.over = '0' where a.receiver = ?1 and a.type not in (1,2,6,7)")
    @Modifying
    int setSysMessageReaded(String doctor);
    //查询患者最近7天的体征异常记录
    @Query(value = "SELECT COUNT(1) FROM wlyy_message WHERE type = '2' and sender = ?1 and create_time>=date_add(now(),interval -7 day) ",nativeQuery = true)
    @Query(value = "SELECT COUNT(1) FROM wlyy_message WHERE type = '2' and sender = ?1 and create_time>=date_add(now(),interval -7 day) ", nativeQuery = true)
    int findTzMessage(String patient);
    //根据续方关联code查询团队长分配健管师消息
    @Query("from Message a where a.type = 3 and a.state=0 and a.del='1' and a.over='0' and relationCode = ?1  ")
    Message findByRelationCode(String relationCode);
}

+ 3 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/organization/HospitalMappingDao.java

@ -24,6 +24,9 @@ public interface HospitalMappingDao extends PagingAndSortingRepository<HospitalM
	@Query("select a.code from HospitalMapping a where a.mappingCode=?1 and a.type=?2")
	String getCodeByMapping(String mappingCode,String type);
	@Query("select a.name from HospitalMapping a where a.mappingCode=?1 and a.type=?2")
	String getNameByMapping(String mappingCode,String type);
	@Query("select a from HospitalMapping a where a.appId=?1 ")
	HospitalMapping findByAppId(String appId);

+ 3 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/prescription/PrescriptionAdjustDao.java

@ -2,6 +2,7 @@ package com.yihu.wlyy.repository.prescription;
import com.yihu.wlyy.entity.patient.prescription.PrescriptionAdjust;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
@ -12,4 +13,6 @@ import java.util.List;
public interface PrescriptionAdjustDao extends PagingAndSortingRepository<PrescriptionAdjust, Long>,JpaSpecificationExecutor<PrescriptionAdjust> {
    List<PrescriptionAdjust> findByPrescriptionCode(String code);
    List<PrescriptionAdjust> findByPrescriptionCodeOrderByIdDesc(String code);
}

+ 2 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/prescription/PrescriptionDao.java

@ -21,8 +21,8 @@ public interface PrescriptionDao extends PagingAndSortingRepository<Prescription
    @Query("update Prescription p set p.status=?2 where p.code=?1")
    void updateStatus(String prescriptionCode,Integer status);
    @Query("select p from Prescription p where p.jwCode=?1 and p.status=?2 ")
    List<Prescription> fingdByJwCodeAndStatus(String jwcode,Integer status);
    @Query("select p from Prescription p where p.jwCode=?1 and p.status=?2 and p.patient=?3 ")
    List<Prescription> fingdByJwCodeAndStatus(String jwcode,Integer status,String patient);
    //根据处方code得到患者信息
    @Query("select p from Prescription pt,Patient p where p.code=pt.patient  and pt.code=?1")
    Patient findPatientByPrescriptionCode(String prescriptionCode);

+ 13 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyCommonDictDao.java

@ -0,0 +1,13 @@
package com.yihu.wlyy.repository.zydict;
import com.yihu.wlyy.entity.zydict.ZyCommonDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface ZyCommonDictDao extends PagingAndSortingRepository<ZyCommonDict, Long>, JpaSpecificationExecutor<ZyCommonDict> {
}

+ 13 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvDeptDictDao.java

@ -0,0 +1,13 @@
package com.yihu.wlyy.repository.zydict;
import com.yihu.wlyy.entity.zydict.ZyIvDeptDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface ZyIvDeptDictDao extends PagingAndSortingRepository<ZyIvDeptDict, Long>, JpaSpecificationExecutor<ZyIvDeptDict> {
}

+ 11 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvDeptStaffAllotDictDao.java

@ -0,0 +1,11 @@
package com.yihu.wlyy.repository.zydict;
import com.yihu.wlyy.entity.zydict.ZyIvDeptStaffAllotDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface ZyIvDeptStaffAllotDictDao extends PagingAndSortingRepository<ZyIvDeptStaffAllotDict, Long>, JpaSpecificationExecutor<ZyIvDeptStaffAllotDict> {
}

+ 11 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvDiagnoseClassDictDao.java

@ -0,0 +1,11 @@
package com.yihu.wlyy.repository.zydict;
import com.yihu.wlyy.entity.zydict.ZyIvDiagnoseClassDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface ZyIvDiagnoseClassDictDao extends PagingAndSortingRepository<ZyIvDiagnoseClassDict, Long>, JpaSpecificationExecutor<ZyIvDiagnoseClassDict> {
}

+ 12 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvDiagnoseDictDao.java

@ -0,0 +1,12 @@
package com.yihu.wlyy.repository.zydict;
import com.yihu.wlyy.entity.zydict.ZyIvDiagnoseDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface ZyIvDiagnoseDictDao extends PagingAndSortingRepository<ZyIvDiagnoseDict, Long>, JpaSpecificationExecutor<ZyIvDiagnoseDict> {
}

+ 11 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvOrgPhysicAllotDictDao.java

@ -0,0 +1,11 @@
package com.yihu.wlyy.repository.zydict;
import com.yihu.wlyy.entity.zydict.ZyIvOrgPhysicAllotDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface ZyIvOrgPhysicAllotDictDao extends PagingAndSortingRepository<ZyIvOrgPhysicAllotDict, Long>, JpaSpecificationExecutor<ZyIvOrgPhysicAllotDict> {
}

+ 11 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvPhysicDictDao.java

@ -0,0 +1,11 @@
package com.yihu.wlyy.repository.zydict;
import com.yihu.wlyy.entity.zydict.ZyIvPhysicDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface ZyIvPhysicDictDao extends PagingAndSortingRepository<ZyIvPhysicDict, Long>, JpaSpecificationExecutor<ZyIvPhysicDict> {
}

+ 11 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvStaffDictDao.java

@ -0,0 +1,11 @@
package com.yihu.wlyy.repository.zydict;
import com.yihu.wlyy.entity.zydict.ZyIvStaffDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface ZyIvStaffDictDao extends PagingAndSortingRepository<ZyIvStaffDict, Long>, JpaSpecificationExecutor<ZyIvStaffDict> {
}

+ 12 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvStaffRegTypeAllotDictDao.java

@ -0,0 +1,12 @@
package com.yihu.wlyy.repository.zydict;
import com.yihu.wlyy.entity.zydict.ZyIvStaffRegTypeAllotDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface ZyIvStaffRegTypeAllotDictDao extends PagingAndSortingRepository<ZyIvStaffRegTypeAllotDict, Long>, JpaSpecificationExecutor<ZyIvStaffRegTypeAllotDict> {
}

+ 12 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/zydict/ZyIvSubjectClassDictDao.java

@ -0,0 +1,12 @@
package com.yihu.wlyy.repository.zydict;
import com.yihu.wlyy.entity.zydict.ZyIvSubjectClassDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface ZyIvSubjectClassDictDao extends PagingAndSortingRepository<ZyIvSubjectClassDict, Long>, JpaSpecificationExecutor<ZyIvSubjectClassDict> {
}

+ 482 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/ZyDictDataService.java

@ -0,0 +1,482 @@
package com.yihu.wlyy.service;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yihu.wlyy.repository.organization.HospitalDao;
import com.yihu.wlyy.service.third.jw.JwPrescriptionService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
 * Created by chenweida on 2017/8/10.
 * 每天1点同步 智业的字典数据
 */
@Service
public class ZyDictDataService extends BaseService {
    @Autowired
    private JwPrescriptionService jwPrescriptionService;
    @Autowired
    private HospitalDao hospitalDao;
    @Autowired
    private JdbcTemplate jdbcTemplate;
    public void synchronizeZy_iv_subject_class_dict() {
        try{
            String re = jwPrescriptionService.getDictForI(IV_SUBJECT_CLASS_DICT);
            JSONObject jsonObject = JSONObject.parseObject(re);
            if(jsonObject.getInteger("status")==200){
                JSONObject data = jsonObject.getJSONObject("data");
                if("1".equals(data.getString("CODE"))){
                    JSONArray returnData = data.getJSONArray("returnData");
                    System.out.println("returnData="+returnData.toString());
                    if(returnData.size()==0){
                        return;
                    }
                    JSONArray dictArray = returnData.getJSONArray(0);
                    for(int i=0;i<dictArray.size();i++){
                        JSONObject dict = dictArray.getJSONObject(i);
                        StringBuffer sql = new StringBuffer("insert into ");
                        sql.append(TableName.zy_iv_subject_class_dict.getDict()).append(" (class_code,class_name,upper_class,spell_code,wbzx_code) " );
                        sql.append("values('").append(dict.getString("CLASS_CODE")).append("','");
                        sql.append(dict.getString("CLASS_NAME")).append("','");
                        sql.append(dict.getString("UPPER_CLASS")).append("','");
                        sql.append(dict.getString("SPELL_CODE")).append("','");
                        sql.append(dict.getString("WBZX_CODE")).append("')");
                        System.out.println("sql="+sql.toString());
                        jdbcTemplate.execute(sql.toString());
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    public void synchronizeZy_iv_staff_reg_type_allot_dict() {
        try{
            String re = jwPrescriptionService.getDictForI(IV_STAFF_REG_TYPE_ALLOT_DICT);
            JSONObject jsonObject = JSONObject.parseObject(re);
            if(jsonObject.getInteger("status")==200){
                JSONObject data = jsonObject.getJSONObject("data");
                if("1".equals(data.getString("CODE"))){
                    JSONArray returnData = data.getJSONArray("returnData");
                    System.out.println("returnData="+returnData.toString());
                    if(returnData.size()==0){
                        return;
                    }
                    JSONArray dictArray = returnData.getJSONArray(0);
                    for(int i=0;i<dictArray.size();i++){
                        JSONObject dict = dictArray.getJSONObject(i);
                        StringBuffer sql = new StringBuffer("insert into ");
                        sql.append(TableName.zy_iv_staff_reg_type_allot_dict.getDict()).append(" (org_code,staff_code,register_type,register_type_name,register_fee) " );
                        sql.append("values('").append(dict.getString("ORG_CODE")).append("','");
                        sql.append(dict.getString("STAFF_CODE")).append("','");
                        sql.append(dict.getString("REGISTER_TYPE")).append("','");
                        sql.append(dict.getString("REGISTER_TYPE_NAME")).append("','");
                        sql.append(dict.getString("REGISTER_FEE")).append("')");
                        System.out.println("sql="+sql.toString());
                        jdbcTemplate.execute(sql.toString());
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    public void synchronizeZ_iv_staff_dict() {
        try{
            String re = jwPrescriptionService.getDictForI(IV_STAFF_DICT);
            JSONObject jsonObject = JSONObject.parseObject(re);
            if(jsonObject.getInteger("status")==200){
                JSONObject data = jsonObject.getJSONObject("data");
                if("1".equals(data.getString("CODE"))){
                    JSONArray returnData = data.getJSONArray("returnData");
                    System.out.println("returnData="+returnData.toString());
                    if(returnData.size()==0){
                        return;
                    }
                    JSONArray dictArray = returnData.getJSONArray(0);
                    for(int i=0;i<dictArray.size();i++){
                        JSONObject dict = dictArray.getJSONObject(i);
                        StringBuffer sql = new StringBuffer("insert into ");
                        sql.append(TableName.zy_iv_staff_dict.getDict()).append(" (org_code,staff_code,staff_name,work_code,birthday,sex,spell_code,wbzx_code,identity_no,certificate_no) " );
                        sql.append("values('").append(dict.getString("ORG_CODE")).append("','");
                        sql.append(dict.getString("STAFF_CODE")).append("','");
                        sql.append(dict.getString("STAFF_NAME")).append("','");
                        sql.append(dict.getString("WORK_CODE")).append("','");
                        sql.append(dict.getString("BIRTHDAY")).append("','");
                        sql.append(dict.getString("SEX")).append("','");
                        sql.append(dict.getString("SPELL_CODE")).append("','");
                        sql.append(dict.getString("WBZX_CODE")).append("','");
                        sql.append(dict.getString("IDENTITY_NO")).append("','");
                        sql.append(dict.getString("CERTIFICATE_NO")).append("')");
                        System.out.println("sql="+sql.toString());
                        jdbcTemplate.execute(sql.toString());
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    private String changDate(String date){
        String str=date.replace("/Date(","").replace(")/","");
        String time = str.substring(0,str.length()-5);
        Date data = new Date(Long.parseLong(time));
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return format.format(data);
    }
    public void synchronizeZy_iv_physic_dict() {
        try{
            String re = jwPrescriptionService.getDictForI(IV_PHYSIC_DICT);
            JSONObject jsonObject = JSONObject.parseObject(re);
            if(jsonObject.getInteger("status")==200){
                JSONObject data = jsonObject.getJSONObject("data");
                if("1".equals(data.getString("CODE"))){
                    JSONArray returnData = data.getJSONArray("returnData");
                    System.out.println("returnData="+returnData.toString());
                    if(returnData.size()==0){
                        return;
                    }
                    JSONArray dictArray = returnData.getJSONArray(0);
                    for(int i=0;i<dictArray.size();i++){
                        JSONObject dict = dictArray.getJSONObject(i);
                        StringBuffer sql = new StringBuffer("insert into ");
                        sql.append(TableName.zy_iv_physic_dict.getDict()).append(" (physic_code,physic_name,physic_spec,subject_class,dose_unit,quantity_unit,pack_unit,min_dose,pack_spec, " );
                        sql.append("retail_price,physic_from,toxicology_type,basic_flag,valid_flag,spell_code,wbzx_code,sequence)");
                        sql.append("values('").append(dict.getString("PHYSIC_CODE")).append("','");//药品代码
                        sql.append(dict.getString("PHYSIC_NAME")).append("','");//'药品名称'
                        sql.append(dict.getString("PHYSIC_SPEC")).append("','");//'药品规格'
                        sql.append(dict.getString("SUBJECT_CLASS")).append("','");//'药品科目  科目类别字典中定义'
                        sql.append(dict.getString("DOSE_UNIT")).append("','");//'剂量单位 计量单位字典中定义'
                        sql.append(dict.getString("QUANTITY_UNIT")).append("','");///'数量单位  计量单位字典中定义'
                        sql.append(dict.getString("PACK_UNIT")).append("',");//'包装单位   计量单位字典中定义'
                        sql.append(dict.getDouble("MIN_DOSE")).append(",");//'最小剂量'
                        sql.append(dict.getDouble("PACK_SPEC")).append(",");//
                        sql.append(dict.getDouble("RETAIL_PRICE")).append(",'");//'零售价'
                        sql.append(dict.getString("PHYSIC_FROM")).append("','");//'药品剂型  药品剂型字典中定义'
                        sql.append(dict.getString("TOXICOLOGY_TYPE")).append("','");//'毒理分类  药品毒理分类字典中定义'
                        sql.append(dict.getString("BASIC_FLAG")).append("','");//'基本药物标志  0:否;1:是'
                        sql.append(dict.getString("VALID_FLAG")).append("','");//'有效标志 0:无效;1:有效'
                        sql.append(dict.getString("SPELL_CODE")).append("','");//'拼音首码'
                        sql.append(dict.getString("WBZX_CODE")).append("',");//'五笔首码'
                        if(dict.getInteger("SEQUENCE")==null){
                            sql.append(dict.getInteger("SEQUENCE")).append(")");//'排序号'
                        }else {
                            sql.append(dict.getString("SEQUENCE")).append(")");//'排序号'
                        }
                        System.out.println("sql="+sql.toString());
                        jdbcTemplate.execute(sql.toString());
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    public void synchronizeZy_iv_org_physic_allot_dict() {
        try{
            String re = jwPrescriptionService.getDictForI(IV_ORG_PHYSIC_ALLOT_DICT);
            JSONObject jsonObject = JSONObject.parseObject(re);
            if(jsonObject.getInteger("status")==200){
                JSONObject data = jsonObject.getJSONObject("data");
                if("1".equals(data.getString("CODE"))){
                    JSONArray returnData = data.getJSONArray("returnData");
                    System.out.println("returnData="+returnData.toString());
                    if(returnData.size()==0){
                        return;
                    }
                    JSONArray dictArray = returnData.getJSONArray(0);
                    for(int i=0;i<dictArray.size();i++){
                        JSONObject dict = dictArray.getJSONObject(i);
                        StringBuffer sql = new StringBuffer("insert into ");
                        sql.append(TableName.zy_iv_org_physic_allot_dict.getDict()).append(" (org_code,physic_code) " );
                        sql.append("values('").append(dict.getString("ORG_CODE")).append("','");//'机构编码'
                        sql.append(dict.getString("PHYSIC_CODE")).append("')");//'药品代码'
                        System.out.println("sql="+sql.toString());
                        jdbcTemplate.execute(sql.toString());
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    public void synchronizeZy_iv_diagnose_class_dict() {
        try{
            String re = jwPrescriptionService.getDictForI(IV_DIAGNOSE_CLASS_DICT);
            JSONObject jsonObject = JSONObject.parseObject(re);
            if(jsonObject.getInteger("status")==200){
                JSONObject data = jsonObject.getJSONObject("data");
                if("1".equals(data.getString("CODE"))){
                    JSONArray returnData = data.getJSONArray("returnData");
                    System.out.println("returnData="+returnData.toString());
                    if(returnData.size()==0){
                        return;
                    }
                    JSONArray dictArray = returnData.getJSONArray(0);
                    for(int i=0;i<dictArray.size();i++){
                        JSONObject dict = dictArray.getJSONObject(i);
                        StringBuffer sql = new StringBuffer("insert into ");
                        sql.append(TableName.zy_iv_diagnose_class_dict.getDict()).append(" (class_sub_no,class_code,class_name,upper_class,valid_flag,spell_code,wbzx_code) " );
                        sql.append("values('").append(dict.getString("CLASS_SUB_NO")).append("','");//''类别子序号''
                        sql.append(dict.getString("CLASS_CODE")).append("','");//'类别代码'
                        sql.append(dict.getString("CLASS_NAME")).append("','");//'类别名称'
                        sql.append(dict.getString("UPPER_CLASS")).append("','");//'上级类别'
                        sql.append(dict.getString("VALID_FLAG")).append("','");//'有效标志  0 :无效;1:有效'
                        sql.append(dict.getString("SPELL_CODE")).append("','");//'拼音首码'
                        sql.append(dict.getString("WBZX_CODE")).append("')");//''五笔首码''
                        System.out.println("sql="+sql.toString());
                        jdbcTemplate.execute(sql.toString());
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    public void synchronizeZy_iv_dept_staff_allot_dict() {
        try{
            String re = jwPrescriptionService.getDictForI(IV_DEPT_STAFF_ALLOT_DICT);
            JSONObject jsonObject = JSONObject.parseObject(re);
            if(jsonObject.getInteger("status")==200){
                JSONObject data = jsonObject.getJSONObject("data");
                if("1".equals(data.getString("CODE"))){
                    JSONArray returnData = data.getJSONArray("returnData");
                    System.out.println("returnData="+returnData.toString());
                    if(returnData.size()==0){
                        return;
                    }
                    JSONArray dictArray = returnData.getJSONArray(0);
                    for(int i=0;i<dictArray.size();i++){
                        JSONObject dict = dictArray.getJSONObject(i);
                        StringBuffer sql = new StringBuffer("insert into ");
                        sql.append(TableName.zy_iv_dept_staff_allot_dict.getDict()).append(" (org_code,dept_code,staff_code) " );
                        sql.append("values('").append(dict.getString("ORG_CODE")).append("','");//'''机构编码'''
                        sql.append(dict.getString("DEPT_CODE")).append("','");//''科室编码''
                        sql.append(dict.getString("STAFF_CODE")).append("')");//'''员工编码'''
                        System.out.println("sql="+sql.toString());
                        jdbcTemplate.execute(sql.toString());
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    public void synchronizeZyCommonDict() {
        String[] dictNames = new String[]{
                this.IV_PHYSIC_FORM_DICT, this.IV_PHYSIC_INJECT_PLACE_DICT, this.IV_PHYSIC_SKIN_TEST_DICT,
                this.IV_RATE_TYPE_DICT, this.IV_RECIPE_FREQUENCY_DICT, this.IV_RECIPE_USAGE_DICT,
                this.IV_SEX_DICT, this.IV_PHYSIC_TOXICOLOGY_TYPE_DICT, this.IV_MEASURE_UNIT_DICT,
                this.IV_DEPT_TYPE_DICT};
        try{
            for (String dictName : dictNames) {
                String re = jwPrescriptionService.getDictForI(dictName);
                JSONObject jsonObject = JSONObject.parseObject(re);
                if(jsonObject.getInteger("status")==200){
                    JSONObject data = jsonObject.getJSONObject("data");
                    if("1".equals(data.getString("CODE"))){
                        JSONArray returnData = data.getJSONArray("returnData");
                        System.out.println("returnData="+returnData.toString());
                        if(returnData.size()==0){
                            continue;
                        }
                        JSONArray dictArray = returnData.getJSONArray(0);
                        for(int i=0;i<dictArray.size();i++){
                            JSONObject dict = dictArray.getJSONObject(i);
                            StringBuffer sql = new StringBuffer("insert into ");
                            sql.append(TableName.zy_common_dict.getDict()).append(" (dict_name,code,name) " );
                            sql.append("values('").append(dict.getString("DICT_NAME")).append("','");
                            sql.append(dict.getString("CODE")).append("','");
                            sql.append(dict.getString("NAME")).append("')");
                            System.out.println("sql="+sql.toString());
                            jdbcTemplate.execute(sql.toString());
                        }
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    public void synchronizeZy_iv_dept_dict() {
        try{
            String re = jwPrescriptionService.getDictForI(IV_DEPT_DICT);
            JSONObject jsonObject = JSONObject.parseObject(re);
            if(jsonObject.getInteger("status")==200){
                JSONObject data = jsonObject.getJSONObject("data");
                if("1".equals(data.getString("CODE"))){
                    JSONArray returnData = data.getJSONArray("returnData");
                    System.out.println("returnData="+returnData.toString());
                    if(returnData.size()==0){
                        return;
                    }
                    JSONArray dictArray = returnData.getJSONArray(0);
                    for(int i=0;i<dictArray.size();i++){
                        JSONObject dict = dictArray.getJSONObject(i);
                        StringBuffer sql = new StringBuffer("insert into ");
                        sql.append(TableName.zy_iv_dept_dict.getDict()).append(" (org_code,dept_code,dept_name,dept_type,upper_dept) " );
                        sql.append("values('").append(dict.getString("ORG_CODE")).append("','");//机构编码
                        sql.append(dict.getString("DEPT_CODE")).append("','");//'科室编码
                        sql.append(dict.getString("DEPT_NAME")).append("','");//'科室名称
                        sql.append(dict.getString("DEPT_TYPE")).append("','");//'科室类型  详见科室类型字典中定义
                        sql.append(dict.getString("UPPER_DEPT")).append("')");//'上级科室
                        System.out.println("sql="+sql.toString());
                        jdbcTemplate.execute(sql.toString());
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    /**
     * 智业的字典
     */
    public static final String IV_MEASURE_UNIT_DICT = "IV_MEASURE_UNIT_DICT";//("计量单位字典", "IV_MEASURE_UNIT_DICT"),
    public static final String IV_PHYSIC_FORM_DICT = "IV_PHYSIC_FORM_DICT";//("药品剂型字典", "IV_PHYSIC_FORM_DICT"),
    public static final String IV_PHYSIC_INJECT_PLACE_DICT = "IV_PHYSIC_INJECT_PLACE_DICT";//"计量单位字典", "IV_PHYSIC_INJECT_PLACE_DICT"),
    public static final String IV_PHYSIC_SKIN_TEST_DICT = "IV_PHYSIC_SKIN_TEST_DICT";//("皮试类型字典", "IV_PHYSIC_SKIN_TEST_DICT"),
    public static final String IV_RATE_TYPE_DICT = "IV_RATE_TYPE_DICT";//("费别字典", "IV_RATE_TYPE_DICT"),
    public static final String IV_RECIPE_FREQUENCY_DICT = "IV_RECIPE_FREQUENCY_DICT";//("频次字典", "IV_RECIPE_FREQUENCY_DICT"),
    public static final String IV_RECIPE_USAGE_DICT = "IV_RECIPE_USAGE_DICT";//("用药方法字典", "IV_RECIPE_USAGE_DICT"),
    public static final String IV_SEX_DICT = "IV_SEX_DICT";//("性别字典", "IV_SEX_DICT"),
    public static final String IV_PHYSIC_DICT = "IV_PHYSIC_DICT";//("药品字典", "IV_PHYSIC_DICT"),
    public static final String IV_ORG_PHYSIC_ALLOT_DICT = "IV_ORG_PHYSIC_ALLOT_DICT";//("机构药品分发字典", "IV_ORG_PHYSIC_ALLOT_DICT "),
    public static final String IV_SUBJECT_CLASS_DICT = "IV_SUBJECT_CLASS_DICT";//("科目类别字典", "IV_SUBJECT_CLASS_DICT"),
    public static final String IV_PHYSIC_TOXICOLOGY_TYPE_DICT = "IV_PHYSIC_TOXICOLOGY_TYPE_DICT";//("药品毒理分类字典", "IV_PHYSIC_TOXICOLOGY_TYPE_DICT"),
    public static final String IV_DEPT_DICT = "IV_DEPT_DICT";//("科室字典", "IV_DEPT_DICT"),
    public static final String IV_DEPT_TYPE_DICT = "IV_DEPT_TYPE_DICT";//("科室类型字典", "IV_DEPT_TYPE_DICT"),
    public static final String IV_DIAGNOSE_DICT = "IV_DIAGNOSE_DICT";//("诊断字典", "IV_DIAGNOSE_DICT"),
    public static final String IV_DIAGNOSE_CLASS_DICT = "IV_DIAGNOSE_CLASS_DICT";//("诊断类别字典", "IV_DIAGNOSE_CLASS_DICT"),
    public static final String IV_STAFF_DICT = "IV_STAFF_DICT";//("员工字典", "IV_STAFF_DICT"),
    public static final String IV_STAFF_REG_TYPE_ALLOT_DICT = "IV_STAFF_REG_TYPE_ALLOT_DICT";//("员工挂号类型配置字典", "IV_STAFF_REG_TYPE_ALLOT_DICT"),
    public static final String IV_DEPT_STAFF_ALLOT_DICT = "IV_DEPT_STAFF_ALLOT_DICT";//("科室员工配置字典", "IV_DEPT_STAFF_ALLOT_DICT");
    public enum TableName {
        zy_common_dict("通用字典", "zy_common_dict"),
        zy_iv_dept_dict("科室字典", "zy_iv_dept_dict"),
        zy_iv_dept_staff_allot_dict("科室员工配置字典", "zy_iv_dept_staff_allot_dict"),
        zy_iv_diagnose_class_dict("诊断类别字典", "zy_iv_diagnose_class_dict"),
        zy_iv_diagnose_dict("诊断字典表", "zy_iv_diagnose_dict"),
        zy_iv_org_physic_allot_dict("机构药品分发字典", "zy_iv_org_physic_allot_dict"),
        zy_iv_physic_dict("药品字典", "zy_iv_physic_dict"),
        zy_iv_staff_dict("员工字典", "zy_iv_staff_dict"),
        zy_iv_staff_reg_type_allot_dict("员工挂号类型配置字典", "zy_iv_staff_reg_type_allot_dict"),
        zy_iv_subject_class_dict("科目类别字典", "zy_iv_subject_class_dict");
        TableName(String name, String dict) {
            this.name = name;
            this.dict = dict;
        }
        private String name;
        private String dict;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public String getDict() {
            return dict;
        }
        public void setDict(String dict) {
            this.dict = dict;
        }
    }
    /**
     * 根据字典获取表名
     *
     * @param dictName
     * @return
     */
    public String getTableName(String dictName) {
        switch (dictName) {
            case IV_PHYSIC_FORM_DICT: {
                return TableName.zy_common_dict.getDict();
            }
            case IV_PHYSIC_INJECT_PLACE_DICT: {
                return TableName.zy_common_dict.getDict();
            }
            case IV_PHYSIC_SKIN_TEST_DICT: {
                return TableName.zy_common_dict.getDict();
            }
            case IV_RATE_TYPE_DICT: {
                return TableName.zy_common_dict.getDict();
            }
            case IV_RECIPE_FREQUENCY_DICT: {
                return TableName.zy_common_dict.getDict();
            }
            case IV_RECIPE_USAGE_DICT: {
                return TableName.zy_common_dict.getDict();
            }
            case IV_SEX_DICT: {
                return TableName.zy_common_dict.getDict();
            }
            case IV_PHYSIC_TOXICOLOGY_TYPE_DICT: {
                return TableName.zy_common_dict.getDict();
            }
            case IV_MEASURE_UNIT_DICT: {
                return TableName.zy_common_dict.getDict();
            }
            case IV_DEPT_TYPE_DICT: {
                return TableName.zy_common_dict.getDict();
            }
            case IV_PHYSIC_DICT: {
                return TableName.zy_iv_physic_dict.getDict();
            }
            case IV_ORG_PHYSIC_ALLOT_DICT: {
                return TableName.zy_iv_org_physic_allot_dict.getDict();
            }
            case IV_SUBJECT_CLASS_DICT: {
                return TableName.zy_iv_subject_class_dict.getDict();
            }
            case IV_DIAGNOSE_DICT: {
                return TableName.zy_iv_diagnose_dict.getDict();
            }
            case IV_DIAGNOSE_CLASS_DICT: {
                return TableName.zy_iv_diagnose_class_dict.getDict();
            }
            case IV_STAFF_DICT: {
                return TableName.zy_iv_staff_dict.getDict();
            }
            case IV_STAFF_REG_TYPE_ALLOT_DICT: {
                return TableName.zy_iv_staff_reg_type_allot_dict.getDict();
            }
            case IV_DEPT_STAFF_ALLOT_DICT: {
                return TableName.zy_iv_dept_staff_allot_dict.getDict();
            }
            case IV_DEPT_DICT: {
                return TableName.zy_iv_dept_dict.getDict();
            }
        }
        return "";
    }
}

+ 2 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/account/DoctorInfoService.java

@ -1475,7 +1475,7 @@ public class DoctorInfoService extends BaseService {
                if (!StringUtils.isEmpty(data) && data.startsWith("error")) {
                    throw new Exception(data);
                }else{
                    String[] str = data.split("||");
                    String[] str = data.split("\\|\\|");
//                    String strSignData = str[0];
//                    String strCertData = str[1];
                    JSONObject jsonObject = new JSONObject();
@ -1486,6 +1486,7 @@ public class DoctorInfoService extends BaseService {
                    prescription.setCaMessage(str[0]);
                    prescription.setCaCertData(str[1]);
                    prescription.setDigitalSignNo(str[2]);
                    prescription.setStrOriginalData(strOriginalData);
                    prescription.setOriginalDataAbstract(originalDataAbstract);
                    prescriptionDao.save(prescription);
//                    String srcBusinessStreamNO = str[2];//CA 数字签名唯一流水号

+ 12 - 6
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/consult/ConsultTeamService.java

@ -31,6 +31,7 @@ import com.yihu.wlyy.repository.prescription.PrescriptionInfoDao;
import com.yihu.wlyy.repository.prescription.PrescriptionReviewedDao;
import com.yihu.wlyy.service.app.health.HealthEduArticleService;
import com.yihu.wlyy.service.app.health.PatientHealthGuidanceService;
import com.yihu.wlyy.service.app.prescription.PrescriptionInfoService;
import com.yihu.wlyy.service.app.prescription.PrescriptionLogService;
import com.yihu.wlyy.service.app.talk.TalkGroupService;
import com.yihu.wlyy.service.third.jw.JwPrescriptionService;
@ -130,6 +131,8 @@ public class ConsultTeamService extends ConsultService {
    private WeiXinAccessTokenUtils accessTokenUtils;
    @Autowired
    private JwPrescriptionService jwPrescriptionService;
    @Autowired
    private PrescriptionInfoService prescriptionInfoService;
    Map<Integer, String> relations = new HashMap<>();
@ -877,9 +880,8 @@ public class ConsultTeamService extends ConsultService {
    public Integer addPrescriptionConsult(String jwCode,String patient,String agent,String doctorCode,ConsultTeam ct,String reason,Integer type) throws Exception {
        synchronized (jwCode.intern()){
//            PrescriptionReviewed p = prescriptionReviewedDao.findByPrescriptionCodeAndStatus()
            List<Prescription> prescriptionList = prescriptionDao.fingdByJwCodeAndStatus(jwCode,0);
            if(prescriptionList!=null&&prescriptionList.size()>0){//存在未审核的续方
            String check = prescriptionInfoService.presCheckState(jwCode);
            if("0".equals(check)){//存在未审核的续方
                return -1;
            }
            Doctor doctor = doctorDao.findByCode(doctorCode);
@ -948,7 +950,7 @@ public class ConsultTeamService extends ConsultService {
            JSONObject messages = ImUtill.getCreateTopicMessage(patient, p.getName(), consult.getTitle(), content, consult.getImages(),agent);
            //5、(im创建咨询) 续方咨询的sessionid为居民code+续方code+咨询类型
            JSONObject obj = ImUtill.createTopics(patient + "_" + prescription.getCode() + "_" + ct.getType(), consult.getCode(), p.getName(), users, messages, ImUtill.SESSION_TYPE_PRESCRIPTION);
            JSONObject obj = ImUtill.createTopics(patient + "_" + consult.getCode() + "_" + ct.getType(), consult.getCode(), p.getName(), users, messages, ImUtill.SESSION_TYPE_PRESCRIPTION);
            if (obj == null) {
                throw new RuntimeException("IM消息发送异常!");
            }
@ -959,6 +961,10 @@ public class ConsultTeamService extends ConsultService {
            consultTeamDao.save(ct);
            consultDao.save(consult);
            //设置咨询code
            prescription.setConsult(consult.getCode());
            prescriptionDao.save(prescription);
            //6、记录咨询的医生详情
            ConsultTeamDoctor cd = new ConsultTeamDoctor();
            cd.setConsult(consult.getCode());
@ -1016,7 +1022,7 @@ public class ConsultTeamService extends ConsultService {
    public String savePrescription(Prescription prescription,String jwCode,Doctor doctor,Patient p,ConsultTeam ct,String reason) throws Exception{
        String re = "";
        //获取智业处方详细
        String response = jwPrescriptionService.getLastRecipe(p.getSsc(),jwCode,null,null);
//        String response = jwPrescriptionService.getLastRecipe(p.getSsc(),jwCode,null,null);
        //续方主表
        prescription.setCode(getCode());
@ -1087,7 +1093,7 @@ public class ConsultTeamService extends ConsultService {
        PrescriptionReviewed reviewed = new PrescriptionReviewed();
        reviewed.setPrescriptionCode(prescription.getCode());
        reviewed.setCode(getCode());
        reviewed.setStatus(0);
        reviewed.setStatus(PrescriptionReviewed.PrescriptionReviewedStatus.reviewed_wait.getValue());
        reviewed.setCreateTime(new Date());
        reviewed.setDoctor(prescription.getDoctor());
        reviewed.setDoctorName(prescription.getDoctorName());

Dosya farkı çok büyük olduğundan ihmal edildi
+ 144 - 39
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/prescription/PatientPrescriptionPayService.java


Dosya farkı çok büyük olduğundan ihmal edildi
+ 141 - 56
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/prescription/PrescriptionInfoService.java


+ 1 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/third/jw/JwPrescriptionService.java

@ -73,6 +73,7 @@ public class JwPrescriptionService {
        params.add(new BasicNameValuePair("applyTimeFrom", applyTimeFrom));
        params.add(new BasicNameValuePair("applyTimeEnd", applyTimeEnd));
        String response = httpClientUtil.post(url, params, "UTF-8");
        return response;

+ 88 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/third/jw/ZyDictService.java

@ -1,12 +1,18 @@
package com.yihu.wlyy.service.third.jw;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.organization.Hospital;
import com.yihu.wlyy.repository.doctor.DoctorMappingDao;
import com.yihu.wlyy.repository.organization.HospitalDao;
import com.yihu.wlyy.repository.organization.HospitalMappingDao;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
/**
 * Created by chenweida on 2017/8/10.
@ -17,10 +23,92 @@ public class ZyDictService {
    private JwPrescriptionService jwPrescriptionService;
    @Autowired
    private HospitalDao hospitalDao;
    @Autowired
    private JdbcTemplate jdbcTemplate;
    @Autowired
    private DoctorMappingDao doctorMappingDao;
    @Autowired
    private HospitalMappingDao hospitalMappingDao;
    @Transactional
    public void synchronousDict(String dictName) {
        //得到全部的机构医院
        List<Hospital> hospitals = hospitalDao.findAllHospital();
    }
    /**
     * 判断字符串是否是英文
     * @param charaString
     * @return
     */
    public boolean isEnglish(String charaString){
        return charaString.matches("^[a-zA-Z]*");
    }
    /**
     * 根据基位code返回医院名称
     * @param jwHospital
     * @return
     */
    public String findByHospital(String jwHospital){
        return hospitalMappingDao.getNameByMapping(jwHospital,"1");
    }
    /**
     * 根据基位code 获取医生
     * @param jwDoctor
     * @param jwHospital
     * @return
     */
    public Doctor getDoctByJw(String jwDoctor,String jwHospital){
        return doctorMappingDao.getDoctorByJw(jwHospital,jwDoctor);
    }
    /**
     * 获取药品字典
     * @param doctor
     * @param name
     * @return
     */
    public List<Map<String, Object>> findDictByDoctorAndName(String doctor,String name){
        String sql = "select " +
                        "p.physic_code drugCode," +
                        "p.physic_name drugName," +
                        "p.physic_spec drugFormat" +
                        " from zy_iv_physic_dict p," +
                        " (SELECT o.physic_code" +
                        "   ,o.org_code " +
                        "   from " +
                        "       wlyy_doctor_mapping h," +
                        "       zy_iv_org_physic_allot_dict o" +
                        "   WHERE o.org_code = h.jw_doctor_hospital " +
                        "   and h.doctor_code = ?) ho" +
                        " WHERE ho.physic_code = p.physic_code";
        if(StringUtils.isNotBlank(name)){
            if(isEnglish(name)){
                sql += " and p.spell_code like '%"+name.toUpperCase()+"%'";
            }else{
                sql += " and p.physic_name like '%"+name+"%'";
            }
        }
//        subjectClass
//        drugNumUnit":"224","drugNumUnitName":"支",
//        physicDoseUnit":"224","physicDoseUnitName":"支",
        List<Map<String, Object>> list = jdbcTemplate.queryForList(sql,doctor);
        return list;
    }
    /**
     * 根据智业
     * @param jwHospital
     * @return
     */
    public String getHospitalNameByZy(String jwHospital){
        return hospitalMappingDao.getNameByMapping(jwHospital,"1");
    }
}

+ 1 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/util/ImUtill.java

@ -442,7 +442,7 @@ public class ImUtill {
    public static final String SESSION_TYPE_P2P = "2";
    public static final String SESSION_TYPE_GROUP = "3";
    public static final String SESSION_TYPE_SYSTEM = "0";
    public static final String SESSION_TYPE_PRESCRIPTION = "5";//续方
    public static final String SESSION_TYPE_PRESCRIPTION = "8";//续方
    public static final String SESSION_STATUS_PROCEEDINGS = "0";
    public static final String SESSION_STATUS_END = "1";

+ 9 - 8
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/account/DoctorController.java

@ -1873,7 +1873,7 @@ public class DoctorController extends BaseController {
    public String isAuthentication(){
        try {
            //0de6a26a62dd11e69faffa163e8aee56
            JSONObject data = doctorInfoService.isAuthentication("0de6a26a62dd11e69faffa163e8aee56");
            JSONObject data = doctorInfoService.isAuthentication(getRepUID());
            return write(200, "获取信息成功!", "data", data);
        }catch (Exception e) {
            error(e);
@ -1890,8 +1890,8 @@ public class DoctorController extends BaseController {
            @RequestParam(value = "strOldCalledPasswd",required = true) String strOldCalledPasswd,
            @RequestParam(value = "strNewCalledPasswd",required = true) String strNewCalledPasswd){
        try {
            Doctor doctor = doctorInfoService.findDoctorByCode("0de6a26a62dd11e69faffa163e8aee56");
            boolean b = doctorInfoService.updateAuthenticationPassword(doctor.getIdcard(),strOldCalledPasswd,strNewCalledPasswd,"0de6a26a62dd11e69faffa163e8aee56");
            Doctor doctor = doctorInfoService.findDoctorByCode(getRepUID());
            boolean b = doctorInfoService.updateAuthenticationPassword(doctor.getIdcard(),strOldCalledPasswd,strNewCalledPasswd,getRepUID());
            if(b){
                return write(200, "修改密码成功!", "data", b);
            }
@ -1911,8 +1911,8 @@ public class DoctorController extends BaseController {
    @RequestMapping(value = "/installAuthenticationPassword", method = RequestMethod.POST)
    public String installAuthenticationPassword(@RequestParam(value = "strNewCalledPasswd",required = true) String strNewCalledPasswd){
        try {
            Doctor doctor = doctorInfoService.findDoctorByCode("0de6a26a62dd11e69faffa163e8aee56");
            boolean b = doctorInfoService.updateAuthenticationPassword(doctor.getIdcard(),"11111111",strNewCalledPasswd,"0de6a26a62dd11e69faffa163e8aee56");
            Doctor doctor = doctorInfoService.findDoctorByCode(getRepUID());
            boolean b = doctorInfoService.updateAuthenticationPassword(doctor.getIdcard(),"11111111",strNewCalledPasswd,getRepUID());
            if(b){
                return write(200, "设置密码成功!", "data", b);
            }
@ -1933,8 +1933,8 @@ public class DoctorController extends BaseController {
    @RequestMapping(value = "/resetAuthenticationPassword", method = RequestMethod.POST)
    public String resetAuthenticationPassword(@RequestParam(value = "strNewCalledPasswd",required = true) String strNewCalledPasswd){
        try {
            Doctor doctor = doctorInfoService.findDoctorByCode("0de6a26a62dd11e69faffa163e8aee56");
            boolean b = doctorInfoService.updateAuthenticationPassword(doctor.getIdcard(),doctor.getCheckPassword(),strNewCalledPasswd,"0de6a26a62dd11e69faffa163e8aee56");
            Doctor doctor = doctorInfoService.findDoctorByCode(getRepUID());
            boolean b = doctorInfoService.updateAuthenticationPassword(doctor.getIdcard(),doctor.getCheckPassword(),strNewCalledPasswd,getRepUID());
            if(b){
                return write(200, "重置密码成功!", "data", b);
            }
@ -1979,11 +1979,12 @@ public class DoctorController extends BaseController {
    @ObserverRequired
    @ResponseBody
    @RequestMapping(value = "/checkCertificate", method = RequestMethod.GET)
    @ApiOperation("校验医师输入的CA证书是否正确")
    public String checkCertificate(
            @ApiParam(required = true, name = "certificateNum", value = "证书编号") @RequestParam(value = "certificateNum",required = true) String certificateNum){
        try {
            boolean b = doctorInfoService.checkCertificate("0de6a26a62dd11e69faffa163e8aee56",certificateNum);
            boolean b = doctorInfoService.checkCertificate(getRepUID(),certificateNum);
            return write(200, "获取信息成功!", "data", b);
        }catch (Exception e) {
            error(e);

+ 6 - 4
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/consult/DoctorConsultController.java

@ -1061,7 +1061,7 @@ public class DoctorConsultController extends WeixinBaseController {
    public String finishConsult(@RequestParam(required = false) String consult) {
        try {
            int flag = consultTeamService.finishConsult(consult, getUID(), 2);
            //int flag = consultTeamService.finishConsult(consult, "test00000000005", 2);
//            int flag = consultTeamService.finishConsult(consult, "admin", 2);
            if (flag > 0) {
                return success("咨询已关闭");
            } else if(flag == -1) {
@ -1107,12 +1107,12 @@ public class DoctorConsultController extends WeixinBaseController {
    @RequestMapping(value = "prescriptionDetail",method = RequestMethod.GET)
    @ResponseBody
    @ApiOperation("获取续方信息")
    public String prescriptionDetail(@RequestParam(required = true) String consult){
    public String prescriptionDetail(@ApiParam(name = "consult", value = "咨询code", defaultValue = "1")
                                     @RequestParam(value = "consult", required = true) String consult){
        try {
            JSONObject json = new JSONObject();
            Consult consult1 = consultDao.findByCode(consult);
            String prescriptionCode = consult1.getRelationCode();
            Prescription prescription = prescriptionDao.findByCode(prescriptionCode);
            json.put("status",prescription.getStatus());//状态 (-1 审核不通过 , 0 审核中, 10 审核通过/待支付 ,21支付失败  20 配药中/支付成功, 21 等待领药 ,30 配送中 ,100配送成功/已完成)
@ -1132,8 +1132,10 @@ public class DoctorConsultController extends WeixinBaseController {
            }
            json.put("signFamilyServer",jsonArray);
            json.put("symptoms",consult1.getSymptoms());//咨询类型--- 1高血压,2糖尿病
            json.put("jwCode",prescription.getJwCode());//基位处方code
            json.put("code",prescription.getCode());//续方code
            return write(200, "查询成功!", "list", json);
            return write(200, "查询成功!", "data", json);
        }catch (Exception e){
            error(e);
            return error(-1, "查询失败!");

+ 54 - 5
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/prescription/PrescriptionInfoController.java

@ -11,16 +11,14 @@ import com.yihu.wlyy.service.app.prescription.PrescriptionInfoService;
import com.yihu.wlyy.service.app.prescription.PrescriptionPayService;
import com.yihu.wlyy.service.app.prescription.PrescriptionService;
import com.yihu.wlyy.service.third.jw.JwPrescriptionService;
import com.yihu.wlyy.service.third.jw.ZyDictService;
import com.yihu.wlyy.web.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@ -44,6 +42,8 @@ public class PrescriptionInfoController extends BaseController{
    private JwPrescriptionService jwPrescriptionService;
    @Autowired
    private PresModeAdapter adapter;
    @Autowired
    private ZyDictService zyDictService;
    @RequestMapping(value = "/getPrescriptionFilter", method = RequestMethod.GET)
@ -116,6 +116,19 @@ public class PrescriptionInfoController extends BaseController{
        }
    }
    @RequestMapping(value = "/findDictByName", method = RequestMethod.GET)
    @ApiOperation(value = "药品列表")
    public String findDictByName(@ApiParam(name = "name", value = "药品名称(中文或拼音首字母查询)", defaultValue = "胰岛素")
                                 @RequestParam(value = "name", required = false) String name){
        try {
//            return write(200, "操作成功!", "data",zyDictService.findDictByDoctorAndName("e3b3bfb3644011e69616fa163e424525",name));
            return write(200, "操作成功!", "data",zyDictService.findDictByDoctorAndName(getUID(),name));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败!");
        }
    }
    @RequestMapping(value = "/getInfoTitle", method = RequestMethod.POST)
    @ApiOperation(value = "调整处方-药品分类及种类数目")
    public String getInfoTitle(){
@ -228,7 +241,7 @@ public class PrescriptionInfoController extends BaseController{
    @RequestMapping(value = "/getDoctorPrescriptionExpressage", method = RequestMethod.GET)
    @ApiOperation(value = "获取全科医生续方订单列表")
    public String getDoctorPrescriptionExpressage(@RequestParam(required = false) @ApiParam(value = "团队Code", name = "teamCode")String teamCode,
    public String getDoctorPrescriptionExpressage(@RequestParam(required = false) @ApiParam(value = "团队Code", name = "teamCode")Integer teamCode,
                                                  @RequestParam(required = false) @ApiParam(value = "居民搜素关键字", name = "nameKey")String nameKey,
                                                  @RequestParam(required = false) @ApiParam(value = "开始时间", name = "startDate")String startDate,
                                                  @RequestParam(required = false) @ApiParam(value = "结束时间", name = "endDate")String endDate,
@ -338,4 +351,40 @@ public class PrescriptionInfoController extends BaseController{
            return error(-1, "查询失败!");
        }
    }
    @RequestMapping(value = "/initDrugData", method = RequestMethod.GET)
    @ApiOperation(value = "刷入redis平次数据")
    public String initDrugData(){
        try {
            return write(200, "操作成功!", "data",prescriptionInfoService.initDrugData());
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败!");
        }
    }
    @RequestMapping(value = "/drugToRate", method = RequestMethod.GET)
    @ApiOperation(value ="频次翻译")
    public String drugToRate(String code){
        try {
            return write(200, "操作成功!", "data",prescriptionInfoService.drugToRate(code));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败!");
        }
    }
    @RequestMapping(value = "/getPrescription" ,method = RequestMethod.GET)
    @ResponseBody
    @ApiOperation(value = "获取长处方详细信息")
    public String getPrescription(@RequestParam(required = true)@ApiParam(name="code",value="处方CODE")String code){
        try {
            //return write(200, "查询成功!", "data", prescriptionInfoService.getPrescription(code));
            return write(200, "查询成功!", "data", prescriptionInfoService.getContinuedPrescription("69d11d6aa5254acd859a23a281d11910"));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败!");
        }
    }
}

+ 3 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/prescription/PatientPrescriptionInfoController.java

@ -43,7 +43,7 @@ public class PatientPrescriptionInfoController extends BaseController {
                                       @RequestParam(required = false)@ApiParam(name="page",value="起始页")Integer page,
                                       @RequestParam(required = false)@ApiParam(name="size",value="每页条数")Integer size){
        try {
            return write(200, "查询成功!", "data", prescriptionInfoService.getPrescriptionInfos(type,diagnosisCode,startDate,endDate,getRepUID(),isRenewal,page,size));
            return write(200, "查询成功!", "data", prescriptionInfoService.getPrescriptionInfos(type,diagnosisCode,startDate,endDate,"915cc7da-5b1d-11e6-8344-fa163e8aee56",isRenewal,page,size));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败!");
@ -56,7 +56,8 @@ public class PatientPrescriptionInfoController extends BaseController {
    public String getPrescription(@RequestParam(required = true)@ApiParam(name="code",value="处方CODE")String code){
        try {
            return write(200, "查询成功!", "data", prescriptionInfoService.getPrescription(code));
            //return write(200, "查询成功!", "data", prescriptionInfoService.getPrescription(code));
            return write(200, "查询成功!", "data", prescriptionInfoService.getContinuedPrescription("69d11d6aa5254acd859a23a281d11910"));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败!");

+ 4 - 4
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/prescription/PatientPrescriptionPayController.java

@ -73,11 +73,12 @@ public class PatientPrescriptionPayController extends WeixinBaseController {
            @RequestParam(required = true) @ApiParam(value = "配送地址json", name = "addressJson",defaultValue = "{\"townName\":\"海沧区\",\"code\":\"3502050100\",\"address\":" +
                    "\"冰岛\",\"cityName\":\"厦门市\",\"townCode\":\"350205\",\"provinceCode\":\"350000\",\"cityCode\":\"350200\",\"name\":\"海沧区嵩屿街道社区卫生服务中心\"," +
                    "\"provinceName\":\"福建省\",\"streeCode\":\"35020501\",\"streeName\":\"皇后大道东\",\"phone\":\"13253541190\"}") String addressJson,
            @RequestParam(required = true) @ApiParam(value = "页面回调地址", name = "returnUrl") String returnUrl,
            @RequestParam(required = true) @ApiParam(value = "订单总金额", name = "totalAmount") int totalAmount) throws Exception {
        try {
            String accessToken = getAccessToken();
            String patient = getUID();
            payService.charge(type,addressJson,orgCode, prescriptionCode, totalAmount, patient, accessToken);
            payService.charge(type,addressJson,orgCode, prescriptionCode, totalAmount, patient, accessToken,returnUrl);
            return write(200, "支付成功!");
        } catch (Exception e) {
            return error(-1, "支付失败!");
@ -128,12 +129,11 @@ public class PatientPrescriptionPayController extends WeixinBaseController {
     */
    @RequestMapping(value = "/receiveRecipeNotify", method = RequestMethod.POST)
    @ApiOperation(value = "对接方异步回调接口")
    public String receiveRecipeNotify(HttpServletRequest request, HttpServletResponse response) throws Exception {
    public void receiveRecipeNotify(HttpServletRequest request, HttpServletResponse response) throws Exception {
        try {
            payService.receiveRecipeNotify(request, response);
            return write(200, "回调成功!");
        } catch (Exception e) {
            return error(-1, "回调失败!");
            error(e);
        }
    }

+ 28 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/BookingController.java

@ -5,6 +5,7 @@ import com.yihu.wlyy.entity.patient.Patient;
import com.yihu.wlyy.entity.patient.PatientReservation;
import com.yihu.wlyy.logs.BusinessLogs;
import com.yihu.wlyy.repository.message.SMSDao;
import com.yihu.wlyy.service.ZyDictDataService;
import com.yihu.wlyy.service.app.consult.ConsultService;
import com.yihu.wlyy.service.app.reservation.PatientReservationService;
import com.yihu.wlyy.service.common.SMSService;
@ -75,6 +76,33 @@ public class BookingController extends WeixinBaseController {
    private HttpClientUtil HttpClientUtil;
    @Autowired
    private PushMsgTask pushMsgTask;
    @Autowired
    ZyDictDataService zyDictJob;
    /**
     * 启动任务
     * @return
     */
    @RequestMapping(value = "test", method = RequestMethod.GET)
    @ApiOperation("获取智业字典列表")
    @ResponseBody
    public String test() {
        try {
//            zyDictJob.synchronizeZyCommonDict();
//            zyDictJob.synchronizeZ_iv_staff_dict();
//            zyDictJob.synchronizeZy_iv_dept_staff_allot_dict();
//            zyDictJob.synchronizeZy_iv_diagnose_class_dict();
//            zyDictJob.synchronizeZy_iv_org_physic_allot_dict();
//            zyDictJob.synchronizeZy_iv_physic_dict();
//            zyDictJob.synchronizeZy_iv_staff_reg_type_allot_dict();//
//            zyDictJob.synchronizeZy_iv_subject_class_dict();
            zyDictJob.synchronizeZy_iv_dept_dict();
            return success("获取智业字典列表成功!");
        } catch (Exception e) {
            error(e);
            return invalidUserException(e, -1, "获取智业字典列表失败:" + e.getMessage());
        }
    }
    /**
     * 根据城市编码获取相应挂号服务

+ 16 - 16
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/wechat/process/WeiXinEventProcess.java

@ -237,22 +237,22 @@ public class WeiXinEventProcess {
        articles.add(articleExamination);
//        新增处方记录图文消息
//        Map<String, String> articlePrescription = new HashMap<>();
//        // 图文URL
//        String prescription = systemConf.getProperty("patient_prescription_url");
//        // 图文消息图片URL
//        String prescription_pic = systemConf.getProperty("patient_prescription_pic");
//        // URL设置服务器URL、AppId
//        prescription = prescription.replace("{server}",wechat_base_url)
//                .replace("{appId}",appId);
//        //图片地址
//        prescription_pic = prescription_pic.replace("{server}",serverUrl);
//
//        articlePrescription.put("Url", prescription);
//        articlePrescription.put("Title", "处方记录");
//        articlePrescription.put("Description", "处方记录");
//        articlePrescription.put("PicUrl", prescription_pic);
//        articles.add(articlePrescription);
        Map<String, String> articlePrescription = new HashMap<>();
        // 图文URL
        String prescription = systemConf.getProperty("patient_prescription_url");
        // 图文消息图片URL
        String prescription_pic = systemConf.getProperty("patient_prescription_pic");
        // URL设置服务器URL、AppId
        prescription = prescription.replace("{server}",wechat_base_url)
                .replace("{appId}",appId);
        //图片地址
        prescription_pic = prescription_pic.replace("{server}",serverUrl);
        articlePrescription.put("Url", prescription);
        articlePrescription.put("Title", "处方记录");
        articlePrescription.put("Description", "处方记录");
        articlePrescription.put("PicUrl", prescription_pic);
        articles.add(articlePrescription);
        // 构建回复消息XML
        result = WeiXinMessageReplyUtils.replyNewsMessage(message.get("FromUserName"), message.get("ToUserName"), articles);

+ 2 - 2
patient-co/patient-co-wlyy/src/main/resources/application.yml

@ -157,7 +157,7 @@ images:
sign:
  check_upload: http://172.19.103.85:8011/wlyy_service
  check_upload: http://172.19.103.88:8011/wlyy_service
quartz:
@ -456,7 +456,7 @@ images:
sign:
  check_upload: http://172.19.103.85:8011/wlyy_service
  check_upload: http://172.19.103.87:8011/wlyy_service
quartz:

+ 1 - 1
patient-co/patient-co-wlyy/src/main/resources/system.properties

@ -25,7 +25,7 @@ patient_inspect_url =https://open.weixin.qq.com/connect/oauth2/authorize?appid={
#社区体检
patient_examination_url=https://open.weixin.qq.com/connect/oauth2/authorize?appid={appId}&amp;redirect_uri={server}%2fwx%2fhtml%2fjkda%2fhtml%2fjiankangtijian.html&amp;response_type=code&amp;scope=snsapi_base&amp;state=STATE#wechat_redirect
#处方记录
patient_prescription_url=https://open.weixin.qq.com/connect/oauth2/authorize?appid={appId}&amp;redirect_uri={server}%2fwx%2fhtml%2fjkda%2fhtml%2fjiankangtijian.html&amp;response_type=code&amp;scope=snsapi_base&amp;state=STATE#wechat_redirect
patient_prescription_url=https://open.weixin.qq.com/connect/oauth2/authorize?appid={appId}&amp;redirect_uri={server}%2fwx%2fhtml%2fprescription%2fhtml%2fprescription_records.html&amp;response_type=code&amp;scope=snsapi_base&amp;state=STATE#wechat_redirect
#就诊记录