Browse Source

his接口

zdm 5 years ago
parent
commit
7a140e6ff4

+ 144 - 2
src/main/java/com/yihu/wlyy/controller/MqSdkController.java

@ -69,8 +69,8 @@ public class MqSdkController /*extends EnvelopRestEndpoint */{
    public String BS16017(
            @ApiParam(name = "REGISTER_SN", value = "流水号", required = false)
            @RequestParam(value = "REGISTER_SN",required = false) String REGISTER_SN,
            @ApiParam(name = "PAT_NO", value = "病人id", required = false)
            @RequestParam(value = "PAT_NO",required = false) String PAT_NO) {
            @ApiParam(name = "PAT_NO", value = "病人id", required = true)
            @RequestParam(value = "PAT_NO",required = true) String PAT_NO) {
        try {
            String  obj="";
            if(!testProfiles){
@ -178,6 +178,148 @@ public class MqSdkController /*extends EnvelopRestEndpoint */{
        return "";
    }
    @GetMapping(value = "/BS10112")
    @ApiOperation(value = "线上处方接口")
    public String BS10112(
            @ApiParam(name = "card_no", value = "卡号")
            @RequestParam(value = "card_no", required = false) String card_no,
            @ApiParam(name = "doctor", value = "医生工号")
            @RequestParam(value = "doctor", required = false) String doctor,
            @ApiParam(name = "dept", value = "科室编码")
            @RequestParam(value = "dept", required = false) String dept,
            @ApiParam(name = "charge_type", value = "收费码")
            @RequestParam(value = "charge_type", required = false) String charge_type,
            @ApiParam(name = "win_no", value = "分部号")
            @RequestParam(value = "win_no", required = false) String win_no,
            @ApiParam(name = "charge_flag", value = "项目类别")
            @RequestParam(value = "charge_flag", required = false) String charge_flag,
            @ApiParam(name = "quantity", value = "数量")
            @RequestParam(value = "quantity", required = false) String quantity,
            @ApiParam(name = "serial_no", value = "挂号流水号")
            @RequestParam(value = "serial_no", required = false) String serial_no,
            @ApiParam(name = "group_no", value = "库房号")
            @RequestParam(value = "group_no", required = false) String group_no,
            @ApiParam(name = "serial", value = "药品序列号")
            @RequestParam(value = "serial", required = false) String serial,
            @ApiParam(name = "icd_code", value = "主诊断编码")
            @RequestParam(value = "icd_code", required = false) String icd_code,
            @ApiParam(name = "diag_two", value = "第二诊断")
            @RequestParam(value = "diag_two", required = false) String diag_two,
            @ApiParam(name = "diag_three", value = "第三诊断")
            @RequestParam(value = "diag_three", required = false) String diag_three,
            @ApiParam(name = "diag_four", value = "第四诊断")
            @RequestParam(value = "diag_four", required = false) String diag_four,
            @ApiParam(name = "diag_five", value = "第五诊断")
            @RequestParam(value = "diag_five", required = false) String diag_five,
            @ApiParam(name = "dosage", value = "用量")
            @RequestParam(value = "dosage", required = false) String dosage,
            @ApiParam(name = "unit", value = "用量单位")
            @RequestParam(value = "unit", required = false) String unit,
            @ApiParam(name = "usage", value = "频率")
            @RequestParam(value = "usage", required = false) String usage,
            @ApiParam(name = "supply_code", value = "用法")
            @RequestParam(value = "supply_code", required = false) String supply_code,
            @ApiParam(name = "days", value = "天数")
            @RequestParam(value = "days", required = false) String days,
            @ApiParam(name = "frequency", value = "组号")
            @RequestParam(value = "frequency", required = false) String frequency) {
        try {
            String  obj="";
            if(!testProfiles){
                obj=  entranceService.BS10112(card_no,doctor,dept,charge_type,win_no,charge_flag,quantity, serial_no,group_no,
                        serial,icd_code,diag_two,diag_three,diag_four,diag_five,dosage,unit,usage,supply_code, days,frequency);
            }else {
                obj="{\"code\":\"1\",\"MsgInfo\":[{\"resquest\":{\"@RESULT\":\"-1\",\"@MSG\":\"该医生无权挂号该科室!\"}}]}";
            }
            System.out.println("obj=="+obj);
        } catch (Exception e) {
            e.printStackTrace();
            return "";
        }
        return "";
    }
    @GetMapping(value = "/BS10114")
    @ApiOperation(value = "医生挂号权限查询接口 ")
    public String BS10114(
            @ApiParam(name = "doctor_code", value = "医生工号")
            @RequestParam(value = "doctor_code", required = false) String doctor_code,
            @ApiParam(name = "dept", value = "科室编码")
            @RequestParam(value = "dept", required = false) String dept,
            @ApiParam(name = "charge_type", value = "号别编码")
            @RequestParam(value = "charge_type", required = false) String charge_type,
            @ApiParam(name = "win_no", value = "分部号")
            @RequestParam(value = "win_no", required = false) String win_no) {
        try {
            String  obj="";
            if(!testProfiles){
                obj=  entranceService.BS10114(doctor_code,dept,charge_type,win_no);
            }else {
                obj="{\"code\":\"1\",\"MsgInfo\":[{\"resquest\":{\"@RESULT\":\"-1\",\"@MSG\":\"该医生无权挂号该科室!\"}}]}";
            }
            System.out.println("obj=="+obj);
        } catch (Exception e) {
            e.printStackTrace();
            return "";
        }
        return "";
    }
    @GetMapping(value = "/MS02001")
    @ApiOperation(value = "科室字典  ")
    public String MS02001() {
        try {
            String  obj="";
            if(!testProfiles){
                obj=  entranceService.MS02001();
            }else {
                obj="{\"code\":\"1\",\"MsgInfo\":[{\"resquest\":{\"@RESULT\":\"-1\",\"@MSG\":\"该医生无权挂号该科室!\"}}]}";
            }
            System.out.println("obj=="+obj);
        } catch (Exception e) {
            e.printStackTrace();
            return "";
        }
        return "";
    }
    @GetMapping(value = "/MS02013")
    @ApiOperation(value = "号别字典接口   ")
    public String MS02013() {
        try {
            String  obj="";
            if(!testProfiles){
                obj=  entranceService.MS02013();
            }else {
                obj="{\"code\":\"1\",\"MsgInfo\":[{\"resquest\":{\"@RESULT\":\"-1\",\"@MSG\":\"该医生无权挂号该科室!\"}}]}";
            }
            System.out.println("obj=="+obj);
        } catch (Exception e) {
            e.printStackTrace();
            return "";
        }
        return "";
    }
    @GetMapping(value = "/MS30012")
    @ApiOperation(value = "医院频次字典表")
    public String MS30012() {
        try {
            String  obj="";
            if(!testProfiles){
                obj=  entranceService.MS30012();
            }else {
                obj="{\"code\":\"1\",\"MsgInfo\":[{\"resquest\":{\"@RESULT\":\"-1\",\"@MSG\":\"该医生无权挂号该科室!\"}}]}";
            }
            System.out.println("obj=="+obj);
        } catch (Exception e) {
            e.printStackTrace();
            return "";
        }
        return "";
    }
}

+ 148 - 1
src/main/java/com/yihu/wlyy/service/EntranceService.java

@ -113,7 +113,9 @@ public class EntranceService {
        if(StringUtils.isNotBlank(REGISTER_SN)){
            sbs.append("<query compy=\"=\" item=\"REGISTER_SN\" splice=\"and\" value=\"'"+REGISTER_SN+"'\"/>");
        }
        sbs.append("<query compy=\"=\" item=\"PAT_NO\" splice=\"and\" value=\"'"+PAT_NO+"'\"/>");
        if(StringUtils.isNotBlank(PAT_NO)) {
            sbs.append("<query compy=\"=\" item=\"PAT_NO\" splice=\"and\" value=\"'" + PAT_NO + "'\"/>");
        }
        //查询信息结束
        sbs.append("<startNum>1</startNum></MsgInfo></ESBEntry>");
@ -232,4 +234,149 @@ public class EntranceService {
    }
    /**
     *  线上处方
     *  @param card_no 卡号
     *  @param doctor 医生工号
     *  @param dept 科室编码
     *  @param charge_type 号别
     *  @param win_no 分部号
     * @return
     * @throws Exception
     */
    public String BS10112(String card_no,String doctor,String dept,String charge_type,String win_no,String charge_flag,String quantity, String serial_no,String group_no,
                          String serial,String icd_code,String diag_two,String diag_three,String diag_four,String diag_five,String dosage,String unit,String usage,String supply_code, String days,String frequency) throws Exception {
        String fid=BS10112;
        StringBuffer sbs= new StringBuffer();
        //AccessControl :用户、密码、服务id
        sbs.append("<ESBEntry><AccessControl><Fid>"+fid+"</Fid><UserName>JKZL</UserName><Password>123456</Password></AccessControl>");
        //MessageHeader :固定值 消费方系统编号 S60,提供方系统编号 S01
        sbs.append("<MessageHeader><Fid>"+fid+"</Fid><MsgDate>"+ DateUtil.dateToStr(new Date(),DateUtil.YYYY_MM_DD_HH_MM_SS)+"</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>");
        //查询信息拼接
        sbs.append("<MsgInfo><endNum>20000</endNum><Msg><![CDATA[<?xml version=\"1.0\" encoding=\"utf-8\"?><root>");
        sbs.append("<resquest card_no=\""+card_no+"\" doctor=\""+doctor+"\" dept=\""+dept+"\" charge_type=\""+charge_type+"\"   win_no=\""+win_no+"\" >");
        sbs.append("</resquest></root>]]></Msg><startNum>1</startNum></MsgInfo></ESBEntry>");
        sbs.append("<resquest card_no=\""+card_no+"\" doctor=\""+doctor+"\" dept=\""+dept+"\" charge_type=\""+charge_type+"\" win_no=\""+win_no+"\" charge_flag=\""+charge_flag+"\" quantity=\""+quantity+"\"  serial_no=\""+serial_no+"\"" +
                " group_no=\""+group_no+"\"   serial=\""+serial+"\"   icd_code=\""+icd_code+"\" dosage=\""+dosage+"\" unit=\""+unit+"\" usage=\""+usage+"\" supply_code=\""+supply_code+"\" days=\""+days+"\" frequency=\""+frequency+"\"/>");
        //多个request? 诊断2到诊断4
        //<ESBEntry><AccessControl><Fid>BS10112</Fid><UserName>jkzl</UserName><Password>123456</Password></AccessControl>
        // <MessageHeader><Fid>BS10112</Fid><MsgDate>2018-10-09 16:52:39</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>
        // <MsgInfo><endNum>20000</endNum><Msg><![CDATA[<?xml version="1.0" encoding="utf-8"?><root>
        // <resquest card_no="DB8687139" doctor="1142" dept="1030000" charge_code="06862" win_no="6" charge_flag="1" quantity="1"  serial_no="46674523"
        //group_no="71"   serial="01"   icd_code="Z00.001" dosage="1" unit="15" usage="bid" supply_code="001" days="34" frequency="?T×é"/>
        // <resquest card_no="DB8687139" doctor="1142" dept="1030000" charge_code="05504" win_no="6" charge_flag="1" quantity="1"  serial_no="46674523"
        // group_no="71"   serial="01"   icd_code="Z00.001" dosage="1" unit="15" usage="bid" supply_code="001" days="34" frequency="?T×é"/>
        // </root>]]></Msg><startNum>1</startNum></MsgInfo></ESBEntry>
        String resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid );
        resp= MqSdkUtil.xml2jsonArrayRootRow(resp);
        return resp;
    }
    /**
     *  医生挂号权限查询接口
     *  @param doctor_code 医生工号
     *  @param dept 科室编码
     *  @param charge_type 号别
     *  @param win_no 分部号
     * @return
     * @throws Exception
     */
    public String BS10114(String doctor_code,String dept,String charge_type,String win_no) throws Exception {
        String fid=BS10114;
        StringBuffer sbs= new StringBuffer();
        //AccessControl :用户、密码、服务id
        sbs.append("<ESBEntry><AccessControl><Fid>"+fid+"</Fid><UserName>JKZL</UserName><Password>123456</Password></AccessControl>");
        //MessageHeader :固定值 消费方系统编号 S60,提供方系统编号 S01
        sbs.append("<MessageHeader><Fid>"+fid+"</Fid><MsgDate>"+ DateUtil.dateToStr(new Date(),DateUtil.YYYY_MM_DD_HH_MM_SS)+"</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>");
        //查询信息拼接
        sbs.append("<MsgInfo><endNum>20000</endNum><Msg/>");
        if(StringUtils.isNotBlank(doctor_code)){
            sbs.append("<query compy=\"=\" item=\"doctor_code\" splice=\"and\" value=\"'"+doctor_code+"'\"/>");
        }
        if(StringUtils.isNotBlank(dept)){
            sbs.append("<query compy=\"=\" item=\"dept\" splice=\"and\" value=\"'"+dept+"'\"/>");
        }
        if(StringUtils.isNotBlank(charge_type)){
            sbs.append("<query compy=\"=\" item=\"charge_type\" splice=\"and\" value=\"'"+charge_type+"'\"/>");
        }
        if(StringUtils.isNotBlank(win_no)){
            sbs.append("<query compy=\"=\" item=\"win_no\" splice=\"and\" value=\"'"+win_no+"'\"/>");
        }
        sbs.append("<startNum>1</startNum></MsgInfo></ESBEntry>");
        //<ESBEntry><AccessControl><Fid>BS10114</Fid><UserName>jkzl</UserName><Password>123456</Password></AccessControl>
        // <MessageHeader><Fid>BS10114</Fid><MsgDate>2018-10-09 16:52:39</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>
        // <MsgInfo><endNum>20000</endNum><Msg/><query compy="=" item="doctor_code" splice="and" value="'0791'"/> <startNum>1</startNum></MsgInfo></ESBEntry>
        String resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid );
        resp= MqSdkUtil.xml2jsonArrayRootRow(resp);
        return resp;
    }
    /**
     *  科室字典
     * @return
     * @throws Exception
     */
    public String MS02001() throws Exception {
        String fid=MS02001;
        StringBuffer sbs= new StringBuffer();
        //AccessControl :用户、密码、服务id
        sbs.append("<ESBEntry><AccessControl><Fid>"+fid+"</Fid><UserName>JKZL</UserName><Password>123456</Password></AccessControl>");
        //MessageHeader :固定值 消费方系统编号 S60,提供方系统编号 S01
        sbs.append("<MessageHeader><Fid>"+fid+"</Fid><MsgDate>"+ DateUtil.dateToStr(new Date(),DateUtil.YYYY_MM_DD_HH_MM_SS)+"</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>");
        //查询信息拼接
        sbs.append("<MsgInfo><endNum>1000</endNum><Msg></Msg><startNum>1</startNum></MsgInfo></ESBEntry>");
        //<ESBEntry><AccessControl><Fid>MS02001</Fid><UserName>rjss</UserName><Password>123456</Password></AccessControl>
        // <MessageHeader><Fid>MS02001</Fid><MsgDate>2018-06-20 09:47:14</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>
        // <MsgInfo><endNum>1000</endNum><Msg></Msg><startNum>1</startNum></MsgInfo></ESBEntry>
        String resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid );
        resp= MqSdkUtil.xml2jsonArrayRootRow(resp);
        return resp;
    }
    /**
     *  号别字典
     * @return
     * @throws Exception
     */
    public String MS02013() throws Exception {
        String fid=MS02013;
        StringBuffer sbs= new StringBuffer();
        //AccessControl :用户、密码、服务id
        sbs.append("<ESBEntry><AccessControl><Fid>"+fid+"</Fid><UserName>JKZL</UserName><Password>123456</Password></AccessControl>");
        //MessageHeader :固定值 消费方系统编号 S60,提供方系统编号 S01
        sbs.append("<MessageHeader><Fid>"+fid+"</Fid><MsgDate>"+ DateUtil.dateToStr(new Date(),DateUtil.YYYY_MM_DD_HH_MM_SS)+"</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>");
        //查询信息拼接
        sbs.append("<MsgInfo><endNum>20000</endNum><Msg/><startNum>1</startNum></MsgInfo></ESBEntry>");
        //<ESBEntry><AccessControl><Fid>MS02001</Fid><UserName>rjss</UserName><Password>123456</Password></AccessControl>
        // <MessageHeader><Fid>MS02001</Fid><MsgDate>2018-06-20 09:47:14</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>
        // <MsgInfo><endNum>20000</endNum><Msg/><startNum>1</startNum></MsgInfo></ESBEntry>
        String resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid );
        resp= MqSdkUtil.xml2jsonArrayRootRow(resp);
        return resp;
    }
    /**
     *  医院频次字典表
     * @return
     * @throws Exception
     */
    public String MS30012() throws Exception {
        String fid=MS30012;
        StringBuffer sbs= new StringBuffer();
        //AccessControl :用户、密码、服务id
        sbs.append("<ESBEntry><AccessControl><Fid>"+fid+"</Fid><UserName>JKZL</UserName><Password>123456</Password></AccessControl>");
        //MessageHeader :固定值 消费方系统编号 S60,提供方系统编号 S01
        sbs.append("<MessageHeader><Fid>"+fid+"</Fid><MsgDate>"+ DateUtil.dateToStr(new Date(),DateUtil.YYYY_MM_DD_HH_MM_SS)+"</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>");
        //查询信息拼接
        sbs.append("<MsgInfo><endNum>20000</endNum><Msg/><startNum>1</startNum></MsgInfo></ESBEntry>");
        //<ESBEntry><AccessControl><Fid>MS02001</Fid><UserName>rjss</UserName><Password>123456</Password></AccessControl>
        // <MessageHeader><Fid>MS02001</Fid><MsgDate>2018-06-20 09:47:14</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>
        //<MsgInfo><endNum>20000</endNum><Msg/><startNum>1</startNum></MsgInfo></ESBEntry>
        String resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid );
        resp= MqSdkUtil.xml2jsonArrayRootRow(resp);
        return resp;
    }
}