| | |
| | | package com.panzhihua.service_community.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.panzhihua.common.model.dtos.community.ComCvtServeDTO; |
| | | import com.panzhihua.common.model.dtos.community.PageComCvtServeDTO; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.ComCvtCategoryVO; |
| | | import com.panzhihua.common.model.vos.community.ComCvtBusinessCategoryServeVO; |
| | | import com.panzhihua.common.model.vos.community.ComCvtServeVO; |
| | | import com.panzhihua.service_community.dao.ComCvtBusinessDAO; |
| | | import com.panzhihua.service_community.dao.ComCvtCategoryDAO; |
| | |
| | | import com.panzhihua.service_community.service.ComCvtServeService; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.ObjectUtils; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * @description: 社区 便民服务接口实现类 |
| | |
| | | @Override |
| | | public R addComCvtServe(ComCvtServeDTO comCvtServeDTO) { |
| | | ComCvtServeDO comCvtServeDO = new ComCvtServeDO(); |
| | | BeanUtils.copyProperties(comCvtServeDTO,comCvtServeDO); |
| | | BeanUtils.copyProperties(comCvtServeDTO, comCvtServeDO); |
| | | int insert = comCvtServeDAO.insert(comCvtServeDO); |
| | | if(insert>0){ |
| | | if (insert > 0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | |
| | | @Override |
| | | public R putComCvtServe(ComCvtServeDTO comCvtServeDTO) { |
| | | ComCvtServeDO comCvtServeDO = comCvtServeDAO.selectById(comCvtServeDTO.getId()); |
| | | if(null==comCvtServeDO){ |
| | | if (null == comCvtServeDO) { |
| | | return R.fail("该服务不存在"); |
| | | } |
| | | BeanUtils.copyProperties(comCvtServeDTO,comCvtServeDO); |
| | | BeanUtils.copyProperties(comCvtServeDTO, comCvtServeDO); |
| | | int update = comCvtServeDAO.updateById(comCvtServeDO); |
| | | if(update>0){ |
| | | if (update > 0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | |
| | | @Override |
| | | public R getComCvtServe(Long id) { |
| | | ComCvtServeDO comCvtServeDO = comCvtServeDAO.selectById(id); |
| | | if(null==comCvtServeDO){ |
| | | if (null == comCvtServeDO) { |
| | | return R.fail("该服务不存在"); |
| | | } |
| | | ComCvtServeVO comCvtServeVO = new ComCvtServeVO(); |
| | | BeanUtils.copyProperties(comCvtServeDO,comCvtServeVO); |
| | | BeanUtils.copyProperties(comCvtServeDO, comCvtServeVO); |
| | | ComCvtBusinessDO comCvtBusinessDO = comCvtBusinessDAO.selectById(comCvtServeDO.getBusinessId()); |
| | | if(null!=comCvtBusinessDO){ |
| | | if (null != comCvtBusinessDO) { |
| | | comCvtServeVO.setBusinessName(comCvtBusinessDO.getName()); |
| | | } |
| | | ComCvtCategoryDO comCvtCategoryDO = comCvtCategoryDAO.selectById(comCvtServeDO.getCategoryId()); |
| | | if(null!=comCvtCategoryDO){ |
| | | if (null != comCvtCategoryDO) { |
| | | comCvtServeVO.setCategoryName(comCvtCategoryDO.getName()); |
| | | } |
| | | return R.ok(comCvtServeDO); |
| | |
| | | @Override |
| | | public R deleteComCvtServe(Long id) { |
| | | ComCvtServeDO comCvtServeDO = comCvtServeDAO.selectById(id); |
| | | if(null==comCvtServeDO){ |
| | | if (null == comCvtServeDO) { |
| | | return R.fail("该服务不存在"); |
| | | } |
| | | int count = comCvtServeDAO.deleteById(id); |
| | | if(count<1){ |
| | | if (count < 1) { |
| | | return R.fail("删除失败"); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | @Override |
| | | public List<ComCvtBusinessCategoryServeVO> getBusinessCategoryServeVOS(Long businessId) { |
| | | List<ComCvtBusinessCategoryServeVO> comCvtBusinessCategoryServeVOS = new ArrayList<>(); |
| | | List<ComCvtServeDO> comCvtServeDOS = comCvtServeDAO.selectList(new QueryWrapper<ComCvtServeDO>().lambda().eq(ComCvtServeDO::getBusinessId, businessId)); |
| | | List<ComCvtCategoryDO> categoryDOS = comCvtCategoryDAO.selectList(new QueryWrapper<ComCvtCategoryDO>().lambda().orderByDesc(ComCvtCategoryDO::getWeight)); |
| | | categoryDOS.stream().forEach(categoryDO -> { |
| | | List<ComCvtServeVO> serveVOS = getComCvtServeDOSByCategory(comCvtServeDOS, categoryDO.getId()); |
| | | if (!ObjectUtils.isEmpty(serveVOS)) { |
| | | ComCvtBusinessCategoryServeVO comCvtServeVo = new ComCvtBusinessCategoryServeVO(); |
| | | comCvtServeVo.setCategoryName(categoryDO.getName()); |
| | | comCvtServeVo.setComCvtServeVOS(serveVOS); |
| | | comCvtBusinessCategoryServeVOS.add(comCvtServeVo); |
| | | } |
| | | }); |
| | | return comCvtBusinessCategoryServeVOS; |
| | | } |
| | | |
| | | /** |
| | | * 按分类筛选 |
| | | * @param comCvtServeDOS |
| | | * @param categoryId |
| | | * @return |
| | | */ |
| | | private List<ComCvtServeVO> getComCvtServeDOSByCategory(List<ComCvtServeDO> comCvtServeDOS, Long categoryId) { |
| | | List<ComCvtServeVO> comCvtServeVOS = new ArrayList<>(); |
| | | comCvtServeDOS = comCvtServeDOS.stream().filter(dos -> dos.getCategoryId() == categoryId).collect(Collectors.toList()); |
| | | comCvtServeDOS.forEach(comCvtServeDO -> { |
| | | ComCvtServeVO vo = new ComCvtServeVO(); |
| | | BeanUtils.copyProperties(comCvtServeDO, vo); |
| | | comCvtServeVOS.add(vo); |
| | | }); |
| | | return comCvtServeVOS; |
| | | } |
| | | } |