切换用户sketch点赞记录存储方式;新增镜像和角度字段,存储前端需要的object

This commit is contained in:
litianxiang
2026-01-09 10:14:46 +08:00
parent 7a9fb0213b
commit dd8c72f7d7
14 changed files with 151 additions and 17 deletions

View File

@@ -509,6 +509,8 @@ public class DesignItemServiceImpl extends ServiceImpl<DesignItemMapper, DesignI
designPythonOutfitDetail.setOffset(String.valueOf(priorityOffset.get(Math.abs(priority))));
}
designPythonOutfitDetail.setPriority(priority);
designPythonOutfitDetail.setTranspose(jsonObject.getString("transpose"));
designPythonOutfitDetail.setRotate(jsonObject.getDouble("rotate"));
list.add(designPythonOutfitDetail);
}
@@ -1201,6 +1203,7 @@ public class DesignItemServiceImpl extends ServiceImpl<DesignItemMapper, DesignI
designItemDetailPrint.setPosition(print.getLocation().toString());
designItemDetailPrint.setAngle(print.getAngle());
designItemDetailPrint.setPriority(priority);
designItemDetailPrint.setObject(print.getObject());
designItemDetailPrints.add(designItemDetailPrint);
});

View File

@@ -101,8 +101,9 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
private final UserLikeGroupService userLikeGroupService;
private final UserLikeService userLikeService;
private final UserBehaviorMapper userBehaviorMapper;
private final UserPreferenceLogMapper userPreferenceLogMapper;
private final UserPreferenceMapper userPreferenceMapper;
private final WorkspaceService workspaceService;
private final WorkspaceRelStyleMapper workspaceRelStyleMapper;
@Value("${minio.endpoint}")
private String endpoint;
@@ -1109,18 +1110,20 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
//修改designItem为like状态
designItemService.updateLikeStatus(designLikeDTO.getDesignItemId(), (byte) 1);
// 记录喜欢的系统sketch
addSystemLikeSketch(designItem);
addSystemLikeSketch(designItem, designLikeDTO.getProjectId());
// 更新项目更新时间
projectService.modifyProjectUpdateTime(designLikeDTO.getProjectId());
return new DesignLikeVO(userLikeSortId, userGroupId, groupDetailId, pictureName, userLike.getId(), userLikeSort.getSort());
}
private void addSystemLikeSketch(DesignItem designItem) {
public void addSystemLikeSketch(DesignItem designItem, Long projectId) {
AuthPrincipalVo userHolder = UserContext.getUserHolder();
QueryWrapper<DesignItemDetail> qw = new QueryWrapper<>();
qw.lambda().eq(DesignItemDetail::getDesignItemId, designItem.getId());
qw.lambda().ne(DesignItemDetail::getType, "Body");
List<DesignItemDetail> designItemDetails = designItemDetailMapper.selectList(qw);
List<WorkspaceRelStyle> workspaceRelStyles = workspaceRelStyleMapper.selectByProjectId(projectId);
for (DesignItemDetail designItemDetail : designItemDetails) {
if (designItemDetail.getPath().startsWith("aida-sys-image")) {
String[] split = designItemDetail.getPath().split("/");
@@ -1133,28 +1136,29 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
userBehavior.setCreateTime(LocalDateTime.now());
userBehaviorMapper.insert(userBehavior);
UserPreferenceLogTest userPreferenceLogTest = new UserPreferenceLogTest();
userPreferenceLogTest.setPath(designItemDetail.getPath());
UserPreference userPreference = new UserPreference();
userPreference.setPath(designItemDetail.getPath());
SysFile sysFile = sysFileService.getOne(new LambdaQueryWrapper<SysFile>().eq(SysFile::getUrl, designItemDetail.getPath()));
userPreferenceLogTest.setAccountId(userHolder.getId());
userPreference.setAccountId(userHolder.getId());
if (sysFile != null){
userPreferenceLogTest.setCategory(sysFile.getLevel3Type().toLowerCase()+"_"+sysFile.getLevel2Type().toLowerCase());
userPreferenceLogTest.setSysFileId(sysFile.getId());
userPreferenceLogTest.setStyle(sysFile.getStyle());
userPreference.setCategory(sysFile.getLevel3Type().toLowerCase()+"_"+sysFile.getLevel2Type().toLowerCase());
userPreference.setStyle(sysFile.getStyle());
}else {
log.error("sysFile not found:{}",designItemDetail.getPath());
SendEmailUtil.commonExceptionReminder("url在sysFile里找不到"+designItemDetail.getPath(), new String[]{"litianxiangxtt@163.com"});
continue;
}
// userPreferenceLogTest.setUserLikeGroupId(userLike.getUserLikeGroupId());
userPreferenceLogTest.setDataTime(designItemDetail.getCreateDate().toInstant()
userPreference.setDataTime(designItemDetail.getCreateDate().toInstant()
.atZone(ZoneId.systemDefault())
.toLocalDateTime());
userPreferenceLogMapper.insert(userPreferenceLogTest);
userPreference.setDesignItemId(designItem.getId());
userPreference.setProjectId(projectId);
userPreference.setWorkspaceRelStyleId(workspaceRelStyles.get(0).getStyleId());
userPreferenceMapper.insert(userPreference);
}
}
}
private List<Long> validateMergeElement(List<CollectionElement> oldElements, List<DesignItemDetail> designItemDetails) {
@@ -1576,6 +1580,7 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
}
}
designSinglePrint.setScale(scales);
designSinglePrint.setObject(detailPrint.getObject());
prints.add(designSinglePrint);
} else {
// 多个印花
@@ -1596,7 +1601,7 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
scales = Arrays.asList(scale, scale);
}
}
prints.add(new DesignSinglePrint(
DesignSinglePrint designSinglePrint = new DesignSinglePrint(
print.getLevel2Type(),
minioUtil.getPreSignedUrl(print.getPath(), 24 * 60),
print.getPath(),
@@ -1604,7 +1609,9 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
scales,
print.getAngle(),
print.getPriority(),
ifSingle));
ifSingle);
designSinglePrint.setObject(print.getObject());
prints.add(designSinglePrint);
// }
});
}

View File

@@ -9,6 +9,7 @@ import com.ai.da.model.vo.DesignPythonOutfitVO;
import com.ai.da.model.vo.TDesignPythonOutfitDetailVO;
import com.ai.da.service.ITDesignPythonOutfitDetailService;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -67,6 +68,13 @@ public class TDesignPythonOutfitDetailServiceImpl extends ServiceImpl<TDesignPyt
designPythonOutfitVO.setScale(modifyScale(detail.getScale()));
designPythonOutfitVO.setOffset(StringUtil.isNullOrEmpty(detail.getOffset()) ? Arrays.asList(0L, 0L) : parseLongList(detail.getOffset()));
designPythonOutfitVO.setPriority(Math.abs(detail.getPriority()));
if (detail.getTranspose() != null) {
List<Integer> transposeList = JSONArray.parseArray(detail.getTranspose(), Integer.class);
designPythonOutfitVO.setTranspose(transposeList.stream().mapToInt(Integer::intValue).toArray());
} else {
designPythonOutfitVO.setTranspose(null);
}
designPythonOutfitVO.setRotate(detail.getRotate());
// designPythonOutfitVO.setOffset(CollectionUtil.isEmpty(offset) ? Arrays.asList(0L, 0L) : offset);
/*if (!StringUtil.isNullOrEmpty(detail.getImageSize())){