Browse Source

Merge remote-tracking branch 'origin/dev_voice' into dev_voice

# Conflicts:
#	epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java
#	epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java
#	epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java
dev_shibei_match
yinzuomei 5 years ago
parent
commit
f3a0ab064a
  1. 8
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/ArticlePublishRangeDTO.java
  2. 8
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/DraftPublishRangeDTO.java
  3. 20
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/DraftContentFromDTO.java
  4. 10
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java
  5. 5
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/ArticlePublishRangeEntity.java
  6. 5
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/DraftPublishRangeEntity.java
  7. 6
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java
  8. 85
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java
  9. 50
      epmet-module/gov-voice/gov-voice-server/src/main/resources/migration/epmet_gov_voice.sql
  10. 45
      epmet-module/gov-voice/gov-voice-server/src/test/java/com/epmet/ArticleServiceTest.java

8
epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/ArticlePublishRangeDTO.java

@ -17,9 +17,10 @@
package com.epmet.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
@ -53,6 +54,11 @@ public class ArticlePublishRangeDTO implements Serializable {
*/
private String gridId;
/**
* 组织-网格名称
*/
private String agencyGridName;
/**
* 下线时间
*/

8
epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/DraftPublishRangeDTO.java

@ -17,9 +17,10 @@
package com.epmet.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
@ -53,6 +54,11 @@ public class DraftPublishRangeDTO implements Serializable {
*/
private String gridId;
/**
* 组织-网格名称
*/
private String agencyGridName;
/**
* 下线时间
*/

20
epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/DraftContentFromDTO.java

@ -35,15 +35,7 @@ public class DraftContentFromDTO implements Serializable {
private static final long serialVersionUID = -4206020151361420221L;
/**
* 文章ID 重新编辑时必填
*/
private String articleId;
/**
* 客户ID
*/
private String customerId;
/**
* 草稿ID
@ -69,7 +61,7 @@ public class DraftContentFromDTO implements Serializable {
/**
* 内容Id
*/
private String draftId;
private String draftContentId;
/**
* 内容
*/
@ -80,16 +72,6 @@ public class DraftContentFromDTO implements Serializable {
*/
private String contentType;
/**
* 审核状态 通过:pass失败:fail
*/
private String auditStatus;
/**
* 审核理由
*/
private String auditReason;
/**
* 内容顺序 从1开始
*/

10
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java

@ -30,15 +30,11 @@ import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.ArticleDTO;
import com.epmet.dto.form.ArticleOperationFormDTO;
import com.epmet.dto.form.DraftContentFromDTO;
import com.epmet.dto.form.GovArticleDetailFormDTO;
import com.epmet.dto.result.ArticleGridResultDTO;
import com.epmet.dto.result.ArticleOperationResultDTO;
import com.epmet.dto.result.GovArticleDetailResultDTO;
import com.epmet.excel.ArticleExcel;
import com.epmet.service.ArticleOperateRecordService;
import com.epmet.service.ArticleService;
import com.epmet.service.ArticleOperateRecordService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -121,8 +117,8 @@ public class ArticleController {
* @throws Exception
*/
@GetMapping("savecontent")
public Result<String> savecontent(@RequestBody DraftContentFromDTO fromDTO) throws Exception {
String draftId = articleService.saveOrUpdateContent(fromDTO);
public Result<String> saveOrUpdateContent(@LoginUser TokenDto tokenDto,@RequestBody DraftContentFromDTO fromDTO) throws Exception {
String draftId = articleService.saveOrUpdateContent(tokenDto, fromDTO);
return new Result<String>().ok(draftId);
}

5
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/ArticlePublishRangeEntity.java

@ -53,6 +53,11 @@ public class ArticlePublishRangeEntity extends BaseEpmetEntity {
*/
private String gridId;
/**
* 组织-网格名称
*/
private String agencyGridName;
/**
* 下线时间
*/

5
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/DraftPublishRangeEntity.java

@ -53,6 +53,11 @@ public class DraftPublishRangeEntity extends BaseEpmetEntity {
*/
private String gridId;
/**
* 组织-网格名称
*/
private String agencyGridName;
/**
* 下线时间
*/

6
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java

@ -21,9 +21,8 @@ import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.dto.ArticleDTO;
import com.epmet.dto.result.ArticleGridResultDTO;
import com.epmet.dto.form.DraftContentFromDTO;
import com.epmet.dto.result.GovArticleDetailResultDTO;
import com.epmet.dto.result.ArticleGridResultDTO;
import com.epmet.entity.ArticleEntity;
import java.util.List;
@ -107,9 +106,12 @@ public interface ArticleService extends BaseService<ArticleEntity> {
/**
* desc:保存或修改文章内容
*
* @param tokenDto
* @param fromDTO
* @return
*/
String saveOrUpdateContent(TokenDto tokenDto, DraftContentFromDTO fromDTO);
String saveOrUpdateContent(DraftContentFromDTO fromDTO);
/**

85
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java

@ -22,6 +22,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
@ -37,6 +38,7 @@ import com.epmet.dto.ArticleDTO;
import com.epmet.dto.feign.GovOrgSelfFeignClient;
import com.epmet.dto.form.DraftContentFromDTO;
import com.epmet.dto.result.ArticleGridResultDTO;
import com.epmet.dto.result.ArticleGridResultDTO;
import com.epmet.dto.result.GovArticleContentDTO;
import com.epmet.dto.result.GovArticleDetailResultDTO;
import com.epmet.entity.ArticleEntity;
@ -53,7 +55,6 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.*;
import java.util.stream.Collectors;
/**
* 文章表
@ -139,25 +140,13 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
@Override
@Transactional(rollbackFor = Exception.class)
public String saveOrUpdateContent(DraftContentFromDTO fromDTO) {
public String saveOrUpdateContent(TokenDto tokenDto, DraftContentFromDTO fromDTO) {
logger.debug("saveOrUpdateContent param:" + JSON.toJSONString(fromDTO));
ValidatorUtils.validateEntity(fromDTO, AddGroup.class, DefaultGroup.class);
boolean havePublished = StringUtils.isBlank(fromDTO.getArticleId()) ? false : true;
if (havePublished) {
//TODO 校验文章是否已下线
//....
Map<String,Object> articleParamMap = new HashMap<>();
articleParamMap.put("ARTICLE_ID", fromDTO.getArticleId());
articleParamMap.put("ARTICLE_ID", fromDTO.getArticleId());
baseDao.selectByMap(articleParamMap);
}
DraftEntity draftEntity = null;
List<DraftContentEntity> draftContentList = null;
if (StringUtils.isNotBlank(fromDTO.getDraftId())) {
//TODO
draftEntity = draftDao.selectById(fromDTO.getDraftId());
if (draftEntity == null) {
logger.warn("saveOrUpdateContent draftId is not exist in db");
@ -170,21 +159,41 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
} else {
draftEntity = new DraftEntity();
draftEntity.setTitle(fromDTO.getTitle());
draftEntity.setCustomerId(tokenDto.getCustomerId());
draftEntity.setPreviewContent("");
draftEntity.setIsTop(0);
draftEntity.setPublishRangeDesc("");
draftEntity.setPublisherId("");
draftEntity.setPublisherName("");
draftEntity.setPublisherType("");
draftEntity.setPublishDate(new Date());
draftEntity.setStatusFlag("");
draftEntity.setTags("");
draftEntity.setOrgId("");
draftEntity.setOrgIdPath("");
draftEntity.setGridId("");
draftEntity.setDepartmentId("");
draftEntity.setRevision(0);
draftEntity.setDelFlag(NumConstant.ZERO_STR);
draftDao.insert(draftEntity);
}
String draftId = draftEntity.getId();
fromDTO.setDraftId(draftId);
draftContentList = buildDraftContent(tokenDto, fromDTO);
if (CollectionUtils.isEmpty(draftContentList)) {
logger.warn("saveOrUpdateContent contentList is empty");
throw new RenException("参数错误");
}
draftContentList = buildDraftContent(fromDTO, havePublished);
Map<String, Object> draftIdMap = new HashMap<>();
draftIdMap.put("DRAFT_ID", fromDTO.getDraftId());
draftContentDao.deleteByMap(draftIdMap);
//TODO 改为批量插入
draftContentList.forEach(content -> draftContentDao.insert(content));
String draftId = draftEntity.getId();
return null;
return draftId;
}
@Override
@ -200,43 +209,25 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
/**
* desc构建 内容对象
*
* @param tokenDto
* @param fromDTO
* @param havePublished
* @return
*/
private List<DraftContentEntity> buildDraftContent(DraftContentFromDTO fromDTO, boolean havePublished) {
//如果已发布 则需要校验内容是否更改过 没有更改则 不对审核状态进行重置
private List<DraftContentEntity> buildDraftContent(TokenDto tokenDto, DraftContentFromDTO fromDTO) {
List<DraftContentEntity> newContentList = new ArrayList<>();
Map<String, DraftContentEntity> oldContentMap = null;
Map<String, Object> draftIdMap = new HashMap<>();
draftIdMap.put("DRAFT_ID", fromDTO.getDraftId());
if (havePublished) {
List<DraftContentEntity> oldContentEntities = draftContentDao.selectByMap(draftIdMap);
oldContentMap = oldContentEntities.stream().collect(Collectors.toMap(DraftContentEntity::getId, content -> content));
//删掉所有
draftContentDao.deleteByMap(draftIdMap);
}
List<DraftContentFromDTO.DraftContentDTO> contentList = fromDTO.getContentList();
Map<String, DraftContentEntity> finalOldContentMap = oldContentMap;
Set<Integer> orderNumSet = new HashSet<>();
contentList.forEach(content -> {
if (finalOldContentMap != null && finalOldContentMap.get(content.getDraftId()) != null) {
DraftContentEntity oldContent = finalOldContentMap.get(content.getDraftId());
if (oldContent.getContent().equals(content.getContent())) {
content.setAuditReason(oldContent.getAuditReason());
content.setAuditStatus(oldContent.getAuditStatus());
}
}
for (int i = 0; i < contentList.size(); i++) {
DraftContentFromDTO.DraftContentDTO content = contentList.get(i);
DraftContentEntity entity = ConvertUtils.sourceToTarget(content, DraftContentEntity.class);
entity.setId(content.getDraftId());
orderNumSet.add(content.getOrderNum());
entity.setId(content.getDraftContentId());
entity.setCustomerId(tokenDto.getCustomerId());
entity.setDraftId(fromDTO.getDraftId());
entity.setOrderNum(i + 1);
newContentList.add(entity);
});
if (orderNumSet.size() != newContentList.size()) {
logger.warn("saveOrUpdateContent contentList orderNum is repeat");
throw new RenException("参数错误");
}
return newContentList;
}

50
epmet-module/gov-voice/gov-voice-server/src/main/resources/migration/epmet_gov_voice.sql

@ -1,11 +1,4 @@
/*
Date: 2/06/2020 16:13:38
*/
-- SET NAMES utf8mb4;
-- #SET FOREIGN_KEY_CHECKS = 0;
CREATE DATABASE `epmet_gov_access` DEFAULT CHARACTER SET utf8mb4;
DROP TABLE tag_default;/*SkipError*/
CREATE TABLE tag_default(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
TAG_NAME VARCHAR(32) NOT NULL COMMENT '标签名称' ,
@ -19,6 +12,7 @@ CREATE TABLE tag_default(
) COMMENT = '默认标签表 默认标签表';
ALTER TABLE tag_default COMMENT '默认标签表';
DROP TABLE tag_customer;/*SkipError*/
CREATE TABLE tag_customer(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
@ -35,6 +29,7 @@ CREATE TABLE tag_customer(
ALTER TABLE tag_customer ADD INDEX INX_TAG_NAME(TAG_NAME);
ALTER TABLE tag_customer COMMENT '客户标签表';
DROP TABLE tag_grid;/*SkipError*/
CREATE TABLE tag_grid(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
@ -52,6 +47,7 @@ CREATE TABLE tag_grid(
) COMMENT = '网格标签表 网格标签表';
ALTER TABLE tag_grid COMMENT '网格标签表';
DROP TABLE article_tags;/*SkipError*/
CREATE TABLE article_tags(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
@ -69,18 +65,19 @@ CREATE TABLE article_tags(
ALTER TABLE article_tags ADD INDEX IDX_ARTICLE_ID(ARTICLE_ID);
ALTER TABLE article_tags COMMENT '文章标签表';
DROP TABLE draft;/*SkipError*/
CREATE TABLE draft(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
TITLE VARCHAR(128) NOT NULL COMMENT '文章标题' ,
PREVIEW_CONTENT VARCHAR(512) NOT NULL COMMENT '文章内容 精简内容' ,
IS_TOP INT NOT NULL COMMENT '是否置顶' ,
IS_TOP INT NOT NULL COMMENT '是否置顶 1是;0否;' ,
PUBLISH_RANGE_DESC VARCHAR(512) NOT NULL COMMENT '发布范围描述 所有发布范围集合' ,
PUBLISHER_ID VARCHAR(64) NOT NULL COMMENT '发布单位ID' ,
PUBLISHER_NAME VARCHAR(128) NOT NULL COMMENT '发布单位名称' ,
PUBLISHER_TYPE VARCHAR(32) NOT NULL COMMENT '发布单位类型 机关:agency;部门:department;网格:grid' ,
PUBLISH_DATE DATE NOT NULL COMMENT '发布时间' ,
STATUS_FLAG VARCHAR(32) NOT NULL COMMENT '发布状态 未发布:unpublish ;已发布:published,审核中:auditing审核失败:auditfail' ,
STATUS_FLAG VARCHAR(32) NOT NULL COMMENT '发布状态 未发布:unpublish ;已发布:published,审核中:auditing审核失败:auditfail' ,
TAGS VARCHAR(512) NOT NULL COMMENT '文章标签串 竖杠分割的标签名称' ,
ORG_ID VARCHAR(64) COMMENT '组织ID' ,
ORG_ID_PATH VARCHAR(512) COMMENT '组织ID路径 eg:字段为def:abc' ,
@ -96,14 +93,15 @@ CREATE TABLE draft(
) COMMENT = '草稿表 草稿表';
ALTER TABLE draft COMMENT '草稿表';
DROP TABLE draft_content;/*SkipError*/
CREATE TABLE draft_content(
ID VARCHAR(64) NOT NULL COMMENT '主键ID 主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
DRAFT_ID VARCHAR(64) NOT NULL COMMENT '草稿ID' ,
CONTENT VARCHAR(1024) NOT NULL COMMENT '内容' ,
CONTENT_TYPE VARCHAR(32) NOT NULL COMMENT '内容类型 图片:img;文字:text' ,
AUDIT_STATUS VARCHAR(32) NOT NULL COMMENT '审核状态 通过:pass;失败:fail;' ,
AUDIT_REASON VARCHAR(128) NOT NULL COMMENT '审核理由' ,
AUDIT_STATUS VARCHAR(32) COMMENT '审核状态 通过:pass;失败:fail;审核中:auditing;' ,
AUDIT_REASON VARCHAR(128) COMMENT '审核理由' ,
ORDER_NUM INT NOT NULL COMMENT '内容顺序 从1开始' ,
DEL_FLAG INT NOT NULL DEFAULT 0 COMMENT '删除标识 0.未删除 1.已删除' ,
REVISION INT NOT NULL COMMENT '乐观锁' ,
@ -115,11 +113,13 @@ CREATE TABLE draft_content(
) COMMENT = '草稿内容表 草稿内容表';
ALTER TABLE draft_content COMMENT '草稿内容表';
DROP TABLE draft_publish_range;/*SkipError*/
CREATE TABLE draft_publish_range(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
DRAFT_ID VARCHAR(64) NOT NULL COMMENT 'ID草稿' ,
GRID_ID VARCHAR(64) NOT NULL COMMENT '网格ID' ,
AGENCY_GRID_NAME VARCHAR(64) NOT NULL COMMENT '组织-网格名称' ,
OFF_LINE_TIME DATETIME COMMENT '下线时间' ,
PUBLISH_STATUS VARCHAR(32) NOT NULL COMMENT '发布状态 未发布:unpublish ;已发布:published' ,
DEL_FLAG INT NOT NULL DEFAULT 0 COMMENT '删除标识 0.未删除 1.已删除' ,
@ -132,13 +132,14 @@ CREATE TABLE draft_publish_range(
) COMMENT = '草稿发布范围表 草稿发布范围表';
ALTER TABLE draft_publish_range COMMENT '草稿发布范围表';
DROP TABLE draft_cover;/*SkipError*/
CREATE TABLE draft_cover(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
DRAFT_ID VARCHAR(64) NOT NULL COMMENT '草稿ID' ,
IMG_URL VARCHAR(512) NOT NULL COMMENT '封面图片地址 url地址' ,
AUDIT_STATUS VARCHAR(32) NOT NULL COMMENT '审核状态 通过:pass;失败:fail;' ,
AUDIT_REASON VARCHAR(128) NOT NULL COMMENT '审核理由' ,
AUDIT_STATUS VARCHAR(32) COMMENT '审核状态 通过:pass;失败:fail;审核中:auditing;' ,
AUDIT_REASON VARCHAR(128) COMMENT '审核理由' ,
DEL_FLAG INT NOT NULL DEFAULT 0 COMMENT '删除标识 0.未删除 1.已删除' ,
REVISION INT NOT NULL COMMENT '乐观锁' ,
CREATED_BY VARCHAR(32) NOT NULL COMMENT '创建人' ,
@ -149,14 +150,15 @@ CREATE TABLE draft_cover(
) COMMENT = '草稿封面表 草稿封面表';
ALTER TABLE draft_cover COMMENT '草稿封面表';
DROP TABLE article;/*SkipError*/
CREATE TABLE article(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
DRAFT_ID VARCHAR(64) NOT NULL COMMENT '草稿ID' ,
TITLE VARCHAR(128) NOT NULL COMMENT '文章标题' ,
PREVIEW_CONTENT VARCHAR(512) NOT NULL COMMENT '文章内容 精简内容' ,
IS_TOP INT NOT NULL COMMENT '是否置顶' ,
PUBLISH_RANGE_DESC VARCHAR(512) NOT NULL COMMENT '发布范围描述 所有发布范围集合' ,
IS_TOP INT NOT NULL COMMENT '是否置顶 1是;0否;' ,
PUBLISH_RANGE_DESC VARCHAR(512) NOT NULL COMMENT '发布范围描述 所有发布范围集合,顿号隔开' ,
PUBLISHER_ID VARCHAR(64) NOT NULL COMMENT '发布单位ID' ,
PUBLISHER_NAME VARCHAR(128) NOT NULL COMMENT '发布单位名称' ,
PUBLISHER_TYPE VARCHAR(32) NOT NULL COMMENT '发布单位类型 机关:agency;部门:department;网格:grid' ,
@ -178,14 +180,15 @@ CREATE TABLE article(
) COMMENT = '文章表 正式文章表';
ALTER TABLE article COMMENT '文章表';
DROP TABLE article_content;/*SkipError*/
CREATE TABLE article_content(
ID VARCHAR(64) NOT NULL COMMENT '主键ID 主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
ARTICLE_ID VARCHAR(64) NOT NULL COMMENT '文章ID' ,
CONTENT VARCHAR(1024) NOT NULL COMMENT '内容' ,
CONTENT_TYPE VARCHAR(32) NOT NULL COMMENT '内容类型 图片:img;文字:text' ,
AUDIT_STATUS VARCHAR(32) NOT NULL COMMENT '审核状态 通过:pass;失败:fail;审核中:auditing' ,
AUDIT_REASON VARCHAR(128) NOT NULL COMMENT '审核理由' ,
AUDIT_STATUS VARCHAR(32) COMMENT '审核状态 通过:pass;失败:fail;审核中:auditing;' ,
AUDIT_REASON VARCHAR(128) COMMENT '审核理由' ,
ORDER_NUM INT NOT NULL COMMENT '内容顺序 从1开始' ,
DEL_FLAG INT NOT NULL DEFAULT 0 COMMENT '删除标识 0.未删除 1.已删除' ,
REVISION INT NOT NULL COMMENT '乐观锁' ,
@ -197,13 +200,14 @@ CREATE TABLE article_content(
) COMMENT = '文章内容表 文章内容表';
ALTER TABLE article_content COMMENT '文章内容表';
DROP TABLE article_cover;/*SkipError*/
CREATE TABLE article_cover(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
ARTICLE_ID VARCHAR(64) NOT NULL COMMENT '文章ID' ,
IMG_URL VARCHAR(512) NOT NULL COMMENT '封面图片地址 url地址' ,
AUDIT_STATUS VARCHAR(32) NOT NULL COMMENT '审核状态 通过:pass;失败:fail;审核中:auditing' ,
AUDIT_REASON VARCHAR(128) NOT NULL COMMENT '审核理由' ,
AUDIT_STATUS VARCHAR(32) COMMENT '审核状态 通过:pass;失败:fail;审核中:auditing' ,
AUDIT_REASON VARCHAR(128) COMMENT '审核理由' ,
DEL_FLAG INT NOT NULL DEFAULT 0 COMMENT '删除标识 0.未删除 1.已删除' ,
REVISION INT NOT NULL COMMENT '乐观锁' ,
CREATED_BY VARCHAR(32) NOT NULL COMMENT '创建人' ,
@ -214,13 +218,15 @@ CREATE TABLE article_cover(
) COMMENT = '文章封面表 文章封面表';
ALTER TABLE article_cover COMMENT '文章封面表';
DROP TABLE article_publish_range;/*SkipError*/
CREATE TABLE article_publish_range(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
ARTICLE_ID VARCHAR(64) NOT NULL COMMENT '文章ID' ,
GRID_ID VARCHAR(64) NOT NULL COMMENT '网格ID' ,
AGENCY_GRID_NAME VARCHAR(64) NOT NULL COMMENT '组织-网格名称' ,
OFF_LINE_TIME DATETIME COMMENT '下线时间' ,
PUBLISH_STATUS VARCHAR(32) NOT NULL COMMENT '发布状态' ,
PUBLISH_STATUS VARCHAR(32) NOT NULL COMMENT '发布状态 未发布:unpublish ;已发布:published' ,
DEL_FLAG INT NOT NULL DEFAULT 0 COMMENT '删除标识 0.未删除 1.已删除' ,
REVISION INT NOT NULL COMMENT '乐观锁' ,
CREATED_BY VARCHAR(32) NOT NULL COMMENT '创建人' ,
@ -232,6 +238,7 @@ CREATE TABLE article_publish_range(
ALTER TABLE article_publish_range ADD INDEX IDX_ARTICLE_ID(ARTICLE_ID);
ALTER TABLE article_publish_range COMMENT '文章发布范围表';
DROP TABLE article_operate_record;/*SkipError*/
CREATE TABLE article_operate_record(
ID VARCHAR(64) NOT NULL COMMENT '主键ID 主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,
@ -250,6 +257,7 @@ CREATE TABLE article_operate_record(
) COMMENT = '文章操作记录表 文章操作记录表';
ALTER TABLE article_operate_record COMMENT '文章操作记录表';
DROP TABLE article_visit_record;/*SkipError*/
CREATE TABLE article_visit_record(
ID VARCHAR(64) NOT NULL COMMENT '主键ID' ,
CUSTOMER_ID VARCHAR(64) NOT NULL COMMENT '客户ID' ,

45
epmet-module/gov-voice/gov-voice-server/src/test/java/com/epmet/ArticleServiceTest.java

@ -0,0 +1,45 @@
package com.epmet;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.dto.form.DraftContentFromDTO;
import com.epmet.service.ArticleService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.ArrayList;
import java.util.List;
@RunWith(SpringRunner.class)
@SpringBootTest
public class ArticleServiceTest {
@Autowired
private ArticleService articleService;
@Test
public void genToken() {
TokenDto tokenDto = new TokenDto();
tokenDto.setCustomerId("1");
tokenDto.setUserId("1");
DraftContentFromDTO draftContentFromDTO = new DraftContentFromDTO();
//draftContentFromDTO.setDraftId("1");
draftContentFromDTO.setTitle("testTitle");
List<DraftContentFromDTO.DraftContentDTO> list = new ArrayList<>();
for (int i = 0; i <2 ; i++) {
DraftContentFromDTO.DraftContentDTO contentDTO = new DraftContentFromDTO.DraftContentDTO();
contentDTO.setDraftContentId("");
contentDTO.setContent("内容"+i);
contentDTO.setContentType("text");
contentDTO.setOrderNum(1+i);
list.add(contentDTO);
}
draftContentFromDTO.setContentList(list);
String s = articleService.saveOrUpdateContent(tokenDto, draftContentFromDTO);
System.out.println(s);
}
}
Loading…
Cancel
Save