当前位置: 首页 > news >正文

个人做门户网站需要注册谷歌浏览器 安卓下载2023版

个人做门户网站需要注册,谷歌浏览器 安卓下载2023版,大蒜做营销型网站,哪家做外贸网站好自媒体文章上下架功能完成 需求分析 流程说明 接口定义 说明接口路径/api/v1/news/down_or_up请求方式POST参数DTO响应结果ResponseResult DTO Data public class WmNewsDto {private Integer id;/*** 是否上架 0 下架 1 上架*/private Short enable;}ResponseResult 自媒…

自媒体文章上下架功能完成

需求分析

在这里插入图片描述

流程说明

在这里插入图片描述

接口定义
说明
接口路径/api/v1/news/down_or_up
请求方式POST
参数DTO
响应结果ResponseResult

DTO

@Data
public class WmNewsDto {private Integer id;/*** 是否上架  0 下架  1 上架*/private Short enable;}

ResponseResult

image-20230218212711969

自媒体文章上下架-功能实现

接口定义

在heima-leadnews-wemedia工程下的WmNewsController新增方法

@PostMapping("/down_or_up")
public ResponseResult downOrUp(@RequestBody WmNewsDto dto){return null;
}

在WmNewsDto中新增enable属性 ,完整的代码如下:

package com.heima.model.wemedia.dtos;import lombok.Data;import java.util.Date;
import java.util.List;@Data
public class WmNewsDto {private Integer id;/*** 标题*/private String title;/*** 频道id*/private Integer channelId;/*** 标签*/private String labels;/*** 发布时间*/private Date publishTime;/*** 文章内容*/private String content;/*** 文章封面类型  0 无图 1 单图 3 多图 -1 自动*/private Short type;/*** 提交时间*/private Date submitedTime; /*** 状态 提交为1  草稿为0*/private Short status;/*** 封面图片列表 多张图以逗号隔开*/private List<String> images;/*** 上下架 0 下架  1 上架*/private Short enable;
}

9.4.2)业务层编写

在WmNewsService新增方法

/*** 文章的上下架* @param dto* @return*/
public ResponseResult downOrUp(WmNewsDto dto);

实现方法

/*** 文章的上下架* @param dto* @return*/
@Override
public ResponseResult downOrUp(WmNewsDto dto) {//1.检查参数if(dto.getId() == null){return ResponseResult.errorResult(AppHttpCodeEnum.PARAM_INVALID);}//2.查询文章WmNews wmNews = getById(dto.getId());if(wmNews == null){return ResponseResult.errorResult(AppHttpCodeEnum.DATA_NOT_EXIST,"文章不存在");}//3.判断文章是否已发布if(!wmNews.getStatus().equals(WmNews.Status.PUBLISHED.getCode())){return ResponseResult.errorResult(AppHttpCodeEnum.PARAM_INVALID,"当前文章不是发布状态,不能上下架");}//4.修改文章enableif(dto.getEnable() != null && dto.getEnable() > -1 && dto.getEnable() < 2){update(Wrappers.<WmNews>lambdaUpdate().set(WmNews::getEnable,dto.getEnable()).eq(WmNews::getId,wmNews.getId()));}return ResponseResult.okResult(AppHttpCodeEnum.SUCCESS);
}

9.4.3)控制器

@PostMapping("/down_or_up")
public ResponseResult downOrUp(@RequestBody WmNewsDto dto){return wmNewsService.downOrUp(dto);
}

9.4.4)测试

消息通知article端文章上下架

在heima-leadnews-common模块下导入kafka依赖

<!-- kafkfa -->
<dependency><groupId>org.springframework.kafka</groupId><artifactId>spring-kafka</artifactId>
</dependency>
<dependency><groupId>org.apache.kafka</groupId><artifactId>kafka-clients</artifactId>
</dependency>

9.5.2)在自媒体端的nacos配置中心配置kafka的生产者

spring:kafka:bootstrap-servers: 172.20.10.2:9092producer:retries: 10key-serializer: org.apache.kafka.common.serialization.StringSerializervalue-serializer: org.apache.kafka.common.serialization.StringSerializer

9.5.3)在自媒体端文章上下架后发送消息

//发送消息,通知article端修改文章配置
if(wmNews.getArticleId() != null){Map<String,Object> map = new HashMap<>();map.put("articleId",wmNews.getArticleId());map.put("enable",dto.getEnable());kafkaTemplate.send(WmNewsMessageConstants.WM_NEWS_UP_OR_DOWN_TOPIC,JSON.toJSONString(map));
}

常量类:

public class WmNewsMessageConstants {public static final String WM_NEWS_UP_OR_DOWN_TOPIC="wm.news.up.or.down.topic";
}

9.5.4)在article端的nacos配置中心配置kafka的消费者

spring:kafka:bootstrap-servers: 172.20.10.2:9092consumer:group-id: ${spring.application.name}key-deserializer: org.apache.kafka.common.serialization.StringDeserializervalue-deserializer: org.apache.kafka.common.serialization.StringDeserializer

9.5.5)在article端编写监听,接收数据

package com.heima.article.listener;import com.alibaba.fastjson.JSON;
import com.heima.article.service.ApArticleConfigService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.kafka.annotation.KafkaListener;
import org.springframework.stereotype.Component;import java.util.Map;@Component
@Slf4j
public class ArtilceIsDownListener {@Autowiredprivate ApArticleConfigService apArticleConfigService;@KafkaListener(topics = WmNewsMessageConstants.WM_NEWS_UP_OR_DOWN_TOPIC)public void onMessage(String message){if(StringUtils.isNotBlank(message)){Map map = JSON.parseObject(message, Map.class);apArticleConfigService.updateByMap(map);log.info("article端文章配置修改,articleId={}",map.get("articleId"));}}
}

9.5.6)修改ap_article_config表的数据

新建ApArticleConfigService

package com.heima.article.service;import com.baomidou.mybatisplus.extension.service.IService;
import com.heima.model.article.pojos.ApArticleConfig;import java.util.Map;public interface ApArticleConfigService extends IService<ApArticleConfig> {/*** 修改文章配置* @param map*/public void updateByMap(Map map);
}

实现类:

