Commit 0f0cb089 by 吴博

Merge branch 'fixbug/deadlock' into 'master'

bug: [none] fix deadlock

See merge request rays/pcloud-book!1654
parents dd8f62e4 59ef0d30
......@@ -82,6 +82,8 @@ import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.UUID;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
......@@ -385,7 +387,11 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
@Override
@ParamLog("批量删除正版授权码")
public void batchDeleteCode(List<Long> ids) {
bookAuthCodeDao.batchDeleteCode(ids);
if (CollectionUtils.isEmpty(ids)) {
return;
}
ids.stream().filter(Objects::nonNull).forEach(bookAuthCodeDao::deleteCode);
// bookAuthCodeDao.batchDeleteCode(ids);
}
@Override
......
......@@ -65,4 +65,6 @@ public interface BookAuthCodeDao extends BaseDao<BookAuthCode> {
BookAuthCode getByAdviserAndCode(Long adviserId, String fullCode, Long bookId);
void clearUseCount(Long id);
void deleteCode(Long id);
}
package com.pcloud.book.copyright.dao.impl;
import com.google.common.collect.ImmutableMap;
import com.pcloud.book.copyright.dao.BookAuthCodeDao;
import com.pcloud.book.copyright.dto.BookAuthCodeDTO;
import com.pcloud.book.copyright.entity.BookAuthCode;
......@@ -127,4 +128,9 @@ public class BookAuthCodeDaoImpl extends BaseDaoImpl<BookAuthCode> implements Bo
public void clearUseCount(Long id) {
getSessionTemplate().update(getStatement("clearUseCount"), id);
}
@Override
public void deleteCode(Long id) {
getSqlSession().delete(getStatement("deleteCode"), ImmutableMap.of("id", id));
}
}
......@@ -161,6 +161,11 @@
AND use_count = 0
</delete>
<delete id="deleteCode" parameterType="map">
DELETE FROM book_auth_code
WHERE id = #{id} AND use_count = 0
</delete>
<select id="getBookAuthCodeList" parameterType="map" resultType="com.pcloud.book.copyright.dto.BookAuthCodeDTO">
select
book_id bookId,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment