Browse Source

追加诊查费字典

zdm 6 years ago
parent
commit
5472ad94b9

+ 16 - 0
business/base-service/src/main/java/com/yihu/jw/hospital/dict/WlyyChargeDictDao.java

@ -0,0 +1,16 @@
package com.yihu.jw.hospital.dict;
import com.yihu.jw.entity.hospital.dict.WlyyChargeDictDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
import javax.transaction.Transactional;
/**
 * Created by zdm on 2019/5/28.
 */
@Transactional
public interface WlyyChargeDictDao extends PagingAndSortingRepository<WlyyChargeDictDO, String>, JpaSpecificationExecutor<WlyyChargeDictDO> {
}

+ 54 - 16
business/base-service/src/main/java/com/yihu/jw/hospital/prescription/service/entrance/EntranceService.java

@ -6,8 +6,10 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.jw.dict.dao.DictHospitalDeptDao;
import com.yihu.jw.dict.service.DictHospitalDeptService;
import com.yihu.jw.entity.base.dict.DictHospitalDeptDO;
import com.yihu.jw.entity.hospital.dict.WlyyChargeDictDO;
import com.yihu.jw.entity.hospital.mapping.HospitalDeptMappingDO;
import com.yihu.jw.entity.hospital.mapping.PatientMappingDO;
import com.yihu.jw.hospital.dict.WlyyChargeDictDao;
import com.yihu.jw.hospital.mapping.dao.HospitalDeptMappingDao;
import com.yihu.jw.hospital.mapping.dao.PatientMappingDao;
import com.yihu.jw.hospital.prescription.service.entrance.util.ConvertUtil;
@ -79,6 +81,8 @@ public class EntranceService {
    private DictHospitalDeptDao dictHospitalDeptDao;
    @Autowired
    private PatientMappingDao patientMappingDao;
    @Autowired
    private WlyyChargeDictDao wlyyChargeDictDao;
    /**
     * 获取本地示例返参
@ -814,22 +818,21 @@ public class EntranceService {
     * @return
     * @throws Exception
     */
    public JSONArray MS02013(boolean demoFlag) throws Exception {
    public net.sf.json.JSONArray MS02013(String code) throws Exception {
        String fid=MS02013;
        String resp="";
        if (demoFlag) {
            resp = getJosnFileResullt(fid);
        } else {
            StringBuffer sbs = new StringBuffer();
            //AccessControl :用户、密码、服务id
            sbs.append("<ESBEntry><AccessControl><Fid>" + fid + "</Fid><UserName>"+mqUser+"</UserName><Password>"+mqPwd+"</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>"+sourceSysCode+"</SourceSysCode><TargetSysCode>"+targetSysCode+"</TargetSysCode></MessageHeader>");
           //查询信息拼接
            sbs.append("<MsgInfo><endNum>20000</endNum><Msg/><startNum>1</startNum></MsgInfo></ESBEntry>");
            resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid);
            resp = MqSdkUtil.xml2jsonArrayRootRow(resp);
        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(code)){
            sbs.append("<query compy=\"=\" item=\"code\" splice=\"and\" value=\"'"+code+"'\"/>");
        }
        sbs.append("<startNum>1</startNum></MsgInfo></ESBEntry>");
        String resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid );
        resp= MqSdkUtil.xml2jsonArrayRootRow(resp);
        return ConvertUtil.convertListEnvelopInBodyRow(resp);
    }
