完成超声模块相关内容
Some checks failed
Java CI with Maven / build (11) (push) Has been cancelled
Java CI with Maven / build (17) (push) Has been cancelled
Java CI with Maven / build (8) (push) Has been cancelled
yudao-ui-admin CI / build (14.x) (push) Has been cancelled
yudao-ui-admin CI / build (16.x) (push) Has been cancelled

This commit is contained in:
lxd 2024-07-19 21:15:58 +08:00
parent 7e59d751dc
commit 1a4625c97c
20 changed files with 506 additions and 13 deletions

View File

@ -129,7 +129,18 @@ public class PatientexamlistController {
}
@PutMapping("/examineupdate")
@Operation(summary = "超声审核更新数据")
@PreAuthorize("@ss.hasPermission('tblist:patientexamlist:update')")
public CommonResult<Boolean> updateexaminelist(@Valid @RequestBody PatientexamlistSaveReqVO updateReqVO) {
LocalDateTime dateTime= LocalDateTime.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
updateReqVO.setDiagDate(dateTime);
updateReqVO.setReviewDate(dateTime);
patientexamlistService.updatePatientexamlist(updateReqVO);
return success(true);
}
}

View File

@ -91,4 +91,18 @@ public class PatientexamlistPageReqVO extends PageParam {
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "登记单号")
private String regId;
@Schema(description = "影像设备名称")
private String deviceName;
@Schema(description = "阴性阳性标记0 为阴性, 1为阳性")
private String diagFlag;
@Schema(description = "备注")
private String notes;
@Schema(description = "开单科室")
private String billDoctorDepartment;
}

View File

@ -119,4 +119,10 @@ public class PatientexamlistRespVO {
@Schema(description = "阴性阳性标记0 为阴性, 1为阳性")
private String diagFlag;
@Schema(description = "备注")
private String notes;
@Schema(description = "开单科室")
private String billDoctorDepartment;
}

View File

@ -79,4 +79,19 @@ public class PatientexamlistSaveReqVO {
@Schema(description = "缩略图oss url, httP:oss url", example = "https://www.iocoder.cn")
private String thumbnailImgUrl;
@Schema(description = "登记单号")
private String regId;
@Schema(description = "影像设备名称")
private String deviceName;
@Schema(description = "阴性阳性标记0 为阴性, 1为阳性")
private String diagFlag;
@Schema(description = "备注")
private String notes;
@Schema(description = "开单科室")
private String billDoctorDepartment;
}

View File

@ -1,5 +1,6 @@
package cn.iocoder.yudao.module.tblist.dal.dataobject.patientexamlist;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.time.*;
@ -157,4 +158,11 @@ public class PatientexamlistDO extends BaseDO {
@TableField(value = "diagFlag")
private String diagFlag;
@TableField(value = "notes")
private String notes;
@TableField(value = "billDoctorDepartment")
private String billDoctorDepartment;
}

View File

@ -0,0 +1,49 @@
package cn.iocoder.yudao.module.ultrasoniccom.controller.admin.ultrasonic.medicalimg;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
@Data
public class medicalimgVO {
@Schema(description = "主键", example = "26467")
private String ID;
@Schema(description = "地址", example = "1")
private String imgUrl;
@Schema(description = "科室名称", example = "1")
private String departmentName;
@Schema(description = "图像描述", example = "1")
private String imgDescription;
@Schema(description = "科室代号", example = "1")
private String departmentCode;
@Schema(description = "创建人", example = "1")
private String createPerson;
@Schema(description = "创建时间", example = "1")
private LocalDateTime createDate;
@Schema(description = "删除标记", example = "1")
private String isDelete;
@Schema(description = "删除人", example = "1")
private String deletePerson;
@Schema(description = "删除时间", example = "1")
private LocalDateTime deleteDate;
@Schema(description = "机构ID", example = "1")
private String orgId;
@Schema(description = "", example = "1")
private String regId;
@Schema(description = "是否选中为报告图", example = "1")
private String selected;
}

View File

@ -0,0 +1,21 @@
package cn.iocoder.yudao.module.ultrasoniccom.controller.admin.ultrasonic.medicalimg;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class upmedicalimgVO {
@Schema(description = "主键", example = "26467")
private String id;
@Schema(description = "删除标记", example = "1")
private String isDelete;
@Schema(description = "删除人", example = "1")
private String deletePerson;
@Schema(description = "是否为选中标记", example = "1")
private String selected;
}

View File

