bugfix: delete collection;
This commit is contained in:
@@ -110,7 +110,7 @@ public interface UserLikeGroupService extends IService<UserLikeGroup> {
|
||||
|
||||
Boolean brandDNADelete(BrandDNADTO brandDNADTO);
|
||||
|
||||
void toProductBatch(String taskId, String url, String progress);
|
||||
void toProductBatch(String taskId, String url, String progress) throws InterruptedException;
|
||||
|
||||
void relightBatch(String taskId, String url, String progress);
|
||||
|
||||
@@ -119,4 +119,8 @@ public interface UserLikeGroupService extends IService<UserLikeGroup> {
|
||||
Boolean toProductImageElementDelete(Long id);
|
||||
|
||||
ToProductElementVO convertRelightElement(Long id);
|
||||
|
||||
void startTask(String batchTaskId);
|
||||
|
||||
void completeTask(String batchTaskId);
|
||||
}
|
||||
|
||||
@@ -1380,6 +1380,7 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
for (CollectionSort likeSort : userLikeSorts) {
|
||||
if (Objects.equals(likeSort.getId(), userLikeSortId)) {
|
||||
collectionSortMapper.deleteById(likeSort);
|
||||
deleteByParentId(likeSort.getId());
|
||||
break;
|
||||
}else {
|
||||
likeSort.setSort(likeSort.getSort() - 1);
|
||||
@@ -1389,10 +1390,16 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public CollectionSort getUserLikeSortByUserLikeId(Long userLikeId, String relationType, Long projectId) {
|
||||
private void deleteByParentId(Long parentId) {
|
||||
QueryWrapper<CollectionSort> qw = new QueryWrapper<>();
|
||||
qw.lambda().eq(CollectionSort::getRelationId, userLikeId);
|
||||
qw.lambda().eq(CollectionSort::getParentId, parentId);
|
||||
collectionSortMapper.delete(qw);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CollectionSort getUserLikeSortByUserLikeId(Long relationId, String relationType, Long projectId) {
|
||||
QueryWrapper<CollectionSort> qw = new QueryWrapper<>();
|
||||
qw.lambda().eq(CollectionSort::getRelationId, relationId);
|
||||
qw.lambda().eq(CollectionSort::getRelationType, relationType);
|
||||
qw.lambda().eq(CollectionSort::getProjectId, projectId);
|
||||
CollectionSort userLikeSort = collectionSortMapper.selectOne(qw);
|
||||
@@ -1915,6 +1922,15 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
}
|
||||
}
|
||||
}
|
||||
CloudTask cloudTask = CopyUtil.copyObject(cloudTaskDTO, CloudTask.class);
|
||||
cloudTask.setProjectId(projectId);
|
||||
cloudTask.setTaskId(batchTaskId);
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
cloudTask.setCreateTime(now);
|
||||
cloudTask.setUpdateTime(now);
|
||||
cloudTask.setStatus(0);
|
||||
cloudTask.setAccountId(userInfo.getId());
|
||||
cloudTaskMapper.insert(cloudTask);
|
||||
UserLikeGroup userLikeGroup = userLikeGroupService.getByProjectId(projectId);
|
||||
Long userLikeGroupId = null;
|
||||
ToProductImageRecord toProductImageRecord = new ToProductImageRecord();
|
||||
@@ -2052,16 +2068,6 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
}
|
||||
sb = new StringBuilder("The best quality, masterpiece, real image.");
|
||||
}
|
||||
|
||||
CloudTask cloudTask = CopyUtil.copyObject(cloudTaskDTO, CloudTask.class);
|
||||
cloudTask.setProjectId(projectId);
|
||||
cloudTask.setTaskId(batchTaskId);
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
cloudTask.setCreateTime(now);
|
||||
cloudTask.setUpdateTime(now);
|
||||
cloudTask.setStatus(0);
|
||||
cloudTask.setAccountId(userInfo.getId());
|
||||
cloudTaskMapper.insert(cloudTask);
|
||||
return batchTaskId;
|
||||
}else if (cloudTaskDTO.getBuildType().equals(BuildType.RELIGHT.getValue())) {
|
||||
ToProductImageDTO toProductImageDTO = cloudTaskDTO.getToProductImage();
|
||||
@@ -2093,6 +2099,16 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
CloudTask cloudTask = CopyUtil.copyObject(cloudTaskDTO, CloudTask.class);
|
||||
cloudTask.setProjectId(projectId);
|
||||
cloudTask.setTaskId(batchTaskId);
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
cloudTask.setCreateTime(now);
|
||||
cloudTask.setUpdateTime(now);
|
||||
cloudTask.setStatus(0);
|
||||
cloudTaskMapper.insert(cloudTask);
|
||||
|
||||
UserLikeGroup userLikeGroup = userLikeGroupService.getByProjectId(projectId);
|
||||
Long userLikeGroupId = null;
|
||||
|
||||
@@ -2215,14 +2231,6 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
pythonService.relightBatch(batchTaskId, paramList, userHolder.getId().toString());
|
||||
}
|
||||
}
|
||||
CloudTask cloudTask = CopyUtil.copyObject(cloudTaskDTO, CloudTask.class);
|
||||
cloudTask.setProjectId(projectId);
|
||||
cloudTask.setTaskId(batchTaskId);
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
cloudTask.setCreateTime(now);
|
||||
cloudTask.setUpdateTime(now);
|
||||
cloudTask.setStatus(0);
|
||||
cloudTaskMapper.insert(cloudTask);
|
||||
return batchTaskId;
|
||||
} else if (cloudTaskDTO.getBuildType().equals(BuildType.POSE_TRANSFORM.getValue())) {
|
||||
Long projectId = cloudTaskDTO.getProjectId();
|
||||
@@ -2247,13 +2255,23 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
}
|
||||
}
|
||||
Long accountId = UserContext.getUserHolder().getId();
|
||||
String taskBatchId = UUID.randomUUID().toString() + "-" + accountId;
|
||||
|
||||
CloudTask cloudTask = CopyUtil.copyObject(cloudTaskDTO, CloudTask.class);
|
||||
cloudTask.setProjectId(cloudTask.getProjectId());
|
||||
cloudTask.setTaskId(taskBatchId);
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
cloudTask.setCreateTime(now);
|
||||
cloudTask.setUpdateTime(now);
|
||||
cloudTask.setStatus(0);
|
||||
cloudTaskMapper.insert(cloudTask);
|
||||
|
||||
Boolean preDeduction = creditsService.creditsPreDeduction(Integer.parseInt(CreditsEventsEnum.POSE_TRANSFORMATION.getValue()) * cloudTaskDTO.getNums());
|
||||
if (!preDeduction) {
|
||||
throw new BusinessException("Your remaining credits are insufficient for this generation. Please recharge.", ResultEnum.WARNING.getCode());
|
||||
}
|
||||
List<PoseTransformBatchDTO> poseTransformList = cloudTaskDTO.getPoseTransform();
|
||||
if (CollectionUtil.isNotEmpty(poseTransformList)) {
|
||||
String taskBatchId = UUID.randomUUID().toString() + "-" + accountId;
|
||||
for (PoseTransformBatchDTO poseTransformBatchDTO : poseTransformList) {
|
||||
// 1、判断用户当前积分是否够本次生成消耗
|
||||
CreditsEventsEnum creditsEventsEnum = CreditsEventsEnum.POSE_TRANSFORMATION;
|
||||
@@ -2282,14 +2300,6 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
throw new BusinessException("pose transformation error", ResultEnum.ERROR.getCode());
|
||||
}
|
||||
}
|
||||
CloudTask cloudTask = CopyUtil.copyObject(cloudTaskDTO, CloudTask.class);
|
||||
cloudTask.setProjectId(cloudTask.getProjectId());
|
||||
cloudTask.setTaskId(taskBatchId);
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
cloudTask.setCreateTime(now);
|
||||
cloudTask.setUpdateTime(now);
|
||||
cloudTask.setStatus(0);
|
||||
cloudTaskMapper.insert(cloudTask);
|
||||
return taskBatchId;
|
||||
}
|
||||
}
|
||||
@@ -2918,7 +2928,12 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
libraryService.processSketchBoards(url, collectionElement.getLevel2Type());
|
||||
}else if (receiveCollectionElement.getLevel1Type().equals(CollectionLevel1TypeEnum.COLOR_BOARD.getRealName())) {
|
||||
String color = receiveCollectionElement.getHsv();
|
||||
int[] hsv = Arrays.stream(color.split("\\s+")).mapToInt(Integer::parseInt).toArray();
|
||||
String[] parts = color.split("\\s+");
|
||||
int h = Math.round(Float.parseFloat(parts[0]));
|
||||
int s = Math.round(Float.parseFloat(parts[1])); // 关键修改
|
||||
int v = Math.round(Float.parseFloat(parts[2]));
|
||||
int[] hsv = {h, s, v};
|
||||
// int[] hsv = Arrays.stream(color.split("\\s+")).mapToInt(Integer::parseInt).toArray();
|
||||
int value = (hsv[0] * 101 * 101) + (hsv[1] * 101) + hsv[2];
|
||||
ColorLookupTable colorLookupTable = colorLoopUpTableService.getByColorValue(value);
|
||||
if (Objects.isNull(colorLookupTable)) {
|
||||
|
||||
@@ -332,6 +332,7 @@ public class LLMServiceImpl implements LLMService {
|
||||
ReceiveDesignParam receiveDesignParam = JSONObject.parseObject(JSONObject.toJSONString(toolsData), ReceiveDesignParam.class);
|
||||
receiveDesignParam.setProjectId(projectId);
|
||||
designService.receiveDesignParams(receiveDesignParam);
|
||||
String contentSave = JSONObject.toJSONString(receiveDesignParam.getReceiveCollectionElementList());
|
||||
for (ReceiveCollectionElement receiveCollectionElement : receiveDesignParam.getReceiveCollectionElementList()) {
|
||||
if (!StringUtils.isEmpty(receiveCollectionElement.getUrl())) {
|
||||
color = false;
|
||||
@@ -350,7 +351,7 @@ public class LLMServiceImpl implements LLMService {
|
||||
systemImage.setProjectId(projectId);
|
||||
systemImage.setSeq(getNextSeq(projectId));
|
||||
systemImage.setCreateTime(LocalDateTime.now());
|
||||
systemImage.setContent(JSONObject.toJSONString(receiveDesignParam.getReceiveCollectionElementList()));
|
||||
systemImage.setContent(contentSave);
|
||||
systemImage.setAccountId(accountId);
|
||||
chatMessageMapper.insert(systemImage);
|
||||
}
|
||||
|
||||
@@ -58,7 +58,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
||||
@Override
|
||||
public Set<Long> getChildProjectIdSet(Long projectId) {
|
||||
QueryWrapper<Project> qw = new QueryWrapper<>();
|
||||
qw.lambda().eq(Project::getParentId, projectId);
|
||||
// qw.lambda().eq(Project::getParentId, projectId);
|
||||
List<Project> projectList = projectMapper.selectList(qw);
|
||||
if (CollectionUtil.isNotEmpty(projectList)) {
|
||||
return projectList.stream().map(Project::getId).collect(Collectors.toSet());
|
||||
|
||||
@@ -38,6 +38,7 @@ import io.netty.util.internal.StringUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Isolation;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.util.StringUtils;
|
||||
@@ -2532,8 +2533,8 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void toProductBatch(String taskId, String url, String progress) {
|
||||
@Transactional(isolation = Isolation.SERIALIZABLE)
|
||||
public void toProductBatch(String taskId, String url, String progress) throws InterruptedException {
|
||||
QueryWrapper<ToProductImageResult> qw = new QueryWrapper<>();
|
||||
qw.lambda().eq(ToProductImageResult::getTaskId, taskId);
|
||||
ToProductImageResult toProductImageResult = toProductImageResultMapper.selectOne(qw);
|
||||
@@ -2544,7 +2545,9 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
|
||||
log.info("toProductImage云生成 batchTaskId:" + taskIdBatch + " 完成数+1");
|
||||
|
||||
CloudTask task = cloudTaskMapper.selectForUpdate(taskIdBatch);
|
||||
cloudTaskMapper.increaseCompletedNum(taskIdBatch);
|
||||
log.info("排查完成数量" + task.getCompletedNum());
|
||||
task.setCompletedNum(task.getCompletedNum() + 1);
|
||||
cloudTaskMapper.updateById(task);
|
||||
|
||||
String key = toProductImageResultKey + ":" + taskId;
|
||||
String imageName = url.substring(url.lastIndexOf("/") + 1);
|
||||
@@ -2670,4 +2673,23 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
|
||||
toProductElementVO.setUrl(minioUtil.getPreSignedUrl(toProductElementVO.getUrl(), 24 * 60));
|
||||
return toProductElementVO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void startTask(String batchTaskId) {
|
||||
QueryWrapper<CloudTask> qw = new QueryWrapper<>();
|
||||
qw.lambda().eq(CloudTask::getTaskId, batchTaskId);
|
||||
CloudTask cloudTask = cloudTaskMapper.selectOne(qw);
|
||||
cloudTask.setStartTime(LocalDateTime.now());
|
||||
cloudTaskMapper.updateById(cloudTask);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void completeTask(String batchTaskId) {
|
||||
QueryWrapper<CloudTask> qw = new QueryWrapper<>();
|
||||
qw.lambda().eq(CloudTask::getTaskId, batchTaskId);
|
||||
CloudTask cloudTask = cloudTaskMapper.selectOne(qw);
|
||||
cloudTask.setStatus(1);
|
||||
cloudTask.setCompletedNum(cloudTask.getNums());
|
||||
cloudTaskMapper.updateById(cloudTask);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user