18339543638 3 роки тому
батько
коміт
9de9281fac
26 змінених файлів з 467 додано та 18 видалено
  1. 4 0
      nb-admin/pom.xml
  2. 1 0
      nb-admin/src/main/java/com/nb/admin/AdminApplication.java
  3. 2 0
      nb-core/src/main/java/com/nb/core/entity/QueryParamEntity.java
  4. 2 0
      nb-core/src/main/java/com/nb/core/entity/param/Term.java
  5. 3 0
      nb-core/src/main/java/com/nb/core/result/R.java
  6. 10 7
      nb-service-api/app-assistant-api/src/main/java/com/nb/app/assistant/api/entity/AssistantEvalEntity.java
  7. 35 0
      nb-service-api/app-msg-api/pom.xml
  8. 35 0
      nb-service-api/app-msg-api/src/main/java/com/nb/app/msg/bean/MsgBean.java
  9. 34 0
      nb-service-api/app-msg-api/src/main/java/com/nb/app/msg/enums/MsgEnum.java
  10. 21 0
      nb-service-api/app-msg-api/src/main/java/com/nb/app/msg/event/SaveMsgEvent.java
  11. 1 0
      nb-service-api/pom.xml
  12. 4 0
      nb-service/app-assistant/pom.xml
  13. 1 1
      nb-service/app-assistant/src/main/java/com/nb/app/assistant/controller/AppDoctorController.java
  14. 1 1
      nb-service/app-assistant/src/main/java/com/nb/app/assistant/controller/AssistantEvalController.java
  15. 5 8
      nb-service/app-assistant/src/main/java/com/nb/app/assistant/controller/PatientOperationController.java
  16. 33 0
      nb-service/app-assistant/src/main/java/com/nb/app/assistant/controller/vo/MonitorAddVo.java
  17. 1 1
      nb-service/app-assistant/src/main/java/com/nb/app/assistant/entity/AssistantUserEntity.java
  18. 11 0
      nb-service/app-assistant/src/main/java/com/nb/app/assistant/service/LocalAssistantUserService.java
  19. 36 0
      nb-service/app-msg/pom.xml
  20. 46 0
      nb-service/app-msg/src/main/java/com/nb/app/msg/controller/AppMsgController.java
  21. 30 0
      nb-service/app-msg/src/main/java/com/nb/app/msg/doc/MsgDocConfig.java
  22. 92 0
      nb-service/app-msg/src/main/java/com/nb/app/msg/entity/AppMsgEntity.java
  23. 16 0
      nb-service/app-msg/src/main/java/com/nb/app/msg/mapper/AppMsgMapper.java
  24. 32 0
      nb-service/app-msg/src/main/java/com/nb/app/msg/service/LocalAppMsgService.java
  25. 1 0
      nb-service/pom.xml
  26. 10 0
      pom.xml

+ 4 - 0
nb-admin/pom.xml

@@ -12,6 +12,10 @@
     <artifactId>nb-admin</artifactId>
 
     <dependencies>
+        <dependency>
+            <groupId>com.tuoren</groupId>
+            <artifactId>app-msg</artifactId>
+        </dependency>
         <dependency>
             <groupId>com.tuoren</groupId>
             <artifactId>app-assistant</artifactId>

+ 1 - 0
nb-admin/src/main/java/com/nb/admin/AdminApplication.java

@@ -27,6 +27,7 @@ import org.tio.websocket.starter.EnableTioWebSocketServer;
         "com.nb.admin",
         "com.nb.app.doctor",
         "com.nb.app.assistant",
+        "com.nb.app.msg",
         "springfox.documentation.schema"},
 exclude = {RedisAutoConfiguration.class,RedissonAutoConfiguration.class})
 @Import(cn.hutool.extra.spring.SpringUtil.class)

+ 2 - 0
nb-core/src/main/java/com/nb/core/entity/QueryParamEntity.java

@@ -3,6 +3,7 @@ package com.nb.core.entity;
 import cn.hutool.db.sql.Order;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.nb.core.entity.param.Term;
