Commit a76bcc76 by 裴大威

Merge branch 'feat-zyj-1002892' into 'master'

【ID1002892】小程序已读书刊列表支持编辑删除

See merge request rays/pcloud-book!713
parents 91a55d9c 7bbc31dc
......@@ -6,6 +6,7 @@ import com.pcloud.book.applet.entity.AppletUserBookcase;
import com.pcloud.book.applet.entity.AppletUserClickRecord;
import com.pcloud.common.page.PageBeanNew;
import java.util.List;
import java.util.Map;
/**
......@@ -44,4 +45,12 @@ public interface AppletUserBookcaseBiz {
UserLastBookReDTO getUserLastBookRe(Long wechatUserId);
/**
* 批量删除
* @author:zhuyajie
* @date:2020/5/11 16:06
* * @param null
*/
void deleteByIds(List<Long> ids, Long wechatUserId);
}
......@@ -17,6 +17,7 @@ import com.pcloud.book.group.dto.BookServeDTO;
import com.pcloud.book.group.enums.JoinGroupTypeEnum;
import com.pcloud.book.rightsSetting.biz.RightsSettingBiz;
import com.pcloud.book.rightsSetting.dto.RightsSettingDto;
import com.pcloud.common.constant.CacheConstant;
import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.page.PageBeanNew;
import com.pcloud.common.page.PageParam;
......@@ -44,6 +45,9 @@ import java.util.stream.Collectors;
@Component
public class AppletUserBookcaseBizImpl implements AppletUserBookcaseBiz {
private static final String USER_BOOK_CASE = CacheConstant.BOOK+"APPLET:listByWechatUserId";
private static final String USER_BOOK_CASE_COUNT = CacheConstant.BOOK+"APPLET:listByWechatUserId-count";
@Autowired
private AppletUserBookcaseDao appletUserBookcaseDao;
@Autowired
......@@ -63,17 +67,15 @@ public class AppletUserBookcaseBizImpl implements AppletUserBookcaseBiz {
appletUserBookcaseDao.deleteByBookIdUserId(appletUserBookcase);
appletUserBookcaseDao.insert(appletUserBookcase);
Long wechatUserId = appletUserBookcase.getWechatUserId();
String key = "BOOK:APPLET:listByWechatUserId"+wechatUserId;
String countKey = "BOOK:APPLET:listByWechatUserId-count"+wechatUserId;
JedisClusterUtils.del(key);
JedisClusterUtils.del(countKey);
JedisClusterUtils.del(USER_BOOK_CASE + wechatUserId);
JedisClusterUtils.del(USER_BOOK_CASE_COUNT + wechatUserId);
}
@Override
public PageBeanNew<AppletUserBookcaseDTO> listByWechatUserId(Long wechatUserId, Integer currentPage, Integer numPerPage) {
String key = "BOOK:APPLET:listByWechatUserId"+wechatUserId;
String key = USER_BOOK_CASE+wechatUserId;
String field = currentPage+"-"+numPerPage;
String countKey = "BOOK:APPLET:listByWechatUserId-count"+wechatUserId;
String countKey = USER_BOOK_CASE_COUNT+wechatUserId;
List<AppletUserBookcaseDTO> bookcaseDTOS = JedisClusterUtils.hgetJson2List(key,field,AppletUserBookcaseDTO.class);
Integer count =0;
String countStr = JedisClusterUtils.get(countKey);
......@@ -211,4 +213,11 @@ public class AppletUserBookcaseBizImpl implements AppletUserBookcaseBiz {
}
}
@Override
public void deleteByIds(List<Long> ids, Long wechatUserId) {
appletUserBookcaseDao.deleteByIds(ids);
JedisClusterUtils.del(USER_BOOK_CASE + wechatUserId);
JedisClusterUtils.del(USER_BOOK_CASE_COUNT + wechatUserId);
}
}
......@@ -48,4 +48,12 @@ public interface AppletUserBookcaseDao extends BaseDao<AppletUserBookcase> {
UserLastBookReDTO getUserLastGroupBookRe(Long wechatUserId);
UserLastBookReDTO getUserLastRe(Long wechatUserId);
/**
* 批量删除
* @author:zhuyajie
* @date:2020/5/11 16:06
* * @param null
*/
void deleteByIds(List<Long> ids);
}
......@@ -61,4 +61,9 @@ public class AppletUserBookcaseDaoImpl extends BaseDaoImpl<AppletUserBookcase> i
public UserLastBookReDTO getUserLastRe(Long wechatUserId) {
return getSessionTemplate().selectOne(getStatement("getUserLastRe"),wechatUserId);
}
@Override
public void deleteByIds(List<Long> list) {
getSessionTemplate().delete(getStatement("deleteByIds"), list);
}
}
......@@ -12,6 +12,9 @@ import java.util.Date;
@ApiModel("小程序用户书架栏目")
public class AppletUserBookcaseDTO extends BaseDto {
@ApiModelProperty("书架记录id")
private Long id;
@ApiModelProperty("图书id")
private Long bookId;
......
......@@ -48,7 +48,7 @@ import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@Api("小睿小程序首页")
@Api(description = "小睿小程序首页")
@RestController("appletHomeFacade")
@RequestMapping("appletHome")
public class AppletHomeFacade {
......@@ -656,6 +656,14 @@ public class AppletHomeFacade {
return new ResponseDto<>();
}
@ApiOperation("删除书架记录")
@PostMapping("deleteBookcaseRecordByIds")
public ResponseDto<?> deleteBookcaseRecordByIds(@CookieValue("userInfo") String userInfo, @RequestBody List<Long> ids) {
Long wechatUserId = Cookie.getId(userInfo, Cookie._WECHAT_USER_ID);
appletUserBookcaseBiz.deleteByIds(ids, wechatUserId);
return new ResponseDto<>();
}
}
......
......@@ -25,6 +25,7 @@
<select id="listByWechatUserId" parameterType="long" resultType="com.pcloud.book.applet.dto.AppletUserBookcaseDTO">
SELECT
c.id id,
c.book_id bookId,
c.channel_id channelId,
c.adviser_id adviserId,
......@@ -43,7 +44,6 @@
INNER JOIN BOOK b ON c.BOOK_ID = b.BOOK_ID AND b.IS_DELETE = 0
LEFT JOIN book_group d ON d.BOOK_ID = a.BOOK_ID and d.create_user=c.adviser_id and d.channel_id=c.channel_id AND d.IS_DELETE = 0
WHERE c.wechat_user_id=#{wechatUserId}
GROUP BY c.book_id,c.adviser_id,c.channel_id
ORDER BY c.create_time DESC
</select>
......@@ -128,4 +128,12 @@
LIMIT 1
</select>
<delete id="deleteByIds" parameterType="list">
DELETE FROM applet_user_bookcase
WHERE id in
<foreach collection="list" item="item" open="(" close=")" separator=",">
${item}
</foreach>
</delete>
</mapper>
\ No newline at end of file
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