学成在线-第10天-讲义-课程发布1课程发布1.1需求分析课程发布后将生成正式的课程详情页面,课程发布后用户即可浏览课程详情页面,并开始课程的学习。课程发布生成课程详情页面的流程与课程预览业务流程相同,如下:1、用户进入教学管理中心,进入某个课程的管理界面2、点击课程发布,前端请求到课程管理服务3、课程管理服务远程调用CMS生成课程发布页面,CMS将课程详情页面发布到服务器4、课程管理服务修改课程发布状态为“已发布”,并向前端返回发布成功5、用户在教学管理中心点击“课程详情页面”链接,查看课程详情页面内容1.2CMS一键发布接口1.2.1需求分析北京市昌平区建材城西路金燕龙办公楼一层电话:400-618-9090根据需求分析内容,需要在cms服务增加页面发布接口供课程管理服务调用,此接口的功能如下:1、接收课程管理服务发布的页面信息2、将页面信息添加到数据库(mongodb)3、对页面信息进行静态化4、将页面信息发布到服务器1.2.3接口定义1、创建响应结果类型页面发布成功cms返回页面的url页面Url=cmsSite.siteDomain+cmsSite.siteWebPath+cmsPage.pageWebPath+cmsPage.pageName2、在api工程定义页面发布接口2.2.4Dao1、站点dao接口中需要获取站点的信息(站点域名、站点访问路径等)2.2.5Service1、添加页面,如果已存在则更新页面@Data@NoArgsConstructor//无参构造器注解publicclassCmsPostPageResultextendsResponseResult{StringpageUrl;publicCmsPostPageResult(ResultCoderesultCode,StringpageUrl){super(resultCode);this.pageUrl=pageUrl;}}@ApiOperation("一键发布页面")publicCmsPostPageResultpostPageQuick(CmsPagecmsPage);publicinterfaceCmsSiteRepositoryextendsMongoRepository{}北京市昌平区建材城西路金燕龙办公楼一层电话:400-618-90902、页面发布方法//添加页面,如果已存在则更新页面publicCmsPageResultsave(CmsPagecmsPage){//校验页面是否存在,根据页面名称、站点Id、页面webpath查询CmsPagecmsPage1=cmsPageRepository.findByPageNameAndSiteIdAndPageWebPath(cmsPage.getPageName(),cmsPage.getSiteId(),cmsPage.getPageWebPath());if(cmsPage1!=null){//更新returnthis.update(cmsPage1.getPageId(),cmsPage);}else{//添加returnthis.add(cmsPage);}}//一键发布页面publicCmsPostPageResultpostPageQuick(CmsPagecmsPage){//添加页面CmsPageResultsave=this.save(cmsPage);if(!save....