TASK:cloud;

This commit is contained in:
shahaibo
2025-06-10 10:55:56 +08:00
parent d6bd24865e
commit ae71564b94
5 changed files with 148 additions and 9 deletions

View File

@@ -16,6 +16,7 @@ import com.ai.da.model.dto.*;
import com.ai.da.model.enums.BuildType;
import com.ai.da.model.enums.CollectionType;
import com.ai.da.model.enums.DesignProcess;
import com.ai.da.model.enums.UserBehaviorType;
import com.ai.da.model.vo.*;
import com.ai.da.python.PythonService;
import com.ai.da.python.vo.*;
@@ -147,6 +148,10 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
private ToProductImageRecordMapper toProductImageRecordMapper;
@Resource
private ColorLoopUpTableService colorLoopUpTableService;
@Resource
private UserBehaviorMapper userBehaviorMapper;
@Resource
private CollectionElementRelModelMapper collectionElementRelModelMapper;
private final ConcurrentHashMap<String, Map<String, Object>> designContext = new ConcurrentHashMap<>();
@@ -1214,9 +1219,32 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
}
//修改designItem为like状态
designItemService.updateLikeStatus(designLikeDTO.getDesignItemId(), (byte) 1);
// 记录喜欢的系统sketch
addSystemLikeSketch(designItem);
return new DesignLikeVO(userLikeSortId, userGroupId, groupDetailId, pictureName, userLike.getId(), userLikeSort.getSort());
}
private void addSystemLikeSketch(DesignItem designItem) {
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);
for (DesignItemDetail designItemDetail : designItemDetails) {
if (designItemDetail.getPath().startsWith("aida-sys-image")) {
String[] split = designItemDetail.getPath().split("/");
UserBehavior userBehavior = new UserBehavior();
userBehavior.setAccountId(userHolder.getId());
userBehavior.setBehaviorType(UserBehaviorType.SKETCH_LIKE.getValue());
userBehavior.setGender(split[2]);
userBehavior.setCategory(split[3]);
userBehavior.setUrl(designItemDetail.getPath());
userBehavior.setCreateTime(LocalDateTime.now());
userBehaviorMapper.insert(userBehavior);
}
}
}
@Override
public CollectionSort addCollectionSort(Long relationId, String relationType, Long projectId) {
int sort = getNextSort(projectId);
@@ -2319,11 +2347,30 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
}else {
designCollectionDTO.setSketchBoards(new ArrayList<>());
}
if (CollectionUtil.isNotEmpty(groupedMap.get("Models"))) {
List<MannequinDTO> mannequins = new ArrayList<>();
List<CollectionElement> modelList = groupedMap.get("Models");
for (CollectionElement collectionElement : modelList) {
MannequinDTO dto = new MannequinDTO();
QueryWrapper<CollectionElementRelModel> qw = new QueryWrapper<>();
qw.lambda().eq(CollectionElementRelModel::getCollectionElementId, collectionElement.getId());
List<CollectionElementRelModel> collectionElementRelModels = collectionElementRelModelMapper.selectList(qw);
if (!CollectionUtils.isEmpty(collectionElementRelModels)) {
CollectionElementRelModel relModel = collectionElementRelModels.get(0);
dto.setId(relModel.getRelationId());
dto.setType(relModel.getRelationType());
}
}
}else {
designCollectionDTO.setMannequins(new ArrayList<>());
}
}else {
designCollectionDTO.setMoodBoards(new ArrayList<>());
designCollectionDTO.setPrintBoards(new ArrayList<>());
designCollectionDTO.setColorBoards(new ArrayList<>());
designCollectionDTO.setSketchBoards(new ArrayList<>());
designCollectionDTO.setMannequins(new ArrayList<>());
}
Long workspaceId = workspaceService.getByProjectId(projectId);
Workspace workspace = workspaceService.getById(workspaceId);