Jelajahi Sumber

药品列表接口添加

rengb 3 tahun lalu
induk
melakukan
ec17c53809

+ 40 - 0
daqe-center/src/main/java/com/lantone/daqe/dto/GetDrugPageDTO.java

@@ -0,0 +1,40 @@
+package com.lantone.daqe.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * @Description: 获取药品分页列表-接口出参
+ * @author: rengb
+ * @time: 2022/2/27 14:30
+ */
+@ApiModel(value = "获取药品分页列表-接口出参")
+@Getter
+@Setter
+public class GetDrugPageDTO implements Serializable {
+
+    private static final long serialVersionUID = -3423432863909470619L;
+
+    @ApiModelProperty(value = "组织机构ID")
+    private Long hospitalId;
+
+    @ApiModelProperty(value = "医院药品名称")
+    private String name;
+
+    @ApiModelProperty(value = "国药准字")
+    private String approvalNum;
+
+    @ApiModelProperty(value = "标准药品名称")
+    private String standard;
+
+    @ApiModelProperty(value = "药品剂型")
+    private String dosageForm;
+
+    @ApiModelProperty(value = "已/未匹配")
+    private String isMapping;
+
+}

+ 0 - 2
daqe-center/src/main/java/com/lantone/daqe/entity/BlocklossResult.java

@@ -5,8 +5,6 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 
 import java.io.Serializable;
 import java.util.Date;

+ 7 - 3
daqe-center/src/main/java/com/lantone/daqe/entity/DiseaseInfo.java

@@ -5,8 +5,6 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 
 import java.io.Serializable;
 import java.util.Date;
