From 45419d0993238fe0408d43e36a947c71db25c56f Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Mon, 22 Nov 2021 16:39:04 +0800 Subject: [PATCH] =?UTF-8?q?=E8=81=94=E5=BB=BA=E5=8D=95=E4=BD=8D=E5=92=8C?= =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/IcPartyActivityDTO.java | 14 +++- .../java/com/epmet/dto/IcPartyUnitDTO.java | 3 + .../epmet/dto/form/PartyActivityFormDTO.java | 26 +++++++ .../controller/IcPartyActivityController.java | 33 +++------ .../controller/IcPartyUnitController.java | 34 +++++---- .../epmet/service/IcPartyActivityService.java | 17 ++--- .../com/epmet/service/IcPartyUnitService.java | 22 +++--- .../impl/IcPartyActivityServiceImpl.java | 69 ++++++++++++------- .../service/impl/IcPartyUnitServiceImpl.java | 61 ++++++++++++---- 9 files changed, 178 insertions(+), 101 deletions(-) create mode 100644 epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/PartyActivityFormDTO.java diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPartyActivityDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPartyActivityDTO.java index 01b4d30ae7..d09b657ee0 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPartyActivityDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPartyActivityDTO.java @@ -17,8 +17,10 @@ package com.epmet.dto; +import com.epmet.commons.tools.validator.group.AddGroup; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.io.Serializable; import java.util.Date; @@ -47,6 +49,7 @@ public class IcPartyActivityDTO implements Serializable { /** * 组织ID */ + @NotBlank(message = "agencyId不能为空",groups = AddGroup.class) private String agencyId; /** @@ -57,26 +60,31 @@ public class IcPartyActivityDTO implements Serializable { /** * 单位ID */ + @NotBlank(message = "单位不能为空",groups = AddGroup.class) private String unitId; - + private String unitName; /** * 服务事项 */ + @NotBlank(message = "服务事项不能为空",groups = AddGroup.class) private String serviceMatter; /** * 活动标题 */ + @NotBlank(message = "活动标题不能为空",groups = AddGroup.class) private String title; /** * 活动目标 */ + @NotBlank(message = "活动目标不能为空",groups = AddGroup.class) private String target; /** * 活动内容 */ + @NotBlank(message = "活动内容不能为空",groups = AddGroup.class) private String content; /** @@ -87,21 +95,25 @@ public class IcPartyActivityDTO implements Serializable { /** * 活动时间 */ + @NotBlank(message = "活动时间不能为空",groups = AddGroup.class) private Date activityTime; /** * 活动地址 */ + @NotBlank(message = "活动地址不能为空",groups = AddGroup.class) private String address; /** * 活动地址经度 */ + @NotBlank(message = "活动地址不能为空",groups = AddGroup.class) private String longitude; /** * 活动地址纬度 */ + @NotBlank(message = "活动地址不能为空",groups = AddGroup.class) private String latitude; /** diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPartyUnitDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPartyUnitDTO.java index f004a954ed..7fdc5d38a4 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPartyUnitDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/IcPartyUnitDTO.java @@ -21,6 +21,7 @@ import lombok.Data; import java.io.Serializable; import java.util.Date; +import java.util.List; /** @@ -69,6 +70,8 @@ public class IcPartyUnitDTO implements Serializable { */ private String serviceMatter; + private List serviceMatterList; + /** * 联系人 */ diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/PartyActivityFormDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/PartyActivityFormDTO.java new file mode 100644 index 0000000000..2053b99d0f --- /dev/null +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/PartyActivityFormDTO.java @@ -0,0 +1,26 @@ +package com.epmet.dto.form; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +/** + * @Description + * @Author zhaoqifeng + * @Date 2021/11/22 14:42 + */ +@NoArgsConstructor +@Data +public class PartyActivityFormDTO implements Serializable { + private static final long serialVersionUID = -2510068555703677L; + private String agencyId; + private String unitId; + private String title; + private Date startTime; + private Date endTime; + private String serviceMatter; + private Integer pageNo; + private Integer pageSize; +} diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyActivityController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyActivityController.java index 8ff6cd8da4..85fb59ec7b 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyActivityController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyActivityController.java @@ -20,12 +20,11 @@ package com.epmet.controller; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; -import com.epmet.commons.tools.validator.AssertUtils; import com.epmet.commons.tools.validator.ValidatorUtils; 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.IcPartyActivityDTO; +import com.epmet.dto.form.PartyActivityFormDTO; import com.epmet.excel.IcPartyActivityExcel; import com.epmet.service.IcPartyActivityService; import org.springframework.beans.factory.annotation.Autowired; @@ -49,19 +48,19 @@ public class IcPartyActivityController { @Autowired private IcPartyActivityService icPartyActivityService; - @GetMapping("page") - public Result> page(@RequestParam Map params){ - PageData page = icPartyActivityService.page(params); + @PostMapping("search") + public Result> page(@RequestBody PartyActivityFormDTO formDTO){ + PageData page = icPartyActivityService.search(formDTO); return new Result>().ok(page); } - @GetMapping("{id}") - public Result get(@PathVariable("id") String id){ - IcPartyActivityDTO data = icPartyActivityService.get(id); + @PostMapping("detail") + public Result get(@RequestBody IcPartyActivityDTO dto){ + IcPartyActivityDTO data = icPartyActivityService.get(dto.getId()); return new Result().ok(data); } - @PostMapping + @PostMapping("save") public Result save(@RequestBody IcPartyActivityDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); @@ -69,19 +68,9 @@ public class IcPartyActivityController { return new Result(); } - @PutMapping - public Result update(@RequestBody IcPartyActivityDTO dto){ - //效验数据 - ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); - icPartyActivityService.update(dto); - return new Result(); - } - - @DeleteMapping - public Result delete(@RequestBody String[] ids){ - //效验数据 - AssertUtils.isArrayEmpty(ids, "id"); - icPartyActivityService.delete(ids); + @PostMapping("delete") + public Result delete(@RequestBody IcPartyActivityDTO dto){ + icPartyActivityService.delete(dto.getId()); return new Result(); } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyUnitController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyUnitController.java index 8184cbbe09..3a8fcf0142 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyUnitController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyUnitController.java @@ -26,7 +26,6 @@ import com.epmet.commons.tools.validator.AssertUtils; import com.epmet.commons.tools.validator.ValidatorUtils; 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.IcPartyUnitDTO; import com.epmet.dto.form.PartyUnitFormDTO; import com.epmet.dto.form.demand.ServiceQueryFormDTO; @@ -54,19 +53,20 @@ public class IcPartyUnitController { @Autowired private IcPartyUnitService icPartyUnitService; - @GetMapping("list") + @PostMapping("list") public Result> search(@RequestBody PartyUnitFormDTO formDTO){ PageData page = icPartyUnitService.search(formDTO); return new Result>().ok(page); } - @GetMapping("{id}") - public Result get(@PathVariable("id") String id){ - IcPartyUnitDTO data = icPartyUnitService.get(id); + @PostMapping("detail") + public Result get(@RequestBody IcPartyUnitDTO formDTO){ + AssertUtils.isBlank(formDTO.getId(), "id"); + IcPartyUnitDTO data = icPartyUnitService.get(formDTO.getId()); return new Result().ok(data); } - @PostMapping + @PostMapping("save") public Result save(@RequestBody IcPartyUnitDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); @@ -74,19 +74,11 @@ public class IcPartyUnitController { return new Result(); } - @PutMapping - public Result update(@RequestBody IcPartyUnitDTO dto){ + @PostMapping("delete") + public Result delete(@RequestBody IcPartyUnitDTO dto){ //效验数据 - ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); - icPartyUnitService.update(dto); - return new Result(); - } - - @DeleteMapping - public Result delete(@RequestBody String[] ids){ - //效验数据 - AssertUtils.isArrayEmpty(ids, "id"); - icPartyUnitService.delete(ids); + AssertUtils.isBlank(dto.getId(), "id"); + icPartyUnitService.delete(dto.getId()); return new Result(); } @@ -111,4 +103,10 @@ public class IcPartyUnitController { ValidatorUtils.validateEntity(formDTO,ServiceQueryFormDTO.AddUserInternalGroup.class); return new Result>().ok(icPartyUnitService.queryServiceList(formDTO)); } + + @PostMapping("option") + public Result> option(@RequestBody IcPartyUnitDTO dto){ + AssertUtils.isBlank(dto.getAgencyId(), "agencyId"); + return new Result>().ok(icPartyUnitService.option(dto)); + } } \ No newline at end of file diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcPartyActivityService.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcPartyActivityService.java index ec667538cb..def86c6c60 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcPartyActivityService.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcPartyActivityService.java @@ -20,6 +20,7 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.IcPartyActivityDTO; +import com.epmet.dto.form.PartyActivityFormDTO; import com.epmet.entity.IcPartyActivityEntity; import java.util.List; @@ -36,12 +37,12 @@ public interface IcPartyActivityService extends BaseService * @author generator * @date 2021-11-19 */ - PageData page(Map params); + PageData search(PartyActivityFormDTO formDTO); /** * 默认查询 @@ -73,16 +74,6 @@ public interface IcPartyActivityService extends BaseService { */ void save(IcPartyUnitDTO dto); - /** - * 默认更新 - * - * @param dto - * @return void - * @author generator - * @date 2021-11-19 - */ - void update(IcPartyUnitDTO dto); /** * 批量删除 * - * @param ids + * @param id * @return void * @author generator * @date 2021-11-19 */ - void delete(String[] ids); + void delete(String id); /** * 需求指派,选择区域化党建单位,调用此接口 @@ -105,4 +96,13 @@ public interface IcPartyUnitService extends BaseService { * @return */ List queryServiceList(ServiceQueryFormDTO formDTO); + + /** + * @Description 获取组织下单位列表 + * @Param dto + * @Return {@link List< OptionDTO>} + * @Author zhaoqifeng + * @Date 2021/11/22 14:35 + */ + List option(IcPartyUnitDTO dto); } \ No newline at end of file diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyActivityServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyActivityServiceImpl.java index ec245f544a..bbf89dc290 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyActivityServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyActivityServiceImpl.java @@ -17,25 +17,33 @@ package com.epmet.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 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.page.PageData; +import com.epmet.commons.tools.redis.common.CustomerOrgRedis; +import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.dao.IcPartyActivityDao; import com.epmet.dto.IcPartyActivityDTO; +import com.epmet.dto.IcPartyUnitDTO; +import com.epmet.dto.form.PartyActivityFormDTO; +import com.epmet.dto.result.demand.OptionDTO; import com.epmet.entity.IcPartyActivityEntity; -import com.epmet.redis.IcPartyActivityRedis; import com.epmet.service.IcPartyActivityService; +import com.epmet.service.IcPartyUnitService; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.Arrays; +import javax.annotation.Resource; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * 联建活动 @@ -46,16 +54,32 @@ import java.util.Map; @Service public class IcPartyActivityServiceImpl extends BaseServiceImpl implements IcPartyActivityService { - @Autowired - private IcPartyActivityRedis icPartyActivityRedis; + @Resource + private IcPartyUnitService icPartyUnitService; @Override - public PageData page(Map params) { - IPage page = baseDao.selectPage( - getPage(params, FieldConstant.CREATED_TIME, false), - getWrapper(params) - ); - return getPageData(page, IcPartyActivityDTO.class); + public PageData search(PartyActivityFormDTO formDTO) { + PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()); + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcPartyActivityEntity::getAgencyId, formDTO.getAgencyId()); + wrapper.eq(StringUtils.isNotBlank(formDTO.getUnitId()), IcPartyActivityEntity::getUnitId, formDTO.getUnitId()); + wrapper.eq(StringUtils.isNotBlank(formDTO.getServiceMatter()), IcPartyActivityEntity::getServiceMatter, formDTO.getServiceMatter()); + wrapper.like(StringUtils.isNotBlank(formDTO.getTitle()), IcPartyActivityEntity::getTitle, formDTO.getTitle()); + wrapper.between(IcPartyActivityEntity::getActivityTime, formDTO.getStartTime(), formDTO.getEndTime()); + wrapper.orderByDesc(IcPartyActivityEntity::getUpdatedTime); + List list = baseDao.selectList(wrapper); + List dtoList = ConvertUtils.sourceToTarget(list, IcPartyActivityDTO.class); + + IcPartyUnitDTO unitDTO = new IcPartyUnitDTO(); + unitDTO.setAgencyId(formDTO.getAgencyId()); + if (CollectionUtils.isNotEmpty(dtoList)) { + Map option = icPartyUnitService.option(unitDTO).stream().collect(Collectors.toMap(OptionDTO::getValue, OptionDTO::getLabel)); + dtoList.forEach(dto -> { + dto.setUnitName(option.get(dto.getUnitId())); + }); + } + PageInfo pageInfo = new PageInfo<>(dtoList); + return new PageData<>(dtoList, pageInfo.getTotal()); } @Override @@ -84,21 +108,20 @@ public class IcPartyActivityServiceImpl extends BaseServiceImpl list = baseDao.selectList(wrapper); List dtoList = ConvertUtils.sourceToTarget(list, IcPartyUnitDTO.class); Result> unitTypeMap = epmetAdminOpenFeignClient.dictMap(DictTypeEnum.PARTY_UNIT_TYPE.getCode()); dtoList.forEach(item -> { item.setType(unitTypeMap.getData().get(item.getType())); + //TODO 服务事项 + if (StringUtils.isNotBlank(item.getServiceMatter())) { + List matters = Arrays.asList(item.getServiceMatter().split(StrConstant.COMMA)); + } }); PageInfo pageInfo = new PageInfo<>(dtoList); return new PageData<>(dtoList, pageInfo.getTotal()); @@ -103,6 +109,10 @@ public class IcPartyUnitServiceImpl extends BaseServiceImpl} + * @Author zhaoqifeng + * @Date 2021/11/22 14:35 + */ + @Override + public List option(IcPartyUnitDTO dto) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcPartyUnitEntity::getAgencyId, dto.getAgencyId()); + wrapper.orderByDesc(IcPartyUnitEntity::getUpdatedTime); + wrapper.eq(StringUtils.isNotBlank(dto.getServiceMatter()), IcPartyUnitEntity::getServiceMatter, dto.getServiceMatter()); + List list = baseDao.selectList(wrapper); + if (CollectionUtils.isEmpty(list)) { + return Collections.emptyList(); + } + return list.stream().map(item -> { + OptionDTO option = new OptionDTO(); + option.setValue(item.getId()); + option.setLabel(item.getUnitName()); + return option; + }).collect(Collectors.toList()); + } + } \ No newline at end of file