fix: 允许编辑进行中的拼团/秒杀活动及修复成团检测
- 移除拼团活动"进行中不能修改"限制 - 编辑拼团/秒杀时不再限制开始时间必须晚于当前 - 编辑时日期选择器不禁用过去日期 - 修复JPA缓存导致成团检测失效的问题(clearAutomatically)
This commit is contained in:
@@ -33,11 +33,11 @@ public interface GroupBuyingGroupRepository extends JpaRepository<GroupBuyingGro
|
||||
|
||||
long countByGroupBuyingIdAndStatus(Long groupBuyingId, Integer status);
|
||||
|
||||
@Modifying
|
||||
@Modifying(clearAutomatically = true)
|
||||
@Query("UPDATE GroupBuyingGroup g SET g.currentMembers = g.currentMembers + 1 WHERE g.id = :id")
|
||||
int incrementCurrentMembers(@Param("id") Long id);
|
||||
|
||||
@Modifying
|
||||
@Modifying(clearAutomatically = true)
|
||||
@Query("UPDATE GroupBuyingGroup g SET g.currentMembers = g.currentMembers - 1 WHERE g.id = :id AND g.currentMembers > 0")
|
||||
int decrementCurrentMembers(@Param("id") Long id);
|
||||
|
||||
|
||||
@@ -109,10 +109,6 @@ public class GroupBuyingService {
|
||||
GroupBuying gb = groupBuyingRepository.findById(id)
|
||||
.orElseThrow(() -> new RuntimeException("拼团活动不存在"));
|
||||
|
||||
if (gb.getStatus() == 2) {
|
||||
throw new RuntimeException("进行中的活动不能修改");
|
||||
}
|
||||
|
||||
if (updateDTO.getProductId() != null) gb.setProductId(updateDTO.getProductId());
|
||||
if (updateDTO.getGroupPrice() != null) gb.setGroupPrice(updateDTO.getGroupPrice());
|
||||
if (updateDTO.getRequiredMembers() != null) gb.setRequiredMembers(updateDTO.getRequiredMembers());
|
||||
|
||||
Reference in New Issue
Block a user