Commit 9b9afb70 by pansy

feat: [1003398] 原文资讯顶部的加好友功能,可按书刊分类选择批量操作在资讯头部显示和隐藏

parent 6d5e5386
...@@ -264,4 +264,17 @@ public interface AppletNewsBiz { ...@@ -264,4 +264,17 @@ public interface AppletNewsBiz {
* @param appletNewsList * @param appletNewsList
*/ */
void batchInsert(List<AppletNews> appletNewsList); void batchInsert(List<AppletNews> appletNewsList);
/**
* 批量名片上下架
* @param appletNewsShowStateVO
*/
void batchUpdateCardShowState(AppletNewsShowStateVO appletNewsShowStateVO);
/**
* 更新名片是否上架状态
* @param appletNews
*/
void updateCardShowState(AppletNews appletNews);
} }
...@@ -40,6 +40,7 @@ import com.pcloud.book.book.entity.BookLabel; ...@@ -40,6 +40,7 @@ import com.pcloud.book.book.entity.BookLabel;
import com.pcloud.book.consumer.app.AssistTempletConsr; import com.pcloud.book.consumer.app.AssistTempletConsr;
import com.pcloud.book.consumer.label.LabelConsr; import com.pcloud.book.consumer.label.LabelConsr;
import com.pcloud.book.consumer.reader.ReaderConsr; import com.pcloud.book.consumer.reader.ReaderConsr;
import com.pcloud.book.es.entity.ESBookAndAdviser;
import com.pcloud.book.push.dao.PersonalAppletsDao; import com.pcloud.book.push.dao.PersonalAppletsDao;
import com.pcloud.book.push.entity.PersonalApplets; import com.pcloud.book.push.entity.PersonalApplets;
import com.pcloud.book.rightsSetting.biz.RightsSettingBiz; import com.pcloud.book.rightsSetting.biz.RightsSettingBiz;
...@@ -62,6 +63,7 @@ import java.util.ArrayList; ...@@ -62,6 +63,7 @@ import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Comparator; import java.util.Comparator;
import java.util.HashMap; import java.util.HashMap;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
...@@ -921,4 +923,28 @@ public class AppletNewsBizImpl implements AppletNewsBiz { ...@@ -921,4 +923,28 @@ public class AppletNewsBizImpl implements AppletNewsBiz {
appletNewsDao.insert(appletNewsList); appletNewsDao.insert(appletNewsList);
} }
@Override
public void batchUpdateCardShowState(AppletNewsShowStateVO appletNewsShowStateVO) {
Iterator<Long> it= appletNewsShowStateVO.getAppletNewsIds().iterator();
while(it.hasNext()){
Long newId = it.next();
AppletNews newAppletNews = appletNewsDao.getById(newId);
if(newAppletNews.getBusinessCardType() == null || newAppletNews.getBusinessCardId()== null){
it.remove();
}
}
appletNewsDao.batchUpdateCardShowState(appletNewsShowStateVO);
}
@Override
public void updateCardShowState(AppletNews appletNews) {
AppletNews newAppletNews = appletNewsDao.getById(appletNews.getId());
if(newAppletNews.getBusinessCardType() == null || newAppletNews.getBusinessCardId()== null){
throw new BookBizException(BookBizException.ERROR,"名片未配置");
}
appletNewsDao.updateCardShowState(appletNews);
JedisClusterUtils.del(AppletConstants.HOME_NEWS_LIST);
}
} }
...@@ -151,4 +151,17 @@ public interface AppletNewsDao extends BaseDao<AppletNews> { ...@@ -151,4 +151,17 @@ public interface AppletNewsDao extends BaseDao<AppletNews> {
* @return * @return
*/ */
Integer listAppletNews4WechatCount(Map<String, Object> paramMap); Integer listAppletNews4WechatCount(Map<String, Object> paramMap);
/**
* 批量名片上下架
* @param appletNewsShowStateVO
*/
void batchUpdateCardShowState(AppletNewsShowStateVO appletNewsShowStateVO);
/**
* 更新上架状态
* @param appletNews
*/
void updateCardShowState(AppletNews appletNews);
} }
...@@ -175,6 +175,18 @@ public class AppletNewsDaoImpl extends BaseDaoImpl<AppletNews> implements Applet ...@@ -175,6 +175,18 @@ public class AppletNewsDaoImpl extends BaseDaoImpl<AppletNews> implements Applet
} }
@Override @Override
public void batchUpdateCardShowState(AppletNewsShowStateVO appletNewsShowStateVO) {
Map<String,Object> map = new HashMap<>();
map.put("ids", appletNewsShowStateVO.getAppletNewsIds());
map.put("showState", appletNewsShowStateVO.getShowState());
getSessionTemplate().update(getStatement("batchUpdateCardShowState"), map);
}
@Override
public void updateCardShowState(AppletNews appletNews) {
getSessionTemplate().update(getStatement("updateCardShowState"),appletNews);
}
@Override
public Integer listAppletNews4WechatCount(Map<String, Object> paramMap) { public Integer listAppletNews4WechatCount(Map<String, Object> paramMap) {
return getSessionTemplate().selectOne(getStatement("listAppletNews4WechatCount"), paramMap); return getSessionTemplate().selectOne(getStatement("listAppletNews4WechatCount"), paramMap);
} }
......
...@@ -71,6 +71,34 @@ public class AppletHomeFacade { ...@@ -71,6 +71,34 @@ public class AppletHomeFacade {
@Autowired @Autowired
private PcloudGroupActivityBiz pcloudGroupActivityBiz; private PcloudGroupActivityBiz pcloudGroupActivityBiz;
@ApiOperation("批量名片上下架")
@PostMapping("batchUpdateCardShowState")
public ResponseDto<?> batchUpdateCardShowState(
@RequestHeader("token") String token,
@RequestBody AppletNewsShowStateVO appletNewsShowStateVO
) throws PermissionException {
SessionUtil.getInfoToken4Redis(token);
if (null == appletNewsShowStateVO || ListUtils.isEmpty(appletNewsShowStateVO.getAppletNewsIds()) || null == appletNewsShowStateVO.getBusinessCardIsOpen()){
throw new BookBizException(BookBizException.PARAM_IS_NULL,"缺少参数");
}
appletNewsBiz.batchUpdateCardShowState(appletNewsShowStateVO);
return new ResponseDto<>();
}
@ApiOperation("更新资讯名片上架状态")
@PostMapping("updateCardShowState")
public ResponseDto<?> updateCardShowState(
@RequestHeader("token") String token,
@RequestBody @ApiParam("资讯") AppletNews appletNews) throws PermissionException {
SessionUtil.getInfoToken4Redis(token);
if (null == appletNews || null == appletNews.getId() || null == appletNews.getBusinessCardIsOpen()){
throw new BookBizException(BookBizException.PARAM_IS_NULL,"缺少参数");
}
appletNewsBiz.updateCardShowState(appletNews);
return new ResponseDto<>();
}
@ApiOperation("新增书单栏目") @ApiOperation("新增书单栏目")
@PostMapping("addBooklistClassify") @PostMapping("addBooklistClassify")
public ResponseDto<Long> addBooklistClassify( public ResponseDto<Long> addBooklistClassify(
......
...@@ -18,7 +18,9 @@ public class AppletNewsShowStateVO implements Serializable { ...@@ -18,7 +18,9 @@ public class AppletNewsShowStateVO implements Serializable {
@ApiModelProperty("修改的数据id") @ApiModelProperty("修改的数据id")
private List<Long> appletNewsIds; private List<Long> appletNewsIds;
@ApiModelProperty("是否展示") @ApiModelProperty("是否展示 1:展示,0不展示")
private Boolean showState; private Boolean showState;
private Long businessCardIsOpen;
} }
...@@ -110,6 +110,12 @@ ...@@ -110,6 +110,12 @@
where id = #{id,jdbcType=BIGINT} where id = #{id,jdbcType=BIGINT}
</update> </update>
<update id="updateCardShowState" parameterType="com.pcloud.book.applet.entity.AppletNews">
update applet_news
set business_card_isOpen = #{businessCardIsOpen,jdbcType=TINYINT}
where id = #{id,jdbcType=BIGINT}
</update>
<select id="getById" parameterType="long" resultMap="BaseResultMap"> <select id="getById" parameterType="long" resultMap="BaseResultMap">
select <include refid="Base_Column_List"/> select <include refid="Base_Column_List"/>
from applet_news from applet_news
...@@ -151,7 +157,8 @@ ...@@ -151,7 +157,8 @@
n.custom_tag_id customTagId, n.custom_tag_id customTagId,
t.custom_tag customTag, t.custom_tag customTag,
n.show_source showSource, n.show_source showSource,
n.show_link showLink n.show_link showLink,
IF(n.business_card_id is null,2,n.business_card_isOpen) businessCardIsOpen
FROM applet_news n FROM applet_news n
LEFT JOIN applet_news_classify c ON n.news_classify_id=c.id LEFT JOIN applet_news_classify c ON n.news_classify_id=c.id
LEFT JOIN rights_setting_classify d ON n.rights_classify_id = d.id LEFT JOIN rights_setting_classify d ON n.rights_classify_id = d.id
...@@ -310,6 +317,17 @@ ...@@ -310,6 +317,17 @@
</foreach> </foreach>
</update> </update>
<update id="batchUpdateCardShowState" parameterType="map">
UPDATE applet_news
SET
business_card_isOpen = #{businessCardIsOpen},
update_time=NOW()
WHERE id IN
<foreach collection="ids" item="item" separator="," open="(" close=")" >
${item}
</foreach>
</update>
<delete id="batchDeleteAppletNews" parameterType="list"> <delete id="batchDeleteAppletNews" parameterType="list">
DELETE FROM applet_news DELETE FROM applet_news
WHERE id IN WHERE id IN
......
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