Przeglądaj źródła

新增
1、新增风险知情书模块
2、新增防噎食评估模块

liangwenxuan 2 tygodni temu
rodzic
commit
6c450f3c98
18 zmienionych plików z 990 dodań i 0 usunięć
  1. 85 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/ElderlyAsphyxiationByChokingController.java
  2. 85 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/ElderlyRiskDisclosureStatementController.java
  3. 33 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/asphyxiationbychoking/ElderlyAsphyxiationByChokingPageReqVO.java
  4. 60 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/asphyxiationbychoking/ElderlyAsphyxiationByChokingRespVO.java
  5. 46 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/asphyxiationbychoking/ElderlyAsphyxiationByChokingSaveReqVO.java
  6. 24 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/riskdisclosurestatement/ElderlyRiskDisclosureStatementPageReqVO.java
  7. 105 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/riskdisclosurestatement/ElderlyRiskDisclosureStatementRespVO.java
  8. 79 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/riskdisclosurestatement/ElderlyRiskDisclosureStatementSaveReqVO.java
  9. 61 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/biz/ElderlyAsphyxiationByChokingDO.java
  10. 94 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/biz/ElderlyRiskDisclosureStatementDO.java
  11. 28 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/biz/ElderlyAsphyxiationByChokingMapper.java
  12. 28 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/biz/ElderlyRiskDisclosureStatementMapper.java
  13. 20 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyAsphyxiationByChokingService.java
  14. 65 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyAsphyxiationByChokingServiceImpl.java
  15. 20 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyRiskDisclosureStatementService.java
  16. 65 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyRiskDisclosureStatementServiceImpl.java
  17. 45 0
      yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/ElderlyAsphyxiationByChokingMapper.xml
  18. 47 0
      yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/ElderlyRiskDisclosureStatementMapper.xml

+ 85 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/ElderlyAsphyxiationByChokingController.java

@@ -0,0 +1,85 @@
+package cn.iocoder.yudao.module.system.controller.admin.biz;
+
+import cn.iocoder.yudao.framework.common.pojo.CommonResult;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
+import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingPageReqVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingRespVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingSaveReqVO;
+import cn.iocoder.yudao.module.system.service.biz.ElderlyAsphyxiationByChokingService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import javax.validation.Valid;
+
+import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
+
+@Tag(name = "管理后台 - 防噎食评估")
+@RestController
+@RequestMapping("/elderly-asphyxiation-by-choking")
+@Validated
+public class ElderlyAsphyxiationByChokingController {
+
+    @Resource
+    private ElderlyAsphyxiationByChokingService elderlyAsphyxiationByChokingService;
+
+    @PostMapping("/create")
+    @Operation(summary = "创建防噎食评估")
+    public CommonResult<Long> create(@Valid @RequestBody ElderlyAsphyxiationByChokingSaveReqVO createReqVO) {
+        if (createReqVO.getTenantId() == null) {
+            createReqVO.setTenantId(TenantContextHolder.getTenantId());
+        }
+        return success(elderlyAsphyxiationByChokingService.create(createReqVO));
+    }
+
+    @PutMapping("/update")
+    @Operation(summary = "更新防噎食评估")
+    @TenantIgnore
+    public CommonResult<Boolean> update(@Valid @RequestBody ElderlyAsphyxiationByChokingSaveReqVO updateReqVO) {
+        if (updateReqVO.getTenantId() == null) {
+            updateReqVO.setTenantId(TenantContextHolder.getTenantId());
+        }
+        elderlyAsphyxiationByChokingService.update(updateReqVO);
+        return success(true);
+    }
+
+    @DeleteMapping("/delete")
+    @Operation(summary = "删除防噎食评估")
+    @Parameter(name = "id", description = "编号", required = true)
+    @TenantIgnore
+    public CommonResult<Boolean> delete(@RequestParam("id") Long id) {
+        elderlyAsphyxiationByChokingService.delete(id);
+        return success(true);
+    }
+
+    @GetMapping("/get")
+    @Operation(summary = "获得防噎食评估详情")
+    @Parameter(name = "id", description = "编号", required = true, example = "1")
+    @TenantIgnore
+    public CommonResult<ElderlyAsphyxiationByChokingRespVO> get(@RequestParam("id") Long id) {
+        return success(elderlyAsphyxiationByChokingService.get(id));
+    }
+
+    @GetMapping("/page")
+    @Operation(summary = "获得防噎食评估分页")
+    @TenantIgnore
+    public CommonResult<PageResult<ElderlyAsphyxiationByChokingRespVO>> page(@Valid ElderlyAsphyxiationByChokingPageReqVO pageReqVO) {
+        if (pageReqVO.getTenantIds() == null) {
+            pageReqVO.setTenantIds(new Long[]{TenantContextHolder.getTenantId()});
+        }
+        return success(elderlyAsphyxiationByChokingService.getPage(pageReqVO));
+    }
+}
+

