From 9d0284a032b17e1a10c68a0e665fd6d8b0a5f3ab Mon Sep 17 00:00:00 2001 From: sxu <602087911@qq.com> Date: Thu, 13 Mar 2025 09:37:39 +0800 Subject: [PATCH] healthbody --- .../dto/HealthCustMedicalReportEditDTO.java | 77 +++++++++++++++++++ .../mapper/HealthMedicalReportTmplMapper.java | 7 ++ .../HealthMedicalReportTmplService.java | 26 +++++-- .../vo/HealthMedicalReportDetailVO.java | 53 +++++++++++++ .../vo/HealthMedicalReportProjectVO.java | 44 +++++++++++ .../HealthMobileMedicalReportController.java | 24 ++++++ .../HealthMedicalReportTmplMapper.xml | 21 +++++ 7 files changed, 245 insertions(+), 7 deletions(-) create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/dto/HealthCustMedicalReportEditDTO.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/vo/HealthMedicalReportDetailVO.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/vo/HealthMedicalReportProjectVO.java diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/dto/HealthCustMedicalReportEditDTO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/dto/HealthCustMedicalReportEditDTO.java new file mode 100644 index 00000000..8bf341a3 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/dto/HealthCustMedicalReportEditDTO.java @@ -0,0 +1,77 @@ +package com.bonus.canteen.core.nutrition.common.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import com.bonus.canteen.core.nutrition.common.vo.HealthCustMedicalReportProjectVO; + +import java.time.LocalDate; +import java.util.List; + +@ApiModel("编辑人员体检报告") +public class HealthCustMedicalReportEditDTO { + @ApiModelProperty("人员id") + private Long custId; + @ApiModelProperty("体检id") + private Long medicalId; + @ApiModelProperty("体检日期") + private LocalDate medicalDate; + @ApiModelProperty("体检机构") + private String medicalMechanism; + @ApiModelProperty("体检模板id") + private Long medicalTemplateId; + @ApiModelProperty("体检报告项目") + private List reportProjectVOS; + + public Long getCustId() { + return this.custId; + } + + public Long getMedicalId() { + return this.medicalId; + } + + public LocalDate getMedicalDate() { + return this.medicalDate; + } + + public String getMedicalMechanism() { + return this.medicalMechanism; + } + + public Long getMedicalTemplateId() { + return this.medicalTemplateId; + } + + public List getReportProjectVOS() { + return this.reportProjectVOS; + } + + public void setCustId(final Long custId) { + this.custId = custId; + } + + public void setMedicalId(final Long medicalId) { + this.medicalId = medicalId; + } + + public void setMedicalDate(final LocalDate medicalDate) { + this.medicalDate = medicalDate; + } + + public void setMedicalMechanism(final String medicalMechanism) { + this.medicalMechanism = medicalMechanism; + } + + public void setMedicalTemplateId(final Long medicalTemplateId) { + this.medicalTemplateId = medicalTemplateId; + } + + public void setReportProjectVOS(final List reportProjectVOS) { + this.reportProjectVOS = reportProjectVOS; + } + + public String toString() { + Long var10000 = this.getCustId(); + return "HealthCustMedicalReportEditDTO(custId=" + var10000 + ", medicalId=" + this.getMedicalId() + ", medicalDate=" + String.valueOf(this.getMedicalDate()) + ", medicalMechanism=" + this.getMedicalMechanism() + ", medicalTemplateId=" + this.getMedicalTemplateId() + ", reportProjectVOS=" + String.valueOf(this.getReportProjectVOS()) + ")"; + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/mapper/HealthMedicalReportTmplMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/mapper/HealthMedicalReportTmplMapper.java index 2afc6207..d2e51234 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/mapper/HealthMedicalReportTmplMapper.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/mapper/HealthMedicalReportTmplMapper.java @@ -2,6 +2,8 @@ package com.bonus.canteen.core.nutrition.common.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.bonus.canteen.core.nutrition.common.model.HealthMedicalReportTemplate; +import com.bonus.canteen.core.nutrition.common.vo.HealthMedicalReportDetailVO; +import com.bonus.canteen.core.nutrition.common.vo.HealthMedicalReportProjectVO; import com.bonus.canteen.core.nutrition.common.vo.HealthMedicalReportTmplVO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -11,4 +13,9 @@ import java.util.List; @Mapper public interface HealthMedicalReportTmplMapper extends BaseMapper { List listTemplate(); + + List listReportProject(@Param("medicalTemplateId") Long medicalTemplateId); + + List listReportDetail(@Param("medicalProjectId") Long medicalProjectId); + } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/service/HealthMedicalReportTmplService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/service/HealthMedicalReportTmplService.java index ba31f80c..be94aaa3 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/service/HealthMedicalReportTmplService.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/service/HealthMedicalReportTmplService.java @@ -1,17 +1,12 @@ package com.bonus.canteen.core.nutrition.common.service; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.NumberUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.bonus.canteen.core.nutrition.common.mapper.HealthMedicalReportTmplMapper; +import com.bonus.canteen.core.nutrition.common.vo.HealthMedicalReportDetailVO; +import com.bonus.canteen.core.nutrition.common.vo.HealthMedicalReportProjectVO; import com.bonus.canteen.core.nutrition.common.vo.HealthMedicalReportTmplVO; import com.github.pagehelper.PageHelper; import org.springframework.stereotype.Service; - import javax.annotation.Resource; import java.lang.invoke.SerializedLambda; import java.util.Iterator; @@ -27,4 +22,21 @@ public class HealthMedicalReportTmplService { return this.healthMedicalReportTmplMapper.listTemplate(); } + public List getTemplateInfoByTmplId(Long templateId) { + List healthMedicalReportProjectVOS = this.healthMedicalReportTmplMapper.listReportProject(templateId); + if (CollectionUtil.isEmpty(healthMedicalReportProjectVOS)) { + return healthMedicalReportProjectVOS; + } else { + Iterator var3 = healthMedicalReportProjectVOS.iterator(); + + while(var3.hasNext()) { + HealthMedicalReportProjectVO project = (HealthMedicalReportProjectVO)var3.next(); + List medicalReportDetailVOList = this.healthMedicalReportTmplMapper.listReportDetail(project.getMedicalProjectId()); + project.setMedicalReportDetailVOList(medicalReportDetailVOList); + } + + return healthMedicalReportProjectVOS; + } + } + } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/vo/HealthMedicalReportDetailVO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/vo/HealthMedicalReportDetailVO.java new file mode 100644 index 00000000..ad7a3a0e --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/vo/HealthMedicalReportDetailVO.java @@ -0,0 +1,53 @@ +package com.bonus.canteen.core.nutrition.common.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +@ApiModel("体检模板项目详情") +public class HealthMedicalReportDetailVO { + @ApiModelProperty("体检项目明细id") + private Long medicalProjectDetailId; + @ApiModelProperty("体检项目明细名称") + private String medicalProjectDetailName; + @ApiModelProperty("单位") + private String medicalProjectDetailUnit; + @ApiModelProperty("参考值") + private String medicalProjectDetailReference; + + public Long getMedicalProjectDetailId() { + return this.medicalProjectDetailId; + } + + public String getMedicalProjectDetailName() { + return this.medicalProjectDetailName; + } + + public String getMedicalProjectDetailUnit() { + return this.medicalProjectDetailUnit; + } + + public String getMedicalProjectDetailReference() { + return this.medicalProjectDetailReference; + } + + public void setMedicalProjectDetailId(final Long medicalProjectDetailId) { + this.medicalProjectDetailId = medicalProjectDetailId; + } + + public void setMedicalProjectDetailName(final String medicalProjectDetailName) { + this.medicalProjectDetailName = medicalProjectDetailName; + } + + public void setMedicalProjectDetailUnit(final String medicalProjectDetailUnit) { + this.medicalProjectDetailUnit = medicalProjectDetailUnit; + } + + public void setMedicalProjectDetailReference(final String medicalProjectDetailReference) { + this.medicalProjectDetailReference = medicalProjectDetailReference; + } + + public String toString() { + Long var10000 = this.getMedicalProjectDetailId(); + return "HealthMedicalReportDetailVO(medicalProjectDetailId=" + var10000 + ", medicalProjectDetailName=" + this.getMedicalProjectDetailName() + ", medicalProjectDetailUnit=" + this.getMedicalProjectDetailUnit() + ", medicalProjectDetailReference=" + this.getMedicalProjectDetailReference() + ")"; + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/vo/HealthMedicalReportProjectVO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/vo/HealthMedicalReportProjectVO.java new file mode 100644 index 00000000..876dcdbd --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/common/vo/HealthMedicalReportProjectVO.java @@ -0,0 +1,44 @@ +package com.bonus.canteen.core.nutrition.common.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.util.List; + +@ApiModel("体检报告模板项目") +public class HealthMedicalReportProjectVO { + @ApiModelProperty("体检项目id") + private Long medicalProjectId; + @ApiModelProperty("体检项目名称") + private String medicalProjectName; + @ApiModelProperty("模板项目详情") + private List medicalReportDetailVOList; + + public Long getMedicalProjectId() { + return this.medicalProjectId; + } + + public String getMedicalProjectName() { + return this.medicalProjectName; + } + + public List getMedicalReportDetailVOList() { + return this.medicalReportDetailVOList; + } + + public void setMedicalProjectId(final Long medicalProjectId) { + this.medicalProjectId = medicalProjectId; + } + + public void setMedicalProjectName(final String medicalProjectName) { + this.medicalProjectName = medicalProjectName; + } + + public void setMedicalReportDetailVOList(final List medicalReportDetailVOList) { + this.medicalReportDetailVOList = medicalReportDetailVOList; + } + + public String toString() { + Long var10000 = this.getMedicalProjectId(); + return "HealthMedicalReportProjectVO(medicalProjectId=" + var10000 + ", medicalProjectName=" + this.getMedicalProjectName() + ", medicalReportDetailVOList=" + String.valueOf(this.getMedicalReportDetailVOList()) + ")"; + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/mobile/controller/HealthMobileMedicalReportController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/mobile/controller/HealthMobileMedicalReportController.java index 3570c654..800a02d1 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/mobile/controller/HealthMobileMedicalReportController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/nutrition/mobile/controller/HealthMobileMedicalReportController.java @@ -1,13 +1,16 @@ package com.bonus.canteen.core.nutrition.mobile.controller; import cn.hutool.core.text.CharSequenceUtil; +import com.bonus.canteen.core.nutrition.common.dto.HealthCustMedicalReportEditDTO; import com.bonus.canteen.core.nutrition.common.vo.HealthCustMedicalReportProjectVO; +import com.bonus.canteen.core.nutrition.common.vo.HealthMedicalReportProjectVO; import com.bonus.common.core.web.controller.BaseController; import com.bonus.canteen.core.common.utils.HeaderFetchUtil; import com.bonus.canteen.core.nutrition.common.service.HealthCustMedicalReportService; import com.bonus.canteen.core.nutrition.common.service.HealthMedicalReportTmplService; import com.bonus.canteen.core.nutrition.common.vo.HealthCustMedicalReportVO; import com.bonus.canteen.core.nutrition.common.vo.HealthMedicalReportTmplVO; +import com.bonus.common.core.web.domain.AjaxResult; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -51,6 +54,27 @@ public class HealthMobileMedicalReportController { return this.healthMedicalReportTmplService.listTemplate(); } + @PostMapping({"/get-template-info"}) +// @RequiresGuest + @ApiOperation("根据体检报告模板id查询模板详情") + public List getTemplateInfo(Long templateId) { + return this.healthMedicalReportTmplService.getTemplateInfoByTmplId(templateId); + } + + @PostMapping({"/edit-medicalreport"}) +// @RequiresGuest + @ApiOperation("编辑人员体检报告") + public AjaxResult editMedicalReport(@RequestBody HealthCustMedicalReportEditDTO dto) { + return this.healthCustMedicalReportService.editMedicalReport(dto); + } + + @PostMapping({"/delete-medicalreport"}) +// @RequiresGuest + @ApiOperation("删除人员体检报告") + public void deleteMedicalReport(Long medicalId) { + this.healthCustMedicalReportService.deleteMedicalReport(medicalId); + } + protected String getOpenidByHeaders(Map headers) { return HeaderFetchUtil.getValueFromHeadersIgnoreCase(headers, "openid"); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/nutrition.common/HealthMedicalReportTmplMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/nutrition.common/HealthMedicalReportTmplMapper.xml index 840e52ab..458b2b74 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/nutrition.common/HealthMedicalReportTmplMapper.xml +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/nutrition.common/HealthMedicalReportTmplMapper.xml @@ -11,4 +11,25 @@ health_medical_report_template + + + +