Commit f458831b by 吴博

Merge branch 'fixbug/deadlock' into 'release'

Fixbug/deadlock

See merge request rays/pcloud-book!1655
parents a69cc7da 59ef0d30
...@@ -82,6 +82,8 @@ import java.util.Date; ...@@ -82,6 +82,8 @@ import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.UUID; import java.util.UUID;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutionException;
...@@ -385,7 +387,11 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz { ...@@ -385,7 +387,11 @@ public class BookAuthCodeBizImpl implements BookAuthCodeBiz {
@Override @Override
@ParamLog("批量删除正版授权码") @ParamLog("批量删除正版授权码")
public void batchDeleteCode(List<Long> ids) { 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 @Override
......
...@@ -65,4 +65,6 @@ public interface BookAuthCodeDao extends BaseDao<BookAuthCode> { ...@@ -65,4 +65,6 @@ public interface BookAuthCodeDao extends BaseDao<BookAuthCode> {
BookAuthCode getByAdviserAndCode(Long adviserId, String fullCode, Long bookId); BookAuthCode getByAdviserAndCode(Long adviserId, String fullCode, Long bookId);
void clearUseCount(Long id); void clearUseCount(Long id);
void deleteCode(Long id);
} }
package com.pcloud.book.copyright.dao.impl; 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.dao.BookAuthCodeDao;
import com.pcloud.book.copyright.dto.BookAuthCodeDTO; import com.pcloud.book.copyright.dto.BookAuthCodeDTO;
import com.pcloud.book.copyright.entity.BookAuthCode; import com.pcloud.book.copyright.entity.BookAuthCode;
...@@ -127,4 +128,9 @@ public class BookAuthCodeDaoImpl extends BaseDaoImpl<BookAuthCode> implements Bo ...@@ -127,4 +128,9 @@ public class BookAuthCodeDaoImpl extends BaseDaoImpl<BookAuthCode> implements Bo
public void clearUseCount(Long id) { public void clearUseCount(Long id) {
getSessionTemplate().update(getStatement("clearUseCount"), id); getSessionTemplate().update(getStatement("clearUseCount"), id);
} }
@Override
public void deleteCode(Long id) {
getSqlSession().delete(getStatement("deleteCode"), ImmutableMap.of("id", id));
}
} }
...@@ -161,6 +161,11 @@ ...@@ -161,6 +161,11 @@
AND use_count = 0 AND use_count = 0
</delete> </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 id="getBookAuthCodeList" parameterType="map" resultType="com.pcloud.book.copyright.dto.BookAuthCodeDTO">
select select
book_id bookId, 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