BUGFIX: 批量生成积分扣除有误
This commit is contained in:
@@ -41,6 +41,8 @@ public interface CreditsService extends IService<CreditsDetail> {
|
||||
|
||||
void preInsert(Long accountId, String changeEventName, String taskId, Boolean isPreInsert, String changedCredits);
|
||||
|
||||
void preInsert(Long accountId, String changeEventName, String taskId, Boolean isPreInsert, String changedCredits, Integer num);
|
||||
|
||||
void updateChangedCredits(String accountId, String taskId);
|
||||
|
||||
CreditsDetail queryDetailByTaskId(String taskId);
|
||||
|
||||
@@ -326,6 +326,21 @@ public class CreditsServiceImpl extends ServiceImpl<CreditsDetailMapper, Credits
|
||||
baseMapper.insert(creditsDetail);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void preInsert(Long accountId, String changeEventName, String taskId, Boolean isPreInsert, String changedCredits, Integer num) {
|
||||
CreditsDetail creditsDetail = new CreditsDetail();
|
||||
Account account = accountMapper.selectById(accountId);
|
||||
creditsDetail.setAccountId(accountId);
|
||||
creditsDetail.setTaskId(taskId);
|
||||
creditsDetail.setChangeEvent(changeEventName);
|
||||
creditsDetail.setNum(num);
|
||||
creditsDetail.setChangedCredits(isPreInsert ? "-0" : "-" + changedCredits);
|
||||
creditsDetail.setCredits(account.getCredits());
|
||||
creditsDetail.setCreateTime(LocalDateTime.now());
|
||||
|
||||
baseMapper.insert(creditsDetail);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateChangedCredits(String accountId, String taskId) {
|
||||
QueryWrapper<CreditsDetail> queryWrapper = new QueryWrapper<>();
|
||||
@@ -338,7 +353,11 @@ public class CreditsServiceImpl extends ServiceImpl<CreditsDetailMapper, Credits
|
||||
String credits = "0";
|
||||
CreditsEventsEnum eventsEnum = CreditsEventsEnum.getByTaskName(changeEvent);
|
||||
if (Objects.nonNull(eventsEnum)){
|
||||
credits = eventsEnum.getValue();
|
||||
if (Objects.nonNull(creditsDetail.getNum()) && creditsDetail.getNum() != 0){
|
||||
credits = String.valueOf(Long.parseLong(eventsEnum.getValue()) * creditsDetail.getNum());
|
||||
}else {
|
||||
credits = eventsEnum.getValue();
|
||||
}
|
||||
}
|
||||
/*if (changeEvent.equals("Logo") ||
|
||||
changeEvent.equals("Pattern") ||
|
||||
|
||||
@@ -2052,11 +2052,13 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
toProductImageResult.setImageStrength(randomFromRange);
|
||||
toProductImageResultMapper.insert(toProductImageResult);
|
||||
result.add(toProductImageResult);
|
||||
// 添加需要扣除的积分到预扣除区
|
||||
creditsService.addRecordToCreditsDeduction(userHolder.getId(), taskId, CreditsEventsEnum.TO_PRODUCT_IMAGE, cloudTaskDTO.getNums());
|
||||
i ++;
|
||||
}
|
||||
pythonService.toProductImageBatch(batchTaskId, paramList, userHolder.getId().toString());
|
||||
// 添加需要扣除的积分到预扣除区
|
||||
creditsService.addRecordToCreditsDeduction(userHolder.getId(), batchTaskId, CreditsEventsEnum.TO_PRODUCT_IMAGE, cloudTaskDTO.getNums());
|
||||
// 预插入数据到积分变更表
|
||||
creditsService.preInsert(userHolder.getId(), CreditsEventsEnum.TO_PRODUCT_IMAGE.getValue(), batchTaskId, true, null,cloudTaskDTO.getNums() );
|
||||
}else {
|
||||
if (StringUtils.isEmpty(prompt)) {
|
||||
sb.append(",high quality clothing details,8K realistic,HDR");
|
||||
@@ -2094,11 +2096,14 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
toProductImageResult.setImageStrength(randomFromRange);
|
||||
toProductImageResultMapper.insert(toProductImageResult);
|
||||
result.add(toProductImageResult);
|
||||
// 添加需要扣除的积分到预扣除区
|
||||
creditsService.addRecordToCreditsDeduction(userHolder.getId(), taskId, CreditsEventsEnum.TO_PRODUCT_IMAGE, cloudTaskDTO.getNums());
|
||||
i ++;
|
||||
}
|
||||
pythonService.toProductImageBatch(batchTaskId, paramList, userHolder.getId().toString());
|
||||
// 添加需要扣除的积分到预扣除区
|
||||
creditsService.addRecordToCreditsDeduction(userHolder.getId(), batchTaskId, CreditsEventsEnum.TO_PRODUCT_IMAGE, cloudTaskDTO.getNums());
|
||||
// 预插入数据到积分变更表
|
||||
creditsService.preInsert(userHolder.getId(), CreditsEventsEnum.TO_PRODUCT_IMAGE.getValue(), batchTaskId, true, null,cloudTaskDTO.getNums() );
|
||||
|
||||
}
|
||||
sb = new StringBuilder("The best quality, masterpiece, real image.");
|
||||
}
|
||||
@@ -2218,13 +2223,15 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
toProductImageResult.setDirection(toProductImageDTO.getDirection());
|
||||
toProductImageResultMapper.insert(toProductImageResult);
|
||||
result.add(toProductImageResult);
|
||||
|
||||
// 添加需要扣除的积分到预扣除区
|
||||
creditsService.addRecordToCreditsDeduction(userHolder.getId(), taskId, CreditsEventsEnum.RELIGHT, cloudTaskDTO.getNums());
|
||||
i ++;
|
||||
}
|
||||
// 走模型
|
||||
pythonService.relightBatch(batchTaskId, paramList, userHolder.getId().toString());
|
||||
// 添加需要扣除的积分到预扣除区
|
||||
creditsService.addRecordToCreditsDeduction(userHolder.getId(), batchTaskId, CreditsEventsEnum.RELIGHT, cloudTaskDTO.getNums());
|
||||
// 预插入数据到积分变更表
|
||||
creditsService.preInsert(userHolder.getId(), CreditsEventsEnum.RELIGHT.getValue(), batchTaskId, true, null,cloudTaskDTO.getNums() );
|
||||
|
||||
}
|
||||
|
||||
}else {
|
||||
@@ -2261,13 +2268,14 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
toProductImageResult.setDirection(toProductImageDTO.getDirection());
|
||||
toProductImageResultMapper.insert(toProductImageResult);
|
||||
result.add(toProductImageResult);
|
||||
|
||||
// 添加需要扣除的积分到预扣除区
|
||||
creditsService.addRecordToCreditsDeduction(userHolder.getId(), taskId, CreditsEventsEnum.RELIGHT, cloudTaskDTO.getNums());
|
||||
i ++;
|
||||
}
|
||||
// 走模型
|
||||
pythonService.relightBatch(batchTaskId, paramList, userHolder.getId().toString());
|
||||
// 添加需要扣除的积分到预扣除区
|
||||
creditsService.addRecordToCreditsDeduction(userHolder.getId(), batchTaskId, CreditsEventsEnum.RELIGHT, cloudTaskDTO.getNums());
|
||||
// 预插入数据到积分变更表
|
||||
creditsService.preInsert(userHolder.getId(), CreditsEventsEnum.RELIGHT.getValue(), batchTaskId, true, null,cloudTaskDTO.getNums() );
|
||||
}
|
||||
}
|
||||
return batchTaskId;
|
||||
@@ -2339,7 +2347,7 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
||||
// 6、添加预扣除积分到redis
|
||||
creditsService.addRecordToCreditsDeduction(accountId, uuid, creditsEventsEnum, cloudTaskDTO.getNums());
|
||||
// 6.1 添加积分扣除记录到db
|
||||
creditsService.preInsert(accountId, creditsEventsEnum.getName(), uuid, Boolean.TRUE, null);
|
||||
creditsService.preInsert(accountId, creditsEventsEnum.getName(), uuid, Boolean.TRUE, null, cloudTaskDTO.getNums());
|
||||
}else {
|
||||
throw new BusinessException("pose transformation error", ResultEnum.ERROR.getCode());
|
||||
}
|
||||
|
||||
@@ -2797,10 +2797,7 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
|
||||
// 4、扣除积分
|
||||
Boolean b = creditsService.taskCreditsDeduction(accountId, taskId);
|
||||
// 3、记录积分变更
|
||||
if (b) creditsService.insertToCreditsDetail(accountId,
|
||||
CreditsEventsEnum.TO_PRODUCT_IMAGE.getName(),
|
||||
CreditsEventsEnum.TO_PRODUCT_IMAGE.getValue(),
|
||||
"negative", null);
|
||||
if (b) creditsService.updateChangedCredits(String.valueOf(accountId), taskId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2849,10 +2846,7 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
|
||||
// 4、扣除积分
|
||||
Boolean b = creditsService.taskCreditsDeduction(accountId, taskId);
|
||||
// 3、记录积分变更
|
||||
if (b) creditsService.insertToCreditsDetail(accountId,
|
||||
CreditsEventsEnum.RELIGHT.getName(),
|
||||
CreditsEventsEnum.RELIGHT.getValue(),
|
||||
"negative", null);
|
||||
if (b) creditsService.updateChangedCredits(String.valueOf(accountId), taskId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user