修改后端接口

This commit is contained in:
lxd 2025-07-01 16:12:45 +08:00
parent 1b3a765c21
commit a6353e1d2f
5 changed files with 28 additions and 11 deletions

View File

@ -11,6 +11,7 @@ import io.swagger.v3.oas.annotations.Operation;
import javax.validation.constraints.*; import javax.validation.constraints.*;
import javax.validation.*; import javax.validation.*;
import javax.servlet.http.*; import javax.servlet.http.*;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import java.io.IOException; import java.io.IOException;
@ -90,10 +91,12 @@ public class DoctornoticeController {
@Operation(summary = "更新医生通知读取状态") @Operation(summary = "更新医生通知读取状态")
@Parameter(name = "userid", description = "用户编号", required = true) @Parameter(name = "userid", description = "用户编号", required = true)
@Parameter(name = "readstatus", description = "读取状态", required = true) @Parameter(name = "readstatus", description = "读取状态", required = true)
public CommonResult<Boolean> updateReadStatus(@RequestParam("userid") Integer userid, public CommonResult<Boolean> updateReadStatus(@RequestParam("id") Integer userid,
@RequestParam("readstatus") Integer readstatus) { @RequestParam("readstatus") Integer readstatus,
doctornoticeService.updateReadStatus(userid, readstatus); @RequestParam("readtime") String readtime) {
doctornoticeService.updateReadStatus(userid, readstatus,readtime);
return success(true); return success(true);
} }
} }

View File

@ -1,5 +1,6 @@
package cn.iocoder.yudao.module.system.dal.dataobject.doctornotice; package cn.iocoder.yudao.module.system.dal.dataobject.doctornotice;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*; import lombok.*;
import java.util.*; import java.util.*;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@ -76,6 +77,7 @@ public class DoctornoticeDO {
* 读取时间 * 读取时间
*/ */
@TableField("readtime") @TableField("readtime")
@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
private LocalDateTime readtime; private LocalDateTime readtime;
/** /**
* 创建时间 * 创建时间

View File

@ -1,5 +1,7 @@
package cn.iocoder.yudao.module.system.dal.mysql.doctornotice; package cn.iocoder.yudao.module.system.dal.mysql.doctornotice;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*; import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.PageResult;
@ -40,16 +42,23 @@ public interface DoctornoticeMapper extends BaseMapperX<DoctornoticeDO> {
} }
/** /**
* 根据用户ID更新读取状态 * 根据用户ID更新读取状态和阅读时间
* *
* @param userid 用户ID * @param userid 用户ID
* @param readstatus 读取状态 * @param readstatus 读取状态
* @param readtime 阅读时间
* @return 更新的记录数 * @return 更新的记录数
*/ */
default int updateReadStatusByUserId(Integer userid, Integer readstatus) { default int updateReadStatusByUserId(Integer userid, Integer readstatus, String readtime) {
return update(new DoctornoticeDO().setReadstatus(readstatus),
// 在方法内部进行转换
LocalDateTime readDateTime = LocalDateTime.parse(readtime, DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss"));
return update(new DoctornoticeDO()
.setReadstatus(readstatus)
.setReadtime(readDateTime),
new LambdaQueryWrapperX<DoctornoticeDO>() new LambdaQueryWrapperX<DoctornoticeDO>()
.eq(DoctornoticeDO::getUserid, userid)); .eq(DoctornoticeDO::getId, userid));
} }
} }

View File

@ -1,5 +1,6 @@
package cn.iocoder.yudao.module.system.service.doctornotice; package cn.iocoder.yudao.module.system.service.doctornotice;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import javax.validation.*; import javax.validation.*;
import cn.iocoder.yudao.module.system.controller.admin.doctornotice.vo.*; import cn.iocoder.yudao.module.system.controller.admin.doctornotice.vo.*;
@ -58,6 +59,6 @@ public interface DoctornoticeService {
* @param userid 用户编号 * @param userid 用户编号
* @param readstatus 读取状态 * @param readstatus 读取状态
*/ */
void updateReadStatus(Integer userid, Integer readstatus); void updateReadStatus(Integer userid, Integer readstatus, String readtime);
} }

View File

@ -5,6 +5,7 @@ import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import cn.iocoder.yudao.module.system.controller.admin.doctornotice.vo.*; import cn.iocoder.yudao.module.system.controller.admin.doctornotice.vo.*;
import cn.iocoder.yudao.module.system.dal.dataobject.doctornotice.DoctornoticeDO; import cn.iocoder.yudao.module.system.dal.dataobject.doctornotice.DoctornoticeDO;
@ -72,10 +73,11 @@ public class DoctornoticeServiceImpl implements DoctornoticeService {
} }
@Override @Override
@Transactional(rollbackFor = Exception.class) public void updateReadStatus(Integer id, Integer readstatus, String readtime) {
public void updateReadStatus(Integer userid, Integer readstatus) {
// 更新该用户所有未读通知的读取状态 // 更新该用户所有未读通知的读取状态
doctornoticeMapper.updateReadStatusByUserId(userid, readstatus); doctornoticeMapper.updateReadStatusByUserId(id, readstatus,readtime);
} }
} }