Kaynağa Gözat

病历管理枚举类

zhaops 5 yıl önce
ebeveyn
işleme
1163392ce9

+ 51 - 0
mrman-service/src/main/java/com/diagbot/enums/BloodTypeEnum.java

@@ -0,0 +1,51 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:血型
+ * @Author:zhaops
+ * @time: 2020/1/19 15:56
+ */
+public enum BloodTypeEnum implements KeyedNamed {
+    A(1, "A型"),
+    B(2, "B型"),
+    O(3, "O型"),
+    AB(4, "AB型");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    BloodTypeEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static BloodTypeEnum getEnum(int key) {
+        for (BloodTypeEnum item : BloodTypeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        BloodTypeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 49 - 0
mrman-service/src/main/java/com/diagbot/enums/RHTypeEnum.java

@@ -0,0 +1,49 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description:RH类型
+ * @Author:zhaops
+ * @time: 2020/1/19 15:47
+ */
+public enum RHTypeEnum implements KeyedNamed {
+    Negative(1, "阴性"),
+    Positive(2, "阳性");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    RHTypeEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static RHTypeEnum getEnum(int key) {
+        for (RHTypeEnum item : RHTypeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        RHTypeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 49 - 0
mrman-service/src/main/java/com/diagbot/enums/SexEnum.java

@@ -0,0 +1,49 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+import lombok.Setter;
+
+/**
+ * @Description: 性别
+ * @Author:zhaops
+ * @time: 2020/1/19 15:42
+ */
+public enum SexEnum implements KeyedNamed {
+    Male(1, "男"),
+    FeMale(2, "女");
+
+    @Setter
+    private int key;
+
+    @Setter
+    private String name;
+
+    SexEnum(int key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static SexEnum getEnum(int key) {
+        for (SexEnum item : SexEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(int key) {
+        SexEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}

+ 29 - 0
mrman-service/src/main/java/com/diagbot/facade/EnumsDataFacade.java

@@ -0,0 +1,29 @@
+package com.diagbot.facade;
+
+import com.diagbot.service.EnumsDataService;
+import com.diagbot.util.EnumEntriesBuilder;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description: 枚举数据装饰类
+ * @author: zhaops
+ * @time: 2020/1/19
+ */
+@Component
+public class EnumsDataFacade {
+    @Autowired
+    private EnumsDataService enumsDataService;
+
+    /**
+     * 用户枚举数据获取
+     *
+     * @return 用户枚举类map
+     */
+    public Map<String, List<EnumEntriesBuilder.Entry>> getEnumsData() {
+        return enumsDataService.getEnumsData();
+    }
+}

+ 20 - 0
mrman-service/src/main/java/com/diagbot/service/EnumsDataService.java

@@ -0,0 +1,20 @@
+package com.diagbot.service;
+
+import com.diagbot.util.EnumEntriesBuilder;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description: 枚举数据接口类
+ * @author: zhaops
+ * @time: 2020/1/19
+ */
+public interface EnumsDataService {
+    /**
+     * 用户枚举数据获取
+     *
+     * @return 用户枚举类map
+     */
+    Map<String, List<EnumEntriesBuilder.Entry>> getEnumsData();
+}

+ 35 - 0
mrman-service/src/main/java/com/diagbot/service/impl/EnumsDataServiceImpl.java

@@ -0,0 +1,35 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.enums.BloodTypeEnum;
+import com.diagbot.enums.RHTypeEnum;
+import com.diagbot.enums.SexEnum;
+import com.diagbot.service.EnumsDataService;
+import com.diagbot.util.EnumEntriesBuilder;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description: 枚举数据接口是实现类
+ * @author: zhaops
+ * @time: 2020/1/19
+ */
+@Service
+public class EnumsDataServiceImpl implements EnumsDataService {
+
+    /**
+     * 用户枚举数据获取
+     *
+     * @return 用户枚举类map
+     */
+    @Override
+    public Map<String, List<EnumEntriesBuilder.Entry>> getEnumsData() {
+        Map<String, List<EnumEntriesBuilder.Entry>> enumMap = new EnumEntriesBuilder()
+                .addEnums("sexEnum", SexEnum.values())
+                .addEnums("bloodTypeEnum", BloodTypeEnum.values())
+                .addEnums("rhTypeEnum", RHTypeEnum.values())
+                .build();
+        return enumMap;
+    }
+}

+ 35 - 0
mrman-service/src/main/java/com/diagbot/web/EnumsController.java

@@ -0,0 +1,35 @@
+package com.diagbot.web;
+
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.facade.EnumsDataFacade;
+import com.diagbot.util.EnumEntriesBuilder;
+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.RestController;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description: 病历管理枚举数据获取类
+ * @author: zhaops
+ * @time: 2020/1/19
+ */
+@RestController
+@Api(value = "病历管理枚举数据获取API", tags = { "病历管理枚举数据获取API" })
+@SuppressWarnings("unchecked")
+public class EnumsController {
+    @Autowired
+    private EnumsDataFacade enumsDataFacade;
+
+    @ApiOperation(value = "病历管理枚举数据获取[by:zhaops]",
+            notes = "病历管理枚举数据获取")
+    @PostMapping("/getMrEnumsData")
+    @SysLogger("getMrEnumsData")
+    public RespDTO<Map<String, List<EnumEntriesBuilder.Entry>>> getEnumsData() {
+        return RespDTO.onSuc(enumsDataFacade.getEnumsData());
+    }
+}