Browse Source

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

master
wangchao 5 years ago
parent
commit
cfe5af184b
  1. 3
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java
  2. 16
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpClientManager.java
  3. 4
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/ScanContentUtils.java
  4. 2
      epmet-module/epmet-oss/epmet-oss-server/deploy/docker-compose-dev.yml
  5. 2
      epmet-module/epmet-oss/epmet-oss-server/pom.xml
  6. 5
      epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/OssController.java
  7. 4
      epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/form/ListOpePermsFormDTO.java
  8. 2
      epmet-module/gov-access/gov-access-server/deploy/docker-compose-dev.yml
  9. 2
      epmet-module/gov-access/gov-access-server/pom.xml
  10. 3
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/AccessServiceImpl.java
  11. 1
      epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/impl/AccessServiceImpl.java
  12. 42
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/ArticleAgencyGridListResultDTO.java
  13. 2
      epmet-module/gov-org/gov-org-server/deploy/docker-compose-dev.yml
  14. 2
      epmet-module/gov-org/gov-org-server/pom.xml
  15. 9
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java
  16. 5
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/DraftContentFromDTO.java
  17. 19
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/PublishArticleFormDTO.java
  18. 23
      epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/DraftContentSaveResultDTO.java
  19. 2
      epmet-module/gov-voice/gov-voice-server/deploy/docker-compose-dev.yml
  20. 2
      epmet-module/gov-voice/gov-voice-server/pom.xml
  21. 10
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/constant/DraftConstant.java
  22. 60
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java
  23. 2
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/DraftController.java
  24. 6
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java
  25. 4
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/DraftDao.java
  26. 11
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java
  27. 129
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java
  28. 2
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/DraftServiceImpl.java
  29. 6
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/TagServiceImpl.java
  30. 5
      epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/utils/ModuleConstant.java
  31. 16
      epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml
  32. 6
      epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/DraftDao.xml
  33. 3
      epmet-module/gov-voice/gov-voice-server/src/test/java/com/epmet/ArticleServiceTest.java
  34. 2
      epmet-openapi/epmet-openapi-scan/deploy/docker-compose-dev.yml
  35. 2
      epmet-openapi/epmet-openapi-scan/pom.xml

3
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java

@ -65,8 +65,11 @@ public enum EpmetErrorCode {
OPER_UPLOAD_FILE_OVER_SIZE(8707, "文件体积过大"),
OPER_UPLOAD_FILE_TYPE_ERROR(8708, "文件类型错误"),
ARTICLE_PUBLISH_ERROR(8801, "发布文章失败,请刷新重试"),
CUSTOMER_VALIDATE_ERROR(8999, "内部数据校验异常");
private int code;
private String msg;

16
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpClientManager.java

@ -1,8 +1,9 @@
package com.epmet.commons.tools.utils;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.scan.param.TextScanParamDTO;
import com.epmet.commons.tools.scan.param.TextTaskDTO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpStatus;
@ -167,6 +168,19 @@ public class HttpClientManager {
}
throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode(), EpmetErrorCode.SERVER_ERROR.getMsg());
}
public static void main(String[] args) {
String url = "http://192.168.1.130:8107/epmetscan/api/textSyncScan";
TextTaskDTO p = new TextTaskDTO();
p.setDataId("1");
p.setContent("neirong1");
List<TextTaskDTO> list = new ArrayList<>();
list.add(p);
TextScanParamDTO param = new TextScanParamDTO();
param.setTasks(list);
Result<String> result = HttpClientManager.getInstance().sendPostByJSON(url, JSON.toJSONString(param));
System.out.println(JSON.toJSONString(result));
}
}

4
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/ScanContentUtils.java

