消费者订单信息查询

This commit is contained in:
kuang.yifei@iwhalecloud.com 2022-06-18 00:10:54 +08:00
parent fea41cfc8f
commit 10af3b417c
3 changed files with 149 additions and 20 deletions

View File

@ -6,6 +6,7 @@ import com.ghy.common.core.controller.BaseController;
import com.ghy.common.core.domain.AjaxResult;
import com.ghy.common.core.page.TableDataInfo;
import com.ghy.common.enums.BusinessType;
import com.ghy.common.utils.ExceptionUtil;
import com.ghy.common.utils.ObjectUtils;
import com.ghy.common.utils.poi.ExcelUtil;
import com.ghy.customer.domain.Customer;
@ -29,6 +30,7 @@ import com.ghy.payment.service.FinancialMasterService;
import com.ghy.web.pojo.vo.OrderDetailsResponseVo;
import com.ghy.web.pojo.vo.OrderListResponse;
import com.ghy.web.pojo.vo.OrderStandard;
import com.ghy.web.pojo.vo.OrderStandardDetail;
import com.ghy.worker.domain.Worker;
import com.ghy.worker.service.WorkerService;
import com.github.pagehelper.PageInfo;
@ -150,6 +152,104 @@ public class OrderMasterController extends BaseController {
return voDataTable(orderListResponses, list);
}
@PostMapping("/app/detail")
@ResponseBody
public AjaxResult appDetail(@RequestBody OrderMaster request) {
try {
// 主单信息
OrderMaster orderMaster = orderMasterService.selectById(request.getId());
List<OrderDetail> orderDetailList = orderDetailService.selectByOrderMasterId(orderMaster.getId());
List<OrderStandardDetail> orderStandardDetails = new ArrayList<>();
orderDetailList.forEach(orderDetail -> {
List<OrderStandard> standardList = new ArrayList<>();
// 子单施工师傅信息
Worker detailWorker = workerService.selectById(orderDetail.getWorkerId());
// 子单商品规格及信息
List<OrderGoods> orderStandardList = orderGoodsService.selectByOrderDetailId(orderDetail.getId());
for (OrderGoods orderGoods : orderStandardList) {
OrderStandard orderStandard = new OrderStandard();
orderStandard.setStandardName(orderGoods.getGoodsName());
orderStandard.setStandardNum(orderGoods.getGoodsNum());
orderStandard.setServerNum(orderGoods.getServerGoodsNum() == null ? 0 : orderGoods.getServerGoodsNum());
orderStandard.setWaitServerNum(orderStandard.getStandardNum() - orderStandard.getServerNum());
standardList.add(orderStandard);
}
OrderStandardDetail orderStandardDetail = new OrderStandardDetail();
orderStandardDetail.setOrderDetailId(orderDetail.getId());
orderStandardDetail.setOrderDetailCode(orderDetail.getCode());
orderStandardDetail.setWorkBeginTime(orderDetail.getWorkBeginTime());
orderStandardDetail.setWorkFinishTime(orderDetail.getWorkFinishTime());
orderStandardDetail.setWorkerName(detailWorker.getName());
orderStandardDetail.setWorkerPhone(detailWorker.getPhone());
orderStandardDetail.setOrderStandardList(standardList);
orderStandardDetails.add(orderStandardDetail);
});
// 初始化属性
OrderListResponse orderListResponse = new OrderListResponse();
List<OrderStandard> standardList = new ArrayList<>();
// 师傅信息
Worker worker = workerService.selectById(orderMaster.getWorkerId());
// 消费者信息
Customer customer = customerService.selectByCustomerId(orderMaster.getCustomerId());
// 商品规格及信息
List<OrderGoods> orderStandardList = orderGoodsService.selectByOrderMasterId(orderMaster.getId());
// 商品信息
GoodsStandard goodsStandard = goodsStandardService.selectById(orderStandardList.get(0).getGoodsStandardId());
Goods goods = goodsService.selectById(goodsStandard.getGoodsId());
// 财务信息
FinancialMaster financialMaster = financialMasterService.selectByOrderMasterId(orderMaster.getId());
// 地址信息
CustomerAddress customerAddress = addressService.selectByCustomerAddressId(orderMaster.getAddressId());
for (OrderGoods orderGoods : orderStandardList) {
OrderStandard orderStandard = new OrderStandard();
orderStandard.setStandardName(orderGoods.getGoodsName());
orderStandard.setStandardNum(orderGoods.getGoodsNum());
orderStandard.setServerNum(orderGoods.getServerGoodsNum() == null ? 0 : orderGoods.getServerGoodsNum());
orderStandard.setWaitServerNum(orderStandard.getStandardNum() - orderStandard.getServerNum());
standardList.add(orderStandard);
}
// 编辑返回属性
orderListResponse.setOrderMasterId(orderMaster.getId());
orderListResponse.setOrderMasterCode(orderMaster.getCode());
orderListResponse.setGoodsName(goods.getGoodsName());
orderListResponse.setGoodsLogoUrl(goods.getGoodsImgUrl());
orderListResponse.setDiscountMoney(financialMaster.getDiscountMoney());
orderListResponse.setTotalMoney(financialMaster.getTotalMoney());
orderListResponse.setPayMoney(financialMaster.getPayMoney());
orderListResponse.setWorkerName(worker.getName());
orderListResponse.setWorkerPhone(worker.getPhone());
orderListResponse.setCustomerName(customer.getName());
orderListResponse.setCustomerPhone(customer.getPhone());
orderListResponse.setOrderStatus(orderMaster.getOrderStatus());
orderListResponse.setPayStatus(orderMaster.getPayStatus());
orderListResponse.setPayType(orderMaster.getPayType());
orderListResponse.setStandardList(standardList);
orderListResponse.setAddress(customerAddress.getAddress());
orderListResponse.setServerTime(orderMaster.getRevTime());
orderListResponse.setCreateTime(orderMaster.getCreateTime());
orderListResponse.setOrderStandardDetailList(orderStandardDetails);
return AjaxResult.success(orderListResponse);
} catch (Exception e) {
e.printStackTrace();
return AjaxResult.error(ExceptionUtil.getExceptionMessage(e));
}
}
@RequiresPermissions("order:master:list")
@PostMapping("/list")
@ResponseBody

View File

@ -1,5 +1,6 @@
package com.ghy.web.pojo.vo;
import com.ghy.order.domain.OrderDetail;
import lombok.Data;
import java.math.BigDecimal;
@ -53,4 +54,7 @@ public class OrderListResponse {
private Date createTime;
private List<OrderStandard> standardList;
private List<OrderStandardDetail> orderStandardDetailList;
}

View File

@ -0,0 +1,25 @@
package com.ghy.web.pojo.vo;
import lombok.Data;
import java.util.Date;
import java.util.List;
@Data
public class OrderStandardDetail {
private Long orderDetailId;
private String orderDetailCode;
private String workerName;
private String workerPhone;
private Date workBeginTime;
private Date workFinishTime;
private List<OrderStandard> orderStandardList;
}