Commit a4b502c3 by 裴大威

Merge branch 'feat-zyq-1002826' into 'master'

【1002826】抓取公众号资讯,rays文章应用等资讯分类录入

See merge request rays/pcloud-book!703
parents 857efd38 bd0cf5f9
......@@ -7,6 +7,8 @@ import com.pcloud.book.applet.dto.AppletNewsVO;
import com.pcloud.book.applet.entity.AppletNews;
import com.pcloud.book.applet.entity.AppletNewsClassify;
import com.pcloud.book.applet.entity.AppletNewsComment;
import com.pcloud.book.applet.vo.AppletNewsClassifyVO;
import com.pcloud.book.applet.vo.AppletNewsShowStateVO;
import com.pcloud.common.page.PageBeanNew;
import java.util.List;
......@@ -127,6 +129,17 @@ public interface AppletNewsBiz {
List<AppletNewsDTO> getNewsByTempletLabel(Long firstClassify, Long secondClassify, Long gradeLabelId, Long subjectLabelId, String rightsType);
/**
* 批量修改分类
* @param appletNewsClassifyVO
*/
void batchUpdateClassify(AppletNewsClassifyVO appletNewsClassifyVO);
void batchUpdateShowState(AppletNewsShowStateVO appletNewsShowStateVO);
void batchDeleteAppletNews(List<Long> appletNewsIds);
/**
* 根据id查询
* @author:zhuyajie
* @date:2020/4/26
......
......@@ -12,6 +12,8 @@ import com.pcloud.book.applet.dto.AppletNewsVO;
import com.pcloud.book.applet.entity.AppletNews;
import com.pcloud.book.applet.entity.AppletNewsClassify;
import com.pcloud.book.applet.entity.AppletNewsComment;
import com.pcloud.book.applet.vo.AppletNewsClassifyVO;
import com.pcloud.book.applet.vo.AppletNewsShowStateVO;
import com.pcloud.book.base.exception.BookBizException;
import com.pcloud.book.book.dao.BookLabelDao;
import com.pcloud.book.book.entity.BookLabel;
......@@ -20,10 +22,12 @@ import com.pcloud.book.consumer.label.LabelConsr;
import com.pcloud.book.consumer.reader.ReaderConsr;
import com.pcloud.book.rightsSetting.biz.RightsSettingBiz;
import com.pcloud.book.rightsSetting.entity.BaseTempletClassify;
import com.pcloud.common.exceptions.BizException;
import com.pcloud.common.page.PageBeanNew;
import com.pcloud.common.page.PageParam;
import com.pcloud.common.utils.ListUtils;
import com.pcloud.common.utils.string.StringUtil;
import com.pcloud.common.utils.NumberUtil;
import com.pcloud.readercenter.wechat.entity.WechatUser;
import org.apache.commons.collections.MapUtils;
......@@ -334,6 +338,28 @@ public class AppletNewsBizImpl implements AppletNewsBiz {
}
@Override
public void batchUpdateClassify(AppletNewsClassifyVO appletNewsClassifyVO) {
if(appletNewsClassifyVO == null || ListUtils.isEmpty(appletNewsClassifyVO.getAppletNewsIds())){
throw new BizException(BizException.PARAM_IS_NULL.getCode(), "参数为空");
}
if(!NumberUtil.isNumber(appletNewsClassifyVO.getFirstClassify()) ){
throw new BizException(BizException.PARAM_IS_NULL.getCode(), "请选择一级分类");
}
rightsSettingBiz.setClassifyAndLabel(appletNewsClassifyVO);
appletNewsDao.batchUpdateClassify(appletNewsClassifyVO);
}
@Override
public void batchUpdateShowState(AppletNewsShowStateVO appletNewsShowStateVO) {
appletNewsDao.batchUpdateShowState(appletNewsShowStateVO);
}
@Override
public void batchDeleteAppletNews(List<Long> appletNewsIds) {
appletNewsDao.batchDeleteAppletNews(appletNewsIds);
}
@Override
public AppletNewsVO getNewsVOById(Long newsId) {
AppletNews appletNews = appletNewsDao.getById(newsId);
AppletNewsVO appletNewsVO = new AppletNewsVO();
......
......@@ -2,6 +2,8 @@ package com.pcloud.book.applet.dao;
import com.pcloud.book.applet.dto.AppletNewsDTO;
import com.pcloud.book.applet.entity.AppletNews;
import com.pcloud.book.applet.vo.AppletNewsClassifyVO;
import com.pcloud.book.applet.vo.AppletNewsShowStateVO;
import com.pcloud.common.core.dao.BaseDao;
import java.util.List;
......@@ -58,4 +60,11 @@ public interface AppletNewsDao extends BaseDao<AppletNews> {
*来源是否存在
*/
Boolean newsSourceExist(String source);
void batchUpdateClassify(AppletNewsClassifyVO appletNewsClassifyVO);
void batchUpdateShowState(AppletNewsShowStateVO appletNewsShowStateVO);
void batchDeleteAppletNews(List<Long> appletNewsIds);
}
......@@ -3,6 +3,8 @@ package com.pcloud.book.applet.dao.impl;
import com.pcloud.book.applet.dao.AppletNewsDao;
import com.pcloud.book.applet.dto.AppletNewsDTO;
import com.pcloud.book.applet.entity.AppletNews;
import com.pcloud.book.applet.vo.AppletNewsClassifyVO;
import com.pcloud.book.applet.vo.AppletNewsShowStateVO;
import com.pcloud.common.core.dao.BaseDaoImpl;
import org.springframework.stereotype.Component;
......@@ -74,4 +76,30 @@ public class AppletNewsDaoImpl extends BaseDaoImpl<AppletNews> implements Applet
public Boolean newsSourceExist(String source) {
return getSessionTemplate().selectOne(getStatement("newsSourceExist"),source);
}
@Override
public void batchUpdateClassify(AppletNewsClassifyVO appletNewsClassifyVO) {
Map<String,Object> map = new HashMap<>();
map.put("ids", appletNewsClassifyVO.getAppletNewsIds());
map.put("firstClassify", appletNewsClassifyVO.getFirstClassify());
map.put("secondClassify", appletNewsClassifyVO.getSecondClassify());
map.put("gradeLabelId", appletNewsClassifyVO.getGradeLabelId());
map.put("subjectLabelId", appletNewsClassifyVO.getSubjectLabelId());
map.put("rightsClassifyId", appletNewsClassifyVO.getRightsClassifyId());
getSessionTemplate().update(getStatement("batchUpdateClassify"), map);
}
@Override
public void batchUpdateShowState(AppletNewsShowStateVO appletNewsShowStateVO) {
Map<String,Object> map = new HashMap<>();
map.put("ids", appletNewsShowStateVO.getAppletNewsIds());
map.put("showState", appletNewsShowStateVO.getShowState());
getSessionTemplate().update(getStatement("batchUpdateShowState"), map);
}
@Override
public void batchDeleteAppletNews(List<Long> list) {
getSessionTemplate().delete(getStatement("batchDeleteAppletNews"), list);
}
}
......@@ -21,6 +21,8 @@ import com.pcloud.book.applet.entity.AppletNewsClassify;
import com.pcloud.book.applet.entity.AppletNewsComment;
import com.pcloud.book.applet.entity.AppletUserBookcase;
import com.pcloud.book.applet.entity.AppletUserClickRecord;
import com.pcloud.book.applet.vo.AppletNewsClassifyVO;
import com.pcloud.book.applet.vo.AppletNewsShowStateVO;
import com.pcloud.book.base.exception.BookBizException;
import com.pcloud.book.skill.biz.PcloudGroupActivityBiz;
import com.pcloud.common.dto.ResponseDto;
......@@ -615,6 +617,45 @@ public class AppletHomeFacade {
return new ResponseDto<>(appletNewsBiz.getNewsSourceList());
}
@ApiOperation("批量修改分类")
@PostMapping("batchUpdateClassify")
public ResponseDto<?> batchUpdateClassify(
@RequestHeader("token") String token,
@RequestBody AppletNewsClassifyVO appletNewsClassifyVO
) throws PermissionException {
SessionUtil.getInfoToken4Redis(token);
appletNewsBiz.batchUpdateClassify(appletNewsClassifyVO);
return new ResponseDto<>();
}
@ApiOperation("批量上下架")
@PostMapping("batchUpdateShowState")
public ResponseDto<?> batchUpdateShowState(
@RequestHeader("token") String token,
@RequestBody AppletNewsShowStateVO appletNewsShowStateVO
) throws PermissionException {
SessionUtil.getInfoToken4Redis(token);
if (null == appletNewsShowStateVO || ListUtils.isEmpty(appletNewsShowStateVO.getAppletNewsIds()) || null == appletNewsShowStateVO.getShowState()){
throw new BookBizException(BookBizException.PARAM_IS_NULL,"缺少参数");
}
appletNewsBiz.batchUpdateShowState(appletNewsShowStateVO);
return new ResponseDto<>();
}
@ApiOperation("批量删除")
@PostMapping("batchDeleteAppletNews")
public ResponseDto<?> batchDeleteAppletNews(
@RequestHeader("token") String token,
@RequestBody List<Long> appletNewsIds
) throws PermissionException {
SessionUtil.getInfoToken4Redis(token);
if (ListUtils.isEmpty(appletNewsIds)){
throw new BookBizException(BookBizException.PARAM_IS_NULL,"缺少参数");
}
appletNewsBiz.batchDeleteAppletNews(appletNewsIds);
return new ResponseDto<>();
}
}
......
package com.pcloud.book.applet.vo;
import com.pcloud.book.rightsSetting.entity.BaseTempletClassify;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.List;
import lombok.Data;
/**
* @ClassName com.pcloud.book.applet.vo.AppletNewsClassifyVO
* @Author ZhengYongQiang
* @Description 抓取的资讯数据批量修改分类
* @Date 2020/4/27 19:39
* @Version 1.0
**/
@Data
public class AppletNewsClassifyVO extends BaseTempletClassify {
@ApiModelProperty("修改的数据id")
private List<Long> appletNewsIds;
@ApiModelProperty("权益分类id")
private Long rightsClassifyId;
}
package com.pcloud.book.applet.vo;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.List;
import lombok.Data;
/**
* @ClassName com.pcloud.book.applet.vo.AppletNewsShowStateVO
* @Author ZhengYongQiang
* @Description 批量上下架
* @Date 2020/4/27 20:27
* @Version 1.0
**/
@Data
public class AppletNewsShowStateVO implements Serializable {
@ApiModelProperty("修改的数据id")
private List<Long> appletNewsIds;
@ApiModelProperty("是否展示")
private Boolean showState;
}
......@@ -246,6 +246,39 @@
LIMIT #{top}
</select>
<update id="batchUpdateClassify" parameterType="map">
UPDATE applet_news
SET
first_classify = #{firstClassify,jdbcType=BIGINT},
second_classify = #{secondClassify,jdbcType=BIGINT},
grade_label_id = #{gradeLabelId,jdbcType=BIGINT},
subject_label_id = #{subjectLabelId,jdbcType=BIGINT},
rights_classify_id = #{rightsClassifyId,jdbcType=BIGINT},
update_time=NOW()
WHERE id IN
<foreach collection="ids" item="item" separator="," open="(" close=")" >
${item}
</foreach>
</update>
<update id="batchUpdateShowState" parameterType="map">
UPDATE applet_news
SET
show_state = #{showState},
update_time=NOW()
WHERE id IN
<foreach collection="ids" item="item" separator="," open="(" close=")" >
${item}
</foreach>
</update>
<delete id="batchDeleteAppletNews" parameterType="list">
DELETE FROM applet_news
WHERE id IN
<foreach collection="list" item="item" separator="," open="(" close=")" >
${item}
</foreach>
</delete>
<select id="insertSource" parameterType="string">
INSERT INTO applet_news_source (source) VALUES (#{source})
......
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