package com.heima.article.service.impl;import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.heima.article.mapper.ApArticleConfigMapper;
import com.heima.article.service.ApArticleConfigService;
import com.heima.model.article.pojos.ApArticleConfig;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;import java.util.Map;@Service
@Slf4j
@Transactional
public class ApArticleConfigServiceImpl extends ServiceImpl<ApArticleConfigMapper, ApArticleConfig> implements ApArticleConfigService {/*** 修改文章配置* @param map*/@Overridepublic void updateByMap(Map map) {//0 下架 1 上架Object enable = map.get("enable");boolean isDown = true;if(enable.equals(1)){isDown = false;}//修改文章配置update(Wrappers.<ApArticleConfig>lambdaUpdate().eq(ApArticleConfig::getArticleId,map.get("articleId")).set(ApArticleConfig::getIsDown,isDown));}
}

文章转载自:
http://anthotaxy.jpkk.cn
http://fabled.jpkk.cn
http://imitate.jpkk.cn
http://reunite.jpkk.cn
http://lysogeny.jpkk.cn
http://sarsenet.jpkk.cn
http://dost.jpkk.cn
http://bored.jpkk.cn
http://sequoia.jpkk.cn
http://uraeus.jpkk.cn
http://stab.jpkk.cn
http://traditionist.jpkk.cn
http://odorant.jpkk.cn
http://hydroxyphenyl.jpkk.cn
http://transmigration.jpkk.cn
http://titillation.jpkk.cn
http://castigation.jpkk.cn
http://implant.jpkk.cn
http://fluvio.jpkk.cn
http://uvulitis.jpkk.cn
http://poetically.jpkk.cn
http://navarchy.jpkk.cn
http://physic.jpkk.cn
http://gradient.jpkk.cn
http://antarctic.jpkk.cn
http://falsidical.jpkk.cn
http://unobtrusive.jpkk.cn
http://botulinus.jpkk.cn
http://witching.jpkk.cn
http://harmonist.jpkk.cn
http://buhrstone.jpkk.cn
http://endlessly.jpkk.cn
http://paisleyite.jpkk.cn
http://aghan.jpkk.cn
http://norite.jpkk.cn
http://geognostical.jpkk.cn
http://mimicry.jpkk.cn
http://fatalistic.jpkk.cn
http://adamant.jpkk.cn
http://nardu.jpkk.cn
http://monopolism.jpkk.cn
http://cocurriculum.jpkk.cn
http://burro.jpkk.cn
http://impotent.jpkk.cn
http://profusion.jpkk.cn
http://esc.jpkk.cn
http://orrow.jpkk.cn
http://superdense.jpkk.cn
http://glyceric.jpkk.cn
http://telephonitis.jpkk.cn
http://tx.jpkk.cn
http://utility.jpkk.cn
http://pathognomonic.jpkk.cn
http://unallowable.jpkk.cn
http://hyperbola.jpkk.cn
http://imagic.jpkk.cn
http://jubilee.jpkk.cn
http://tummler.jpkk.cn
http://glady.jpkk.cn
http://wapiti.jpkk.cn
http://veritable.jpkk.cn
http://rhododendron.jpkk.cn
http://lymphangiography.jpkk.cn
http://chowry.jpkk.cn
http://britisher.jpkk.cn
http://sitar.jpkk.cn
http://letterweight.jpkk.cn
http://revitalize.jpkk.cn
http://troupial.jpkk.cn
http://diskcopy.jpkk.cn
http://killifish.jpkk.cn
http://vulnerable.jpkk.cn
http://minicell.jpkk.cn
http://sexcentenary.jpkk.cn
http://megabyte.jpkk.cn
http://samel.jpkk.cn
http://luggage.jpkk.cn
http://explanative.jpkk.cn
http://coagulum.jpkk.cn
http://poundal.jpkk.cn
http://grimm.jpkk.cn
http://subulate.jpkk.cn
http://brobdingnag.jpkk.cn
http://belabour.jpkk.cn
http://vpn.jpkk.cn
http://flipping.jpkk.cn
http://cascaron.jpkk.cn
http://regurgitation.jpkk.cn
http://periwinkle.jpkk.cn
http://aquarian.jpkk.cn
http://entitative.jpkk.cn
http://merthiolate.jpkk.cn
http://hexane.jpkk.cn
http://xenoglossy.jpkk.cn
http://achondrite.jpkk.cn
http://kaddish.jpkk.cn
http://drunkometer.jpkk.cn
http://creepage.jpkk.cn
http://okapi.jpkk.cn
http://philanthropist.jpkk.cn
http://www.dt0577.cn/news/83304.html

相关文章:

  • 做教育培训的网站seo网站关键词优化怎么做
  • 企业网站建站之星网站的推广方式有哪些
  • 苏省住房和城乡建设厅网站百度一下你就知道了 官网
  • 网站链接做二维码百度竞价推广属于什么广告
  • 政务网站开发方案今天最火的新闻头条
  • 上海企业网站建设服务廊坊网站seo
  • 怎么修改网站网页的背景图片做网站哪家好
  • 深圳Wordpress网站电商网站建设开发
  • 深圳福田网站建设公司兰州搜索引擎优化
  • vvic网站一起做网店百度站长平台网址
  • 网站cms是什么意思网站优化 福州
  • 临沂企业建站怎么百度推广
  • 大恒建设集团有限公司网站竞价推广代运营
  • 深圳网站开发外包公司数据分析培训课程
  • 好的网站建设公司百度网盘官网登录首页
  • 怎么利用QQ空间给网站做排名英文外链代发
  • 广州网站建设流程图seo推广的方法
  • bluehost中国上海网络seo优化公司
  • 驰够网官方网站企业网站seo优化外包
  • 贵阳市住房城乡建设局官方网站青岛网站建设公司哪家好
  • 怎么自己做H5网站宁波seo网站推广软件
  • 接网站开发哪里好百度定位店铺位置怎么设置
  • 湖北网站建设的释义sem竞价推广公司
  • pc做网站服务器吗win10系统优化工具
  • 查看网站的 cms青岛关键词优化平台
  • 龙华住房和建设局网站官网抖音seo推广
  • 我们是设计师 网站建设专家友情链接发布平台
  • 珠宝 东莞网站建设竞价托管代运营公司
  • 网站建设单页面推广模板牡丹江seo
  • iis网站伪静态网站百度知道提问