diff --git a/esua-epdc/epdc-commons/epdc-common-clienttoken/src/main/java/com/elink/esua/epdc/common/token/dto/TokenDto.java b/esua-epdc/epdc-commons/epdc-common-clienttoken/src/main/java/com/elink/esua/epdc/common/token/dto/TokenDto.java index fc5b1b155..9960bd515 100644 --- a/esua-epdc/epdc-commons/epdc-common-clienttoken/src/main/java/com/elink/esua/epdc/common/token/dto/TokenDto.java +++ b/esua-epdc/epdc-commons/epdc-common-clienttoken/src/main/java/com/elink/esua/epdc/common/token/dto/TokenDto.java @@ -45,4 +45,9 @@ public class TokenDto implements Serializable { * 网格ID */ private String gridId; + + /** + * 党员标识 0:否、1:是 + */ + private Long partyFlag; } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiIssueController.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiIssueController.java index 16cda30ba..396e740c1 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiIssueController.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiIssueController.java @@ -3,13 +3,12 @@ package com.elink.esua.epdc.controller; import com.elink.esua.epdc.common.token.dto.TokenDto; import com.elink.esua.epdc.commons.tools.annotation.LoginUser; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO; import com.elink.esua.epdc.dto.issue.form.IssueFormDTO; import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; import com.elink.esua.epdc.service.IssueService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -25,6 +24,18 @@ public class ApiIssueController { @Autowired private IssueService issueService; + /** + * 发布事件 + * @Params: [userDetail, formDto] + * @Return: com.elink.esua.epdc.commons.tools.utils.Result + * @Author: liuchuang + * @Date: 2019/9/8 15:36 + */ + @PostMapping("submit") + public Result submitEvent(@LoginUser TokenDto userDetail, EpdcEventSubmitFormDTO formDto) { + return issueService.saveEvent(userDetail, formDto); + } + /** * 议题最新最热列表 * @Params: [userDetail, formDto] diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/IssueFeignClient.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/IssueFeignClient.java index 5ed333d96..ad6445194 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/IssueFeignClient.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/IssueFeignClient.java @@ -2,12 +2,14 @@ package com.elink.esua.epdc.feign; import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO; import com.elink.esua.epdc.dto.issue.form.IssueFormDTO; import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; import com.elink.esua.epdc.feign.fallback.IssueFeignClientFallback; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; import java.util.List; @@ -16,9 +18,26 @@ import java.util.List; * @Author LC * @Date 2019/9/7 11:34 */ -@FeignClient(name = ServiceConstant.EPDC_EVENTS_SERVER, fallback = IssueFeignClientFallback.class, url = "http://localhost:9066") +@FeignClient(name = ServiceConstant.EPDC_EVENTS_SERVER, fallback = IssueFeignClientFallback.class) public interface IssueFeignClient { + /** + * 发布事件 + * @Params: [formDto] + * @Return: com.elink.esua.epdc.commons.tools.utils.Result + * @Author: liuchuang + * @Date: 2019/9/8 16:39 + */ + @PostMapping(value = "events/epdc-app/event/submit", consumes = MediaType.APPLICATION_JSON_VALUE) + Result submitEvent(EpdcEventSubmitFormDTO formDto); + + /** + * 议题最新最热列表 + * @Params: [formDto] + * @Return: com.elink.esua.epdc.commons.tools.utils.Result> + * @Author: liuchuang + * @Date: 2019/9/8 16:39 + */ @GetMapping(value = "events/epdc-app/issue/list", consumes = MediaType.APPLICATION_JSON_VALUE) Result> listIssues(IssueFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/SysDeptFeignClient.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/SysDeptFeignClient.java new file mode 100644 index 000000000..e46555fea --- /dev/null +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/SysDeptFeignClient.java @@ -0,0 +1,28 @@ +package com.elink.esua.epdc.feign; + +import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.CompleteDeptDTO; +import com.elink.esua.epdc.feign.fallback.SysDeptFeignClientFallback; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; + +/** + * 系统服务模块 + * @Author LC + * @Date 2019/9/8 16:00 + */ +@FeignClient(name = ServiceConstant.EPDC_ADMIN_SERVER, fallback = SysDeptFeignClientFallback.class) +public interface SysDeptFeignClient { + + /** + * 通过网格ID获取该网格所有上级机构 + * @Params: [gridId] + * @Return: com.elink.esua.epdc.commons.tools.utils.Result + * @Author: liuchuang + * @Date: 2019/9/8 16:11 + */ + @GetMapping(value = "sys/dept/getCompleteDept/{gridId}") + Result getCompleteDept(@PathVariable("gridId") Long gridId); +} diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/IssueFeignClientFallback.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/IssueFeignClientFallback.java index 9f5edfc67..9ae2ade79 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/IssueFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/IssueFeignClientFallback.java @@ -3,6 +3,7 @@ package com.elink.esua.epdc.feign.fallback; import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.ModuleUtils; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO; import com.elink.esua.epdc.dto.issue.form.IssueFormDTO; import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; import com.elink.esua.epdc.feign.IssueFeignClient; @@ -17,6 +18,11 @@ import java.util.List; @Component public class IssueFeignClientFallback implements IssueFeignClient { + @Override + public Result submitEvent(EpdcEventSubmitFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "submitEvent", formDto); + } + @Override public Result> listIssues(IssueFormDTO formDto) { return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "listIssues", formDto); diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/SysDeptFeignClientFallback.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/SysDeptFeignClientFallback.java new file mode 100644 index 000000000..a584b1a6e --- /dev/null +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/SysDeptFeignClientFallback.java @@ -0,0 +1,22 @@ +package com.elink.esua.epdc.feign.fallback; + +import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; +import com.elink.esua.epdc.commons.tools.utils.ModuleUtils; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.CompleteDeptDTO; +import com.elink.esua.epdc.feign.SysDeptFeignClient; +import org.springframework.stereotype.Component; +import org.springframework.web.bind.annotation.PathVariable; + +/** + * @Author LC + * @Date 2019/9/8 16:00 + */ +@Component +public class SysDeptFeignClientFallback implements SysDeptFeignClient { + + @Override + public Result getCompleteDept(@PathVariable("gridId") Long gridId) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getCompleteDept", gridId); + } +} diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/IssueService.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/IssueService.java index 0f9dfb58e..759519915 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/IssueService.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/IssueService.java @@ -2,6 +2,7 @@ package com.elink.esua.epdc.service; import com.elink.esua.epdc.common.token.dto.TokenDto; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO; import com.elink.esua.epdc.dto.issue.form.IssueFormDTO; import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; @@ -14,6 +15,15 @@ import java.util.List; */ public interface IssueService { + /** + * 发布事件 + * @Params: [userDetail, formDto] + * @Return: com.elink.esua.epdc.commons.tools.utils.Result + * @Author: liuchuang + * @Date: 2019/9/8 15:37 + */ + Result saveEvent(TokenDto userDetail, EpdcEventSubmitFormDTO formDto); + /** * 移动端-最新最热列表 * @Params: [userDetail, formDto] diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/IssueServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/IssueServiceImpl.java index a3c7254f7..b64e982fe 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/IssueServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/IssueServiceImpl.java @@ -2,9 +2,12 @@ package com.elink.esua.epdc.service.impl; import com.elink.esua.epdc.common.token.dto.TokenDto; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.CompleteDeptDTO; +import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO; import com.elink.esua.epdc.dto.issue.form.IssueFormDTO; import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; import com.elink.esua.epdc.feign.IssueFeignClient; +import com.elink.esua.epdc.feign.SysDeptFeignClient; import com.elink.esua.epdc.service.IssueService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -22,6 +25,31 @@ public class IssueServiceImpl implements IssueService { @Autowired private IssueFeignClient issueFeignClient; + @Autowired + private SysDeptFeignClient sysDeptFeignClient; + + @Override + public Result saveEvent(TokenDto userDetail, EpdcEventSubmitFormDTO formDto) { + // 获取该网格所有上级机构 + Result deptDTOResult = sysDeptFeignClient.getCompleteDept(Long.valueOf(userDetail.getGridId())); + CompleteDeptDTO deptDTO = deptDTOResult.getData(); + formDto.setArea(deptDTO.getDistrict()); + formDto.setAreaId(deptDTO.getDistrictId().toString()); + formDto.setStreet(deptDTO.getStreet()); + formDto.setStreetId(deptDTO.getStreetId().toString()); + formDto.setCommunity(deptDTO.getCommunity()); + formDto.setCommunityId(deptDTO.getCommunityId().toString()); + formDto.setGrid(deptDTO.getGrid()); + formDto.setGridId(deptDTO.getGridId().toString()); + // 用户信息 + formDto.setUserId(userDetail.getUserId()); + formDto.setNickName(userDetail.getNickName()); + formDto.setUserFace(userDetail.getFaceImg()); + formDto.setIsPartyMember(userDetail.getPartyFlag()); + + return issueFeignClient.submitEvent(formDto); + } + @Override public Result> listIssues(TokenDto userDetail, IssueFormDTO formDto) { formDto.setDeptId(userDetail.getGridId()); diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ImageConstant.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ImageConstant.java new file mode 100644 index 000000000..dd5cd3dfc --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ImageConstant.java @@ -0,0 +1,19 @@ +package com.elink.esua.epdc.constant; + +/** + * 图片常量 + * @Author LC + * @Date 2019/9/8 17:07 + */ +public interface ImageConstant { + + /** + * 图片类型-事件 + */ + public final static String TYPE_IMAGE_BIZ_EVENTS = "events"; + + /** + * 图片类型-头像 + */ + public final static String TYPE_IMAGE_BIZ_FACE = "face"; +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/form/EpdcEventSubmitFormDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/form/EpdcEventSubmitFormDTO.java new file mode 100644 index 000000000..c7d67ed32 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/form/EpdcEventSubmitFormDTO.java @@ -0,0 +1,98 @@ +package com.elink.esua.epdc.dto.events.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.List; + +/** + * @Author LC + * @Date 2019/9/8 15:25 + */ +@Data +public class EpdcEventSubmitFormDTO implements Serializable { + private static final long serialVersionUID = -1869446375416414676L; + + /** + * 事件内容 + */ + @NotBlank(message = "事件内容不能为空") + private String eventContent; + /** + * 事件地址 + */ + @NotBlank(message = "地址信息不能为空") + private String issueAddress; + /** + * 经度 + */ + @NotNull(message = "经度不能为空") + private Double issueLongitude; + /** + * 纬度 + */ + @NotNull(message = "纬度不能为空") + private Double issueLatitude; + /** + * 图片 + */ + private List images; + /** + * 区 + */ + private String area; + /** + * 区ID + */ + @NotBlank(message = "用户区ID不能为空") + private String areaId; + /** + * 街道 + */ + private String street; + /** + * 街道ID + */ + @NotBlank(message = "用户街道ID不能为空") + private String streetId; + /** + * 社区 + */ + private String community; + /** + * 社区ID + */ + @NotBlank(message = "用户社区ID不能为空") + private String communityId; + /** + * 网格 + */ + private String grid; + /** + * 网格ID + */ + @NotBlank(message = "用户网格ID不能为空") + private String gridId; + /** + * 用户ID + */ + @NotBlank(message = "用户ID不能为空") + private String userId; + + /** + * 昵称 + */ + private String nickName; + + /** + * 用户头像 + */ + private String userFace; + + /** + * 党员标识 0:否、1:是 + */ + private Long isPartyMember; +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/IssueDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/IssueDTO.java index 93c1987d2..5fda46676 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/IssueDTO.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/IssueDTO.java @@ -117,7 +117,7 @@ public class IssueDTO implements Serializable { /** * 议题位置纬度 */ - private BigDecimal issusLatitude; + private BigDecimal issueLatitude; /** * 议题位置经度 diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcAppEventsController.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcAppEventsController.java new file mode 100644 index 000000000..7f4abf98c --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcAppEventsController.java @@ -0,0 +1,41 @@ +package com.elink.esua.epdc.modules.events.controller; + +import com.elink.esua.epdc.commons.tools.constant.Constant; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; +import com.elink.esua.epdc.commons.tools.validator.group.AddGroup; +import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup; +import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO; +import com.elink.esua.epdc.modules.events.service.EpdcEventsService; +import org.springframework.beans.factory.annotation.Autowired; +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; + +/** + * @Author LC + * @Date 2019/9/8 16:42 + */ +@RestController +@RequestMapping(Constant.EPDC_APP + "event") +public class EpdcAppEventsController { + + @Autowired + private EpdcEventsService epdcEventsService; + + /** + * 发布议题 + * @Params: [formDto] + * @Return: com.elink.esua.epdc.commons.tools.utils.Result + * @Author: liuchuang + * @Date: 2019/9/8 16:54 + */ + @PostMapping("submit") + public Result submitEvent(@RequestBody EpdcEventSubmitFormDTO formDto) { + //效验数据 + ValidatorUtils.validateEntity(formDto, AddGroup.class, DefaultGroup.class); + epdcEventsService.saveEvent(formDto); + return new Result(); + } +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/ImgDao.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/ImgDao.java new file mode 100644 index 000000000..7af17568b --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/ImgDao.java @@ -0,0 +1,33 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.events.dao; + +import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.modules.events.entity.ImgEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 党建系统图片表 党建系统图片表 + * + * @author qu qu@elink-cn.com + * @since v1.0.0 2019-09-08 + */ +@Mapper +public interface ImgDao extends BaseDao { + +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/entity/EpdcEventsEntity.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/entity/EpdcEventsEntity.java index 3838953c4..7c8480dcb 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/entity/EpdcEventsEntity.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/entity/EpdcEventsEntity.java @@ -105,7 +105,7 @@ public class EpdcEventsEntity extends BaseEpdcEntity { /** * 议题位置纬度 */ - private BigDecimal issusLatitude; + private BigDecimal issueLatitude; /** * 议题位置经度 */ diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/entity/ImgEntity.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/entity/ImgEntity.java new file mode 100644 index 000000000..aa736971c --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/entity/ImgEntity.java @@ -0,0 +1,55 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.events.entity; + +import com.baomidou.mybatisplus.annotation.TableName; + +import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + + +/** + * 党建系统图片表 党建系统图片表 + * + * @author qu qu@elink-cn.com + * @since v1.0.0 2019-09-08 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("epdc_img") +public class ImgEntity extends BaseEpdcEntity { + + private static final long serialVersionUID = 1L; + + /** + * 引用ID + */ + private String referenceId; + + /** + * 图片地址 + */ + private String imgUrl; + + /** + * 图片类型 + */ + private String imgType; + +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java index 65441410a..56ada1d24 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java @@ -21,6 +21,7 @@ import com.elink.esua.epdc.commons.mybatis.service.BaseService; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.events.*; +import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO; import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO; import com.elink.esua.epdc.modules.events.entity.EpdcEventsEntity; @@ -57,6 +58,15 @@ public interface EpdcEventsService extends BaseService { void save(EpdcEventsDTO dto); + /** + * 发布议题 + * @Params: [dto] + * @Return: void + * @Author: liuchuang + * @Date: 2019/9/8 16:52 + */ + void saveEvent(EpdcEventSubmitFormDTO dto); + void update(EpdcEventsDTO dto); void delete(String[] ids); diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/ImgService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/ImgService.java new file mode 100644 index 000000000..c432b4ad9 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/ImgService.java @@ -0,0 +1,51 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.events.service; + +import com.elink.esua.epdc.commons.mybatis.service.BaseService; +import com.elink.esua.epdc.modules.events.entity.ImgEntity; + +import java.util.List; + +/** + * 党建系统图片表 党建系统图片表 + * + * @author qu qu@elink-cn.com + * @since v1.0.0 2019-09-08 + */ +public interface ImgService extends BaseService { + + /** + * 批量删除 + * + * @param ids + * @return void + * @author + * @date + */ + void delete(String[] ids); + + /** + * 保存图片 + * @Params: [images, eventId, imgType] + * @Return: boolean + * @Author: liuchuang + * @Date: 2019/9/8 17:12 + */ + boolean saveImages(List images, String referenceId, String imgType); +} diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java index 38a60d336..ae43f50eb 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java @@ -26,11 +26,14 @@ import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.constant.EventIssueItemState; +import com.elink.esua.epdc.constant.ImageConstant; import com.elink.esua.epdc.dto.events.*; +import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO; import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO; import com.elink.esua.epdc.modules.events.dao.EpdcEventsDao; import com.elink.esua.epdc.modules.events.entity.EpdcEventsEntity; import com.elink.esua.epdc.modules.events.service.EpdcEventsService; +import com.elink.esua.epdc.modules.events.service.ImgService; import com.elink.esua.epdc.modules.issue.entity.IssueEntity; import com.elink.esua.epdc.modules.issue.entity.IssueHandleEntity; import com.elink.esua.epdc.modules.issue.service.IssueHandleService; @@ -59,6 +62,9 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl listOfPendingReviewEvents(Map params) { IPage page = getPage(params); @@ -95,6 +101,16 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl + * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.events.service.impl; + +import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl; +import com.elink.esua.epdc.modules.events.dao.ImgDao; +import com.elink.esua.epdc.modules.events.entity.ImgEntity; +import com.elink.esua.epdc.modules.events.service.ImgService; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +/** + * 党建系统图片表 党建系统图片表 + * + * @author qu qu@elink-cn.com + * @since v1.0.0 2019-09-08 + */ +@Service +public class ImgServiceImpl extends BaseServiceImpl implements ImgService { + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public boolean saveImages(List images, String referenceId, String imgType) { + if (null == images || images.isEmpty()) { + return true; + } + List imgEntities = new ArrayList<>(images.size()); + ImgEntity entity = null; + for (int i = 0; i < images.size(); i++) { + entity = new ImgEntity(); + entity.setReferenceId(referenceId); + entity.setImgUrl(images.get(i)); + entity.setImgType(imgType); + imgEntities.add(entity); + } + return insertBatch(imgEntities); + } + +}