add more logging for debugging

This commit is contained in:
irving
2025-12-05 23:15:14 -05:00
parent 132ac8796c
commit 6497788b64

View File

@@ -278,7 +278,7 @@ public class WxClerkController {
entity.setReviewState("0"); entity.setReviewState("0");
entity.setDataContent(Collections.singletonList(vo.getNickname())); entity.setDataContent(Collections.singletonList(vo.getNickname()));
playClerkDataReviewInfoService.create(entity); playClerkDataReviewInfoService.create(entity);
return R.ok("提交成功,等待审核~"); return R.ok().message("提交成功,等待审核~");
} }
@ApiOperation(value = "更新性别", notes = "店员更新性别") @ApiOperation(value = "更新性别", notes = "店员更新性别")
@@ -293,7 +293,7 @@ public class WxClerkController {
entity.setReviewState("0"); entity.setReviewState("0");
entity.setDataContent(Collections.singletonList(String.valueOf(vo.getSex()))); entity.setDataContent(Collections.singletonList(String.valueOf(vo.getSex())));
playClerkDataReviewInfoService.create(entity); playClerkDataReviewInfoService.create(entity);
return R.ok("提交成功,等待审核~"); return R.ok().message("提交成功,等待审核~");
} }
@ApiOperation(value = "更新头像", notes = "店员更新头像") @ApiOperation(value = "更新头像", notes = "店员更新头像")
@@ -315,7 +315,7 @@ public class WxClerkController {
list.add(vo.getAvatar()); list.add(vo.getAvatar());
entity.setDataContent(list); entity.setDataContent(list);
playClerkDataReviewInfoService.create(entity); playClerkDataReviewInfoService.create(entity);
return R.ok("提交成功,等待审核~"); return R.ok().message("提交成功,等待审核~");
} }
@ClerkUserLogin @ClerkUserLogin
@@ -348,6 +348,11 @@ public class WxClerkController {
.filter(id -> !approvedIds.contains(id)) .filter(id -> !approvedIds.contains(id))
.collect(java.util.stream.Collectors.toSet()); .collect(java.util.stream.Collectors.toSet());
if (log.isInfoEnabled()) {
log.info("[ClerkAlbumUpdate] clerkId={} tenantId={} requestedSet={} approvedIds={} newMediaIds={}",
userInfo.getId(), userInfo.getTenantId(), requestedSet, approvedIds, newMediaIds);
}
if (!newMediaIds.isEmpty()) { if (!newMediaIds.isEmpty()) {
// 新增媒资必须是当前店员本人名下、已就绪的媒资,才能进入审核流程 // 新增媒资必须是当前店员本人名下、已就绪的媒资,才能进入审核流程
java.util.List<com.starry.admin.modules.media.entity.PlayMediaEntity> newMediaEntities = java.util.List<com.starry.admin.modules.media.entity.PlayMediaEntity> newMediaEntities =
@@ -355,15 +360,47 @@ public class WxClerkController {
.in(com.starry.admin.modules.media.entity.PlayMediaEntity::getId, newMediaIds) .in(com.starry.admin.modules.media.entity.PlayMediaEntity::getId, newMediaIds)
.list(); .list();
if (newMediaEntities.size() != newMediaIds.size()) { if (newMediaEntities.size() != newMediaIds.size()) {
log.warn(
"[ClerkAlbumUpdate] new media size mismatch, clerkId={}, tenantId={}, expectedIds={}, foundIds={}",
userInfo.getId(),
userInfo.getTenantId(),
newMediaIds,
newMediaEntities.stream()
.map(com.starry.admin.modules.media.entity.PlayMediaEntity::getId)
.collect(java.util.stream.Collectors.toSet()));
throw new CustomException("存在未完成上传的照片/视频,请稍后重试"); throw new CustomException("存在未完成上传的照片/视频,请稍后重试");
} }
for (com.starry.admin.modules.media.entity.PlayMediaEntity media : newMediaEntities) { for (com.starry.admin.modules.media.entity.PlayMediaEntity media : newMediaEntities) {
if (!userInfo.getTenantId().equals(media.getTenantId()) boolean tenantMatched = userInfo.getTenantId().equals(media.getTenantId());
|| !MediaOwnerType.CLERK.equals(media.getOwnerType()) boolean ownerTypeMatched = MediaOwnerType.CLERK.equals(media.getOwnerType());
|| !userInfo.getId().equals(media.getOwnerId())) { boolean ownerIdMatched = userInfo.getId().equals(media.getOwnerId());
boolean statusReady = com.starry.admin.modules.media.enums.MediaStatus.READY.getCode()
.equals(media.getStatus());
if (!tenantMatched || !ownerTypeMatched || !ownerIdMatched || !statusReady) {
log.warn(
"[ClerkAlbumUpdate] invalid new media for clerk, clerkId={} tenantId={} mediaId={} mediaStatus={} mediaTenantId={} mediaOwnerType={} mediaOwnerId={} tenantMatched={} ownerTypeMatched={} ownerIdMatched={} statusReady={}",
userInfo.getId(),
userInfo.getTenantId(),
media.getId(),
media.getStatus(),
media.getTenantId(),
media.getOwnerType(),
media.getOwnerId(),
tenantMatched,
ownerTypeMatched,
ownerIdMatched,
statusReady);
throw new CustomException("存在无效的照片/视频,请刷新后重试"); throw new CustomException("存在无效的照片/视频,请刷新后重试");
} }
if (!com.starry.admin.modules.media.enums.MediaStatus.READY.getCode().equals(media.getStatus())) { if (!statusReady) {
// 理论上上面的分支已经覆盖,这里多打一条保护日志,便于排查历史数据
log.warn(
"[ClerkAlbumUpdate] media not in READY state for clerk, clerkId={} tenantId={} mediaId={} mediaStatus={}",
userInfo.getId(),
userInfo.getTenantId(),
media.getId(),
media.getStatus());
throw new CustomException("存在未完成上传的照片/视频,请稍后重试"); throw new CustomException("存在未完成上传的照片/视频,请稍后重试");
} }
} }
@@ -375,7 +412,7 @@ public class WxClerkController {
entity.setReviewState("0"); entity.setReviewState("0");
entity.setDataContent(new ArrayList<>(requestedSet)); entity.setDataContent(new ArrayList<>(requestedSet));
playClerkDataReviewInfoService.create(entity); playClerkDataReviewInfoService.create(entity);
return R.ok("提交成功,等待审核~"); return R.ok().message("提交成功,等待审核~");
} }
// 仅删除/排序:直接应用变更,不再生成审核记录 // 仅删除/排序:直接应用变更,不再生成审核记录
@@ -392,7 +429,7 @@ public class WxClerkController {
mediaService.softDelete(MediaOwnerType.CLERK, userInfo.getId(), mediaId); mediaService.softDelete(MediaOwnerType.CLERK, userInfo.getId(), mediaId);
} }
return R.ok("修改成功"); return R.ok().message("修改成功");
} }
@ClerkUserLogin @ClerkUserLogin
@@ -412,7 +449,7 @@ public class WxClerkController {
list.add(vo.getAudio()); list.add(vo.getAudio());
entity.setDataContent(list); entity.setDataContent(list);
playClerkDataReviewInfoService.create(entity); playClerkDataReviewInfoService.create(entity);
return R.ok("提交成功,等待审核~"); return R.ok().message("提交成功,等待审核~");
} }
@ClerkUserLogin @ClerkUserLogin