@ -1239,9 +1242,11 @@ public class EntranceService {
    }
    public JSONArray BS55010(String windowsNo,String code,boolean demoFlag) throws Exception {
    public List<WlyyChargeDictDO> BS55010(String windowsNo,String code,String chargeType,boolean demoFlag) throws Exception {
        String fid="BS55010";
        String resp="";
        Map<String,Object> map=new HashMap<>();
        List<WlyyChargeDictDO> wlyyChargeDictDOS=new ArrayList<>();
        if (demoFlag) {
            resp = getJosnFileResullt(fid);
        } else {
@ -1255,6 +1260,9 @@ public class EntranceService {
            if (StringUtils.isNotBlank(windowsNo)) {
                sbs.append("<query compy=\"=\" item=\"windows_no\" splice=\"and\" value=\"'"+windowsNo+"'\"/>");
            }
            if (StringUtils.isNotBlank(chargeType)) {
                sbs.append("<query compy=\"=\" item=\"charge_type\" splice=\"and\" value=\"'"+chargeType+"'\"/>");
            }
            if (StringUtils.isNotBlank(code)) {
                sbs.append("<query compy=\"=\" item=\"code\" splice=\"and\" value=\"'"+code+"'\"/>");
            }
@ -1262,7 +1270,37 @@ public class EntranceService {
            resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid);
            resp = MqSdkUtil.xml2jsonArrayRootRow(resp);
        }
        return ConvertUtil.convertListEnvelopInBodyRow(resp);
        net.sf.json.JSONArray jsonArray= ConvertUtil.convertListEnvelopInBodyRow(resp);
        for(Object object:jsonArray){
            net.sf.json.JSONObject jsonObjectBody=(net.sf.json.JSONObject)object;
            String chareName="";
            if(null!=jsonObjectBody){
                String chareCode=null==jsonObjectBody.get("charge_type")?"":jsonObjectBody.get("charge_type").toString();
                String winNo=null==jsonObjectBody.get("windows_no")?"":jsonObjectBody.get("windows_no").toString();
                //WlyyChargeDictDO
                if(!map.containsKey(chareCode+"_"+winNo)){
                    //查询号别
                    net.sf.json.JSONArray chares= MS02013(chareCode);
                    for(Object object1:chares) {
                        net.sf.json.JSONObject jsonObjectBody1 = (net.sf.json.JSONObject) object1;
                        chareName=null==jsonObjectBody1.get("name")?"":jsonObjectBody1.get("name").toString();
                        System.out.println(chareCode+chareName);
                        WlyyChargeDictDO wlyyChargeDictDO=new WlyyChargeDictDO();
                        wlyyChargeDictDO.setChargeType(chareCode);
                        wlyyChargeDictDO.setChargeName(chareName);
                        wlyyChargeDictDO.setDeptTypeCode(winNo);
                        Double free=null==jsonObjectBody.get("req_fee")?0:Double.parseDouble(jsonObjectBody.get("req_fee").toString());
                        wlyyChargeDictDO.setReqFee(free);
                        wlyyChargeDictDO.setCreateTime(new Date());
                        map.put(chareCode+"_"+winNo,chareName);
                        wlyyChargeDictDO=wlyyChargeDictDao.save(wlyyChargeDictDO);
                        wlyyChargeDictDOS.add(wlyyChargeDictDO);
                    }
                }
            }
        }
        return wlyyChargeDictDOS;
    }

+ 66 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/hospital/dict/WlyyChargeDictDO.java

@ -0,0 +1,66 @@
package com.yihu.jw.entity.hospital.dict;
import com.yihu.jw.entity.IntegerIdentityEntity;
import com.yihu.jw.entity.UuidIdentityEntity;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
/**
 * Created by zdm on 2019/5/28.
 */
@Entity
@Table(name = "wlyy_charge_dict")
public class WlyyChargeDictDO extends UuidIdentityEntity {
    /**号别code*/
    private String chargeType;
    /**号别名称*/
    private String chargeName;
    /**诊查费,单位元*/
    private double reqFee;
    /**创建时间*/
    private Date createTime;
    /**6总部7金榜8夏禾*/
    private String deptTypeCode;
    public String getChargeType() {
        return chargeType;
    }
    public void setChargeType(String chargeType) {
        this.chargeType = chargeType;
    }
    public String getChargeName() {
        return chargeName;
    }
    public void setChargeName(String chargeName) {
        this.chargeName = chargeName;
    }
    public double getReqFee() {
        return reqFee;
    }
    public void setReqFee(double reqFee) {
        this.reqFee = reqFee;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getDeptTypeCode() {
        return deptTypeCode;
    }
    public void setDeptTypeCode(String deptTypeCode) {
        this.deptTypeCode = deptTypeCode;
    }
}

+ 11 - 5
svr/svr-internet-hospital-entrance/src/main/java/com/yihu/jw/entrance/controller/MqSdkController.java

@ -2,6 +2,7 @@ package com.yihu.jw.entrance.controller;
import com.yihu.jw.entity.base.dict.DictHospitalDeptDO;
import com.yihu.jw.entity.hospital.dict.WlyyChargeDictDO;
import com.yihu.jw.entity.hospital.mapping.HospitalDeptMappingDO;
import com.yihu.jw.hospital.prescription.service.entrance.EntranceService;
import com.yihu.jw.restmodel.hospital.prescription.WlyyOutpatientVO;
@ -182,8 +183,11 @@ public class MqSdkController extends EnvelopRestEndpoint {
    @GetMapping(value = "/MS02013")
    @ApiOperation(value = "号别字典接口   ")
    public ListEnvelop MS02013() throws Exception {
        JSONArray obj = entranceService.MS02013(demoFlag);
    public ListEnvelop MS02013(
            @ApiParam(name = "code", value = "号别字典")
            @RequestParam(value = "code", required = false) String code
    ) throws Exception {
        JSONArray obj = entranceService.MS02013(code);
        return success(obj);
    }
@ -316,10 +320,12 @@ public class MqSdkController extends EnvelopRestEndpoint {
    @GetMapping(value = "/BS55010")
    @ApiOperation(value = "医生号别及诊查费")
    public ListEnvelop BS55010(@ApiParam(name = "windowsNo", value = "分部号")
                                   @RequestParam(value = "windowsNo",required = false) String windowsNo,
                               @RequestParam(value = "windowsNo", required = false) String windowsNo,
                               @ApiParam(name = "chargeType", value = "号别")
                               @RequestParam(value = "chargeType", required = false) String chargeType,
                               @ApiParam(name = "code", value = "医生编码")
                                   @RequestParam(value = "code",required = false) String code) throws Exception{
        JSONArray  obj = entranceService.BS55010(windowsNo,code,demoFlag);
                               @RequestParam(value = "code", required = false) String code) throws Exception {
        List<WlyyChargeDictDO> obj = entranceService.BS55010(windowsNo, code,chargeType, demoFlag);
        return success(obj);
    }