订单模块相关接口修改
This commit is contained in:
parent
80df72d80c
commit
efcd5f274e
|
|
@ -431,7 +431,56 @@ public class OrderController extends BaseController {
|
|||
response.setNewOrderNum(newMasterOrderCount + newDetailOrderCount);
|
||||
// 统计未排的单量
|
||||
orderMaster.setOrderStatus(OrderStatus.PLAIN.code());
|
||||
response.setPlanOrderNum(orderMasterService.countOrderMasterList(orderMaster));
|
||||
orderDetail.setOrderStatus(OrderStatus.PLAIN.code());
|
||||
response.setPlanOrderNum(orderMasterService.countOrderMasterList(orderMaster) + orderDetailService.countOrderDetailList(orderDetail));
|
||||
// 统计待上门单量
|
||||
orderMaster.setOrderStatus(OrderStatus.GOING.code());
|
||||
orderDetail.setOrderStatus(OrderStatus.GOING.code());
|
||||
response.setWaitServOrderNum(orderMasterService.countOrderMasterList(orderMaster) + orderDetailService.countOrderDetailList(orderDetail));
|
||||
// 统计服务中单量
|
||||
orderMaster.setOrderStatus(OrderStatus.SERVER.code());
|
||||
orderDetail.setOrderStatus(OrderStatus.SERVER.code());
|
||||
response.setServingOrderNum(orderMasterService.countOrderMasterList(orderMaster) + orderDetailService.countOrderDetailList(orderDetail));
|
||||
// 统计待确认单量
|
||||
orderMaster.setOrderStatus(OrderStatus.FINISH_CHECK.code());
|
||||
orderDetail.setOrderStatus(OrderStatus.FINISH_CHECK.code());
|
||||
response.setWaitSureOrderNum(orderMasterService.countOrderMasterList(orderMaster) + orderDetailService.countOrderDetailList(orderDetail));
|
||||
// 统计超时单量
|
||||
OrderListRequest orderListRequest = new OrderListRequest();
|
||||
orderListRequest.setIsOverTime(true);
|
||||
orderListRequest.setWorkerId(request.getWorkerId());
|
||||
AjaxResult overTimeRes = this.appMixOrderList(orderListRequest);
|
||||
List<OrderListResponse> overTimeList = (List)overTimeRes.get("data");
|
||||
response.setOverTimeOrderNum(overTimeList.size());
|
||||
// 统计今日单量
|
||||
Calendar today = Calendar.getInstance();
|
||||
today.set(Calendar.SECOND, 0);
|
||||
today.set(Calendar.MINUTE, 0);
|
||||
today.set(Calendar.HOUR_OF_DAY, 0);
|
||||
today.set(Calendar.MILLISECOND, 0);
|
||||
orderDetail.setOrderStatus(OrderStatus.GOING.code());
|
||||
orderDetail.setExpectTimeStart(today.getTime());
|
||||
today.set(Calendar.SECOND, 23);
|
||||
today.set(Calendar.MINUTE, 59);
|
||||
today.set(Calendar.HOUR_OF_DAY, 59);
|
||||
today.set(Calendar.MILLISECOND, 0);
|
||||
orderDetail.setExpectTimeEnd(today.getTime());
|
||||
response.setTodayOrderNum(orderDetailService.countOrderDetailList(orderDetail));
|
||||
// 统计明日单量
|
||||
Calendar tomorrow = Calendar.getInstance();
|
||||
tomorrow.add(Calendar.DATE, 1);
|
||||
tomorrow.set(Calendar.SECOND, 0);
|
||||
tomorrow.set(Calendar.MINUTE, 0);
|
||||
tomorrow.set(Calendar.HOUR_OF_DAY, 0);
|
||||
tomorrow.set(Calendar.MILLISECOND, 0);
|
||||
orderDetail.setOrderStatus(OrderStatus.GOING.code());
|
||||
orderDetail.setExpectTimeStart(today.getTime());
|
||||
tomorrow.set(Calendar.SECOND, 23);
|
||||
tomorrow.set(Calendar.MINUTE, 59);
|
||||
tomorrow.set(Calendar.HOUR_OF_DAY, 59);
|
||||
tomorrow.set(Calendar.MILLISECOND, 0);
|
||||
orderDetail.setExpectTimeEnd(today.getTime());
|
||||
response.setTomorrowOrderNum(orderDetailService.countOrderDetailList(orderDetail));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
logger.error(ExceptionUtils.getStackTrace(e));
|
||||
|
|
@ -476,8 +525,7 @@ public class OrderController extends BaseController {
|
|||
public List<OrderListResponse> getMasterList(OrderMaster orderMaster) {
|
||||
List<OrderListResponse> orderListResponses = new ArrayList<>();
|
||||
List<OrderMaster> list = orderMasterService.selectOrderMasterList(orderMaster);
|
||||
list.forEach(master -> {
|
||||
// 初始化属性
|
||||
for (OrderMaster master : list) {// 初始化属性
|
||||
OrderListResponse orderListResponse = new OrderListResponse();
|
||||
List<OrderStandard> standardList = new ArrayList<>();
|
||||
|
||||
|
|
@ -500,6 +548,19 @@ public class OrderController extends BaseController {
|
|||
|
||||
// 地址信息
|
||||
CustomerAddress customerAddress = addressService.selectByCustomerAddressId(master.getAddressId());
|
||||
SysArea sysArea = sysAreaService.selectById(customerAddress.getCountryId());
|
||||
String completeAddress = sysArea.getMergerName().replaceAll(",", "") + customerAddress.getAddress();
|
||||
|
||||
// 查询是否超时
|
||||
List<OrderTimeoutRecord> timeoutRecords = new ArrayList<>();
|
||||
List<OrderDetail> detailOrderList = orderDetailService.selectByOrderMasterId(master.getId());
|
||||
detailOrderList.stream().forEach(detail -> {
|
||||
OrderTimeoutRecord timeoutRecord = orderFineRecordService.selectByDetailIdAndStatus(detail.getId(), detail.getOrderStatus());
|
||||
if (timeoutRecord != null) {
|
||||
timeoutRecords.add(timeoutRecord);
|
||||
}
|
||||
});
|
||||
if (Boolean.TRUE.equals(orderMaster.getIsOverTime()) && timeoutRecords.size() == 0) continue;
|
||||
|
||||
for (OrderGoods orderGoods : orderStandardList) {
|
||||
OrderStandard orderStandard = new OrderStandard();
|
||||
|
|
@ -527,21 +588,20 @@ public class OrderController extends BaseController {
|
|||
orderListResponse.setPayType(master.getPayType());
|
||||
orderListResponse.setOrderMasterCode(master.getCode());
|
||||
orderListResponse.setStandardList(standardList);
|
||||
orderListResponse.setAddress(customerAddress.getAddress());
|
||||
orderListResponse.setAddress(completeAddress);
|
||||
orderListResponse.setRemark(goods.getRemark());
|
||||
orderListResponse.setCustomerRemark(master.getRemark());
|
||||
orderListResponse.setOrderTimeoutRecords(timeoutRecords);
|
||||
orderListResponses.add(orderListResponse);
|
||||
|
||||
});
|
||||
}
|
||||
return orderListResponses;
|
||||
}
|
||||
|
||||
public List<OrderListResponse> getDetailList(OrderDetail orderDetail) {
|
||||
List<OrderListResponse> orderListResponses = new ArrayList<>();
|
||||
List<OrderDetail> list = orderDetailService.selectOrderDetailList(orderDetail);
|
||||
list.forEach(detail -> {
|
||||
|
||||
// 主单信息
|
||||
for (OrderDetail detail : list) {// 主单信息
|
||||
OrderMaster orderMaster = orderMasterService.selectById(detail.getOrderMasterId());
|
||||
// 初始化属性
|
||||
OrderListResponse orderListResponse = new OrderListResponse();
|
||||
|
|
@ -582,6 +642,7 @@ public class OrderController extends BaseController {
|
|||
// 查询是否超时
|
||||
OrderTimeoutRecord orderTimeoutRecord = orderFineRecordService.selectByDetailIdAndStatus(detail.getId(), detail.getOrderStatus());
|
||||
Boolean isOverTime = orderTimeoutRecord == null ? false : true;
|
||||
if (Boolean.TRUE.equals(orderDetail.getIsOverTime()) && !isOverTime) continue;
|
||||
|
||||
// 编辑返回属性
|
||||
orderListResponse.setOrderDetailId(detail.getId());
|
||||
|
|
@ -612,7 +673,7 @@ public class OrderController extends BaseController {
|
|||
orderListResponse.setOrderType(detail.getOrderType());
|
||||
orderListResponse.setIsOverTime(isOverTime);
|
||||
orderListResponses.add(orderListResponse);
|
||||
});
|
||||
}
|
||||
return orderListResponses;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,7 +29,9 @@ import com.ghy.order.service.OrderDetailService;
|
|||
import com.ghy.order.service.OrderGoodsService;
|
||||
import com.ghy.order.service.OrderMasterService;
|
||||
import com.ghy.payment.domain.FinancialMaster;
|
||||
import com.ghy.payment.domain.OrderTimeoutRecord;
|
||||
import com.ghy.payment.service.FinancialMasterService;
|
||||
import com.ghy.payment.service.OrderFineRecordService;
|
||||
import com.ghy.web.pojo.vo.OrderListResponse;
|
||||
import com.ghy.web.pojo.vo.OrderMasterResponseVo;
|
||||
import com.ghy.web.pojo.vo.OrderStandard;
|
||||
|
|
@ -84,6 +86,8 @@ public class OrderMasterController extends BaseController {
|
|||
private FinancialMasterService financialMasterService;
|
||||
@Autowired
|
||||
private GoodsStandardService goodsStandardService;
|
||||
@Autowired
|
||||
private OrderFineRecordService orderFineRecordService;
|
||||
|
||||
@RequiresPermissions("order:master:view")
|
||||
@GetMapping()
|
||||
|
|
@ -123,6 +127,13 @@ public class OrderMasterController extends BaseController {
|
|||
// 地址信息
|
||||
CustomerAddress customerAddress = addressService.selectByCustomerAddressId(master.getAddressId());
|
||||
|
||||
// 查询是否超时
|
||||
List<OrderDetail> detailOrderList = orderDetailService.selectByOrderMasterId(master.getId());
|
||||
List<Long> detailOrderIds = detailOrderList.stream().map(OrderDetail::getId).collect(Collectors.toList());
|
||||
OrderTimeoutRecord params = new OrderTimeoutRecord();
|
||||
params.setOrderDetailIds(detailOrderIds);
|
||||
List<OrderTimeoutRecord> timeoutRecords = orderFineRecordService.selectList(params);
|
||||
|
||||
for (OrderGoods orderGoods : orderStandardList) {
|
||||
OrderStandard orderStandard = new OrderStandard();
|
||||
orderStandard.setStandardName(orderGoods.getGoodsName());
|
||||
|
|
@ -152,6 +163,7 @@ public class OrderMasterController extends BaseController {
|
|||
orderListResponse.setAddress(customerAddress.getAddress());
|
||||
orderListResponse.setRemark(goods.getRemark());
|
||||
orderListResponse.setCustomerRemark(master.getRemark());
|
||||
orderListResponse.setOrderTimeoutRecords(timeoutRecords);
|
||||
orderListResponses.add(orderListResponse);
|
||||
|
||||
});
|
||||
|
|
|
|||
|
|
@ -21,4 +21,6 @@ public class OrderListRequest {
|
|||
private String goodsName;
|
||||
|
||||
private Long countryId;
|
||||
|
||||
private Boolean isOverTime;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.ghy.web.pojo.vo;
|
||||
|
||||
import com.ghy.payment.domain.OrderTimeoutRecord;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
|
@ -65,6 +66,8 @@ public class OrderListResponse {
|
|||
|
||||
private Boolean isOverTime;
|
||||
|
||||
private List<OrderTimeoutRecord> orderTimeoutRecords;
|
||||
|
||||
private List<OrderStandard> standardList;
|
||||
|
||||
private List<OrderStandardDetail> orderStandardDetailList;
|
||||
|
|
|
|||
|
|
@ -12,4 +12,10 @@ import lombok.Data;
|
|||
public class OrderStatisticsResponse {
|
||||
private long planOrderNum;
|
||||
private long newOrderNum;
|
||||
private long waitServOrderNum;
|
||||
private long servingOrderNum;
|
||||
private long waitSureOrderNum;
|
||||
private long overTimeOrderNum;
|
||||
private long todayOrderNum;
|
||||
private long tomorrowOrderNum;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -62,4 +62,6 @@ public class OrderDetail extends BaseEntity {
|
|||
private String goodsName;
|
||||
|
||||
private Long countryId;
|
||||
|
||||
private Boolean isOverTime;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,4 +75,6 @@ public class OrderMaster extends BaseEntity {
|
|||
|
||||
private Integer exceptOrderStatus;
|
||||
|
||||
private Boolean isOverTime;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package com.ghy.payment.domain;
|
|||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单超时扣款记录表
|
||||
|
|
@ -19,6 +20,8 @@ public class OrderTimeoutRecord {
|
|||
*/
|
||||
private Long orderDetailId;
|
||||
|
||||
private List<Long> orderDetailIds;
|
||||
|
||||
/**
|
||||
* 超时时的订单状态
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -2,6 +2,8 @@ package com.ghy.payment.service;
|
|||
|
||||
import com.ghy.payment.domain.OrderTimeoutRecord;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单超时扣款记录接口
|
||||
* @author ydq
|
||||
|
|
@ -15,4 +17,11 @@ public interface OrderFineRecordService {
|
|||
* @return 超时记录
|
||||
*/
|
||||
OrderTimeoutRecord selectByDetailIdAndStatus(Long orderDetailId, Integer orderStatus);
|
||||
|
||||
/**
|
||||
* 查询超时List
|
||||
* @param params 查询条件
|
||||
* @return 超时List
|
||||
*/
|
||||
List<OrderTimeoutRecord> selectList(OrderTimeoutRecord params);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import com.ghy.payment.service.OrderFineRecordService;
|
|||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author ydq
|
||||
|
|
@ -22,4 +23,11 @@ public class OrderFineRecordServiceImpl implements OrderFineRecordService {
|
|||
public OrderTimeoutRecord selectByDetailIdAndStatus(Long orderDetailId, Integer orderStatus) {
|
||||
return orderFineRecordMapper.selectByDetailIdAndStatus(orderDetailId, orderStatus);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OrderTimeoutRecord> selectList(OrderTimeoutRecord params) {
|
||||
return orderFineRecordMapper.selectList(params);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,6 +29,12 @@
|
|||
<if test="orderDetailId != null">
|
||||
AND order_detail_id = #{orderDetailId}
|
||||
</if>
|
||||
<if test="orderDetailIds != null and orderDetailIds != ''">
|
||||
AND order_detail_id IN
|
||||
<foreach collection="orderDetailIds" item="orderDetailId" open="(" separator="," close=")">
|
||||
#{orderDetailId}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="orderStatus != null">
|
||||
AND order_status = #{orderStatus}
|
||||
</if>
|
||||
|
|
|
|||
Loading…
Reference in New Issue