+ 85 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/ElderlyRiskDisclosureStatementController.java

@@ -0,0 +1,85 @@
+package cn.iocoder.yudao.module.system.controller.admin.biz;
+
+import cn.iocoder.yudao.framework.common.pojo.CommonResult;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
+import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementPageReqVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementRespVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementSaveReqVO;
+import cn.iocoder.yudao.module.system.service.biz.ElderlyRiskDisclosureStatementService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import javax.validation.Valid;
+
+import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
+
+@Tag(name = "管理后台 - 风险知情书")
+@RestController
+@RequestMapping("/elderly-risk-disclosure-statement")
+@Validated
+public class ElderlyRiskDisclosureStatementController {
+
+    @Resource
+    private ElderlyRiskDisclosureStatementService elderlyRiskDisclosureStatementService;
+
+    @PostMapping("/create")
+    @Operation(summary = "创建风险知情书")
+    public CommonResult<Long> create(@Valid @RequestBody ElderlyRiskDisclosureStatementSaveReqVO createReqVO) {
+        if (createReqVO.getTenantId() == null) {
+            createReqVO.setTenantId(TenantContextHolder.getTenantId());
+        }
+        return success(elderlyRiskDisclosureStatementService.create(createReqVO));
+    }
+
+    @PutMapping("/update")
+    @Operation(summary = "更新风险知情书")
+    @TenantIgnore
+    public CommonResult<Boolean> update(@Valid @RequestBody ElderlyRiskDisclosureStatementSaveReqVO updateReqVO) {
+        if (updateReqVO.getTenantId() == null) {
+            updateReqVO.setTenantId(TenantContextHolder.getTenantId());
+        }
+        elderlyRiskDisclosureStatementService.update(updateReqVO);
+        return success(true);
+    }
+
+    @DeleteMapping("/delete")
+    @Operation(summary = "删除风险知情书")
+    @Parameter(name = "id", description = "编号", required = true)
+    @TenantIgnore
+    public CommonResult<Boolean> delete(@RequestParam("id") Long id) {
+        elderlyRiskDisclosureStatementService.delete(id);
+        return success(true);
+    }
+
+    @GetMapping("/get")
+    @Operation(summary = "获得风险知情书详情")
+    @Parameter(name = "id", description = "编号", required = true, example = "1")
+    @TenantIgnore
+    public CommonResult<ElderlyRiskDisclosureStatementRespVO> get(@RequestParam("id") Long id) {
+        return success(elderlyRiskDisclosureStatementService.get(id));
+    }
+
+    @GetMapping("/page")
+    @Operation(summary = "获得风险知情书分页")
+    @TenantIgnore
+    public CommonResult<PageResult<ElderlyRiskDisclosureStatementRespVO>> page(@Valid ElderlyRiskDisclosureStatementPageReqVO pageReqVO) {
+        if (pageReqVO.getTenantIds() == null) {
+            pageReqVO.setTenantIds(new Long[]{TenantContextHolder.getTenantId()});
+        }
+        return success(elderlyRiskDisclosureStatementService.getPage(pageReqVO));
+    }
+}
+

+ 33 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/asphyxiationbychoking/ElderlyAsphyxiationByChokingPageReqVO.java

