Forráskód Böngészése

Merge branch 'dev' of LiTaohong/wlyy2.0 into dev

LiTaohong 6 éve
szülő
commit
a54fab9b08

+ 2 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/dao/dict/DictHospitalDeptDao.java

@ -32,4 +32,6 @@ public interface DictHospitalDeptDao extends PagingAndSortingRepository<DictHosp
    List<Map<String,Object>> findCodeAndName(Pageable pageable);
    List<DictHospitalDeptDO> findByOrgCode(String orgCode);
    List<DictHospitalDeptDO> findByOrgCodeIn(String orgCode);
}

+ 16 - 10
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/doctor/BaseDoctorEndpoint.java

@ -1,6 +1,8 @@
package com.yihu.jw.base.endpoint.doctor;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.base.service.doctor.BaseDoctorService;
import com.yihu.jw.base.util.ConstantUtils;
import com.yihu.jw.restmodel.base.doctor.BaseDoctorVO;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.restmodel.web.ListEnvelop;
@ -39,13 +41,17 @@ public class BaseDoctorEndpoint extends EnvelopRestEndpoint {
    private BaseDoctorService baseDoctorService;
    @PostMapping(value = BaseRequestMapping.BaseDoctor.CREATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @ApiOperation(value = "创建")
    public ObjEnvelop<BaseDoctorVO> create(
            @ApiParam(name = "json_data", value = "Json数据", required = true)
    @ApiOperation(value = "新增医生")
    public Envelop create(
            @ApiParam(name = "jsonData", value = "Json数据", required = true)
            @RequestParam String jsonData) throws Exception {
        BaseDoctorDO baseDoctor = toEntity(jsonData, BaseDoctorDO.class);
        baseDoctor = baseDoctorService.save(baseDoctor);
        return success(baseDoctor, BaseDoctorVO.class);
        JSONObject jsonObject = null;
        String str = baseDoctorService.createDoctor(jsonData);
        jsonObject = JSONObject.parseObject(str);
        if (jsonObject.getString("response").equalsIgnoreCase(ConstantUtils.FAIL)) {
            return failed(jsonObject.getString("msg"));
        }
        return success(jsonObject.getString("msg"));
    }
    @PostMapping(value = BaseRequestMapping.BaseDoctor.DELETE)
@ -60,7 +66,7 @@ public class BaseDoctorEndpoint extends EnvelopRestEndpoint {
    @PostMapping(value = BaseRequestMapping.BaseDoctor.UPDATE, consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
    @ApiOperation(value = "更新")
    public ObjEnvelop<BaseDoctorVO> update(
            @ApiParam(name = "json_data", value = "Json数据", required = true)
            @ApiParam(name = "jsonData", value = "Json数据", required = true)
            @RequestParam String jsonData) throws Exception {
        BaseDoctorDO baseDoctor = toEntity(jsonData, BaseDoctorDO.class);
        if (null == baseDoctor.getId()) {
@ -150,17 +156,17 @@ public class BaseDoctorEndpoint extends EnvelopRestEndpoint {
    }
    /**
   /* *//**
     * 获取医生 所属机构/部门/职称/职务 树形结构数据
     * @return
     * @throws Exception
     */
     *//*
    @PostMapping(value = BaseRequestMapping.BaseDoctor.docOrgTreeInfo)
    @ApiOperation(value = "获取医生所属机构树形结构数据")
    public Envelop getDoctorOrgTree() throws Exception {
        String data = baseDoctorService.getOrgTree();
        return success(data);
    }
*/
}

+ 21 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/service/dict/DictHospitalDeptService.java

@ -1,6 +1,7 @@
package com.yihu.jw.base.service.dict;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.netflix.discovery.converters.Auto;
import com.yihu.jw.base.dao.dict.DictHospitalDeptDao;
@ -59,6 +60,26 @@ public class DictHospitalDeptService extends BaseJpaService<DictHospitalDeptDO,
        return jsonObject;
    }
    /**
     * 获取租户的所有机构科室
     * @param saasId
     * @return
     */
    public List<DictHospitalDeptDO> findBySaasId(String saasId){
        List<DictHospitalDeptDO>  list = new ArrayList<>();
        if(StringUtils.isEmpty(saasId)){
            list = (List<DictHospitalDeptDO>)dictHospitalDeptDao.findAll();
            return list;
        }
        List orgCodeList = baseOrgService.findOrgCodeBySaasId(saasId);
        try {
            list = dictHospitalDeptDao.findByOrgCodeIn(objectMapper.writeValueAsString(orgCodeList));
        } catch (JsonProcessingException e) {
            e.printStackTrace();
        }
        return list;
    }
    /**
     * 根据机构标识获取科室
     * @param orgCode

+ 37 - 19
svr/svr-base/src/main/java/com/yihu/jw/base/service/doctor/BaseDoctorService.java

@ -4,8 +4,6 @@ import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SimplePropertyPreFilter;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.jw.base.dao.doctor.BaseDoctorDao;
//import com.yihu.jw.base.dao.org.OrgTreeDao;
import com.yihu.jw.base.dao.org.OrgTreeDao;
import com.yihu.jw.base.service.org.OrgTree;
import com.yihu.jw.base.service.org.OrgTreeService;
import com.yihu.jw.base.service.org.tree.SimpleTree;
@ -14,14 +12,18 @@ import com.yihu.jw.base.service.org.tree.TreeNode;
import com.yihu.jw.base.util.ConstantUtils;
import com.yihu.jw.base.util.JavaBeanUtils;
import com.yihu.jw.entity.base.doctor.BaseDoctorHospitalDO;
import com.yihu.jw.entity.base.patient.BasePatientDO;
import com.yihu.jw.entity.base.patient.PatientMedicareCardDO;
import com.yihu.mysql.query.BaseJpaService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@ -54,6 +56,8 @@ public class BaseDoctorService extends BaseJpaService<BaseDoctorDO, BaseDoctorDa
    @Autowired
    private OrgTreeService orgTreeService;
    @Autowired
    private ObjectMapper objectMapper;
    /**
@ -132,31 +136,45 @@ public class BaseDoctorService extends BaseJpaService<BaseDoctorDO, BaseDoctorDa
     * @param jsonData
     * @return
     */
    @Transactional(rollbackFor = Exception.class)
    public String createDoctor(String jsonData){
        JSONObject result = new JSONObject();
        if(StringUtils.isEmpty(jsonData)){
            result.put("msg","jsonData is null");
            result.put("responst", ConstantUtils.FAIL);
            result.put("response", ConstantUtils.FAIL);
            return result.toJSONString();
        }
        return null;
        JSONObject jsonObject = JSONObject.parseObject(jsonData);
        JSONObject doctor = jsonObject.getJSONObject("doctor");
        JSONObject hospital = jsonObject.getJSONObject("hospital");
        if(null == doctor || null == hospital){
            result.put("msg","parameter doctor or hospital of jsonData is null");
            result.put("response", ConstantUtils.FAIL);
            return result.toJSONString();
        }
        BaseDoctorDO baseDoctorDO = null;
        BaseDoctorHospitalDO baseDoctorHospitalDO = null;
        try {
            baseDoctorDO = objectMapper.readValue(doctor.toJSONString(),BaseDoctorDO.class);
        } catch (IOException e) {
           result.put("msg","convert doctor jsonObject to BaseDoctorDO failed," + e.getCause());
           result.put("response",ConstantUtils.FAIL);
           return result.toJSONString();
        }
        this.save(baseDoctorDO);
        try {
            baseDoctorHospitalDO = objectMapper.readValue(hospital.toJSONString(),BaseDoctorHospitalDO.class);
            baseDoctorHospitalDO.setDoctorCode(baseDoctorDO.getId());
        } catch (IOException e) {
            result.put("msg","convert hospital jsonObject to baseDoctorHospitalDO failed," + e.getCause());
            result.put("response",ConstantUtils.FAIL);
        }
        baseDoctorHospitalService.save(baseDoctorHospitalDO);
        result.put("response",ConstantUtils.SUCCESS);
        result.put("msg",baseDoctorDO);
        return result.toJSONString();
    }
    /**
     * 构建机构区域树形结构
     * @return
     */
    public String getOrgTree(){
        List<TreeNode> treeNodes = new ArrayList<>();
        treeNodes.addAll(orgTreeService.findListByLevel(OrgTree.Level.org.getLevelValue()));
        SimpleTree tree = new SimpleTree(treeNodes);
        List<SimpleTreeNode> treeNode = tree.getRoot();
        SimplePropertyPreFilter filter = new SimplePropertyPreFilter();
        filter.getExcludes().add("parent");
        filter.getExcludes().add("allChildren");
        return JSONObject.toJSONString(treeNode, filter);
    }
    /**
     * 构建区域树形结构()

+ 6 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/service/org/BaseOrgService.java

@ -173,6 +173,9 @@ public class BaseOrgService extends BaseJpaService<BaseOrgDO, BaseOrgDao> {
        SimplePropertyPreFilter filter = new SimplePropertyPreFilter();
        filter.getExcludes().add("parent");
        filter.getExcludes().add("allChildren");
        filter.getExcludes().add("parentNodeId");
        filter.getExcludes().add("orderNum");
        filter.getExcludes().add("level");
        return JSONObject.toJSONString(treeNode, filter);
    }
@ -189,6 +192,9 @@ public class BaseOrgService extends BaseJpaService<BaseOrgDO, BaseOrgDao> {
        SimplePropertyPreFilter filter = new SimplePropertyPreFilter();
        filter.getExcludes().add("parent");
        filter.getExcludes().add("allChildren");
        filter.getExcludes().add("parentNodeId");
        filter.getExcludes().add("orderNum");
        filter.getExcludes().add("level");
        return JSONObject.toJSONString(treeNode, filter);
    }

+ 1 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/service/org/OrgTree.java

@ -90,7 +90,7 @@ public class OrgTree extends IntegerIdentityEntity implements TreeNode {
        this.name = name;
    }
 @Column(name = "level",nullable = false)
    @Column(name = "level",nullable = false)
    public Integer getLevel() {
        return level;
    }

+ 4 - 3
svr/svr-base/src/main/java/com/yihu/jw/base/service/saas/SaasService.java

@ -11,6 +11,7 @@ import com.yihu.jw.base.dao.system.SystemDictDao;
import com.yihu.jw.base.dao.system.SystemDictEntryDao;
import com.yihu.jw.base.dao.user.UserDao;
import com.yihu.jw.base.dao.user.UserRoleDao;
import com.yihu.jw.base.service.dict.DictHospitalDeptService;
import com.yihu.jw.entity.base.dict.*;
import com.yihu.jw.entity.base.module.SaasModuleDO;
import com.yihu.jw.entity.base.org.BaseOrgDO;
@ -73,7 +74,7 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
    @Autowired
    private DictDiseaseDao dictDiseaseDao;
    @Autowired
    private DictHospitalDeptDao dictHospitalDeptDao;
    private DictHospitalDeptService dictHospitalDeptService;
    @Autowired
    private SaasModuleDao saasModuleDao;
    @Autowired
@ -454,7 +455,7 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
            diseaseDOList.add(diseaseDO);
        });
        //科室字典
        List<DictHospitalDeptDO> dictHospitalDeptDOList = dictHospitalDeptDao.findBySaasId(defaultSaasId);
        List<DictHospitalDeptDO> dictHospitalDeptDOList = dictHospitalDeptService.findBySaasId(defaultSaasId);
        List<DictHospitalDeptDO> hospitalDeptDOList = new ArrayList<>(dictHospitalDeptDOList.size());
        dictHospitalDeptDOList.forEach(dict->{
            DictHospitalDeptDO deptDO = new DictHospitalDeptDO();
@ -473,7 +474,7 @@ public class SaasService extends BaseJpaService<SaasDO, SaasDao> {
        dictIcd10Dao.save(icd10DOList);
        dictHealthProblemDao.save(healthProblemDOList);
        dictDiseaseDao.save(diseaseDOList);
        dictHospitalDeptDao.save(hospitalDeptDOList);
        dictHospitalDeptService.batchInsert(hospitalDeptDOList);
        return saas;
    }

+ 5 - 14
svr/svr-base/src/main/resources/application.yml

@ -131,17 +131,12 @@ spring:
#    password: jkzl_ehr
#  zipkin:
#    base-url: http://localhost:9411 #日志追踪的地址
  mail:
#  mail:
    default-encoding: UTF-8
    host: smtp.163.com
#发送者的邮箱密码
    password: xmijk181016jkzl
#端口
    port: 25
#协议
    protocol: smtp
#发送者的邮箱账号
    username: i_jiankang@163.com
    properties.mail.smtp.auth: true
    properties.mail.smtp.starttls.enable: true
    properties.mail.smtp.starttls.required: true
@ -172,24 +167,20 @@ spring:
    port: 6379 # Redis server port.
  mail:
    host: smtp.163.com
#发送者的邮箱密码
    password: xmijk181016jkzl
#发送者的邮箱账号
    username: i_jiankang@163.com
#发送者的邮箱密码
    password: xmijk181016jkzl
#    password: jkzl_ehr
#  zipkin:
#    base-url: http://localhost:9411 #日志追踪的地址
  mail:
#  mail:
    default-encoding: UTF-8
    host: smtp.163.com
#发送者的邮箱密码
    password: xmijk181016jkzl
#端口
    port: 25
#协议
    protocol: smtp
#发送者的邮箱账号
    username: i_jiankang@163.com
    properties.mail.smtp.auth: true
    properties.mail.smtp.starttls.enable: true
    properties.mail.smtp.starttls.required: true

+ 1 - 1
svr/svr-base/src/main/resources/bootstrap.yml

@ -1,6 +1,6 @@
spring:
  application:
    name: svr-base-lith
    name: svr-base
  cloud:
    config:
      failFast: true