| | |
| | | package com.panzhihua.service_community.service.impl; |
| | | |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.panzhihua.common.model.dtos.shop.ComShopFlowerOrderDeliveryDTO; |
| | | import com.panzhihua.common.model.dtos.shop.PageComFlowerOrderDeliveryDTO; |
| | | import com.panzhihua.common.model.dtos.shop.PageComFlowerOrderListDTO; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.convenient.ConvenientElevatingPointVO; |
| | | import com.panzhihua.common.model.vos.shop.ComShopFlowerOrderDeliveryVO; |
| | | import com.panzhihua.common.model.vos.shop.ComShopFlowerOrderPageVO; |
| | | import com.panzhihua.common.utlis.OrderNoUtils; |
| | | import com.panzhihua.service_community.dao.ComShopFlowerOrderDAO; |
| | | import com.panzhihua.service_community.dao.ComShopFlowerOrderDeliveryDAO; |
| | | import com.panzhihua.service_community.dao.ConvenientElevatingPointDAO; |
| | | import com.panzhihua.service_community.model.dos.ComShopFlowerOrderDO; |
| | | import com.panzhihua.service_community.model.dos.ComShopFlowerOrderDeliveryDO; |
| | | import com.panzhihua.service_community.model.dos.ConvenientElevatingPointDO; |
| | | import com.panzhihua.service_community.service.ComShopFlowerOrderDeliveryService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | |
| | | import static java.util.Objects.nonNull; |
| | | |
| | | /** |
| | | * @auther yh |
| | |
| | | public class ComShopFlowerOrderDeliveryServiceImpl extends ServiceImpl<ComShopFlowerOrderDeliveryDAO, ComShopFlowerOrderDeliveryDO> |
| | | implements ComShopFlowerOrderDeliveryService { |
| | | |
| | | @Resource |
| | | private ComShopFlowerOrderDAO comShopFlowerOrderDAO; |
| | | @Resource |
| | | private ConvenientElevatingPointDAO convenientElevatingPointDAO; |
| | | |
| | | |
| | | @Override |
| | | public R saveDelivery(ComShopFlowerOrderDeliveryDTO comShopFlowerOrderDeliveryDTO) { |
| | | ComShopFlowerOrderDeliveryDO comShopFlowerOrderDeliveryDO = new ComShopFlowerOrderDeliveryDO(); |
| | | BeanUtils.copyProperties(comShopFlowerOrderDeliveryDTO,comShopFlowerOrderDeliveryDO); |
| | | //创建配送单号 |
| | | String deliveryNo = OrderNoUtils.nextDeliveryNo(); |
| | | comShopFlowerOrderDeliveryDO.setDeliveryNo(deliveryNo); |
| | | comShopFlowerOrderDeliveryDO.setDeliveryTime(new Date()); |
| | | comShopFlowerOrderDeliveryDO.setDeleteStatus(ComShopFlowerOrderDeliveryDO.deliveryStatus.psz); |
| | | comShopFlowerOrderDeliveryDO.setDeleteStatus(ComShopFlowerOrderDeliveryDO.deleteStatus.wsc); |
| | | int insert = this.baseMapper.insert(comShopFlowerOrderDeliveryDO); |
| | | if (insert > 0){ |
| | | Long deliveryId = comShopFlowerOrderDeliveryDO.getId(); |
| | | List<Long> orderIds = comShopFlowerOrderDeliveryDTO.getOrderIds(); |
| | | if (CollUtil.isNotEmpty(orderIds)){ |
| | | comShopFlowerOrderDAO.updateOrder(orderIds,deliveryId,comShopFlowerOrderDeliveryDO.getDeliveryNo(), ComShopFlowerOrderDO.status.psz,comShopFlowerOrderDeliveryDO.getDeliveryTime()); |
| | | } |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | @Override |
| | | public R updateDelivery(ComShopFlowerOrderDeliveryDTO comShopFlowerOrderDeliveryDTO) { |
| | | Long id = comShopFlowerOrderDeliveryDTO.getId(); |
| | | if (null == id){ |
| | | return R.fail("配送单id不能为空"); |
| | | } |
| | | ComShopFlowerOrderDeliveryDO comShopFlowerOrderDeliveryDO = this.baseMapper.selectById(id); |
| | | if (Objects.isNull(comShopFlowerOrderDeliveryDO)){ |
| | | return R.fail("不存在该配送单"); |
| | | } |
| | | comShopFlowerOrderDeliveryDO.setServiceTime(new Date()); |
| | | comShopFlowerOrderDeliveryDO.setDeleteStatus(ComShopFlowerOrderDeliveryDO.deliveryStatus.ysd); |
| | | int update = this.baseMapper.updateById(comShopFlowerOrderDeliveryDO); |
| | | if (update > 0){ |
| | | comShopFlowerOrderDAO.updateOrderStatus(comShopFlowerOrderDeliveryDO.getId(),comShopFlowerOrderDeliveryDO.getServiceTime(),ComShopFlowerOrderDO.status.dsh); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | @Override |
| | | public R pageDelivery(PageComFlowerOrderDeliveryDTO pageComFlowerOrderDeliveryDTO) { |
| | | Page page = new Page<>(pageComFlowerOrderDeliveryDTO.getPageNum(),pageComFlowerOrderDeliveryDTO.getPageSize()); |
| | | IPage<ComShopFlowerOrderDeliveryVO> page1 = this.baseMapper.pageDelivery(page, pageComFlowerOrderDeliveryDTO); |
| | | for (ComShopFlowerOrderDeliveryVO record : page1.getRecords()) { |
| | | Long pointId = record.getPointId(); |
| | | ConvenientElevatingPointDO convenientElevatingPointDO = convenientElevatingPointDAO.selectById(pointId); |
| | | ConvenientElevatingPointVO convenientElevatingPointVO = new ConvenientElevatingPointVO(); |
| | | BeanUtils.copyProperties(convenientElevatingPointDO,convenientElevatingPointVO); |
| | | record.setConvenientElevatingPointVO(convenientElevatingPointVO); |
| | | } |
| | | |
| | | return R.ok(page1); |
| | | } |
| | | |
| | | @Override |
| | | public R pageNoDelivery(PageComFlowerOrderDeliveryDTO pageComFlowerOrderDeliveryDTO) { |
| | | Page page = new Page<>(pageComFlowerOrderDeliveryDTO.getPageNum(),pageComFlowerOrderDeliveryDTO.getPageSize()); |
| | | IPage<ConvenientElevatingPointVO> page1 = convenientElevatingPointDAO.pageNoDelivery(page, pageComFlowerOrderDeliveryDTO); |
| | | return R.ok(page1); |
| | | } |
| | | |
| | | @Override |
| | | public R pageNoDeliveryOrderList(PageComFlowerOrderListDTO pageComFlowerOrderListDTO) { |
| | | Page page = new Page<>(pageComFlowerOrderListDTO.getPageNum(),pageComFlowerOrderListDTO.getPageSize()); |
| | | IPage<ComShopFlowerOrderPageVO> iPage = comShopFlowerOrderDAO.pageOrderListNoDelivery(page, pageComFlowerOrderListDTO); |
| | | return R.ok(iPage); |
| | | } |
| | | |
| | | |
| | | } |