+import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
@@ -14,6 +15,7 @@ import java.util.Set;
  * @Description 仅用来进行简单的查询,若需要构建复杂查询语句,请直接使用mp函数方法进行构建
  **/
 @Data
+@ApiModel("查询参数")
 public class QueryParamEntity<T> {
 
     private static final long serialVersionUID = 8097500947924037523L;

+ 2 - 0
nb-core/src/main/java/com/nb/core/entity/param/Term.java

@@ -2,6 +2,7 @@ package com.nb.core.entity.param;
 
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
 import lombok.Setter;
@@ -13,6 +14,7 @@ import java.util.List;
  */
 @Getter
 @Setter
+@ApiModel("查询条件")
 public class Term implements Cloneable, Serializable {
     private static final long serialVersionUID = 1L;
     /**

+ 3 - 0
nb-core/src/main/java/com/nb/core/result/R.java

@@ -1,5 +1,7 @@
 package com.nb.core.result;
 
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
 import lombok.NoArgsConstructor;
@@ -18,6 +20,7 @@ import java.io.Serializable;
 @Setter
 @ToString
 @NoArgsConstructor
+@ApiModel("通用返回结果")
 public class R<T> implements Serializable {
 
     private static final long serialVersionUID = 1L;

+ 10 - 7
nb-service-api/app-assistant-api/src/main/java/com/nb/app/assistant/api/entity/AssistantEvalEntity.java

@@ -15,6 +15,7 @@ import lombok.ToString;
 import javax.validation.constraints.NotNull;
 import java.util.Date;
 import java.util.Map;
+import java.util.*;
 
 /**
  * @author lifang
@@ -30,34 +31,36 @@ import java.util.Map;
 @ToString
 @NoArgsConstructor
 public class AssistantEvalEntity extends GenericEntity<String> {
-    @ApiModelProperty("输注id 必输")
+    @ApiModelProperty(value = "输注id",required = true)
     @NotNull(message = "输注id不能为空")
     @JsonIgnoreProperties(allowSetters = true)
     private String infusionId;
 
-    @ApiModelProperty("临床id 必输")
+    @ApiModelProperty(value = "临床id",required = true)
     @NotNull(message = "临床id不能为空")
     @JsonIgnoreProperties(allowSetters = true)
     private String clinicId;
 
-    @ApiModelProperty("评价时间 必输")
+    @ApiModelProperty(value = "评价时间",required = true)
     @NotNull(message = "评价时间不能为空")
     private Date evaluateTime;
 
-    @ApiModelProperty("评价人 必输")
+    @ApiModelProperty(value = "评价人(使用userId)",required = true)
     @NotNull(message = "评价人 不能为空")
     private String evaluator;
 
-    @ApiModelProperty("疼痛部位-正面 具体传值内容即key:value值由传参人决定,传入值=获取值")
+    @ApiModelProperty("疼痛部位-正面 具体传值内容即key:value值由传参人决定,传入值即为获取值")
     @TableField(typeHandler = JacksonTypeHandler.class)
     private Map<String,Object> painFront;
 
-    @ApiModelProperty("疼痛部位-反面 具体传值内容即key:value值由传参人决定,传入值=获取值")
+    @ApiModelProperty("疼痛部位-反面 具体传值内容即key:value值由传参人决定,传入值即为获取值")
     @TableField(typeHandler = JacksonTypeHandler.class)
     private Map<String,Object> painBack;
 
+    //todo listHandler
     @ApiModelProperty("疼痛性质")
-    private String painNature;
+    @TableField(typeHandler =  JacksonTypeHandler.class)
+    private List<String> painNature;
 
     @ApiModelProperty("静息疼痛")
     private Integer statics;

+ 35 - 0
nb-service-api/app-msg-api/pom.xml

@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>nb-service-api</artifactId>
+        <groupId>com.tuoren</groupId>
+        <version>1.0</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>app-msg-api</artifactId>
+
+
+    <dependencies>
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.github.xiaoymin</groupId>
+            <artifactId>knife4j-spring-boot-starter</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+            <scope>provided</scope>
+        </dependency>
+    </dependencies>
+</project>

+ 35 - 0
nb-service-api/app-msg-api/src/main/java/com/nb/app/msg/bean/MsgBean.java

@@ -0,0 +1,35 @@
+package com.nb.app.msg.bean;
+
+import com.nb.app.msg.enums.MsgEnum;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Builder;
+
+import java.io.Serializable;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName MsgBean.java
+ * @Description TODO
+ * @createTime 2022年08月12日 10:06:00
+ */
+@Builder
+public class MsgBean implements Serializable {
+    private MsgEnum msgType;
+
+    private String sender;
+
+    private String patientId;
+
+    private String patientCode;
+
+    private String patientName;
+
+    private String payload;
+
+    private String receiver;
+
+    private String receiverName;
+
+    private boolean sys;
+}

+ 34 - 0
nb-service-api/app-msg-api/src/main/java/com/nb/app/msg/enums/MsgEnum.java

@@ -0,0 +1,34 @@
+package com.nb.app.msg.enums;
+
+import com.baomidou.mybatisplus.annotation.IEnum;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName MsgEnum.java
+ * @Description TODO
+ * @createTime 2022年08月12日 09:20:00
+ */
+@Getter
+@AllArgsConstructor
+@JsonFormat(shape = JsonFormat.Shape.OBJECT)
+@ApiModel("消息类型")
+public enum  MsgEnum  implements IEnum<Integer> {
+    CONSUL(0,"咨询申请"),
+    CODE_BIND_NOTIFY(1,"邀请码绑定申请"),
+    MANUAL_BIND_NOTIFY(2,"用户绑定申请"),
+    PAIN_CALL(3,"疼痛一键呼叫"),
+    REGISTER(4,"新用户注册")
+    ;
+    @Getter
+    @ApiModelProperty("枚举编码")
+    private Integer value;
+    @Getter
+    @ApiModelProperty("报警内容")
+    private String text;
+}

+ 21 - 0
nb-service-api/app-msg-api/src/main/java/com/nb/app/msg/event/SaveMsgEvent.java

@@ -0,0 +1,21 @@
+package com.nb.app.msg.event;
+
+import com.nb.app.msg.bean.MsgBean;
+import lombok.Getter;
+import org.springframework.context.ApplicationEvent;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName MsgEvent.java
+ * @Description 新增消息监听
+ * @createTime 2022年08月12日 10:03:00
+ */
+@Getter
+public class SaveMsgEvent extends ApplicationEvent {
+    private final MsgBean payload;
+    public SaveMsgEvent(Object source,MsgBean payload) {
+        super(source);
+        this.payload=payload;
+    }
+}

+ 1 - 0
nb-service-api/pom.xml

@@ -17,6 +17,7 @@
         <module>iot-service-api</module>
         <module>app-doctor-api</module>
         <module>app-assistant-api</module>
+        <module>app-msg-api</module>
     </modules>
 
 

+ 4 - 0
nb-service/app-assistant/pom.xml

@@ -13,6 +13,10 @@
 
 
     <dependencies>
+        <dependency>
+            <groupId>com.tuoren</groupId>
+            <artifactId>app-msg-api</artifactId>
+        </dependency>
         <dependency>
             <groupId>com.tuoren</groupId>
             <artifactId>app-doctor-api</artifactId>

+ 1 - 1
nb-service/app-assistant/src/main/java/com/nb/app/assistant/controller/AppDoctorController.java

@@ -21,7 +21,7 @@ import org.springframework.web.bind.annotation.RestController;
  */
 @RestController
 @AllArgsConstructor
-@RequestMapping("/doctor")
+@RequestMapping("/assist/doctor")
 @Api(tags = "可咨询医生")
 @Slf4j
 public class AppDoctorController {

+ 1 - 1
nb-service/app-assistant/src/main/java/com/nb/app/assistant/controller/AssistantEvalController.java

@@ -19,7 +19,7 @@ import org.springframework.web.bind.annotation.RestController;
  */
 @RestController
 @AllArgsConstructor
-@RequestMapping("/app")
+@RequestMapping("/assist/eval")
 @Api(tags = "疼痛评分")
 @Slf4j
 public class AssistantEvalController  extends AppAssistantBaseCrudController<AssistantEvalEntity,String> {

+ 5 - 8
nb-service/app-assistant/src/main/java/com/nb/app/assistant/controller/PatientOperationController.java

@@ -2,7 +2,7 @@ package com.nb.app.assistant.controller;
 
 import cn.hutool.core.bean.BeanUtil;
 import com.nb.app.assistant.controller.vo.InviteCodePatientVo;
-import com.nb.app.doctor.api.feign.IAppDoctorUserClient;
+import com.nb.app.assistant.controller.vo.MonitorAddVo;
 import com.nb.core.exception.CustomException;
 import com.nb.core.result.R;
 import com.nb.web.api.feign.IPatientClient;
@@ -12,10 +12,7 @@ import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 /**
  * @author lifang
@@ -26,16 +23,16 @@ import org.springframework.web.bind.annotation.RestController;
  */
 @RestController
 @AllArgsConstructor
-@RequestMapping("/monitor")
+@RequestMapping("/assist/monitor")
 @Api(tags = "监控患者相关操作")
 @Slf4j
 public class PatientOperationController {
 
     private final IPatientClient patientClient;
-    private final IAppDoctorUserClient doctorUserClient;
+
     @PostMapping("/save")
     @ApiOperation(value = "添加看护人")
-    public R saveMonitor(){
+    public R saveMonitor(@RequestBody MonitorAddVo vo){
         return R.success();
     }
 

+ 33 - 0
nb-service/app-assistant/src/main/java/com/nb/app/assistant/controller/vo/MonitorAddVo.java

@@ -0,0 +1,33 @@
+package com.nb.app.assistant.controller.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiParam;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName MonitorAddVo.java
+ * @Description 添加监护人
+ * @createTime 2022年08月11日 19:25:00
+ */
+@Data
+@ApiModel("添加监护人请求参数接收")
+public class MonitorAddVo {
+    @ApiModelProperty(value = "疼痛小助手用户id",required = true)
+    @NotNull(message = "疼痛小助手用户id不能为空")
+    private String assistantUserId;
+    @ApiModelProperty(value = "被监护病人id",required = true)
+    @NotNull(message = "被监护病人id不能为空")
+    private String patientId;
+    @ApiModelProperty(value = "app医生端用户id",required = true)
+    @NotNull(message = "app医生端用户id不能为空")
+    private String appDoctorUserId;
+    @ApiModelProperty(value = "医院id",required = true)
+    @NotNull(message = "医院id不能为空")
+    private String tenantId;
+
+}

+ 1 - 1
nb-service/app-assistant/src/main/java/com/nb/app/assistant/entity/AssistantUserEntity.java

@@ -21,7 +21,7 @@ import org.hibernate.validator.constraints.Length;
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
-@TableName(value = "app_assistant_user",autoResultMap = true)
+@TableName(value = "assistant_user",autoResultMap = true)
 @ApiModel(value="疼痛小助手用户")
 @ToString
 @NoArgsConstructor

+ 11 - 0
nb-service/app-assistant/src/main/java/com/nb/app/assistant/service/LocalAssistantUserService.java

@@ -1,7 +1,11 @@
 package com.nb.app.assistant.service;
 
+import cn.hutool.extra.spring.SpringUtil;
 import com.nb.app.assistant.entity.AssistantUserEntity;
 import com.nb.app.assistant.mapper.AssistantUserMapper;
+import com.nb.app.msg.bean.MsgBean;
+import com.nb.app.msg.enums.MsgEnum;
+import com.nb.app.msg.event.SaveMsgEvent;
 import com.nb.common.crud.BaseService;
 import org.springframework.stereotype.Component;
 
@@ -16,6 +20,13 @@ import org.springframework.stereotype.Component;
 public class LocalAssistantUserService extends BaseService<AssistantUserMapper, AssistantUserEntity,String> {
     @Override
     public void validateBeforeSave(AssistantUserEntity entity) {
+        //用户新增后发送注册通知
+        SpringUtil.publishEvent(new SaveMsgEvent(this,
+                MsgBean.builder()
+                        .msgType(MsgEnum.REGISTER)
+                        .sys(true)
+                        .receiver(entity.getId()).build()
+        ));
 
     }
 

+ 36 - 0
nb-service/app-msg/pom.xml

@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>nb-common</artifactId>
+        <groupId>com.tuoren</groupId>
+        <version>1.0</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>app-msg</artifactId>
+
+
+    <description>内部消息通知模块</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>com.tuoren</groupId>
+            <artifactId>app-msg-api</artifactId>
+            <version>1.0</version>
+        </dependency>
+        <dependency>
+            <groupId>com.tuoren</groupId>
+            <artifactId>crud-common</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.tuoren</groupId>
+            <artifactId>nb-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+        </dependency>
+    </dependencies>
+</project>

+ 46 - 0
nb-service/app-msg/src/main/java/com/nb/app/msg/controller/AppMsgController.java

@@ -0,0 +1,46 @@
+package com.nb.app.msg.controller;
+
+import cn.dev33.satoken.stp.StpLogic;
+import com.nb.app.msg.entity.AppMsgEntity;
+import com.nb.app.msg.service.LocalAppMsgService;
+import com.nb.auth.utils.SecurityUtil;
+import com.nb.common.crud.BaseService;
+import com.nb.common.crud.controller.BaseCrudController;
+import com.nb.common.crud.controller.BaseQueryController;
+import com.nb.common.crud.controller.BaseSaveController;
+import io.swagger.annotations.Api;
+import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName AssistantEvalController.java
+ * @Description TODO
+ * @createTime 2022年08月10日 22:21:00
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/msg")
+@Api(tags = "消息操作")
+@Slf4j
+public class AppMsgController implements BaseSaveController<AppMsgEntity,String>,
+        BaseQueryController<AppMsgEntity,String> {
+    private final LocalAppMsgService msgService;
+    @Override
+    public BaseService getService() {
+        return msgService;
+    }
+
+    @Override
+    public String getPermissionPrefix() {
+        return null;
+    }
+
+    @Override
+    public StpLogic getStpLogin() {
+        return SecurityUtil.getStpLogic();
+    }
+}

+ 30 - 0
nb-service/app-msg/src/main/java/com/nb/app/msg/doc/MsgDocConfig.java

@@ -0,0 +1,30 @@
+package com.nb.app.msg.doc;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.stereotype.Component;
+import springfox.documentation.builders.PathSelectors;
+import springfox.documentation.builders.RequestHandlerSelectors;
+import springfox.documentation.spi.DocumentationType;
+import springfox.documentation.spring.web.plugins.Docket;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName SwaggerDocConfig.java
+ * @Description TODO
+ * @createTime 2022年08月01日 22:01:00
+ */
+@Component
+public class MsgDocConfig {
+
+    @Bean
+    public Docket msgDoc(){
+        return new Docket(DocumentationType.SWAGGER_2)
+                .select()
+                .apis(RequestHandlerSelectors.basePackage("com.nb.app.msg.controller"))
+                .paths(PathSelectors.any())
+                .build()
+                .groupName("站内消息模块");
+    }
+
+}

+ 92 - 0
nb-service/app-msg/src/main/java/com/nb/app/msg/entity/AppMsgEntity.java

@@ -0,0 +1,92 @@
+package com.nb.app.msg.entity;
+
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.nb.core.entity.GenericEntity;
+import com.nb.app.msg.enums.MsgEnum;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.ToString;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName MsgEntity.java
+ * @Description TODO
+ * @createTime 2022年08月12日 09:39:00
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName(value = "app_msg",autoResultMap = true)
+@ApiModel(value="消息表")
+@ToString
+@NoArgsConstructor
+public class AppMsgEntity  extends GenericEntity<String> {
+    @ApiModelProperty(value = "消息主题")
+    private String title;
+
+    @ApiModelProperty(value = "消息类型")
+    private MsgEnum msgType;
+
+    @ApiModelProperty(value = "发送人id")
+    private String sender;
+
+    @ApiModelProperty(value = "发送人名称")
+    private String senderName;
+
+    @ApiModelProperty(value = "发送人id")
+    @JsonIgnoreProperties
+    private String patientName;
+
+    @ApiModelProperty(value = "发送人id")
+    @JsonIgnoreProperties
+    private String patientCode;
+
+    @ApiModelProperty(value = " 患者id")
+    @JsonIgnoreProperties
+    private String patientId;
+
+    @ApiModelProperty(value = "负载 即申请id 、咨询id 等")
+    private String payload;
+
+    @ApiModelProperty(value = "接收人 即 医生id",required = true)
+    private String receiver;
+
+    @ApiModelProperty(value = "接收人名称 ",required = true)
+    private String receiverName;
+
+    @ApiModelProperty(value = "是否已读",required = true)
+    private boolean read;
+
+    @ApiModelProperty("扩展内容")
+    private String extend;
+
+    public String getSummary() {
+        return "";
+    }
+
+
+    public String getPatient() {
+        return StrUtil.isEmpty(patientName)?patientCode:patientName;
+    }
+
+    public String getTitle() {
+        switch (msgType){
+            case CONSUL:
+                return getSenderName()+"发起疼痛:"+getExtend()+"咨询";
+            case REGISTER:
+                return "您已注册成功,默认密码为A123456,请及时更改";
+            case PAIN_CALL:
+                return getPatient()+"发起疼痛一键呼叫";
+            case CODE_BIND_NOTIFY:
+                return getSenderName()+"通过邀请码"+extend+"申请绑定";
+            case MANUAL_BIND_NOTIFY:
+                return getSenderName()+"发起用户绑定申请";
+            default:  return "";
+        }
+    }
+}

+ 16 - 0
nb-service/app-msg/src/main/java/com/nb/app/msg/mapper/AppMsgMapper.java

@@ -0,0 +1,16 @@
+package com.nb.app.msg.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.nb.app.msg.entity.AppMsgEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName AppMsgMapper.java
+ * @Description TODO
+ * @createTime 2022年08月12日 09:48:00
+ */
+@Mapper
+public interface AppMsgMapper extends BaseMapper<AppMsgEntity> {
+}

+ 32 - 0
nb-service/app-msg/src/main/java/com/nb/app/msg/service/LocalAppMsgService.java

@@ -0,0 +1,32 @@
+package com.nb.app.msg.service;
+
+import com.nb.common.crud.BaseService;
+import com.nb.app.msg.entity.AppMsgEntity;
+import com.nb.app.msg.mapper.AppMsgMapper;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName LocalAppMsgService.java
+ * @Description TODO
+ * @createTime 2022年08月12日 09:48:00
+ */
+@Service
+public class LocalAppMsgService extends BaseService<AppMsgMapper,AppMsgEntity,String> {
+
+    @Override
+    public void validateBeforeSave(AppMsgEntity entity) {
+
+    }
+
+    @Override
+    public void validateBeforeUpdate(AppMsgEntity entity) {
+
+    }
+
+    @Override
+    public void validateBeforeDelete(String id) {
+
+    }
+}

+ 1 - 0
nb-service/pom.xml

@@ -16,6 +16,7 @@
         <module>web-service</module>
         <module>app-doctor</module>
         <module>app-assistant</module>
+        <module>app-msg</module>
     </modules>
 
     <dependencies>

+ 10 - 0
pom.xml

@@ -69,6 +69,16 @@
     <!-- 依赖管理 -->
     <dependencyManagement>
         <dependencies>
+            <dependency>
+                <groupId>com.tuoren</groupId>
+                <artifactId>app-msg-api</artifactId>
+                <version>${nb.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>com.tuoren</groupId>
+                <artifactId>app-msg</artifactId>
+                <version>${nb.version}</version>
+            </dependency>
             <dependency>
                 <groupId>com.tuoren</groupId>
                 <artifactId>app-assistant-api</artifactId>