|
@@ -1,15 +1,20 @@
|
|
|
package com.sd.business.service.order.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
+import cn.hutool.core.date.DateUtil;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.ruoyi.common.exception.ServiceException;
|
|
|
import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
|
+import com.sd.business.entity.department.po.Department;
|
|
|
import com.sd.business.entity.order.dto.OrderInfoDto;
|
|
|
import com.sd.business.entity.order.dto.OrderSelectDto;
|
|
|
import com.sd.business.entity.order.po.OrderInfo;
|
|
|
import com.sd.business.entity.order.vo.OrderInfoVo;
|
|
|
import com.sd.business.mapper.order.OrderMapper;
|
|
|
+import com.sd.business.service.department.DepartmentService;
|
|
|
import com.sd.business.service.order.OrderService;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.util.List;
|
|
@@ -25,26 +30,52 @@ import java.util.List;
|
|
|
@Service
|
|
|
public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implements OrderService {
|
|
|
|
|
|
- @Override
|
|
|
- public List<OrderInfoVo> getList(OrderSelectDto dto) {
|
|
|
- IWrapper<OrderInfo> wrapper = getWrapper();
|
|
|
- wrapper.orderByDesc("o", OrderInfo::getId);
|
|
|
- List<OrderInfoVo> list = this.baseMapper.getList(wrapper);
|
|
|
- return list;
|
|
|
- }
|
|
|
+ @Autowired
|
|
|
+ private DepartmentService departmentService;
|
|
|
|
|
|
@Override
|
|
|
public Page<OrderInfoVo> getPage(OrderSelectDto dto) {
|
|
|
IWrapper<OrderInfo> wrapper = getWrapper();
|
|
|
wrapper.orderByDesc("o", OrderInfo::getId);
|
|
|
+ wrapper.like("d", Department::getName, dto.getDepartmentName());
|
|
|
+ wrapper.like("o", OrderInfo::getCode, dto.getCode());
|
|
|
+ wrapper.like("o", OrderInfo::getWlnCode, dto.getWlnCode());
|
|
|
+ wrapper.eq("o", OrderInfo::getStatus, dto.getStatus());
|
|
|
+ wrapper.eq("o", OrderInfo::getSettlementStatus, dto.getSettlementStatus());
|
|
|
+ wrapper.ge("o", OrderInfo::getWlnCreateTime, dto.getBeginTime());
|
|
|
+ wrapper.le("o", OrderInfo::getWlnCreateTime, dto.getEndTime());
|
|
|
+
|
|
|
Page<OrderInfoVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
|
|
|
+ List<OrderInfoVo> records = page.getRecords();
|
|
|
+ if (records.size() == 0) {
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ for (OrderInfoVo record : records) {
|
|
|
+ record.setDeliveryTime(DateUtil.offsetDay(record.getCreateTime(), 1));
|
|
|
+ }
|
|
|
+
|
|
|
return page;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public OrderInfoVo detail(Long id) {
|
|
|
- OrderInfo OrderInfo = this.getById(id);
|
|
|
- OrderInfoVo result = BeanUtil.toBean(OrderInfo, OrderInfoVo.class);
|
|
|
+ OrderInfo orderInfo = this.getById(id);
|
|
|
+ if (orderInfo == null) {
|
|
|
+ throw new ServiceException("未知订单");
|
|
|
+ }
|
|
|
+ OrderInfoVo result = BeanUtil.toBean(orderInfo, OrderInfoVo.class);
|
|
|
+ result.setDeliveryTime(DateUtil.offsetDay(result.getCreateTime(), 1));
|
|
|
+
|
|
|
+ if (orderInfo.getDepartmentId() == null) {
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ Department department = departmentService.getById(orderInfo.getDepartmentId());
|
|
|
+ if (department != null) {
|
|
|
+ result.setDepartmentName(department.getName());
|
|
|
+ }
|
|
|
+
|
|
|
return result;
|
|
|
}
|
|
|
|