Browse Source

对接接口修改(字段对应信息)

wangyu 6 years ago
parent
commit
47ac069e69

+ 15 - 6
icss-service/src/main/java/com/diagbot/client/TranServiceClient.java

@@ -1,11 +1,5 @@
 package com.diagbot.client;
 
-import java.util.List;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
 import com.diagbot.client.hystrix.TranServiceHystrix;
 import com.diagbot.dto.DoctorInfoDTO;
 import com.diagbot.dto.GetTopPatientInfoDTO;
@@ -14,12 +8,19 @@ import com.diagbot.dto.HospitalInfoDTO;
 import com.diagbot.dto.LisConfigDTO;
 import com.diagbot.dto.PatientInfoDTO;
 import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.TranFieldInfoDTO;
 import com.diagbot.vo.DoctorInfoVO;
 import com.diagbot.vo.GetTopPatientInfoVO;
 import com.diagbot.vo.HospitalDeptInfoVO;
 import com.diagbot.vo.HospitalInfoVO;
 import com.diagbot.vo.LisHospitalCodeVO;
 import com.diagbot.vo.PatientInfoVO;
+import com.diagbot.vo.TranFieldInfoVO;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import java.util.List;
 
 /**
  * @Description: 调用信息对接层服务
@@ -77,4 +78,12 @@ public interface TranServiceClient {
      */
     @PostMapping("/patientInfo/getTopPatientInfo")
     RespDTO<GetTopPatientInfoDTO> getTopPatientInfo( @RequestBody GetTopPatientInfoVO getTopPatientInfoVO);
+
+    /**
+     * 根据uuid获取相关信息
+     * @param tranFieldInfoVO
+     * @return
+     */
+    @PostMapping("/tranFieldInfo/getInfoByUuid")
+    RespDTO<List<TranFieldInfoDTO>> getInfoByUuid(@RequestBody TranFieldInfoVO tranFieldInfoVO);
 }

+ 10 - 2
icss-service/src/main/java/com/diagbot/client/hystrix/TranServiceHystrix.java

@@ -8,6 +8,7 @@ import com.diagbot.dto.HospitalInfoDTO;
 import com.diagbot.dto.LisConfigDTO;
 import com.diagbot.dto.PatientInfoDTO;
 import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.TranFieldInfoDTO;
 import com.diagbot.vo.DoctorInfoVO;
 import com.diagbot.vo.GetTopPatientInfoVO;
 import com.diagbot.vo.HospitalDeptInfoVO;
@@ -15,6 +16,7 @@ import com.diagbot.vo.HospitalInfoVO;
 import com.diagbot.vo.LisHospitalCodeVO;
 
 import com.diagbot.vo.PatientInfoVO;
+import com.diagbot.vo.TranFieldInfoVO;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 
@@ -63,8 +65,14 @@ public class TranServiceHystrix implements TranServiceClient {
 		log.error("【hystrix】调用{}异常", "getTopPatientInfo");
 		return null;
 	}
-    
-    
+
+    @Override
+    public RespDTO<List<TranFieldInfoDTO>> getInfoByUuid(TranFieldInfoVO tranFieldInfoVO) {
+        log.error("【hystrix】调用{}异常", "getInfoByUuid");
+        return null;
+    }
+
+
 //    @Override
 //    public Response<ResponseData> bayesPageData(SearchData searchData) {
 //        log.error("【hystrix】调用{}异常", "bayesPageData");

+ 10 - 6
icss-service/src/main/java/com/diagbot/facade/TranFieldInfoFacade.java

@@ -1,11 +1,13 @@
 package com.diagbot.facade;
 
+import com.diagbot.client.TranServiceClient;
+import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.TranFieldInfoDTO;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.service.impl.TranFieldInfoServiceImpl;
-import com.diagbot.util.ListUtil;
 import com.diagbot.vo.TranFieldInfoVO;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