@@ -0,0 +1,33 @@
+package cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking;
+
+import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalDate;
+
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
+
+@Schema(description = "管理后台 - 防噎食评估分页 Request VO")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class ElderlyAsphyxiationByChokingPageReqVO extends PageParam {
+
+    @Schema(description = "长者姓名(模糊)")
+    private String elderName;
+
+    @Schema(description = "评估人(模糊)")
+    private String assessor;
+
+    @Schema(description = "评估日期范围")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    private LocalDate[] assessDate;
+
+    @Schema(description = "机构id数组")
+    private Long[] tenantIds;
+}
+

+ 60 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/asphyxiationbychoking/ElderlyAsphyxiationByChokingRespVO.java

@@ -0,0 +1,60 @@
+package cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT;
+
+@Schema(description = "管理后台 - 防噎食评估 Response VO")
+@Data
+public class ElderlyAsphyxiationByChokingRespVO {
+
+    @Schema(description = "id", example = "1")
+    private Long id;
+
+    @Schema(description = "长者id", example = "1")
+    private Long elderId;
+
+    @Schema(description = "长者姓名")
+    private String elderName;
+
+    @Schema(description = "评估数据")
+    private String assessData;
+
+    @Schema(description = "评估人")
+    private String assessor;
+
+    @Schema(description = "记录日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate assessDate;
+
+    @Schema(description = "风险程度")
+    private String riskLevel;
+
+    @Schema(description = "评估得分")
+    private BigDecimal assessScore;
+
+    @Schema(description = "记录人")
+    private String creator;
+
+    @Schema(description = "机构id", example = "1")
+    private Long tenantId;
+
+    @Schema(description = "创建时间")
+    private LocalDateTime createTime;
+
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+    @Schema(description = "更新人")
+    private String updater;
+}
+

+ 46 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/asphyxiationbychoking/ElderlyAsphyxiationByChokingSaveReqVO.java

@@ -0,0 +1,46 @@
+package cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT;
+
+@Schema(description = "管理后台 - 防噎食评估新增/修改 Request VO")
+@Data
+public class ElderlyAsphyxiationByChokingSaveReqVO {
+
+    @Schema(description = "id(修改时必传)", example = "1")
+    private Long id;
+
+    @Schema(description = "长者id", example = "1")
+    private Long elderId;
+
+    @Schema(description = "评估数据")
+    private String assessData;
+
+    @Schema(description = "评估人")
+    private String assessor;
+
+    @Schema(description = "评估日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate assessDate;
+
+    @Schema(description = "风险程度")
+    private String riskLevel;
+
+    @Schema(description = "评估得分")
+    private BigDecimal assessScore;
+
+    @Schema(description = "机构id", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+    @NotNull(message = "机构id不能为空")
+    private Long tenantId;
+}
+

+ 24 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/riskdisclosurestatement/ElderlyRiskDisclosureStatementPageReqVO.java

@@ -0,0 +1,24 @@
+package cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement;
+
+import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+@Schema(description = "管理后台 - 风险知情书分页 Request VO")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class ElderlyRiskDisclosureStatementPageReqVO extends PageParam {
+
+    @Schema(description = "长者姓名(模糊)")
+    private String elderName;
+
+    @Schema(description = "楼层id")
+    private Long floorId;
+
+    @Schema(description = "机构id数组")
+    private Long[] tenantIds;
+}
+

+ 105 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/riskdisclosurestatement/ElderlyRiskDisclosureStatementRespVO.java

@@ -0,0 +1,105 @@
+package cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT;
+
+@Schema(description = "管理后台 - 风险知情书 Response VO")
+@Data
+public class ElderlyRiskDisclosureStatementRespVO {
+
+    @Schema(description = "id", example = "1")
+    private Long id;
+
+    @Schema(description = "长者id", example = "1")
+    private Long elderId;
+
+    @Schema(description = "长者姓名")
+    private String elderName;
+
+    @Schema(description = "性别")
+    private Integer elderSex;
+
+    @Schema(description = "年龄")
+    private Integer elderAge;
+
+    @Schema(description = "楼层")
+    private String floorName;
+
+    @Schema(description = "床号")
+    private String bedName;
+
+    @Schema(description = "服务安全风险知情告知书")
+    private String riskData;
+
+    @Schema(description = "第一次告知风险")
+    private String firstRisk;
+
+    @Schema(description = "第一次告知护理人员签名")
+    private String firstNurseSign;
+
+    @Schema(description = "第一次告知老年人/相关第三方签字")
+    private String firstElderSign;
+
+    @Schema(description = "首次告知日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate firstSignDate;
+
+    @Schema(description = "第二次告知风险")
+    private String secondRisk;
+
+    @Schema(description = "第二次告知护理人员签名")
+    private String secondNurseSign;
+
+    @Schema(description = "第二次告知变动风险")
+    private String secondChangeRisk;
+
+    @Schema(description = "第二次告知风险程度")
+    private String secondRiskLevel;
+
+    @Schema(description = "第二次告知老年人/相关第三方签字")
+    private String secondElderSign;
+
+    @Schema(description = "第二次告知日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate secondSignDate;
+
+    @Schema(description = "备注")
+    private String remark;
+
+    @Schema(description = "护理人员签字")
+    private String nurseSign;
+
+    @Schema(description = "老年人/相关第三方签字")
+    private String elderSign;
+
+    @Schema(description = "签字日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate signDate;
+
+    @Schema(description = "机构id", example = "1")
+    private Long tenantId;
+
+    @Schema(description = "创建时间")
+    private LocalDateTime createTime;
+
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+    @Schema(description = "创建人")
+    private String creator;
+
+    @Schema(description = "更新人")
+    private String updater;
+}
+

+ 79 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/riskdisclosurestatement/ElderlyRiskDisclosureStatementSaveReqVO.java

@@ -0,0 +1,79 @@
+package cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.validation.constraints.NotNull;
+import java.time.LocalDate;
+
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT;
+
+@Schema(description = "管理后台 - 风险知情书新增/修改 Request VO")
+@Data
+public class ElderlyRiskDisclosureStatementSaveReqVO {
+
+    @Schema(description = "id(修改时必传)", example = "1")
+    private Long id;
+
+    @Schema(description = "长者id", example = "1")
+    private Long elderId;
+
+    @Schema(description = "服务安全风险知情告知书")
+    private String riskData;
+
+    @Schema(description = "第一次告知风险")
+    private String firstRisk;
+
+    @Schema(description = "第一次告知护理人员签名")
+    private String firstNurseSign;
+
+    @Schema(description = "第一次告知老年人/相关第三方签字")
+    private String firstElderSign;
+
+    @Schema(description = "第一次告知签字日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate firstSignDate;
+
+    @Schema(description = "第二次告知风险")
+    private String secondRisk;
+
+    @Schema(description = "第二次告知护理人员签名")
+    private String secondNurseSign;
+
+    @Schema(description = "第二次告知变动风险")
+    private String secondChangeRisk;
+
+    @Schema(description = "第二次告知风险程度")
+    private String secondRiskLevel;
+
+    @Schema(description = "第二次告知老年人/相关第三方签字")
+    private String secondElderSign;
+
+    @Schema(description = "第二次告知签字日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate secondSignDate;
+
+    @Schema(description = "备注")
+    private String remark;
+
+    @Schema(description = "护理人员签字")
+    private String nurseSign;
+
+    @Schema(description = "老年人/相关第三方签字")
+    private String elderSign;
+
+    @Schema(description = "签字日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate signDate;
+
+    @Schema(description = "机构id", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+    @NotNull(message = "机构id不能为空")
+    private Long tenantId;
+}
+

+ 61 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/biz/ElderlyAsphyxiationByChokingDO.java

@@ -0,0 +1,61 @@
+package cn.iocoder.yudao.module.system.dal.dataobject.biz;
+
+import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseNoDeleteDO;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.ToString;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT;
+
+/**
+ * 防噎食评估 DO
+ */
+@TableName("elderly_asphyxiation_by_choking")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class ElderlyAsphyxiationByChokingDO extends BaseNoDeleteDO {
+
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    @Schema(description = "长者id")
+    private Long elderId;
+
+    @Schema(description = "评估数据")
+    private String assessData;
+
+    @Schema(description = "评估人")
+    private String assessor;
+
+    @Schema(description = "评估日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate assessDate;
+
+    @Schema(description = "风险程度")
+    private String riskLevel;
+
+    @Schema(description = "评估得分")
+    private BigDecimal assessScore;
+
+    @Schema(description = "机构id")
+    private Long tenantId;
+}
+

+ 94 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/biz/ElderlyRiskDisclosureStatementDO.java

@@ -0,0 +1,94 @@
+package cn.iocoder.yudao.module.system.dal.dataobject.biz;
+
+import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseNoDeleteDO;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.ToString;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalDate;
+
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT;
+
+/**
+ * 风险知情书 DO
+ */
+@TableName("elderly_risk_disclosure_statement")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class ElderlyRiskDisclosureStatementDO extends BaseNoDeleteDO {
+
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    @Schema(description = "长者id")
+    private Long elderId;
+
+    @Schema(description = "服务安全风险知情告知书")
+    private String riskData;
+
+    @Schema(description = "第一次告知风险")
+    private String firstRisk;
+
+    @Schema(description = "第一次告知护理人员签名")
+    private String firstNurseSign;
+
+    @Schema(description = "第一次告知老年人/相关第三方签字")
+    private String firstElderSign;
+
+    @Schema(description = "第一次告知签字日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate firstSignDate;
+
+    @Schema(description = "第二次告知风险")
+    private String secondRisk;
+
+    @Schema(description = "第二次告知护理人员签名")
+    private String secondNurseSign;
+
+    @Schema(description = "第二次告知变动风险")
+    private String secondChangeRisk;
+
+    @Schema(description = "第二次告知风险程度")
+    private String secondRiskLevel;
+
+    @Schema(description = "第二次告知老年人/相关第三方签字")
+    private String secondElderSign;
+
+    @Schema(description = "第二次告知签字日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate secondSignDate;
+
+    @Schema(description = "备注")
+    private String remark;
+
+    @Schema(description = "护理人员签字")
+    private String nurseSign;
+
+    @Schema(description = "老年人/相关第三方签字")
+    private String elderSign;
+
+    @Schema(description = "签字日期")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY)
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY, timezone = TIME_ZONE_DEFAULT)
+    private LocalDate signDate;
+
+    @Schema(description = "机构id")
+    private Long tenantId;
+}
+

+ 28 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/biz/ElderlyAsphyxiationByChokingMapper.java

@@ -0,0 +1,28 @@
+package cn.iocoder.yudao.module.system.dal.mysql.biz;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingPageReqVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingRespVO;
+import cn.iocoder.yudao.module.system.dal.dataobject.biz.ElderlyAsphyxiationByChokingDO;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface ElderlyAsphyxiationByChokingMapper extends BaseMapperX<ElderlyAsphyxiationByChokingDO> {
+
+    List<ElderlyAsphyxiationByChokingRespVO> selectPageWithElderInfo(Page<ElderlyAsphyxiationByChokingRespVO> page,
+                                                                     @Param("reqVO") ElderlyAsphyxiationByChokingPageReqVO reqVO);
+
+    ElderlyAsphyxiationByChokingRespVO selectByIdWithElderInfo(@Param("id") Long id);
+
+    default PageResult<ElderlyAsphyxiationByChokingRespVO> selectPageWithElderInfo(ElderlyAsphyxiationByChokingPageReqVO reqVO) {
+        Page<ElderlyAsphyxiationByChokingRespVO> page = new Page<>(reqVO.getPageNo(), reqVO.getPageSize());
+        List<ElderlyAsphyxiationByChokingRespVO> list = selectPageWithElderInfo(page, reqVO);
+        return new PageResult<>(list, page.getTotal());
+    }
+}
+

+ 28 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/biz/ElderlyRiskDisclosureStatementMapper.java

@@ -0,0 +1,28 @@
+package cn.iocoder.yudao.module.system.dal.mysql.biz;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementPageReqVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementRespVO;
+import cn.iocoder.yudao.module.system.dal.dataobject.biz.ElderlyRiskDisclosureStatementDO;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface ElderlyRiskDisclosureStatementMapper extends BaseMapperX<ElderlyRiskDisclosureStatementDO> {
+
+    List<ElderlyRiskDisclosureStatementRespVO> selectPageWithElderInfo(Page<ElderlyRiskDisclosureStatementRespVO> page,
+                                                                      @Param("reqVO") ElderlyRiskDisclosureStatementPageReqVO reqVO);
+
+    ElderlyRiskDisclosureStatementRespVO selectByIdWithElderInfo(@Param("id") Long id);
+
+    default PageResult<ElderlyRiskDisclosureStatementRespVO> selectPageWithElderInfo(ElderlyRiskDisclosureStatementPageReqVO reqVO) {
+        Page<ElderlyRiskDisclosureStatementRespVO> page = new Page<>(reqVO.getPageNo(), reqVO.getPageSize());
+        List<ElderlyRiskDisclosureStatementRespVO> list = selectPageWithElderInfo(page, reqVO);
+        return new PageResult<>(list, page.getTotal());
+    }
+}
+

+ 20 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyAsphyxiationByChokingService.java

@@ -0,0 +1,20 @@
+package cn.iocoder.yudao.module.system.service.biz;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingPageReqVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingRespVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingSaveReqVO;
+
+public interface ElderlyAsphyxiationByChokingService {
+
+    Long create(ElderlyAsphyxiationByChokingSaveReqVO createReqVO);
+
+    void update(ElderlyAsphyxiationByChokingSaveReqVO updateReqVO);
+
+    void delete(Long id);
+
+    ElderlyAsphyxiationByChokingRespVO get(Long id);
+
+    PageResult<ElderlyAsphyxiationByChokingRespVO> getPage(ElderlyAsphyxiationByChokingPageReqVO pageReqVO);
+}
+

+ 65 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyAsphyxiationByChokingServiceImpl.java

@@ -0,0 +1,65 @@
+package cn.iocoder.yudao.module.system.service.biz;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingPageReqVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingRespVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingSaveReqVO;
+import cn.iocoder.yudao.module.system.dal.dataobject.biz.ElderlyAsphyxiationByChokingDO;
+import cn.iocoder.yudao.module.system.dal.mysql.biz.ElderlyAsphyxiationByChokingMapper;
+import org.springframework.stereotype.Service;
+import org.springframework.validation.annotation.Validated;
+
+import javax.annotation.Resource;
+
+import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
+import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.COMMON_NOT_FOUND;
+
+@Service
+@Validated
+public class ElderlyAsphyxiationByChokingServiceImpl implements ElderlyAsphyxiationByChokingService {
+
+    @Resource
+    private ElderlyAsphyxiationByChokingMapper elderlyAsphyxiationByChokingMapper;
+
+    @Override
+    public Long create(ElderlyAsphyxiationByChokingSaveReqVO createReqVO) {
+        ElderlyAsphyxiationByChokingDO record = BeanUtils.toBean(createReqVO, ElderlyAsphyxiationByChokingDO.class);
+        elderlyAsphyxiationByChokingMapper.insert(record);
+        return record.getId();
+    }
+
+    @Override
+    public void update(ElderlyAsphyxiationByChokingSaveReqVO updateReqVO) {
+        validateExists(updateReqVO.getId());
+        ElderlyAsphyxiationByChokingDO updateObj = BeanUtils.toBean(updateReqVO, ElderlyAsphyxiationByChokingDO.class);
+        elderlyAsphyxiationByChokingMapper.updateById(updateObj);
+    }
+
+    @Override
+    public void delete(Long id) {
+        validateExists(id);
+        elderlyAsphyxiationByChokingMapper.deleteById(id);
+    }
+
+    @Override
+    public ElderlyAsphyxiationByChokingRespVO get(Long id) {
+        ElderlyAsphyxiationByChokingRespVO respVO = elderlyAsphyxiationByChokingMapper.selectByIdWithElderInfo(id);
+        if (respVO == null) {
+            throw exception(COMMON_NOT_FOUND);
+        }
+        return respVO;
+    }
+
+    @Override
+    public PageResult<ElderlyAsphyxiationByChokingRespVO> getPage(ElderlyAsphyxiationByChokingPageReqVO pageReqVO) {
+        return elderlyAsphyxiationByChokingMapper.selectPageWithElderInfo(pageReqVO);
+    }
+
+    private void validateExists(Long id) {
+        if (id == null || elderlyAsphyxiationByChokingMapper.selectById(id) == null) {
+            throw exception(COMMON_NOT_FOUND);
+        }
+    }
+}
+

+ 20 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyRiskDisclosureStatementService.java

@@ -0,0 +1,20 @@
+package cn.iocoder.yudao.module.system.service.biz;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementPageReqVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementRespVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementSaveReqVO;
+
+public interface ElderlyRiskDisclosureStatementService {
+
+    Long create(ElderlyRiskDisclosureStatementSaveReqVO createReqVO);
+
+    void update(ElderlyRiskDisclosureStatementSaveReqVO updateReqVO);
+
+    void delete(Long id);
+
+    ElderlyRiskDisclosureStatementRespVO get(Long id);
+
+    PageResult<ElderlyRiskDisclosureStatementRespVO> getPage(ElderlyRiskDisclosureStatementPageReqVO pageReqVO);
+}
+

+ 65 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyRiskDisclosureStatementServiceImpl.java

@@ -0,0 +1,65 @@
+package cn.iocoder.yudao.module.system.service.biz;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementPageReqVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementRespVO;
+import cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementSaveReqVO;
+import cn.iocoder.yudao.module.system.dal.dataobject.biz.ElderlyRiskDisclosureStatementDO;
+import cn.iocoder.yudao.module.system.dal.mysql.biz.ElderlyRiskDisclosureStatementMapper;
+import org.springframework.stereotype.Service;
+import org.springframework.validation.annotation.Validated;
+
+import javax.annotation.Resource;
+
+import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
+import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.COMMON_NOT_FOUND;
+
+@Service
+@Validated
+public class ElderlyRiskDisclosureStatementServiceImpl implements ElderlyRiskDisclosureStatementService {
+
+    @Resource
+    private ElderlyRiskDisclosureStatementMapper elderlyRiskDisclosureStatementMapper;
+
+    @Override
+    public Long create(ElderlyRiskDisclosureStatementSaveReqVO createReqVO) {
+        ElderlyRiskDisclosureStatementDO record = BeanUtils.toBean(createReqVO, ElderlyRiskDisclosureStatementDO.class);
+        elderlyRiskDisclosureStatementMapper.insert(record);
+        return record.getId();
+    }
+
+    @Override
+    public void update(ElderlyRiskDisclosureStatementSaveReqVO updateReqVO) {
+        validateExists(updateReqVO.getId());
+        ElderlyRiskDisclosureStatementDO updateObj = BeanUtils.toBean(updateReqVO, ElderlyRiskDisclosureStatementDO.class);
+        elderlyRiskDisclosureStatementMapper.updateById(updateObj);
+    }
+
+    @Override
+    public void delete(Long id) {
+        validateExists(id);
+        elderlyRiskDisclosureStatementMapper.deleteById(id);
+    }
+
+    @Override
+    public ElderlyRiskDisclosureStatementRespVO get(Long id) {
+        ElderlyRiskDisclosureStatementRespVO respVO = elderlyRiskDisclosureStatementMapper.selectByIdWithElderInfo(id);
+        if (respVO == null) {
+            throw exception(COMMON_NOT_FOUND);
+        }
+        return respVO;
+    }
+
+    @Override
+    public PageResult<ElderlyRiskDisclosureStatementRespVO> getPage(ElderlyRiskDisclosureStatementPageReqVO pageReqVO) {
+        return elderlyRiskDisclosureStatementMapper.selectPageWithElderInfo(pageReqVO);
+    }
+
+    private void validateExists(Long id) {
+        if (id == null || elderlyRiskDisclosureStatementMapper.selectById(id) == null) {
+            throw exception(COMMON_NOT_FOUND);
+        }
+    }
+}
+

+ 45 - 0
yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/ElderlyAsphyxiationByChokingMapper.xml

@@ -0,0 +1,45 @@
+<?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="cn.iocoder.yudao.module.system.dal.mysql.biz.ElderlyAsphyxiationByChokingMapper">
+
+    <select id="selectPageWithElderInfo"
+            resultType="cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingRespVO">
+        SELECT
+            eabc.*,
+            ei.elder_name AS elderName
+        FROM elderly_asphyxiation_by_choking eabc
+        LEFT JOIN elderly_info ei ON ei.id = eabc.elder_id
+        WHERE 1 = 1
+        <if test="reqVO.tenantIds != null">
+            AND eabc.tenant_id IN
+            <foreach item="id" collection="reqVO.tenantIds" open="(" separator="," close=")">
+                #{id}
+            </foreach>
+        </if>
+        <if test="reqVO.elderName != null and reqVO.elderName != ''">
+            AND ei.elder_name LIKE CONCAT('%', #{reqVO.elderName}, '%')
+        </if>
+        <if test="reqVO.assessor != null and reqVO.assessor != ''">
+            AND eabc.assessor LIKE CONCAT('%', #{reqVO.assessor}, '%')
+        </if>
+        <if test="reqVO.assessDate != null and reqVO.assessDate.length &gt;= 1">
+            AND eabc.assess_date &gt;= #{reqVO.assessDate[0]}
+        </if>
+        <if test="reqVO.assessDate != null and reqVO.assessDate.length == 2">
+            AND eabc.assess_date &lt;= #{reqVO.assessDate[1]}
+        </if>
+        ORDER BY eabc.assess_date DESC, eabc.id DESC
+    </select>
+
+    <select id="selectByIdWithElderInfo"
+            resultType="cn.iocoder.yudao.module.system.controller.admin.biz.vo.asphyxiationbychoking.ElderlyAsphyxiationByChokingRespVO">
+        SELECT
+            eabc.*,
+            ei.elder_name AS elderName
+        FROM elderly_asphyxiation_by_choking eabc
+        LEFT JOIN elderly_info ei ON ei.id = eabc.elder_id
+        WHERE eabc.id = #{id}
+    </select>
+
+</mapper>
+

+ 47 - 0
yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/ElderlyRiskDisclosureStatementMapper.xml

@@ -0,0 +1,47 @@
+<?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="cn.iocoder.yudao.module.system.dal.mysql.biz.ElderlyRiskDisclosureStatementMapper">
+
+    <select id="selectPageWithElderInfo"
+            resultType="cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementRespVO">
+        SELECT
+            erds.*,
+            ei.elder_name AS elderName,
+            ei.elder_sex AS elderSex,
+            ei.elder_age AS elderAge,
+            ei.floor_name AS floorName,
+            ei.bed_name AS bedName
+        FROM elderly_risk_disclosure_statement erds
+        LEFT JOIN elderly_info ei ON ei.id = erds.elder_id
+        WHERE 1 = 1
+        <if test="reqVO.tenantIds != null">
+            AND erds.tenant_id IN
+            <foreach item="id" collection="reqVO.tenantIds" open="(" separator="," close=")">
+                #{id}
+            </foreach>
+        </if>
+        <if test="reqVO.elderName != null and reqVO.elderName != ''">
+            AND ei.elder_name LIKE CONCAT('%', #{reqVO.elderName}, '%')
+        </if>
+        <if test="reqVO.floorId != null">
+            AND ei.floor_id = #{reqVO.floorId}
+        </if>
+        ORDER BY erds.create_time DESC, erds.id DESC
+    </select>
+
+    <select id="selectByIdWithElderInfo"
+            resultType="cn.iocoder.yudao.module.system.controller.admin.biz.vo.riskdisclosurestatement.ElderlyRiskDisclosureStatementRespVO">
+        SELECT
+            erds.*,
+            ei.elder_name AS elderName,
+            ei.elder_sex AS elderSex,
+            ei.elder_age AS elderAge,
+            ei.floor_name AS floorName,
+            ei.bed_name AS bedName
+        FROM elderly_risk_disclosure_statement erds
+        LEFT JOIN elderly_info ei ON ei.id = erds.elder_id
+        WHERE erds.id = #{id}
+    </select>
+
+</mapper>
+