@ -1,6 +1,16 @@
package cn.iocoder.yudao.module.ultrasoniccom.controller.admin.ultrasonic;
import cn.hutool.core.date.DateTime;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.applyregistration.controller.admin.applyform.devicevo.DeviceVO;
import cn.iocoder.yudao.module.applyregistration.controller.admin.applyform.devicevo.deviceupVO;
import cn.iocoder.yudao.module.applyregistration.dal.dataobject.applyform.ApplyformDO;
import cn.iocoder.yudao.module.applyregistration.dal.device.DeviceDO;
import cn.iocoder.yudao.module.ultrasoniccom.controller.admin.ultrasonic.medicalimg.medicalimgVO;
import cn.iocoder.yudao.module.ultrasoniccom.controller.admin.ultrasonic.medicalimg.upmedicalimgVO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.medicalimg.medicalimgDO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.ultrasonicDO;
import cn.iocoder.yudao.module.ultrasoniccom.service.medicalimg.medicalimgService;
import cn.iocoder.yudao.module.ultrasoniccom.service.ultrasonic.ultrasonicService;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.datapermission.core.annotation.DataPermission;
@ -10,18 +20,21 @@ import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.nio.charset.StandardCharsets;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.stream.Collectors;
@ -35,7 +48,8 @@ public class ultrasonicController {
private static final Logger log = LoggerFactory.getLogger(ApplyformController.class);
@Resource
private ultrasonicService ultrasonicService;
@Resource
private medicalimgService medicalimgService;
@GetMapping("/reporttemplatetlist")
@Operation(summary = "获取模版表数据")
@ -45,6 +59,14 @@ public class ultrasonicController {
List<ultrasonicDO> devicelist = ultrasonicService.getreporttemplate();
List<ultrasonicDO> filteredList=new ArrayList<>();
// 按照 updateTime 字段降序排列空值放在最后
List<ultrasonicDO> sortedList = devicelist.stream()
.sorted(Comparator.comparing(ultrasonicDO::getUpdateTime, Comparator.nullsLast(Comparator.reverseOrder())))
.collect(Collectors.toList());
devicelist=sortedList;
if (!orgID.isEmpty())
{
filteredList = devicelist.stream()
@ -124,5 +146,92 @@ public class ultrasonicController {
return treeList;
}
@GetMapping("/getimageslist")
@Operation(summary = "获取图片列表")
@Parameter(name = "orgid", description = "机构ID", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('ultrasoniccom:ultrasonic:create')")
public CommonResult<List<medicalimgDO>> getimageslist(@RequestParam("orgID") String orgId,@RequestParam("regID") String regId,@RequestParam("select") String select) {
List<medicalimgDO> devicelist = ultrasonicService.getmedicalimgist(orgId,regId,select);
return success(BeanUtils.toBean(devicelist, medicalimgDO.class));
}
@PutMapping("/examineimageupdate")
@Operation(summary = "超声审核更新图片数据")
@PreAuthorize("@ss.hasPermission('tblist:patientexamlist:update')")
public CommonResult<Boolean> updateexamineimagelist(@Valid @RequestBody List<upmedicalimgVO> updateReqVO) {
if (!updateReqVO.isEmpty())
{
//最终提交的数据
List<medicalimgDO> doList=new ArrayList<>();
//当前时间
LocalDateTime dateTime= LocalDateTime.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
//循环传递进来的参数 赋值
for (upmedicalimgVO s : updateReqVO) {
//新增对象
medicalimgDO medicalimgDO=new medicalimgDO();
medicalimgDO.setId(s.getId());
if(!s.getIsDelete().isEmpty())
{
medicalimgDO.setIsDelete(s.getIsDelete());
medicalimgDO.setDeletePerson(s.getDeletePerson());
medicalimgDO.setDeleteDate(dateTime);
}
if(!s.getSelected().isEmpty())
{
medicalimgDO.setSelected(s.getSelected());
}
doList.add(medicalimgDO);
}
if (!doList.isEmpty())
{
boolean bol= medicalimgService.updateBatchById(doList);
return success(bol);
}
else
{
return success(false);
}
}
else
{
log.error("超声审核更新图片数据方法参数为空");
return success(false);
}
}
@GetMapping("/upreporttemplatetime")
@Operation(summary = "更新模版表时间")
@DataPermission(enable = false)
@PreAuthorize("@ss.hasPermission('ultrasoniccom:ultrasonic:create')")
public CommonResult<Boolean> upreporttemplatetime(@RequestParam("pid") String pid) throws ParseException {
//当前时间
// 定义日期时间格式
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 获取当前时间的字符串表示
String currentDateTimeString = formatter.format(new Date());
// 将字符串解析为 Date 对象
Date currentDateTime = formatter.parse(currentDateTimeString);
//新增对象
ultrasonicDO ultrasonicDO=new ultrasonicDO();
ultrasonicDO.setId(pid);
ultrasonicDO.setUpdateTime(currentDateTime);
boolean bol= ultrasonicService.updateById(ultrasonicDO);
return success(bol);
}
}

View File

@ -0,0 +1,95 @@
package cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.medicalimg;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
import java.time.LocalDateTime;
@TableName("tb_medicalimg")
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class medicalimgDO {
@TableId(type = IdType.INPUT)
private String id;
/**
* 图像地址
*/
@TableField("imgUrl")
private String imgUrl;
/**
* 科室名称
*/
@TableField("departmentName")
private String departmentName;
/**
* 图像描述
*/
@TableField("departmentName")
private String imgDescription;
/**
* 科室代号
*/
@TableField("departmentCode")
private String departmentCode;
/**
* 创建人
*/
@TableField("createPerson")
private String createPerson;
/**
* 创建时间
*/
@TableField("createDate")
private LocalDateTime createDate;
/**
* 是否删除
*/
@TableField("isDelete")
private String isDelete;
/**
* 删除人
*/
@TableField("deletePerson")
private String deletePerson;
/**
* 删除时间
*/
@TableField("deleteDate")
private LocalDateTime deleteDate;
/**
* orgId
*/
@TableField("orgId")
private String orgId;
/**
* regId
*/
@TableField("regId")
private String regId;
/**
* selected
*/
@TableField("selected")
private String selected;
}

View File

@ -0,0 +1,19 @@
package cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.medicalimg;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.ultrasonicDO;
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.dom4j.util.UserDataDocumentFactory;
import java.util.List;
@InterceptorIgnore(tenantLine = "true")
@Mapper
public interface medicalimgMapper extends BaseMapperX<medicalimgDO> {
List<medicalimgDO> getmedicalimgist(@Param("orgId") String orgId,@Param("regId") String regId,@Param("select") String select);
List<medicalimgDO> getmedicalimgist(UserDataDocumentFactory UserDataDocumentFactory);
}

View File

@ -1,5 +1,6 @@
package cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic;
import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
@ -8,6 +9,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.*;
import java.time.LocalDateTime;
import java.util.Date;
@TableName("tb_reporttemplate")
@Data
@ -18,7 +20,7 @@ import java.time.LocalDateTime;
public class ultrasonicDO {
@TableId(type = IdType.INPUT)
private String ID;
private String id;
/**
* 下拉框体检模板住院模板门诊模板
@ -105,4 +107,8 @@ public class ultrasonicDO {
*/
@TableField("pid")
private String pid;
@TableField("updateTime")
private Date updateTime;
}

View File

@ -0,0 +1,19 @@
package cn.iocoder.yudao.module.ultrasoniccom.service.medicalimg;
import cn.iocoder.yudao.module.ultrasoniccom.controller.admin.ultrasonic.medicalimg.medicalimgVO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.medicalimg.medicalimgDO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.ultrasonicDO;
import com.baomidou.mybatisplus.extension.service.IService;
import org.apache.ibatis.annotations.Param;
import javax.validation.Valid;
import java.util.List;
public interface medicalimgService extends IService<medicalimgDO> {
void updatePatientexamlist(@Valid medicalimgVO medicalimgVO);
}

View File

@ -0,0 +1,35 @@
package cn.iocoder.yudao.module.ultrasoniccom.service.medicalimg;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.ultrasoniccom.controller.admin.ultrasonic.medicalimg.medicalimgVO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.medicalimg.medicalimgDO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.medicalimg.medicalimgMapper;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.ultrasonicDO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.ultrasonicMapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.util.List;
@Service
@Validated
public class medicalimgServiceImpl extends ServiceImpl<medicalimgMapper, medicalimgDO> implements medicalimgService {
@Resource
private ultrasonicMapper ultrasonicMapper;
@Resource
private medicalimgMapper medicalimgMapper;
@Override
public void updatePatientexamlist(medicalimgVO updateReqVO) {
// 更新
medicalimgDO updateObj = BeanUtils.toBean(updateReqVO, medicalimgDO.class);
medicalimgMapper.updateById(updateObj);
}
}

View File

@ -1,11 +1,17 @@
package cn.iocoder.yudao.module.ultrasoniccom.service.ultrasonic;
import cn.iocoder.yudao.module.applyregistration.dal.dataobject.applyform.ApplyformDO;
import cn.iocoder.yudao.module.ultrasoniccom.controller.admin.ultrasonic.medicalimg.medicalimgVO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.medicalimg.medicalimgDO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.ultrasonicDO;
import com.baomidou.mybatisplus.extension.service.IService;
import org.apache.ibatis.annotations.Param;
import javax.validation.Valid;
import java.util.List;
public interface ultrasonicService {
public interface ultrasonicService extends IService<ultrasonicDO> {
/**
@ -14,4 +20,9 @@ public interface ultrasonicService {
* @return 申请登记记录
*/
List<ultrasonicDO> getreporttemplate();
List<medicalimgDO> getmedicalimgist(@Param("orgId") String orgId, @Param("regId") String regId,@Param("select") String select);
void updatePatientexamlist(@Valid medicalimgVO medicalimgVO);
}

View File

@ -1,22 +1,44 @@
package cn.iocoder.yudao.module.ultrasoniccom.service.ultrasonic;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.applyregistration.dal.dataobject.applyform.ApplyformDO;
import cn.iocoder.yudao.module.applyregistration.dal.mysql.applyform.ApplyformMapper;
import cn.iocoder.yudao.module.ultrasoniccom.controller.admin.ultrasonic.medicalimg.medicalimgVO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.medicalimg.medicalimgDO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.ultrasonicDO;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.ultrasonicMapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.medicalimg.medicalimgMapper;
import javax.annotation.Resource;
import java.util.List;
@Service
@Validated
public class ultrasonicServiceImpl implements ultrasonicService{
public class ultrasonicServiceImpl extends ServiceImpl<ultrasonicMapper, ultrasonicDO> implements ultrasonicService{
@Resource
private ultrasonicMapper ultrasonicMapper;
@Resource
private medicalimgMapper medicalimgMapper;
@Override
public List<ultrasonicDO> getreporttemplate() {
return ultrasonicMapper.getreporttemplist();
}
@Override
public List<medicalimgDO> getmedicalimgist(String orgId, String regId,String select) {
return medicalimgMapper.getmedicalimgist(orgId,regId,select);
}
@Override
public void updatePatientexamlist(medicalimgVO updateReqVO) {
// 更新
medicalimgDO updateObj = BeanUtils.toBean(updateReqVO, medicalimgDO.class);
medicalimgMapper.updateById(updateObj);
}
}

View File

@ -0,0 +1,44 @@
<?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.ultrasoniccom.dal.ultrasonic.medicalimg.medicalimgMapper">
<!--
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
<select id="getmedicalimgist" parameterType="string" resultType="cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.medicalimg.medicalimgDO">
SELECT * FROM tb_medicalimg
WHERE
<trim prefixOverrides="and | or">
<if test="orgId != null or regId != null">
AND (isDelete != '1' OR isDelete IS NULL)
</if>
<if test="orgId != null">
AND orgId = #{orgId}
</if>
<if test="regId != null">
AND regId = #{regId}
</if>
<if test="select != null">
AND selected ='1'
</if>
</trim>
</select>
<!-- @Param("NameList")-->
<!-- name in-->
<!-- <foreach collection="NameList" item="name" separator="," open="(" close=")" >-->
<!-- #{name}-->
<!-- </foreach>-->
<!-- update table-->
<!-- <set>-->
<!-- a=1,b=2-->
<!-- </set>-->
<!-- where id=xxx-->
</mapper>

View File

@ -9,6 +9,13 @@
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
<select id="getreporttemplist" resultType="cn.iocoder.yudao.module.ultrasoniccom.dal.ultrasonic.ultrasonicDO">
select * from tb_reporttemplate where isdelete!='1' OR isdelete IS NULL
select * from tb_reporttemplate
where (isdelete!='1' OR isdelete IS NULL)
<if test="orgId != null">
AND orgId = #{orgId}
</if>
<if test="regId != null">
AND regId = #{regId}
</if>
</select>
</mapper>

View File

@ -202,4 +202,5 @@ justauth:
cache:
type: REDIS
prefix: 'social_auth_state:' # 缓存前缀,目前只对 Redis 缓存生效,默认 JUSTAUTH::STATE::
timeout: 24h # 超时时长,目前只对 Redis 缓存生效,默认 3 分钟
timeout: 24h # 超时时长,目前只对 Redis 缓存生效,默认 3 分钟

View File

@ -171,6 +171,7 @@ logging:
cn.iocoder.yudao.module.statistics.dal.mysql: debug
cn.iocoder.yudao.module.crm.dal.mysql: debug
cn.iocoder.yudao.module.erp.dal.mysql: debug
cn.iocoder.yudao.module.ultrasoniccom.dal: debug
org.springframework.context.support.PostProcessorRegistrationDelegate: ERROR # TODO 芋艿先禁用Spring Boot 3.X 存在部分错误的 WARN 提示
debug: false
@ -248,4 +249,3 @@ justauth:
type: REDIS
prefix: 'social_auth_state:' # 缓存前缀,目前只对 Redis 缓存生效,默认 JUSTAUTH::STATE::
timeout: 24h # 超时时长,目前只对 Redis 缓存生效,默认 3 分钟

View File

@ -261,4 +261,5 @@ debug: false
# 积木报表配置
jeecg:
jmreport:
saas-mode: tenant
saas-mode: tenant