@@ -18,6 +20,8 @@ import java.util.List;
 @Component
 public class TranFieldInfoFacade extends TranFieldInfoServiceImpl {
 
+    @Autowired
+    TranServiceClient tranServiceClient;
 
     /**
      * 根据uuid获取相关信息
@@ -26,11 +30,11 @@ public class TranFieldInfoFacade extends TranFieldInfoServiceImpl {
      * @return
      */
     public List<TranFieldInfoDTO> getInfoByUuid(TranFieldInfoVO info) {
-        List<TranFieldInfoDTO> tranFieldInfoDTOList = this.getInfosByUuid(info);
-        if (ListUtil.isEmpty(tranFieldInfoDTOList)) {
-            throw new CommonException(CommonErrorCode.NOT_EXISTS,
-                    "获取信息失败");
+        RespDTO<List<TranFieldInfoDTO>> tranFieldInfoDTOList = tranServiceClient.getInfoByUuid(info);
+        if (tranFieldInfoDTOList == null || !CommonErrorCode.OK.getCode().equals(tranFieldInfoDTOList.code)) {
+            throw new CommonException(CommonErrorCode.RPC_ERROR,
+                    "获取医生信息失败");
         }
-        return tranFieldInfoDTOList;
+        return tranFieldInfoDTOList.data;
     }
 }

+ 28 - 0
tran-service/src/main/java/com/diagbot/dto/TranFieldInfoDTO.java

@@ -0,0 +1,28 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/21 14:08
+ */
+@Getter
+@Setter
+public class TranFieldInfoDTO {
+    /**
+     * 唯一主键(通常是医院编码:hospitalId)
+     */
+    private String uuid;
+
+    /**
+     * icss需要的字段
+     */
+    private String icssField;
+
+    /**
+     * 医院个性化字段
+     */
+    private String hisField;
+}

+ 171 - 0
tran-service/src/main/java/com/diagbot/entity/TranFieldInfo.java

@@ -0,0 +1,171 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 字段对应表
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-21
+ */
+public class TranFieldInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 唯一主键(通常是医院编码:hospitalId)
+     */
+    private String uuid;
+
+    /**
+     * icss需要的字段
+     */
+    private String icssField;
+
+    /**
+     * 医院个性化字段
+     */
+    private String hisField;
+
+    /**
+     * 状态
+     */
+    private String status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public LocalDateTime getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(LocalDateTime gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public LocalDateTime getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(LocalDateTime gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public String getUuid() {
+        return uuid;
+    }
+
+    public void setUuid(String uuid) {
+        this.uuid = uuid;
+    }
+    public String getIcssField() {
+        return icssField;
+    }
+
+    public void setIcssField(String icssField) {
+        this.icssField = icssField;
+    }
+    public String getHisField() {
+        return hisField;
+    }
+
+    public void setHisField(String hisField) {
+        this.hisField = hisField;
+    }
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "TranFieldInfo{" +
+        "id=" + id +
+        ", isDeleted=" + isDeleted +
+        ", gmtCreate=" + gmtCreate +
+        ", gmtModified=" + gmtModified +
+        ", creator=" + creator +
+        ", modifier=" + modifier +
+        ", uuid=" + uuid +
+        ", icssField=" + icssField +
+        ", hisField=" + hisField +
+        ", status=" + status +
+        ", remark=" + remark +
+        "}";
+    }
+}

+ 29 - 0
tran-service/src/main/java/com/diagbot/facade/TranFieldInfoFacade.java

@@ -0,0 +1,29 @@
+package com.diagbot.facade;
+
+import com.diagbot.dto.TranFieldInfoDTO;
+import com.diagbot.service.impl.TranFieldInfoServiceImpl;
+import com.diagbot.vo.TranFieldInfoVO;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/21 14:13
+ */
+@Component
+public class TranFieldInfoFacade extends TranFieldInfoServiceImpl {
+
+
+    /**
+     * 根据uuid获取相关信息
+     *
+     * @param info
+     * @return
+     */
+    public List<TranFieldInfoDTO> getInfoByUuid(TranFieldInfoVO info) {
+        List<TranFieldInfoDTO> tranFieldInfoDTOList = this.getInfosByUuid(info);
+        return tranFieldInfoDTOList;
+    }
+}

+ 21 - 0
tran-service/src/main/java/com/diagbot/mapper/TranFieldInfoMapper.java

@@ -0,0 +1,21 @@
+package com.diagbot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.dto.TranFieldInfoDTO;
+import com.diagbot.entity.TranFieldInfo;
+import com.diagbot.vo.TranFieldInfoVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 字段对应表 Mapper 接口
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-21
+ */
+public interface TranFieldInfoMapper extends BaseMapper<TranFieldInfo> {
+
+    List<TranFieldInfoDTO> getInfosByUuid(TranFieldInfoVO tranFieldInfoVO);
+}

+ 21 - 0
tran-service/src/main/java/com/diagbot/service/TranFieldInfoService.java

@@ -0,0 +1,21 @@
+package com.diagbot.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.TranFieldInfoDTO;
+import com.diagbot.entity.TranFieldInfo;
+import com.diagbot.vo.TranFieldInfoVO;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 字段对应表 服务类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-21
+ */
+public interface TranFieldInfoService extends IService<TranFieldInfo> {
+
+    public List<TranFieldInfoDTO> getInfosByUuid(TranFieldInfoVO tranFieldInfoVO);
+}

+ 28 - 0
tran-service/src/main/java/com/diagbot/service/impl/TranFieldInfoServiceImpl.java

@@ -0,0 +1,28 @@
+package com.diagbot.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.TranFieldInfoDTO;
+import com.diagbot.entity.TranFieldInfo;
+import com.diagbot.mapper.TranFieldInfoMapper;
+import com.diagbot.service.TranFieldInfoService;
+import com.diagbot.vo.TranFieldInfoVO;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 字段对应表 服务实现类
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-21
+ */
+@Service
+public class TranFieldInfoServiceImpl extends ServiceImpl<TranFieldInfoMapper, TranFieldInfo> implements TranFieldInfoService {
+
+    @Override
+    public List<TranFieldInfoDTO> getInfosByUuid(TranFieldInfoVO tranFieldInfoVO) {
+        return baseMapper.getInfosByUuid(tranFieldInfoVO);
+    }
+}

+ 19 - 0
tran-service/src/main/java/com/diagbot/vo/TranFieldInfoVO.java

@@ -0,0 +1,19 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2018/11/21 14:08
+ */
+@Getter
+@Setter
+public class TranFieldInfoVO {
+
+    @NotNull(message = "请输入医院编码")
+    private String uuid;
+}

+ 44 - 0
tran-service/src/main/java/com/diagbot/web/TranFieldInfoController.java

@@ -0,0 +1,44 @@
+package com.diagbot.web;
+
+
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.TranFieldInfoDTO;
+import com.diagbot.facade.TranFieldInfoFacade;
+import com.diagbot.vo.TranFieldInfoVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.validation.Valid;
+import java.util.List;
+
+/**
+ * <p>
+ * 字段对应表 前端控制器
+ * </p>
+ *
+ * @author wangyu
+ * @since 2018-11-21
+ */
+@RestController
+@RequestMapping(value = "/tranFieldInfo")
+@Api(value = "字段对应信息API", tags = { "字段对应信息API" })
+@SuppressWarnings("unchecked")
+public class TranFieldInfoController {
+    @Autowired
+    TranFieldInfoFacade tranFieldInfoFacade;
+
+    @ApiOperation(value = "字段对应信息——查询[by:wangyu]",
+            notes = "uuid:医院编号,必填<br>")
+    @PostMapping("/getInfoByUuid")
+    @SysLogger("getInfoByUuid")
+    public RespDTO<List<TranFieldInfoDTO>> getInfoByUuid(@Valid @RequestBody TranFieldInfoVO tranFieldInfoVO) {
+        List<TranFieldInfoDTO> data = tranFieldInfoFacade.getInfoByUuid(tranFieldInfoVO);
+        return RespDTO.onSuc(data);
+    }
+}

+ 23 - 0
tran-service/src/main/resources/mapper/TranFieldInfoMapper.xml

@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.diagbot.mapper.TranFieldInfoMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.diagbot.entity.TranFieldInfo">
+        <id column="id" property="id" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+        <result column="uuid" property="uuid" />
+        <result column="icss_field" property="icssField" />
+        <result column="his_field" property="hisField" />
+        <result column="status" property="status" />
+        <result column="remark" property="remark" />
+    </resultMap>
+
+    <select id="getInfosByUuid" resultType="com.diagbot.dto.TranFieldInfoDTO">
+        SELECT * FROM `tran_field_info` t where t.status = '1'and t.is_deleted = 'N' and FIND_IN_SET(#{uuid},uuid)
+    </select>
+</mapper>