@@ -28,6 +26,12 @@ public class DiseaseInfo implements Serializable {
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
+    /**
+     * 组织机构ID
+     */
+    @TableField("hospital_id")
+    private Long hospitalId;
+
     /**
      * 医院诊断代码
      */
@@ -47,7 +51,7 @@ public class DiseaseInfo implements Serializable {
     private String icd10;
 
     /**
-     * 标准词
+     * 标准词,规范:标准词名称_特性1名称:特性1值_特性2名称:特性2值
      */
     @TableField("standard")
     private String standard;

+ 13 - 3
daqe-center/src/main/java/com/lantone/daqe/entity/DrugInfo.java

@@ -5,8 +5,6 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 
 import java.io.Serializable;
 import java.util.Date;
@@ -28,6 +26,12 @@ public class DrugInfo implements Serializable {
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
+    /**
+     * 组织机构ID
+     */
+    @TableField("hospital_id")
+    private Long hospitalId;
+
     /**
      * 医院药品代码
      */
@@ -41,7 +45,13 @@ public class DrugInfo implements Serializable {
     private String name;
 
     /**
-     * 标准词
+     * 国药准字
+     */
+    @TableField("approval_num")
+    private String approvalNum;
+
+    /**
+     * 标准词,规范:标准词名称_特性1名称:特性1值_特性2名称:特性2值
      */
     @TableField("standard")
     private String standard;

+ 6 - 0
daqe-center/src/main/java/com/lantone/daqe/entity/OfficialCapacity.java

@@ -28,6 +28,12 @@ public class OfficialCapacity implements Serializable {
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
+    /**
+     * 组织机构ID
+     */
+    @TableField("hospital_id")
+    private Long hospitalId;
+
     /**
      * 职务/职称名称
      */

+ 7 - 1
daqe-center/src/main/java/com/lantone/daqe/entity/OperationInfo.java

@@ -28,6 +28,12 @@ public class OperationInfo implements Serializable {
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
+    /**
+     * 组织机构ID
+     */
+    @TableField("hospital_id")
+    private Long hospitalId;
+
     /**
      * 医院手术代码
      */
@@ -41,7 +47,7 @@ public class OperationInfo implements Serializable {
     private String name;
 
     /**
-     * 标准词
+     * 标准词,规范:标准词名称_特性1名称:特性1值_特性2名称:特性2值
      */
     @TableField("standard")
     private String standard;

+ 12 - 0
daqe-center/src/main/java/com/lantone/daqe/entity/RecordTemplate.java

@@ -28,6 +28,12 @@ public class RecordTemplate implements Serializable {
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
 
+    /**
+     * 组织机构ID
+     */
+    @TableField("hospital_id")
+    private Long hospitalId;
+
     /**
      * 模板代码
      */
@@ -52,6 +58,12 @@ public class RecordTemplate implements Serializable {
     @TableField("parent_code")
     private String parentCode;
 
+    /**
+     * 父模板名称
+     */
+    @TableField("parent_name")
+    private String parentName;
+
     /**
      * 是否删除,N:未删除,Y:删除
      */

+ 56 - 0
daqe-center/src/main/java/com/lantone/daqe/facade/DrugManagementFacade.java

@@ -0,0 +1,56 @@
+package com.lantone.daqe.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.lantone.common.util.BeanUtil;
+import com.lantone.common.util.StringUtil;
+import com.lantone.daqe.dto.GetDrugPageDTO;
+import com.lantone.daqe.entity.DrugInfo;
+import com.lantone.daqe.facade.base.DrugInfoFacade;
+import com.lantone.daqe.vo.GetDrugPageVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * @Description: 药品管理-业务处理类
+ * @author: rengb
+ * @time: 2021/7/20 12:39
+ */
+@Component
+public class DrugManagementFacade {
+
+    @Autowired
+    private DrugInfoFacade drugInfoFacade;
+
+    public IPage<GetDrugPageDTO> getDrugPage(GetDrugPageVO getDrugPageVO) {
+        Page<GetDrugPageDTO> getDrugPageDTOPage = new Page<>();
+
+        QueryWrapper<DrugInfo> drugInfoQueryWrapper = new QueryWrapper<>();
+        drugInfoQueryWrapper.eq(getDrugPageVO.getHospitalId() != null, "hospital_id", getDrugPageVO.getHospitalId());
+        drugInfoQueryWrapper.like(StringUtil.isNotBlank(getDrugPageVO.getName()), "name", getDrugPageVO.getName());
+        drugInfoQueryWrapper.like(StringUtil.isNotBlank(getDrugPageVO.getApprovalNum()), "approval_num", getDrugPageVO.getApprovalNum());
+        drugInfoQueryWrapper.like(StringUtil.isNotBlank(getDrugPageVO.getStandard()), "standard", getDrugPageVO.getStandard());
+        drugInfoQueryWrapper.like(StringUtil.isNotBlank(getDrugPageVO.getDosageForm()), "standard", getDrugPageVO.getDosageForm());
+        if (StringUtil.isNotBlank(getDrugPageVO.getIsMapping())) {
+            if (getDrugPageVO.getIsMapping().equals("0")) {
+                drugInfoQueryWrapper.isNull("standard");
+            } else if (getDrugPageVO.getIsMapping().equals("1")) {
+                drugInfoQueryWrapper.isNotNull("standard");
+            }
+        }
+        Page<DrugInfo> drugInfoPage = new Page<>(getDrugPageVO.getCurrent(), getDrugPageVO.getSize());
+        drugInfoFacade.page(drugInfoPage, drugInfoQueryWrapper);
+        BeanUtil.copyProperties(drugInfoPage, getDrugPageDTOPage);
+        List<GetDrugPageDTO> getDrugPageDTOList = BeanUtil.listCopyTo(drugInfoPage.getRecords(), GetDrugPageDTO.class);
+        getDrugPageDTOList.forEach(i -> {
+            i.setIsMapping(StringUtil.isBlank(i.getIsMapping()) ? "未匹配" : "已匹配");
+        });
+
+        getDrugPageDTOPage.setRecords(getDrugPageDTOList);
+        return getDrugPageDTOPage;
+    }
+
+}

+ 39 - 0
daqe-center/src/main/java/com/lantone/daqe/vo/GetDrugPageVO.java

@@ -0,0 +1,39 @@
+package com.lantone.daqe.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description: 获取药品分页列表-接口入参
+ * @author: rengb
+ * @time: 2022/2/27 11:15
+ */
+@ApiModel(value = "获取药品分页列表-接口入参")
+@Getter
+@Setter
+public class GetDrugPageVO extends Page {
+
+    private static final long serialVersionUID = -6386361872296743955L;
+
+    @ApiModelProperty(value = "组织机构ID")
+    private Long hospitalId;
+
+    @ApiModelProperty(value = "医院药品名称")
+    private String name;
+
+    @ApiModelProperty(value = "国药准字")
+    private String approvalNum;
+
+    @ApiModelProperty(value = "标准药品名称")
+    private String standard;
+
+    @ApiModelProperty(value = "药品剂型")
+    private String dosageForm;
+
+    @ApiModelProperty(value = "是否匹配,1-已匹配,0-未匹配")
+    private String isMapping;
+
+}

+ 35 - 0
daqe-center/src/main/java/com/lantone/daqe/web/DrugManagementController.java

@@ -0,0 +1,35 @@
+package com.lantone.daqe.web;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.lantone.common.api.CommonResult;
+import com.lantone.daqe.dto.GetDrugPageDTO;
+import com.lantone.daqe.facade.DrugManagementFacade;
+import com.lantone.daqe.vo.GetDrugPageVO;
+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;
+
+/**
+ * @Description: 药品管理API
+ * @author: songxl
+ * @time: 2021/7/20 12:39
+ */
+@RestController
+@Api(value = "药品管理API", tags = { "药品管理API" })
+@RequestMapping("/drugManage")
+public class DrugManagementController {
+
+    @Autowired
+    private DrugManagementFacade drugManagementFacade;
+
+    @ApiOperation(value = "获取药品分页列表 [by:songxl]")
+    @PostMapping("/getDrugPage")
+    public CommonResult<IPage<GetDrugPageDTO>> getDrugPage(@RequestBody GetDrugPageVO getDrugPageVO) {
+        return CommonResult.success(drugManagementFacade.getDrugPage(getDrugPageVO));
+    }
+
+}

+ 1 - 0
daqe-center/src/main/resources/mapper/base/BaseDiseaseInfoMapper.xml

@@ -5,6 +5,7 @@
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.lantone.daqe.entity.DiseaseInfo">
         <id column="id" property="id"/>
+        <result column="hospital_id" property="hospitalId"/>
         <result column="code" property="code"/>
         <result column="name" property="name"/>
         <result column="icd10" property="icd10"/>

+ 2 - 0
daqe-center/src/main/resources/mapper/base/BaseDrugInfoMapper.xml

@@ -5,8 +5,10 @@
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.lantone.daqe.entity.DrugInfo">
         <id column="id" property="id"/>
+        <result column="hospital_id" property="hospitalId"/>
         <result column="code" property="code"/>
         <result column="name" property="name"/>
+        <result column="approval_num" property="approvalNum"/>
         <result column="standard" property="standard"/>
         <result column="synonym" property="synonym"/>
         <result column="is_deleted" property="isDeleted"/>

+ 1 - 0
daqe-center/src/main/resources/mapper/base/BaseOfficialCapacityMapper.xml

@@ -5,6 +5,7 @@
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.lantone.daqe.entity.OfficialCapacity">
         <id column="id" property="id"/>
+        <result column="hospital_id" property="hospitalId"/>
         <result column="name" property="name"/>
         <result column="type" property="type"/>
         <result column="change_time" property="changeTime"/>

+ 1 - 0
daqe-center/src/main/resources/mapper/base/BaseOperationInfoMapper.xml

@@ -5,6 +5,7 @@
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.lantone.daqe.entity.OperationInfo">
         <id column="id" property="id"/>
+        <result column="hospital_id" property="hospitalId"/>
         <result column="code" property="code"/>
         <result column="name" property="name"/>
         <result column="standard" property="standard"/>

+ 2 - 0
daqe-center/src/main/resources/mapper/base/BaseRecordTemplateMapper.xml

@@ -5,10 +5,12 @@
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.lantone.daqe.entity.RecordTemplate">
         <id column="id" property="id"/>
+        <result column="hospital_id" property="hospitalId"/>
         <result column="code" property="code"/>
         <result column="name" property="name"/>
         <result column="content" property="content"/>
         <result column="parent_code" property="parentCode"/>
+        <result column="parent_name" property="parentName"/>
         <result column="is_deleted" property="isDeleted"/>
         <result column="gmt_create" property="gmtCreate"/>
         <result column="gmt_modified" property="gmtModified"/>