@ -6,6 +6,7 @@ import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.scan.param.ImgScanParamDTO;
import com.epmet.commons.tools.scan.param.TextScanParamDTO;
import com.epmet.commons.tools.scan.result.SyncScanResult;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
/**
@ -15,6 +16,7 @@ import org.apache.commons.lang3.StringUtils;
* @email liujianjun@yunzongnet.com
* @date 2020-06-08 8:28
**/
@Slf4j
public class ScanContentUtils {
/**
* desc:图片同步扫描
@ -22,6 +24,7 @@ public class ScanContentUtils {
* @return
*/
public static SyncScanResult imgSyncScan(String url, ImgScanParamDTO param) {
log.debug("imgSyncScan param:",JSON.toJSONString(param));
if (StringUtils.isBlank(url) || param == null) {
throw new RenException("参数错误");
}
@ -42,6 +45,7 @@ public class ScanContentUtils {
* @return
*/
public static SyncScanResult textSyncScan(String url, TextScanParamDTO param) {
log.debug("textSyncScan param:",JSON.toJSONString(param));
if (StringUtils.isBlank(url) || param == null) {
throw new RenException("参数错误");
}

2
epmet-module/epmet-oss/epmet-oss-server/deploy/docker-compose-dev.yml

@ -3,7 +3,7 @@ services:
epmet-oss-server:
container_name: epmet-oss-server-dev
# image: registry-vpc.cn-qingdao.aliyuncs.com/epmet-cloud-dev/epmet-oss-server:0.3.2
image: 192.168.1.130:10080/epmet-cloud-dev/epmet-oss-server:0.3.14
image: 192.168.1.130:10080/epmet-cloud-dev/epmet-oss-server:0.3.17
ports:
- "8083:8083"
network_mode: host # 使用现有网络

2
epmet-module/epmet-oss/epmet-oss-server/pom.xml

@ -2,7 +2,7 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<version>0.3.14</version>
<version>0.3.17</version>
<parent>
<groupId>com.epmet</groupId>
<artifactId>epmet-oss</artifactId>

5
epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/OssController.java

@ -55,7 +55,6 @@ public class OssController {
private ParamsRemoteService paramsRemoteService;
private final static String KEY = ModuleConstant.CLOUD_STORAGE_CONFIG_KEY;
public static final String IMAGE_JPG_VALUE = "image/jpg";
@GetMapping("page")
@ApiOperation(value = "分页")
@ -188,10 +187,10 @@ public class OssController {
}
@PostMapping("article/upload")
public Result uploadArticleImg(@RequestParam("file") MultipartFile file) {
public Result<UploadImgResultDTO> uploadArticleImg(@RequestParam("file") MultipartFile file) {
// 校验文件类型
if (!MediaType.IMAGE_PNG_VALUE.equals(file.getContentType()) && !IMAGE_JPG_VALUE.equals(file.getContentType())) {
if (!MediaType.IMAGE_PNG_VALUE.equals(file.getContentType()) && !MediaType.IMAGE_JPEG_VALUE.equals(file.getContentType())) {
throw new RenException(EpmetErrorCode.OPER_UPLOAD_FILE_TYPE_ERROR.getCode()
, EpmetErrorCode.OPER_UPLOAD_FILE_TYPE_ERROR.getMsg());
}

4
epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/form/ListOpePermsFormDTO.java

@ -11,4 +11,8 @@ public class ListOpePermsFormDTO {
private String staffId;
@NotBlank(message = "当前单位不能为空")
private String currAgencyId;
private String currGridId;
private String currDeptId;
}

2
epmet-module/gov-access/gov-access-server/deploy/docker-compose-dev.yml

@ -2,7 +2,7 @@ version: "3.7"
services:
gov-access-server:
container_name: gov-access-server-dev
image: 192.168.1.130:10080/epmet-cloud-dev/gov-access-server:0.3.26
image: 192.168.1.130:10080/epmet-cloud-dev/gov-access-server:0.3.27
ports:
- "8099:8099"
network_mode: host # 使用现有网络

2
epmet-module/gov-access/gov-access-server/pom.xml

@ -2,7 +2,7 @@
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<version>0.3.26</version>
<version>0.3.27</version>
<parent>
<artifactId>gov-access</artifactId>
<groupId>com.epmet</groupId>

3
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/AccessServiceImpl.java

@ -546,8 +546,7 @@ public class AccessServiceImpl implements AccessService {
}
if (!opeScope.getSeries().equals(OperationScopeConstant.SERIES_ORG_LEVEL)) {
// 如果不是org_level系列权限,跳过。(如果一个操作没有分配org_level系列权限,那么无法根据所在机构判断是否具有该功能权限)
// 此时不会给前台返回此功能权限。即要求所有操作必须分配至少一个org_level系列权限(如果实在不需要,可以分配成org_all)。
opeKeys.add(opeScope.getOperationKey());
continue;
}

1
epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/impl/AccessServiceImpl.java

@ -27,6 +27,7 @@ public class AccessServiceImpl implements AccessService {
ListOpePermsFormDTO listOpePermsFormDTO = new ListOpePermsFormDTO();
listOpePermsFormDTO.setStaffId(staffId);
listOpePermsFormDTO.setCurrAgencyId(currAgencyId);
listOpePermsFormDTO.setCurrGridId(currGridId);
Result<Set<String>> result = govAccessFeignClient.listOperationPermissions(listOpePermsFormDTO);
if (!result.success()) {
logger.error("调用GovAccess服务查询功能权限列表失败,StaffId:{},错误信息:{}", staffId, result.getMsg());

42
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/ArticleAgencyGridListResultDTO.java

@ -0,0 +1,42 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
* 党建声音-可选发布范围可下线网格列表-接口返参
*
* @author sun
*/
@Data
public class ArticleAgencyGridListResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 树结构对象
*/
private ArticleGridResultDTO agencyGridList;
}

2
epmet-module/gov-org/gov-org-server/deploy/docker-compose-dev.yml

@ -2,7 +2,7 @@ version: "3.7"
services:
gov-org-server:
container_name: gov-org-server-dev
image: 192.168.1.130:10080/epmet-cloud-dev/gov-org-server:0.3.62
image: 192.168.1.130:10080/epmet-cloud-dev/gov-org-server:0.3.63
ports:
- "8092:8092"
network_mode: host # 使用现有网络

2
epmet-module/gov-org/gov-org-server/pom.xml

@ -2,7 +2,7 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<version>0.3.62</version>
<version>0.3.63</version>
<parent>
<groupId>com.epmet</groupId>
<artifactId>gov-org</artifactId>

9
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java

@ -686,7 +686,8 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl<CustomerAgencyDao
List<AgencyGridListResultDTO> gridList = customerGridDao.selectAgencyGridList(agencyEntity.getId());
returnDTO.setGridList(gridList);
//递归查询当前组织的下级组织以及每个下级组织对应的网格列表
List<ArticleGridResultDTO> subAgencyGridList = getGridList(agencyEntity.getPids() + ":" + agencyEntity.getId());
//根组织pids为空
List<ArticleGridResultDTO> subAgencyGridList = getGridList(("".equals(agencyEntity.getPids())?"":agencyEntity.getPids() + ":")+agencyEntity.getId());
returnDTO.setSubAgencyGridList(subAgencyGridList);
} else if (gridParty) {
//4.2:查询人员在当前机关下参与的网格列表
@ -771,11 +772,11 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl<CustomerAgencyDao
//4:根据不同角色查询不同数据
CustomerAgencyEntity agencyEntity = baseDao.selectById(staffAgencyDTO.getAgencyId());
//当前机关信息
returnDTO.setAgencyId(agencyEntity.getId());
returnDTO.setAgencyName(agencyEntity.getOrganizationName());
if (party) {
//4.1:查询当前机关的网格列表以及所有下级机关的网格列表
//当前机关信息
returnDTO.setAgencyId(agencyEntity.getId());
returnDTO.setAgencyName(agencyEntity.getOrganizationName());
//当前机关下部门列表信息
List<AgencyDeptList> agencyDeptList = customerDepartmentDao.selectAgencyDeptMsgList(agencyEntity.getId());
returnDTO.setAgencyDeptList(agencyDeptList);

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

@ -34,9 +34,7 @@ import java.util.List;
public class DraftContentFromDTO implements Serializable {
private static final long serialVersionUID = -4206020151361420221L;
private static final long serialVersionUID = -5699594328218833256L;
/**
* 草稿ID
*/
@ -51,6 +49,7 @@ public class DraftContentFromDTO implements Serializable {
/**
* 内容列表
*/
@NotBlank(message = "文章内容不能为空")
private List<DraftContentDTO> contentList;
@Data

19
epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/PublishArticleFormDTO.java

@ -0,0 +1,19 @@
package com.epmet.dto.form;
import lombok.Data;
import java.io.Serializable;
/**
* 政府端-发布文章参数
*/
@Data
public class PublishArticleFormDTO implements Serializable {
private static final long serialVersionUID = -1659776209159063672L;
/**
* 要发布的草稿Id
*/
private String draftId;
}

23
epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/DraftContentSaveResultDTO.java

@ -0,0 +1,23 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* 政府端保存文章内容 返回结果
*/
@Data
public class DraftContentSaveResultDTO implements Serializable {
public DraftContentSaveResultDTO() {
super();
}
public DraftContentSaveResultDTO(String draftId) {
this.draftId = draftId;
}
/**
*草稿Id
*/
private String draftId;
}

2
epmet-module/gov-voice/gov-voice-server/deploy/docker-compose-dev.yml

@ -2,7 +2,7 @@ version: "3.7"
services:
gov-voice-server:
container_name: gov-voice-server-dev
image: 192.168.1.130:10080/epmet-cloud-dev/gov-voice-server:0.3.9
image: 192.168.1.130:10080/epmet-cloud-dev/gov-voice-server:0.3.14
ports:
- "8105:8105"
network_mode: host # 使用现有网络

2
epmet-module/gov-voice/gov-voice-server/pom.xml

@ -3,7 +3,7 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<version>0.3.9</version>
<version>0.3.14</version>
<parent>
<artifactId>gov-voice</artifactId>
<groupId>com.epmet</groupId>

10
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/constant/DraftConstant.java

@ -31,6 +31,11 @@ public interface DraftConstant {
*/
String AUDITING = "auditing";
/**
* 审核失败auditfail
*/
String AUDITFAIL = "auditfail";
//是否置顶
/**
* 置顶1
@ -61,4 +66,9 @@ public interface DraftConstant {
* 内容类型-文字
*/
String TEXT = "text";
/**
* 草稿预览内容大小长度
*/
Integer PREVIEW_CONTENT_MAX_LENGTH = 50;
}

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

@ -20,14 +20,13 @@ package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.annotation.RequirePermission;
import com.epmet.commons.tools.enums.RequirePermissionEnum;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.scan.result.SyncScanResult;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.dto.ArticleContentDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.service.ArticleOperateRecordService;
@ -35,7 +34,10 @@ import com.epmet.service.ArticleService;
import com.epmet.service.DraftService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@ -64,8 +66,22 @@ public class ArticleController {
* @Description 党建声音-政府端-可选发布范围
**/
@PostMapping("agencygridlist")
public Result<ArticleGridResultDTO> agencyGridList(@LoginUser TokenDto tokenDTO) {
return new Result<ArticleGridResultDTO>().ok(articleService.agencyGridList(tokenDTO));
public Result<ArticleAgencyGridListResultDTO> agencyGridList(@LoginUser TokenDto tokenDTO) {
ArticleAgencyGridListResultDTO agencyGridList = new ArticleAgencyGridListResultDTO();
agencyGridList.setAgencyGridList(articleService.agencyGridList(tokenDTO));
return new Result<ArticleAgencyGridListResultDTO>().ok(agencyGridList);
}
/**
* desc:政府端-点击返回按钮时点击保存草稿 无需校验参数
* @param fromDTO
* @throws Exception
*/
@PostMapping("savedraft")
@RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISH)
public Result<DraftContentSaveResultDTO> savedraft(@LoginUser TokenDto tokenDto,@RequestBody DraftContentFromDTO fromDTO) throws Exception {
DraftContentSaveResultDTO draftDTO = articleService.saveDraft(tokenDto, fromDTO);
return new Result<DraftContentSaveResultDTO>().ok(draftDTO);
}
/**
@ -73,11 +89,11 @@ public class ArticleController {
* @param fromDTO
* @throws Exception
*/
@GetMapping("savecontent")
@PostMapping("savecontent")
@RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISH)
public Result<String> saveOrUpdateContent(@LoginUser TokenDto tokenDto,@RequestBody DraftContentFromDTO fromDTO) throws Exception {
String draftId = articleService.saveOrUpdateContent(tokenDto, fromDTO);
return new Result<String>().ok(draftId);
public Result<DraftContentSaveResultDTO> saveOrUpdateContent(@LoginUser TokenDto tokenDto,@RequestBody DraftContentFromDTO fromDTO) throws Exception {
DraftContentSaveResultDTO resultDTO = articleService.saveOrUpdateContent(tokenDto, fromDTO, true);
return new Result<DraftContentSaveResultDTO>().ok(resultDTO);
}
/**
@ -171,7 +187,7 @@ public class ArticleController {
* @param fromDTO
* @throws Exception
*/
@GetMapping("saveattr")
@PostMapping("saveattr")
@RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISH)
public Result<Boolean> saveDraftAttr(@LoginUser TokenDto tokenDto,@RequestBody DraftAttrFromDTO fromDTO) throws Exception {
ValidatorUtils.validateEntity(fromDTO, DefaultGroup.class);
@ -184,7 +200,7 @@ public class ArticleController {
* @param fromDTO
* @throws Exception
*/
@GetMapping("previewsaveattr")
@PostMapping("previewsaveattr")
@RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISH)
public Result<Boolean> previewSaveDraftAttr(@LoginUser TokenDto tokenDto,@RequestBody DraftAttrFromDTO fromDTO) throws Exception {
ValidatorUtils.validateEntity(fromDTO, DefaultGroup.class);
@ -194,16 +210,15 @@ public class ArticleController {
/**
* desc:发布文章
* @param draftId
* @param formDTO
* @throws Exception
*/
@GetMapping("publish")
@PostMapping("publish")
@RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_PUBLISH)
public Result<Boolean> publishArticle(@LoginUser TokenDto tokenDto, String draftId) throws Exception {
Boolean isSuccess = articleService.publish(tokenDto, draftId);
public Result<Boolean> publishArticle(@LoginUser TokenDto tokenDto, @RequestBody PublishArticleFormDTO formDTO) throws Exception {
Boolean isSuccess = articleService.publish(tokenDto, formDTO.getDraftId());
if (isSuccess){
//TODO 异步校验内容
scanContent(tokenDto,draftId);
scanContent(tokenDto,formDTO.getDraftId());
}
return new Result<Boolean>().ok(isSuccess);
}
@ -211,6 +226,9 @@ public class ArticleController {
@Async
public void scanContent(TokenDto tokenDto,String draftId){
SyncScanResult syncScanResult = articleService.scanContent(tokenDto,draftId);
if (syncScanResult == null){
throw new RenException(EpmetErrorCode.ARTICLE_PUBLISH_ERROR.getCode(),EpmetErrorCode.ARTICLE_PUBLISH_ERROR.getMsg());
}
if (syncScanResult.isAllPass()){
articleService.scanAllPassPublishArticle(tokenDto,draftId);
}else{
@ -298,10 +316,12 @@ public class ArticleController {
* @Description 党建声音-政府端-可下线网格列表
**/
@PostMapping("publishgridlist")
public Result<ArticleGridResultDTO> publishGridList(@LoginUser TokenDto tokenDTO, @RequestBody PublishGridListFormDTO formDTO) {
public Result<ArticleAgencyGridListResultDTO> publishGridList(@LoginUser TokenDto tokenDTO, @RequestBody PublishGridListFormDTO formDTO) {
formDTO.setStaffId(tokenDTO.getUserId());
ValidatorUtils.validateEntity(formDTO, PublishGridListFormDTO.AddUserInternalGroup.class);
return new Result<ArticleGridResultDTO>().ok(articleService.publishGridList(formDTO));
ArticleAgencyGridListResultDTO agencyGridList = new ArticleAgencyGridListResultDTO();
agencyGridList.setAgencyGridList(articleService.publishGridList(formDTO));
return new Result<ArticleAgencyGridListResultDTO>().ok(agencyGridList);
}

2
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/DraftController.java

@ -115,7 +115,7 @@ public class DraftController {
@PostMapping("draftlist")
@RequirePermission(requirePermission = RequirePermissionEnum.WORK_PARTY_VOICE_DRAFT_LIST)
public Result<List<DraftListResultDTO>> draftList(@LoginUser TokenDto tokenDto, DraftListFormDTO formDTO) {
public Result<List<DraftListResultDTO>> draftList(@LoginUser TokenDto tokenDto, @RequestBody DraftListFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO);
return new Result<List<DraftListResultDTO>>().ok(draftService.draftList(tokenDto, formDTO).getList());
}

6
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java

@ -83,9 +83,9 @@ public interface ArticleDao extends BaseDao<ArticleEntity> {
* @param gridList
* @return java.util.List<com.epmet.dto.result.PublishedListResultDTO>
*/
@DataFilter(tableAliases = {"a", "apr"}, gridIdsArgName = "gridList")
List<PublishedListResultDTO> selectArticleListForGrid(@Param("customerId") String customerId,
@Param("tagIdList") List<String> tagIdList, Set<String> gridList);
@Param("tagIdList") List<String> tagIdList,
@Param("gridList")Set<String> gridList);
/**
* 已下线文章列表
@ -94,7 +94,7 @@ public interface ArticleDao extends BaseDao<ArticleEntity> {
* @param gridList
* @return java.util.List<com.epmet.dto.result.OfflineListResultDTO>
*/
@DataFilter(tableAliases = "apr", gridIdsArgName = "gridList")
@DataFilter(tableAliases = "a", gridIdsArgName = "gridList")
List<OfflineListResultDTO> selectOfflineList(Set<String> gridList);

4
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/DraftDao.java

@ -99,4 +99,8 @@ public interface DraftDao extends BaseDao<DraftEntity> {
* @date 2020/6/5 12:23
**/
List<GovDraftContentDTO> selectDraftContentList(String draftId);
int deleteDraft(String draftId);
int updateAuditStatusById(@Param("draftId") String draftId, @Param("statusFlag") String statusFlag);
}

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

@ -48,9 +48,10 @@ public interface ArticleService extends BaseService<ArticleEntity> {
*
* @param tokenDto
* @param fromDTO
* @param required
* @return
*/
String saveOrUpdateContent(TokenDto tokenDto, DraftContentFromDTO fromDTO);
DraftContentSaveResultDTO saveOrUpdateContent(TokenDto tokenDto, DraftContentFromDTO fromDTO, boolean required);
/**
* 政府端已发布已下线文章详情
@ -183,4 +184,12 @@ public interface ArticleService extends BaseService<ArticleEntity> {
* @param syncScanResult
*/
void updateAuditStatusFailById(String draftId, SyncScanResult syncScanResult);
/**
* desc:政府端点击返回时点击保存草稿
* @param tokenDto
* @param fromDTO
* @return
*/
DraftContentSaveResultDTO saveDraft(TokenDto tokenDto, DraftContentFromDTO fromDTO);
}

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

@ -166,40 +166,28 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
@Override
@Transactional(rollbackFor = Exception.class)
public String saveOrUpdateContent(TokenDto tokenDto, DraftContentFromDTO fromDTO) {
public DraftContentSaveResultDTO saveOrUpdateContent(TokenDto tokenDto, DraftContentFromDTO fromDTO, boolean required) {
log.debug("saveOrUpdateContent param:{}", JSON.toJSONString(fromDTO));
ValidatorUtils.validateEntity(fromDTO, AddGroup.class, DefaultGroup.class);
if (required) {
ValidatorUtils.validateEntity(fromDTO, AddGroup.class, DefaultGroup.class);
}
DraftEntity draftEntity = null;
List<DraftContentEntity> draftContentList = null;
if (StringUtils.isNotBlank(fromDTO.getDraftId())) {
draftEntity = draftDao.selectById(fromDTO.getDraftId());
if (draftEntity == null) {
log.warn("saveOrUpdateContent draftId is not exist in db");
throw new RenException("参数错误");
}
draftEntity.setTitle(draftEntity.getTitle());
for (int i = 0; i < fromDTO.getContentList().size(); i++) {
if(DraftConstant.TEXT.equals(fromDTO.getContentList().get(i).getContentType())) {
String content = fromDTO.getContentList().get(i).getContent();
if(content.length() > 50) {
content = content.substring(0, 50);
}
draftEntity.setPreviewContent(content);
break;
}
}
draftEntity = this.checkDraftStatus(fromDTO.getDraftId());
draftEntity.setTitle(StringUtils.isBlank(draftEntity.getTitle()) ? "" : draftEntity.getTitle());
buildPreviewContent(fromDTO, draftEntity);
draftDao.updateById(draftEntity);
} else {
LoginUserDetailsFormDTO detailsFormDTO = new LoginUserDetailsFormDTO();
detailsFormDTO.setUserId(loginUserUtil.getLoginUserId());
detailsFormDTO.setApp(loginUserUtil.getLoginUserApp());
detailsFormDTO.setClient(loginUserUtil.getLoginUserClient());
Result<LoginUserDetailsResultDTO> loginUserDetails = epmetUserOpenFeignClient.getLoginUserDetails(detailsFormDTO);
if (loginUserDetails == null || loginUserDetails.getData() == null){
if (loginUserDetails == null || loginUserDetails.getData() == null) {
log.warn("saveOrUpdateContent getloginUserDetails return null");
throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode(),EpmetErrorCode.SERVER_ERROR.getMsg());
throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode(), EpmetErrorCode.SERVER_ERROR.getMsg());
}
draftEntity = new DraftEntity();
draftEntity.setTitle(fromDTO.getTitle());
@ -211,32 +199,38 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
draftEntity.setGridId("");
draftEntity.setDepartmentId(loginUserDetails.getData().getCustomerId());
draftEntity.setDelFlag(NumConstant.ZERO_STR);
for (int i = 0; i < fromDTO.getContentList().size(); i++) {
if(DraftConstant.TEXT.equals(fromDTO.getContentList().get(i).getContentType())) {
String content = fromDTO.getContentList().get(i).getContent();
if(content.length() > 50) {
content = content.substring(0, 50);
}
draftEntity.setPreviewContent(content);
break;
}
}
buildPreviewContent(fromDTO, draftEntity);
draftDao.insert(draftEntity);
}
String draftId = draftEntity.getId();
fromDTO.setDraftId(draftId);
draftContentList = buildDraftContent(tokenDto, fromDTO);
if (CollectionUtils.isEmpty(draftContentList)) {
log.warn("saveOrUpdateContent contentList is empty");
throw new RenException("参数错误");
}
Map<String, Object> draftIdMap = new HashMap<>();
draftIdMap.put("DRAFT_ID", fromDTO.getDraftId());
draftIdMap.put(ModuleConstant.FIELD_DRAFT_ID, fromDTO.getDraftId());
draftContentDao.deleteByMap(draftIdMap);
draftContentService.insertBatch(draftContentList);
return draftId;
if (!CollectionUtils.isEmpty(draftContentList)) {
draftContentService.insertBatch(draftContentList);
}
return new DraftContentSaveResultDTO(draftId);
}
private void buildPreviewContent(DraftContentFromDTO fromDTO, DraftEntity draftEntity) {
if (CollectionUtils.isEmpty(fromDTO.getContentList())){
draftEntity.setPreviewContent("");
return;
}
for (int i = 0; i < fromDTO.getContentList().size(); i++) {
if (DraftConstant.TEXT.equals(fromDTO.getContentList().get(i).getContentType())) {
String content = fromDTO.getContentList().get(i).getContent();
if (content.length() > DraftConstant.PREVIEW_CONTENT_MAX_LENGTH) {
content = content.substring(NumConstant.ZERO, DraftConstant.PREVIEW_CONTENT_MAX_LENGTH);
}
draftEntity.setPreviewContent(content);
break;
}
}
}
@Override
@ -311,11 +305,12 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
}
if (NumConstant.ONE_STR.equals(draftEntity.getDelFlag())) {
log.warn("saveDraftAttr draftId:{} have deleted",draftId);
throw new RenException("参数错误");
throw new RenException("草稿已删除");
}
if (DraftConstant.PUBLISHED.equals(draftEntity.getStatusFlag())) {
//只有为发布的才能保存修改
if (!DraftConstant.UNPUBLISH.equals(draftEntity.getStatusFlag())) {
log.warn("saveDraftAttr draftId:{} publishStatus have published");
throw new RenException("参数错误");
throw new RenException("草稿发布状态错误");
}
return draftEntity;
}
@ -323,7 +318,7 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
@Override
public Boolean previewSaveDraftAttr(TokenDto tokenDto, DraftAttrFromDTO fromDTO) {
//校验参数
if (fromDTO.getIsTop() == 1 && StringUtils.isBlank(fromDTO.getCoverImg())) {
if (DraftConstant.TOP.equals(fromDTO.getIsTop()) && StringUtils.isBlank(fromDTO.getCoverImg())) {
log.warn("saveOrUpdateAttr isTop=1 but coverImg is blank");
throw new RenException("文章封面不能为空");
}
@ -354,7 +349,7 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
@Transactional(rollbackFor = Exception.class)
public void executeSaveDraftAttr(DraftEntity draftEntity, DraftCoverEntity coverEntity, List<DraftPublishRangeEntity> publishRangeEntityList) {
Map<String,Object> draftIdMap = new HashMap<>();
draftIdMap.put("DRAFT_ID", draftEntity.getId());
draftIdMap.put(ModuleConstant.FIELD_DRAFT_ID, draftEntity.getId());
draftCoverDao.deleteByMap(draftIdMap);
if (coverEntity != null){
draftCoverDao.insert(coverEntity);
@ -394,9 +389,8 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
coverEntity.setCustomerId(tokenDto.getCustomerId());
coverEntity.setDraftId(fromDTO.getDraftId());
coverEntity.setImgUrl(coverImg);
coverEntity.setAuditStatus(ModuleConstant.AUDIT_STATUS_PASS);
coverEntity.setAuditStatus("");
coverEntity.setAuditReason("");
coverEntity.setRevision(0);
coverEntity.setDelFlag(NumConstant.ZERO_STR);
return coverEntity;
}
@ -428,10 +422,10 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
draftPublishRangeEntity.setAgencyGridName(agencyGridName);
draftPublishRangeEntity.setOffLineTime(null);
draftPublishRangeEntity.setPublishStatus(DraftConstant.UNPUBLISH);
draftPublishRangeEntity.setRevision(0);
draftPublishRangeEntity.setDelFlag(NumConstant.ZERO_STR);
draftPublishRangeEntity.setPids(articleGridResultDTO.getPids());
draftPublishRangeEntity.setAllParentName(articleGridResultDTO.getAllParentName());
draftPublishRangeEntity.setAgencyId(articleGridResultDTO.getAgencyId());
publishRangeEntityList.add(draftPublishRangeEntity);
}
@ -447,9 +441,12 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
* @return
*/
private List<DraftContentEntity> buildDraftContent(TokenDto tokenDto, DraftContentFromDTO fromDTO) {
List<DraftContentFromDTO.DraftContentDTO> contentList = fromDTO.getContentList();
if (CollectionUtils.isEmpty(contentList)) {
return null;
}
List<DraftContentEntity> newContentList = new ArrayList<>();
List<DraftContentFromDTO.DraftContentDTO> contentList = fromDTO.getContentList();
for (int i = 0; i < contentList.size(); i++) {
DraftContentFromDTO.DraftContentDTO content = contentList.get(i);
@ -459,10 +456,11 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
entity.setDraftId(fromDTO.getDraftId());
entity.setOrderNum(i + 1);
//默认通过
entity.setAuditStatus(ModuleConstant.AUDIT_STATUS_PASS);
entity.setAuditStatus("");
newContentList.add(entity);
}
return newContentList;
}
@ -909,7 +907,7 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
return null;
}
if (!NumConstant.ONE_STR.equals(draftEntity.getDelFlag())){
if (!NumConstant.ZERO_STR.equals(draftEntity.getDelFlag())){
log.error("scanContent draftId:{} delFlag:{} is not support 2 modify",draftId,draftEntity.getDelFlag());
return null;
}
@ -940,10 +938,16 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
}
});
}
//todo 执行审核
SyncScanResult imgSyncScanResult = ScanContentUtils.imgSyncScan(scanApiHost.concat(imgSyncScanMethod),imgScanParamDTO);
SyncScanResult textSyncScanResult = ScanContentUtils.textSyncScan(scanApiHost.concat(textSyncScanMethod),textScanParamDTO);
SyncScanResult imgSyncScanResult = null;
SyncScanResult textSyncScanResult = null;
try {
imgSyncScanResult = ScanContentUtils.imgSyncScan(scanApiHost.concat(imgSyncScanMethod),imgScanParamDTO);
textSyncScanResult = ScanContentUtils.textSyncScan(scanApiHost.concat(textSyncScanMethod),textScanParamDTO);
} catch (Exception e) {
log.error("scanContent exception",e);
this.sendMsg(draftEntity.getTitle(),String.format(ModuleConstant.MSG_ARTICLE_PUBLISH_ERROR, draftEntity.getTitle());
this.updateDraftPublishStatus(draftId,DraftConstant.AUDITFAIL)
}
SyncScanResult result = new SyncScanResult();
if (imgSyncScanResult.isAllPass()){
result.setAllPass(imgSyncScanResult.isAllPass());
@ -983,6 +987,7 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
} catch (Exception e) {
log.error("scanAllPassPublishArticle update db exception", e);
this.sendMsg(draft.getTitle(), String.format(ModuleConstant.MSG_ARTICLE_PUBLISH_ERROR, draft.getTitle()));
this.updateDraftPublishStatus(draftId,DraftConstant.AUDITFAIL)
throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode(), EpmetErrorCode.SERVER_ERROR.getMsg());
}
@ -1000,6 +1005,19 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
draftContentDao.updateAuditStatusById(id,ModuleConstant.AUDIT_STATUS_FAIL);
}
});
List<String> successDataIds = syncScanResult.getSuccessDataIds();
successDataIds.forEach(id->{
if (id.indexOf(ModuleConstant.SCAN_COVER_PREFIX)>=0){
draftCoverDao.updateAuditStatusById(id,ModuleConstant.AUDIT_STATUS_PASS);
}else{
draftContentDao.updateAuditStatusById(id,ModuleConstant.AUDIT_STATUS_PASS);
}
});
}
@Override
public DraftContentSaveResultDTO saveDraft(TokenDto tokenDto, DraftContentFromDTO fromDTO) {
return this.saveOrUpdateContent(tokenDto, fromDTO, false);
}
public Result sendMsg(String title,String content) {
@ -1011,10 +1029,13 @@ public class ArticleServiceImpl extends BaseServiceImpl<ArticleDao, ArticleEntit
formDTO.setTitle(String.format(ModuleConstant.MSG_TITLE,title));
formDTO.setMessageContent(content);
formDTO.setReadFlag(ReadFlagConstant.UN_READ);
return epmetMessageOpenFeignClient.saveUserMessage(formDTO);
}
private void updateDraftPublishStatus(String draftId,String statusFlag){
draftDao.updateAuditStatusById(draftId,statusFlag);
}
/**
* @Description 更新DB的标签使用次数 政府端
* @param draftId

2
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/DraftServiceImpl.java

@ -122,7 +122,7 @@ public class DraftServiceImpl extends BaseServiceImpl<DraftDao, DraftEntity> imp
return;
}
draftDTO.setDelFlag(NumConstant.ONE);
this.update(draftDTO);
baseDao.deleteDraft(draftDTO.getId());
}
@Override

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

@ -99,6 +99,9 @@ public class TagServiceImpl implements TagService {
*/
@Override
public List<CorrelationTagListResultDTO> correlationTagList(TokenDto tokenDto, CorrelationTagListFormDTO formDto) {
if (formDto.getTagIdList().size() == NumConstant.ZERO){
return new ArrayList<>();
}
String customerId = tokenDto.getCustomerId();
return tagRedis.get(customerId,formDto);
}
@ -110,6 +113,9 @@ public class TagServiceImpl implements TagService {
*/
@Override
public List<TagInfoResultDTO> tagCascadeList(TagCascadeListFormDTO formDto) {
if (formDto.getTagIdList().size() == NumConstant.ZERO){
return new ArrayList<>();
}
return tagRedis.getResiTag(formDto);
}
}

5
epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/utils/ModuleConstant.java

@ -39,6 +39,11 @@ public interface ModuleConstant {
* */
String FIELD_ARTICLE_ID = "ARTICLE_ID";
/**
* 数据库列名 - 草稿ID
* */
String FIELD_DRAFT_ID = "DRAFT_ID";
/**
* 实体属性名 - 文章ID
* */

16
epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml

@ -96,6 +96,9 @@
WHERE a.DEL_FLAG = '0'
AND a.STATUS_FLAG = 'published'
AND a.CUSTOMER_ID = #{customerId}
<foreach item="gridId" collection="gridList" open="AND (" separator="or" close=")" index="">
a.GRID_ID = #{gridId}
</foreach>
UNION
SELECT DISTINCT
aa.ID AS "articleId",
@ -109,7 +112,11 @@
INNER JOIN article_publish_range apr ON aa.ID = apr.ARTICLE_ID AND apr.DEL_FLAG = 0 AND apr.PUBLISH_STATUS = 'published'
WHERE aa.DEL_FLAG = '0'
AND aa.STATUS_FLAG = 'published'
AND aa.CUSTOMER_ID = #{customerId}) t
AND aa.CUSTOMER_ID = #{customerId}
<foreach item="gridId" collection="gridList" open="AND (" separator="or" close=")" index="">
apr.GRID_ID = #{gridId}
</foreach>
) t
<if test="tagIdList !=null and tagIdList.size() > 0">
AND EXISTS (
SELECT DISTINCT
@ -131,12 +138,11 @@
a.TITLE AS "title",
IFNULL(a.PREVIEW_CONTENT, "") AS "previewContent",
a.PUBLISHER_NAME AS "publisherName",
a.PUBLISH_DATE AS "publishDate"
a.OFF_LINE_TIME AS "publishDate"
FROM article a
INNER JOIN article_publish_range apr ON a.ID = apr.ARTICLE_ID AND apr.DEL_FLAG = '0'
WHERE a.DEL_FLAG = '0'
AND apr.PUBLISH_STATUS = 'offline'
ORDER BY apr.OFF_LINE_TIME DESC
AND a.STATUS_FLAG = 'offline'
ORDER BY a.OFF_LINE_TIME DESC
</select>

6
epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/DraftDao.xml

@ -125,4 +125,10 @@
ORDER BY
dc.ORDER_NUM ASC
</select>
<update id="deleteDraft" parameterType="java.lang.String">
update draft set DEL_FLAG='1' where id=#{draftId}
</update>
<update id="updateAuditStatusById">
update draft set STATUS_FLAG =#{statusFlag,jdbcType=VARCHAR} where id=#{draftId,jdbcType=VARCHAR}
</update>
</mapper>

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

@ -3,6 +3,7 @@ import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.constant.DraftConstant;
import com.epmet.dto.form.DraftAttrFromDTO;
import com.epmet.dto.form.DraftContentFromDTO;
import com.epmet.dto.result.DraftContentSaveResultDTO;
import com.epmet.service.ArticleService;
import org.junit.Test;
import org.junit.runner.RunWith;
@ -41,7 +42,7 @@ public class ArticleServiceTest {
list.add(contentDTO);
}
draftContentFromDTO.setContentList(list);
String s = articleService.saveOrUpdateContent(tokenDto, draftContentFromDTO);
DraftContentSaveResultDTO s = articleService.saveOrUpdateContent(tokenDto, draftContentFromDTO, false);
System.out.println(s);
}

2
epmet-openapi/epmet-openapi-scan/deploy/docker-compose-dev.yml

@ -2,7 +2,7 @@ version: "3.7"
services:
epmet-openapi-scan:
container_name: epmet-openapi-scan-dev
image: 192.168.1.130:10080/epmet-cloud-dev/epmet-openapi-scan:0.3.3
image: 192.168.1.130:10080/epmet-cloud-dev/epmet-openapi-scan:0.3.5
ports:
- "8107:8107"
network_mode: host # 不会创建新的网络

2
epmet-openapi/epmet-openapi-scan/pom.xml

@ -4,7 +4,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<version>0.3.3</version>
<version>0.3.5</version>
<artifactId>epmet-openapi-scan</artifactId>
<packaging>jar</packaging>

Loading…
Cancel
Save