|
@ -1,18 +1,29 @@ |
|
|
package com.ruoyi.applet.contoller; |
|
|
package com.ruoyi.applet.contoller; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
import com.cyl.h5.pojo.vo.H5OrderVO; |
|
|
import com.cyl.h5.pojo.vo.H5OrderVO; |
|
|
import com.cyl.h5.service.H5OrderService; |
|
|
import com.cyl.h5.service.H5OrderService; |
|
|
import com.cyl.h5.service.H5PetCareService; |
|
|
import com.cyl.h5.service.H5PetCareService; |
|
|
import com.cyl.h5.service.H5PetService; |
|
|
import com.cyl.h5.service.H5PetService; |
|
|
import com.cyl.manager.oms.domain.OmsOrderService; |
|
|
import com.cyl.manager.oms.domain.OmsOrderService; |
|
|
|
|
|
import com.cyl.manager.oms.domain.OrderItem; |
|
|
|
|
|
import com.cyl.manager.oms.mapper.OmsOrderServiceMapper; |
|
|
|
|
|
import com.cyl.manager.oms.mapper.OrderItemMapper; |
|
|
|
|
|
import com.cyl.manager.oms.mapper.OrderMapper; |
|
|
import com.cyl.manager.oms.service.OrderService; |
|
|
import com.cyl.manager.oms.service.OrderService; |
|
|
|
|
|
import com.cyl.manager.ums.domain.Pet; |
|
|
import com.cyl.manager.ums.domain.PetCare; |
|
|
import com.cyl.manager.ums.domain.PetCare; |
|
|
|
|
|
import com.cyl.manager.ums.mapper.PetMapper; |
|
|
import com.cyl.manager.ums.pojo.vo.PetVO; |
|
|
import com.cyl.manager.ums.pojo.vo.PetVO; |
|
|
|
|
|
import com.ruoyi.applet.pojo.dto.AppletOrderDateVo; |
|
|
|
|
|
import com.ruoyi.applet.pojo.vo.AppletOrderDateAddressReturn; |
|
|
|
|
|
import com.ruoyi.applet.pojo.vo.AppletOrderDateVoReturn; |
|
|
import com.ruoyi.applet.service.IMallOrderService; |
|
|
import com.ruoyi.applet.service.IMallOrderService; |
|
|
import com.ruoyi.common.core.controller.BaseController; |
|
|
import com.ruoyi.common.core.controller.BaseController; |
|
|
import com.ruoyi.common.core.domain.AjaxResult; |
|
|
import com.ruoyi.common.core.domain.AjaxResult; |
|
|
import com.ruoyi.common.core.page.TableDataInfo; |
|
|
import com.ruoyi.common.core.page.TableDataInfo; |
|
|
|
|
|
import com.ruoyi.common.utils.uuid.IdUtils; |
|
|
import com.ruoyi.model.domain.*; |
|
|
import com.ruoyi.model.domain.*; |
|
|
import com.ruoyi.model.service.*; |
|
|
import com.ruoyi.model.service.*; |
|
|
import com.ruoyi.model.service.impl.AppletOrderItemServiceImpl; |
|
|
import com.ruoyi.model.service.impl.AppletOrderItemServiceImpl; |
|
@ -22,8 +33,10 @@ import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.web.bind.annotation.*; |
|
|
import org.springframework.web.bind.annotation.*; |
|
|
|
|
|
|
|
|
import java.math.BigDecimal; |
|
|
import java.math.BigDecimal; |
|
|
|
|
|
import java.math.RoundingMode; |
|
|
import java.time.LocalDateTime; |
|
|
import java.time.LocalDateTime; |
|
|
import java.util.*; |
|
|
import java.util.*; |
|
|
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
|
@Api(description = "订单模块 - 接单大厅流程") |
|
|
@Api(description = "订单模块 - 接单大厅流程") |
|
|
@RestController |
|
|
@RestController |
|
@ -42,6 +55,8 @@ public class ApiAppletOrderController extends BaseController { |
|
|
private IAppletConfigService configService; |
|
|
private IAppletConfigService configService; |
|
|
@Autowired |
|
|
@Autowired |
|
|
private IMallOrderService mallOrderService; |
|
|
private IMallOrderService mallOrderService; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private IAppletOrderItemDateService appletOrderItemDateService; |
|
|
//下单小程序:那边来的订单信息 |
|
|
//下单小程序:那边来的订单信息 |
|
|
@Autowired |
|
|
@Autowired |
|
|
private H5OrderService h5OrderService; |
|
|
private H5OrderService h5OrderService; |
|
@ -49,10 +64,22 @@ public class ApiAppletOrderController extends BaseController { |
|
|
private OrderService service; |
|
|
private OrderService service; |
|
|
@Autowired |
|
|
@Autowired |
|
|
private AppletOrderItemServiceImpl appletOrderItemServiceImpl; |
|
|
private AppletOrderItemServiceImpl appletOrderItemServiceImpl; |
|
|
|
|
|
|
|
|
@Autowired |
|
|
@Autowired |
|
|
private H5PetService h5PetService; |
|
|
private H5PetService h5PetService; |
|
|
@Autowired |
|
|
@Autowired |
|
|
private H5PetCareService petCareService; |
|
|
private H5PetCareService petCareService; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private PetMapper petMapper; |
|
|
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
|
|
private OrderMapper orderMapper; |
|
|
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
|
|
private OrderItemMapper orderItemMapper; |
|
|
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
|
|
private OmsOrderServiceMapper omsOrderServiceMapper; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ApiOperation("接单大厅列表-带分页") |
|
|
@ApiOperation("接单大厅列表-带分页") |
|
@ -64,28 +91,22 @@ public class ApiAppletOrderController extends BaseController { |
|
|
if(appletOrder.getUserIdJson() == null){ |
|
|
if(appletOrder.getUserIdJson() == null){ |
|
|
return AjaxResult.error("userIdJson用户信息标识不能为空"); |
|
|
return AjaxResult.error("userIdJson用户信息标识不能为空"); |
|
|
} |
|
|
} |
|
|
startPage(); |
|
|
|
|
|
|
|
|
//根据用户标识得到用户信息 |
|
|
|
|
|
AppUsers appUsers = appUsersService.selectAppUsersByUserId(appletOrder.getUserId()); |
|
|
|
|
|
BigDecimal petPayment = new BigDecimal(0); |
|
|
|
|
|
//得到当前用户角色 |
|
|
|
|
|
if(appUsers.getUserBcs()!=0){ |
|
|
|
|
|
//根据当前等级得到当前的返点比例 |
|
|
|
|
|
AppletConfig petPaymentBcs = configService.selectAppletConfigByClassAndNum("pet_payment_bcs", appUsers.getUserBcs()); |
|
|
|
|
|
petPayment = petPaymentBcs.getParamValueNo(); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
startPage(); |
|
|
List<AppletOrder> list = null; |
|
|
List<AppletOrder> list = null; |
|
|
List<AppletOrderItem> itemList = null; |
|
|
List<AppletOrderItem> itemList = null; |
|
|
if(appletOrder.getType().equals("0")){ |
|
|
if(appletOrder.getType().equals("0")){ |
|
|
|
|
|
|
|
|
list = appletOrderService.selectAppletOrderListLikeUserIdJson(appletOrder); |
|
|
list = appletOrderService.selectAppletOrderListLikeUserIdJson(appletOrder); |
|
|
// for (AppletOrder order:list){ |
|
|
|
|
|
// H5OrderVO h5OrderVO = h5OrderService.orderDetail(order.getOrderId()); |
|
|
|
|
|
// //得到服务信息 |
|
|
|
|
|
// List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
|
|
|
// List<PetVO> petVOList = new ArrayList<>(); |
|
|
|
|
|
// for (OmsOrderService service1:service){ |
|
|
|
|
|
// //宠物标识不为空的时候查询数据 |
|
|
|
|
|
// if(service1.getPetId()!=null){ |
|
|
|
|
|
// PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
|
|
|
// service1.setPetVo(petVO); |
|
|
|
|
|
// petVOList.add(petVO); |
|
|
|
|
|
// } |
|
|
|
|
|
// } |
|
|
|
|
|
// h5OrderVO.setPetVOList(petVOList); |
|
|
|
|
|
// order.setH5OrderVO(h5OrderVO); |
|
|
|
|
|
// } |
|
|
|
|
|
for (AppletOrder order : list) { |
|
|
for (AppletOrder order : list) { |
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(order.getOrderId()); |
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(order.getOrderId()); |
|
|
// 得到服务信息 |
|
|
// 得到服务信息 |
|
@ -108,7 +129,14 @@ public class ApiAppletOrderController extends BaseController { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//得到当前用户角色 |
|
|
|
|
|
if(appUsers.getUserBcs()!=0){ |
|
|
|
|
|
//保留两位小数点 |
|
|
|
|
|
BigDecimal multiply = order.getPrice().multiply(petPayment).setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
|
order.setOrderGive(multiply); |
|
|
|
|
|
}else{ |
|
|
|
|
|
order.setOrderGive(new BigDecimal(0)); |
|
|
|
|
|
} |
|
|
h5OrderVO.setPetVOList(petVOList); |
|
|
h5OrderVO.setPetVOList(petVOList); |
|
|
order.setH5OrderVO(h5OrderVO); |
|
|
order.setH5OrderVO(h5OrderVO); |
|
|
} |
|
|
} |
|
@ -116,37 +144,23 @@ public class ApiAppletOrderController extends BaseController { |
|
|
return AjaxResult.success(dataTable); |
|
|
return AjaxResult.success(dataTable); |
|
|
} |
|
|
} |
|
|
if (appletOrder.getType().equals("1")){ |
|
|
if (appletOrder.getType().equals("1")){ |
|
|
list = appletOrderService.selectAppletOrderList(appletOrder); |
|
|
|
|
|
// for (AppletOrder order:list){ |
|
|
|
|
|
// H5OrderVO h5OrderVO = h5OrderService.orderDetail(order.getOrderId()); |
|
|
|
|
|
// //得到服务信息 |
|
|
|
|
|
// List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
|
|
|
// List<PetVO> petVOList = new ArrayList<>(); |
|
|
|
|
|
// for (OmsOrderService service1:service){ |
|
|
|
|
|
// //宠物标识不为空的时候查询数据 |
|
|
|
|
|
// if(service1.getPetId()!=null){ |
|
|
|
|
|
// PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
|
|
|
// service1.setPetVo(petVO); |
|
|
|
|
|
// petVOList.add(petVO); |
|
|
|
|
|
// } |
|
|
|
|
|
// } |
|
|
|
|
|
// h5OrderVO.setPetVOList(petVOList); |
|
|
|
|
|
// order.setH5OrderVO(h5OrderVO); |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
AppletOrder orderQ = new AppletOrder(); |
|
|
|
|
|
orderQ.setUserIdJson(appletOrder.getUserIdJson()); |
|
|
|
|
|
orderQ.setType("1"); |
|
|
|
|
|
orderQ.setStatus(0); |
|
|
|
|
|
list = appletOrderService.selectAppletOrderList(orderQ); |
|
|
|
|
|
|
|
|
for (AppletOrder order : list) { |
|
|
for (AppletOrder order : list) { |
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(order.getOrderId()); |
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(order.getOrderId()); |
|
|
// 得到服务信息 |
|
|
// 得到服务信息 |
|
|
List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
|
|
|
|
|
|
// 使用一个 Set 来跟踪已经添加的 PetVO 的 id |
|
|
// 使用一个 Set 来跟踪已经添加的 PetVO 的 id |
|
|
Set<Integer> addedPetIds = new HashSet<>(); |
|
|
Set<Integer> addedPetIds = new HashSet<>(); |
|
|
List<PetVO> petVOList = new ArrayList<>(); |
|
|
List<PetVO> petVOList = new ArrayList<>(); |
|
|
|
|
|
|
|
|
for (OmsOrderService service1 : service) { |
|
|
for (OmsOrderService service1 : service) { |
|
|
// 宠物标识不为空的时候查询数据 |
|
|
// 宠物标识不为空的时候查询数据 |
|
|
if (service1.getPetId() != null) { |
|
|
if (service1.getPetId() != null) { |
|
|
PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
|
|
|
|
|
|
// 检查 petVO 的 id 是否已经添加过 |
|
|
// 检查 petVO 的 id 是否已经添加过 |
|
|
if (petVO != null && !addedPetIds.contains(petVO.getId())) { |
|
|
if (petVO != null && !addedPetIds.contains(petVO.getId())) { |
|
|
service1.setPetVo(petVO); |
|
|
service1.setPetVo(petVO); |
|
@ -155,9 +169,20 @@ public class ApiAppletOrderController extends BaseController { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//得到当前用户角色 |
|
|
|
|
|
if(appUsers.getUserBcs()!=0){ |
|
|
|
|
|
//保留两位小数点 |
|
|
|
|
|
BigDecimal multiply = order.getPrice().multiply(petPayment).setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
|
order.setOrderGive(multiply); |
|
|
|
|
|
}else{ |
|
|
|
|
|
order.setOrderGive(new BigDecimal(0)); |
|
|
|
|
|
} |
|
|
h5OrderVO.setPetVOList(petVOList); |
|
|
h5OrderVO.setPetVOList(petVOList); |
|
|
order.setH5OrderVO(h5OrderVO); |
|
|
order.setH5OrderVO(h5OrderVO); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
TableDataInfo dataTable = getDataTable(list); |
|
|
TableDataInfo dataTable = getDataTable(list); |
|
|
return AjaxResult.success(dataTable); |
|
|
return AjaxResult.success(dataTable); |
|
@ -167,36 +192,17 @@ public class ApiAppletOrderController extends BaseController { |
|
|
appletOrderItem.setStatus(2); |
|
|
appletOrderItem.setStatus(2); |
|
|
appletOrderItem.setUserId(appletOrder.getUserId()); |
|
|
appletOrderItem.setUserId(appletOrder.getUserId()); |
|
|
itemList = appletOrderItemService.selectAppletOrderItemList(appletOrderItem); |
|
|
itemList = appletOrderItemService.selectAppletOrderItemList(appletOrderItem); |
|
|
// for (AppletOrderItem orderItem:itemList){ |
|
|
|
|
|
// H5OrderVO h5OrderVO = h5OrderService.orderDetail(orderItem.getOrderId()); |
|
|
|
|
|
// //得到服务信息 |
|
|
|
|
|
// List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
|
|
|
// List<PetVO> petVOList = new ArrayList<>(); |
|
|
|
|
|
// for (OmsOrderService service1:service){ |
|
|
|
|
|
// //宠物标识不为空的时候查询数据 |
|
|
|
|
|
// if(service1.getPetId()!=null){ |
|
|
|
|
|
// PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
|
|
|
// service1.setPetVo(petVO); |
|
|
|
|
|
// petVOList.add(petVO); |
|
|
|
|
|
// } |
|
|
|
|
|
// } |
|
|
|
|
|
// h5OrderVO.setPetVOList(petVOList); |
|
|
|
|
|
// orderItem.setH5OrderVO(h5OrderVO); |
|
|
|
|
|
// } |
|
|
|
|
|
for (AppletOrderItem orderItem:itemList){ |
|
|
for (AppletOrderItem orderItem:itemList){ |
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(orderItem.getOrderId()); |
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(orderItem.getOrderId()); |
|
|
// 得到服务信息 |
|
|
// 得到服务信息 |
|
|
List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
|
|
|
|
|
|
// 使用一个 Set 来跟踪已经添加的 PetVO 的 id |
|
|
// 使用一个 Set 来跟踪已经添加的 PetVO 的 id |
|
|
Set<Integer> addedPetIds = new HashSet<>(); |
|
|
Set<Integer> addedPetIds = new HashSet<>(); |
|
|
List<PetVO> petVOList = new ArrayList<>(); |
|
|
List<PetVO> petVOList = new ArrayList<>(); |
|
|
|
|
|
|
|
|
for (OmsOrderService service1 : service) { |
|
|
for (OmsOrderService service1 : service) { |
|
|
// 宠物标识不为空的时候查询数据 |
|
|
// 宠物标识不为空的时候查询数据 |
|
|
if (service1.getPetId() != null) { |
|
|
if (service1.getPetId() != null) { |
|
|
PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
|
|
|
|
|
|
// 检查 petVO 的 id 是否已经添加过 |
|
|
// 检查 petVO 的 id 是否已经添加过 |
|
|
if (petVO != null && !addedPetIds.contains(petVO.getId())) { |
|
|
if (petVO != null && !addedPetIds.contains(petVO.getId())) { |
|
|
service1.setPetVo(petVO); |
|
|
service1.setPetVo(petVO); |
|
@ -206,6 +212,7 @@ public class ApiAppletOrderController extends BaseController { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
orderItem.setOrderGive(orderItem.getOrderGivePrice()); |
|
|
h5OrderVO.setPetVOList(petVOList); |
|
|
h5OrderVO.setPetVOList(petVOList); |
|
|
orderItem.setH5OrderVO(h5OrderVO); |
|
|
orderItem.setH5OrderVO(h5OrderVO); |
|
|
} |
|
|
} |
|
@ -225,12 +232,99 @@ public class ApiAppletOrderController extends BaseController { |
|
|
if(appletOrder.getId() == null){ |
|
|
if(appletOrder.getId() == null){ |
|
|
return AjaxResult.error("订单标识不能为空"); |
|
|
return AjaxResult.error("订单标识不能为空"); |
|
|
} |
|
|
} |
|
|
// if(appletOrder.getUserId() == null){ |
|
|
|
|
|
// return AjaxResult.error("用户标识不能为空"); |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
if(appletOrder.getUserId() == null){ |
|
|
|
|
|
return AjaxResult.error("用户标识不能为空"); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//根据用户标识得到用户信息 |
|
|
|
|
|
AppUsers appUsers = appUsersService.selectAppUsersByUserId(appletOrder.getUserId()); |
|
|
|
|
|
BigDecimal petPayment = new BigDecimal(0); |
|
|
|
|
|
//得到当前用户角色 |
|
|
|
|
|
if(appUsers.getUserBcs()!=0){ |
|
|
|
|
|
//根据当前等级得到当前的返点比例 |
|
|
|
|
|
AppletConfig petPaymentBcs = configService.selectAppletConfigByClassAndNum("pet_payment_bcs", appUsers.getUserBcs()); |
|
|
|
|
|
petPayment = petPaymentBcs.getParamValueNo(); |
|
|
|
|
|
} |
|
|
AppletOrder order = appletOrderService.selectAppletOrderById(appletOrder.getId()); |
|
|
AppletOrder order = appletOrderService.selectAppletOrderById(appletOrder.getId()); |
|
|
order.setH5OrderVO(h5OrderService.orderDetail(order.getOrderId())); |
|
|
|
|
|
order.setManagerOrderDetailVO(service.selectById(order.getOrderId())); |
|
|
|
|
|
|
|
|
//如果是流失订单 |
|
|
|
|
|
if (order==null){ |
|
|
|
|
|
// AppletOrderItem orderQ = new AppletOrderItem(); |
|
|
|
|
|
// orderQ.setUserId(appletOrder.getUserId()); |
|
|
|
|
|
// orderQ.setOrderId(appletOrder.getOrderId()); |
|
|
|
|
|
AppletOrderItem orderItem = appletOrderItemService.selectAppletOrderItemById(appletOrder.getId()); |
|
|
|
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(orderItem.getOrderId()); |
|
|
|
|
|
// 得到服务信息 |
|
|
|
|
|
List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
|
|
|
// 使用一个 Set 来跟踪已经添加的 PetVO 的 id |
|
|
|
|
|
Set<Integer> addedPetIds = new HashSet<>(); |
|
|
|
|
|
List<PetVO> petVOList = new ArrayList<>(); |
|
|
|
|
|
for (OmsOrderService service1 : service) { |
|
|
|
|
|
// 宠物标识不为空的时候查询数据 |
|
|
|
|
|
if (service1.getPetId() != null) { |
|
|
|
|
|
PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
|
|
|
// 检查 petVO 的 id 是否已经添加过 |
|
|
|
|
|
if (petVO != null && !addedPetIds.contains(petVO.getId())) { |
|
|
|
|
|
service1.setPetVo(petVO); |
|
|
|
|
|
petVOList.add(petVO); |
|
|
|
|
|
addedPetIds.add(petVO.getId()); // 标记该 id 已添加 |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//得到当前用户角色 |
|
|
|
|
|
if(appUsers.getUserBcs()!=0){ |
|
|
|
|
|
//保留两位小数点 |
|
|
|
|
|
BigDecimal multiply = orderItem.getPrice().multiply(petPayment).setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
|
orderItem.setOrderGive(multiply); |
|
|
|
|
|
}else{ |
|
|
|
|
|
orderItem.setOrderGive(new BigDecimal(0)); |
|
|
|
|
|
} |
|
|
|
|
|
h5OrderVO.setPetVOList(petVOList); |
|
|
|
|
|
orderItem.setH5OrderVO(h5OrderVO); |
|
|
|
|
|
// order.setManagerOrderDetailVO(service.selectById(order.getOrderId())); |
|
|
|
|
|
Map<String, Object> map = new HashMap(); |
|
|
|
|
|
map.put("order",orderItem); |
|
|
|
|
|
AppletConfig config = new AppletConfig(); |
|
|
|
|
|
config.setParamClass("pet_payment_bcs"); |
|
|
|
|
|
List<AppletConfig> appletConfigs = configService.selectAppletConfigList(config); |
|
|
|
|
|
map.put("pet_payment_bcs",appletConfigs); |
|
|
|
|
|
return AjaxResult.success("接单大厅查看详情",map); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(order.getOrderId()); |
|
|
|
|
|
// 得到服务信息 |
|
|
|
|
|
List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
|
|
|
// 使用一个 Set 来跟踪已经添加的 PetVO 的 id |
|
|
|
|
|
Set<Integer> addedPetIds = new HashSet<>(); |
|
|
|
|
|
List<PetVO> petVOList = new ArrayList<>(); |
|
|
|
|
|
for (OmsOrderService service1 : service) { |
|
|
|
|
|
// 宠物标识不为空的时候查询数据 |
|
|
|
|
|
if (service1.getPetId() != null) { |
|
|
|
|
|
PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
|
|
|
// 检查 petVO 的 id 是否已经添加过 |
|
|
|
|
|
if (petVO != null && !addedPetIds.contains(petVO.getId())) { |
|
|
|
|
|
service1.setPetVo(petVO); |
|
|
|
|
|
petVOList.add(petVO); |
|
|
|
|
|
addedPetIds.add(petVO.getId()); // 标记该 id 已添加 |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//得到当前用户角色 |
|
|
|
|
|
if(appUsers.getUserBcs()!=0){ |
|
|
|
|
|
//保留两位小数点 |
|
|
|
|
|
BigDecimal multiply = order.getPrice().multiply(petPayment).setScale(2, RoundingMode.HALF_UP); |
|
|
|
|
|
order.setOrderGive(multiply); |
|
|
|
|
|
}else{ |
|
|
|
|
|
order.setOrderGive(new BigDecimal(0)); |
|
|
|
|
|
} |
|
|
|
|
|
h5OrderVO.setPetVOList(petVOList); |
|
|
|
|
|
order.setH5OrderVO(h5OrderVO); |
|
|
|
|
|
// order.setManagerOrderDetailVO(service.selectById(order.getOrderId())); |
|
|
Map<String, Object> map = new HashMap(); |
|
|
Map<String, Object> map = new HashMap(); |
|
|
map.put("order",order); |
|
|
map.put("order",order); |
|
|
AppletConfig config = new AppletConfig(); |
|
|
AppletConfig config = new AppletConfig(); |
|
@ -289,6 +383,7 @@ public class ApiAppletOrderController extends BaseController { |
|
|
appletOrderItem.setIsPet(0); |
|
|
appletOrderItem.setIsPet(0); |
|
|
appletOrderItem.setIsDate(0); |
|
|
appletOrderItem.setIsDate(0); |
|
|
appletOrderItem.setIsAddress(0); |
|
|
appletOrderItem.setIsAddress(0); |
|
|
|
|
|
appletOrderItem.setPayTime(order.getPayTime()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
appletOrderItemService.insertAppletOrderItem(appletOrderItem); |
|
|
appletOrderItemService.insertAppletOrderItem(appletOrderItem); |
|
@ -308,7 +403,9 @@ public class ApiAppletOrderController extends BaseController { |
|
|
//得到所有的伴宠师id |
|
|
//得到所有的伴宠师id |
|
|
String appletUserId = ""; |
|
|
String appletUserId = ""; |
|
|
for (AppUsers users : appUsersList) { |
|
|
for (AppUsers users : appUsersList) { |
|
|
appletUserId += users.getUserId()+","; |
|
|
|
|
|
|
|
|
if(!appletOrder.getUserId().equals(users.getUserId())){ |
|
|
|
|
|
appletUserId += users.getUserId()+","; |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
appletOrder.setUserIdJson(appletUserId); |
|
|
appletOrder.setUserIdJson(appletUserId); |
|
|
|
|
|
|
|
@ -333,8 +430,18 @@ public class ApiAppletOrderController extends BaseController { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
AppletOrder order = appletOrderService.selectAppletOrderById(appletOrder.getId()); |
|
|
AppletOrder order = appletOrderService.selectAppletOrderById(appletOrder.getId()); |
|
|
|
|
|
if(order.getStatus() == 1){ |
|
|
|
|
|
return AjaxResult.error("该订单已被接单"); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//生成我的订单信息 |
|
|
//生成我的订单信息 |
|
|
AppletOrderItem appletOrderItem = new AppletOrderItem(); |
|
|
AppletOrderItem appletOrderItem = new AppletOrderItem(); |
|
|
|
|
|
long id = System.currentTimeMillis(); |
|
|
|
|
|
appletOrderItem.setId(id); |
|
|
appletOrderItem.setCreateTime(order.getCreateTime()); |
|
|
appletOrderItem.setCreateTime(order.getCreateTime()); |
|
|
appletOrderItem.setType(order.getType()); |
|
|
appletOrderItem.setType(order.getType()); |
|
|
appletOrderItem.setStatus(1); |
|
|
appletOrderItem.setStatus(1); |
|
@ -371,11 +478,35 @@ public class ApiAppletOrderController extends BaseController { |
|
|
|
|
|
|
|
|
appletOrderItemService.insertAppletOrderItem(appletOrderItem); |
|
|
appletOrderItemService.insertAppletOrderItem(appletOrderItem); |
|
|
|
|
|
|
|
|
|
|
|
appletOrder.setStatus(1); |
|
|
|
|
|
appletOrderService.updateAppletOrder(appletOrder); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(appletOrder.getOrderId()); |
|
|
|
|
|
//根据服务频率 服务日期 生成日订单 |
|
|
|
|
|
for (OmsOrderService service : h5OrderVO.getOrderServiceList()) { |
|
|
|
|
|
AppletOrderItemDate appletOrderItemDate = new AppletOrderItemDate(); |
|
|
|
|
|
|
|
|
|
|
|
appletOrderItemDate.setUserId(appletOrder.getUserId()); |
|
|
|
|
|
appletOrderItemDate.setOrderId(id); |
|
|
|
|
|
appletOrderItemDate.setStatus(0); |
|
|
|
|
|
appletOrderItemDate.setOrderServiceId(service.getId()); |
|
|
|
|
|
appletOrderItemDate.setServiceDate(service.getServiceDate()); |
|
|
|
|
|
appletOrderItemDate.setCityAddress(h5OrderVO.getReceiverProvince() + h5OrderVO.getReceiverCity() + h5OrderVO.getReceiverDistrict()); |
|
|
|
|
|
appletOrderItemDate.setAddress(h5OrderVO.getReceiverDetailAddress()); |
|
|
|
|
|
appletOrderItemDateService.insertAppletOrderItemDate(appletOrderItemDate); |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
appletOrder.setStatus(1); |
|
|
|
|
|
appletOrderService.updateAppletOrder(appletOrder); |
|
|
|
|
|
return AjaxResult.success("接单成功",appletOrder); |
|
|
return AjaxResult.success("接单成功",appletOrder); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
@ -385,8 +516,8 @@ public class ApiAppletOrderController extends BaseController { |
|
|
@ApiOperation("小程序-我的订单流程-总订单") |
|
|
@ApiOperation("小程序-我的订单流程-总订单") |
|
|
@GetMapping("/myList") |
|
|
@GetMapping("/myList") |
|
|
public AjaxResult myList(AppletOrderItem orderItem){ |
|
|
public AjaxResult myList(AppletOrderItem orderItem){ |
|
|
if(orderItem.getType()==null){ |
|
|
|
|
|
return AjaxResult.error("type状态不能为空"); |
|
|
|
|
|
|
|
|
if(orderItem.getOrderStatus()==null){ |
|
|
|
|
|
return AjaxResult.error("orderStatus状态不能为空"); |
|
|
} |
|
|
} |
|
|
if(orderItem.getUserId() == null){ |
|
|
if(orderItem.getUserId() == null){ |
|
|
return AjaxResult.error("userId用户信息标识不能为空"); |
|
|
return AjaxResult.error("userId用户信息标识不能为空"); |
|
@ -431,6 +562,9 @@ public class ApiAppletOrderController extends BaseController { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
h5OrderVO.setPetVOList(petVOList); |
|
|
h5OrderVO.setPetVOList(petVOList); |
|
|
item.setH5OrderVO(h5OrderVO); |
|
|
item.setH5OrderVO(h5OrderVO); |
|
|
} |
|
|
} |
|
@ -441,6 +575,106 @@ public class ApiAppletOrderController extends BaseController { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//我的订单流程 |
|
|
|
|
|
@ApiOperation("小程序-我的订单流程-日订单") |
|
|
|
|
|
@GetMapping("/myDateList") |
|
|
|
|
|
public AjaxResult myDateList(AppletOrderDateVo dateVo){ |
|
|
|
|
|
if(dateVo.getUserId() == null){ |
|
|
|
|
|
return AjaxResult.error("userId用户标识不能为空"); |
|
|
|
|
|
} |
|
|
|
|
|
if(dateVo.getStatus() == null){ |
|
|
|
|
|
return AjaxResult.error("status当前状态不能为空"); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//查询我所有的日订单数据 |
|
|
|
|
|
AppletOrderItemDate date = new AppletOrderItemDate(); |
|
|
|
|
|
date.setUserId(dateVo.getUserId()); |
|
|
|
|
|
date.setStatus(dateVo.getStatus()); |
|
|
|
|
|
List<AppletOrderItemDate> addressList = appletOrderItemDateService.selectAppletOrderItemDateList(date); |
|
|
|
|
|
|
|
|
|
|
|
Set<String> uniqueDates = new HashSet<>(); |
|
|
|
|
|
List<AppletOrderDateVoReturn> dateVoReturnList = new ArrayList<>(); |
|
|
|
|
|
|
|
|
|
|
|
for (AppletOrderItemDate date1 : addressList) { |
|
|
|
|
|
if (uniqueDates.add(date1.getServiceDate())) { |
|
|
|
|
|
AppletOrderDateVoReturn dateVoReturn = new AppletOrderDateVoReturn(); |
|
|
|
|
|
dateVoReturn.setServiceDate(date1.getServiceDate()); |
|
|
|
|
|
dateVoReturnList.add(dateVoReturn); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//得到日订单集合 |
|
|
|
|
|
for (AppletOrderDateVoReturn dateVoReturn : dateVoReturnList) { |
|
|
|
|
|
//得到日订单日期 |
|
|
|
|
|
String serviceDate = dateVoReturn.getServiceDate(); |
|
|
|
|
|
|
|
|
|
|
|
//订单下订单集合 |
|
|
|
|
|
AppletOrderItemDate service = new AppletOrderItemDate(); |
|
|
|
|
|
service.setServiceDate(serviceDate); |
|
|
|
|
|
|
|
|
|
|
|
List<AppletOrderItemDate> serviceList = appletOrderItemDateService.selectAppletOrderItemDateList(service); |
|
|
|
|
|
List<AppletOrderDateAddressReturn> uniqueOrderDetails = serviceList.stream() |
|
|
|
|
|
.collect(Collectors.toMap( |
|
|
|
|
|
AppletOrderItemDate::getOrderId, // 使用orderId作为键 |
|
|
|
|
|
item -> new AppletOrderDateAddressReturn(item.getOrderId(), item.getCityAddress(), item.getAddress()), // 创建OrderDetails对象作为值 |
|
|
|
|
|
(existing, replacement) -> existing // 如果有重复的orderId,保留现有的(可以根据需要修改合并逻辑) |
|
|
|
|
|
)) |
|
|
|
|
|
.values() |
|
|
|
|
|
.stream() |
|
|
|
|
|
.collect(Collectors.toList()); |
|
|
|
|
|
// 假设dateVoReturn有一个setOrderList方法 |
|
|
|
|
|
|
|
|
|
|
|
dateVoReturn.setOrderList(uniqueOrderDetails); |
|
|
|
|
|
dateVoReturn.setNum(uniqueOrderDetails.size()); |
|
|
|
|
|
|
|
|
|
|
|
for (AppletOrderDateAddressReturn uniqueOrderDetail : uniqueOrderDetails) { |
|
|
|
|
|
AppletOrderItemDate appletOrderItemDate = new AppletOrderItemDate(); |
|
|
|
|
|
appletOrderItemDate.setOrderId(uniqueOrderDetail.getOrderId()); |
|
|
|
|
|
appletOrderItemDate.setServiceDate(serviceDate); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<AppletOrderItemDate> appletOrderItemDates = appletOrderItemDateService.selectAppletOrderItemDateList(appletOrderItemDate); |
|
|
|
|
|
for (AppletOrderItemDate appletOrderItemDate1 : appletOrderItemDates) { |
|
|
|
|
|
// 组装item |
|
|
|
|
|
QueryWrapper<OrderItem> orderItemQw = new QueryWrapper<>(); |
|
|
|
|
|
orderItemQw.eq("order_service_id", appletOrderItemDate1.getOrderServiceId()); |
|
|
|
|
|
List<OrderItem> orderItemList = orderItemMapper.selectList(orderItemQw); |
|
|
|
|
|
appletOrderItemDate1.setOrderItemList(orderItemList); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
OmsOrderService omsOrderService = omsOrderServiceMapper.selectById(appletOrderItemDate1.getOrderServiceId()); |
|
|
|
|
|
omsOrderService.setPetVo(h5PetService.selectPetById(omsOrderService.getPetId())); |
|
|
|
|
|
appletOrderItemDate1.setOrderServiceList(omsOrderService); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
uniqueOrderDetail.setAppletOrderItemDate(appletOrderItemDates); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return AjaxResult.success("日订单数据",dateVoReturnList); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//我的订单流程 |
|
|
//我的订单流程 |
|
|
@ApiOperation("小程序-我的订单流程订单详情") |
|
|
@ApiOperation("小程序-我的订单流程订单详情") |
|
@ -489,24 +723,45 @@ public class ApiAppletOrderController extends BaseController { |
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(orderId); |
|
|
H5OrderVO h5OrderVO = h5OrderService.orderDetail(orderId); |
|
|
// 得到服务信息 |
|
|
// 得到服务信息 |
|
|
List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
List<OmsOrderService> service = h5OrderVO.getOrderServiceList(); |
|
|
List<PetVO> petVOList = new ArrayList<>(); |
|
|
|
|
|
Set<Long> addedPetIds = new HashSet<>(); // 用于跟踪已经添加的 PetVO 的 id |
|
|
|
|
|
|
|
|
// 使用一个 Set 来跟踪已经添加的 PetVO 的 id |
|
|
|
|
|
Set<Integer> addedPetIds = new HashSet<>(); |
|
|
|
|
|
List<Pet> petList = new ArrayList<>(); |
|
|
|
|
|
|
|
|
for (OmsOrderService service1 : service) { |
|
|
for (OmsOrderService service1 : service) { |
|
|
// 宠物标识不为空的时候查询数据 |
|
|
// 宠物标识不为空的时候查询数据 |
|
|
if (service1.getPetId() != null) { |
|
|
if (service1.getPetId() != null) { |
|
|
PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pet pet = petMapper.selectById(service1.getPetId()); |
|
|
// 检查 petVO 的 id 是否已经添加过 |
|
|
// 检查 petVO 的 id 是否已经添加过 |
|
|
if (petVO != null && !addedPetIds.contains(petVO.getId())) { |
|
|
|
|
|
service1.setPetVo(petVO); |
|
|
|
|
|
petVOList.add(petVO); |
|
|
|
|
|
addedPetIds.add(Long.valueOf(petVO.getId())); // 标记该 id 已添加 |
|
|
|
|
|
|
|
|
if (pet != null && !addedPetIds.contains(pet.getId())) { |
|
|
|
|
|
service1.setPets(pet); |
|
|
|
|
|
petList.add(pet); |
|
|
|
|
|
addedPetIds.add(pet.getId()); // 标记该 id 已添加 |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
return AjaxResult.success("订单里面的宠物档案里面数据",petVOList); |
|
|
|
|
|
|
|
|
// List<PetVO> pets = new ArrayList<>(); |
|
|
|
|
|
// for (OmsOrderService service1 : service) { |
|
|
|
|
|
// // 宠物标识不为空的时候查询数据 |
|
|
|
|
|
// if (service1.getPetId() != null) { |
|
|
|
|
|
// PetVO petVO = h5PetService.selectPetById(service1.getPetId()); |
|
|
|
|
|
// // 检查 petVO 的 id 是否已经添加过 |
|
|
|
|
|
// if (petVO != null && !addedPetIds.contains(petVO.getId())) { |
|
|
|
|
|
// service1.setPetVo(petVO); |
|
|
|
|
|
// pets.add(petVO); |
|
|
|
|
|
// addedPetIds.add(petVO.getId()); // 标记该 id 已添加 |
|
|
|
|
|
// } |
|
|
|
|
|
// } |
|
|
|
|
|
// |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return AjaxResult.success("订单里面的宠物档案里面数据",petList); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -531,6 +786,13 @@ public class ApiAppletOrderController extends BaseController { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//根据宠物信息查询宠物档案信息 |
|
|
|
|
|
@ApiOperation("根据宠物信息标识查询宠物档案信息列表带分页") |
|
|
|
|
|
@GetMapping("/getPetCareByPetId/{petId}") |
|
|
|
|
|
public AjaxResult petCareList(@PathVariable("petId") Integer petId) { |
|
|
|
|
|
PetCare petCare1 = petCareService.selectPetCareByPetId(petId); |
|
|
|
|
|
return AjaxResult.success("服务档案信息查询成功",petCare1); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -538,13 +800,14 @@ public class ApiAppletOrderController extends BaseController { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// //测试派单 |
|
|
|
|
|
// @ApiOperation("派单") |
|
|
|
|
|
// @GetMapping("/dispatch/{orderId}") |
|
|
|
|
|
// public AjaxResult dispatch(@PathVariable("orderId")Long orderId){ |
|
|
|
|
|
// mallOrderService.dispatch(orderId); |
|
|
|
|
|
// return AjaxResult.success("派单成功"); |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//测试派单 |
|
|
|
|
|
@ApiOperation("派单") |
|
|
|
|
|
@GetMapping("/dispatch/{orderId}") |
|
|
|
|
|
public AjaxResult dispatch(@PathVariable("orderId")Long orderId){ |
|
|
|
|
|
mallOrderService.dispatch(orderId); |
|
|
|
|
|
return AjaxResult.success("派单成功"); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|