Commit 250488b1 authored by hezhen's avatar hezhen

Merge branch 'base-modify' of http://113.105.137.151:22280/youjj/cloud-platform into base-modify

parents af9cd788 009f0f83
package com.github.wxiaoqi.security.common.vo;
import com.github.pagehelper.ISelect;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.github.wxiaoqi.security.common.util.Query;
import lombok.Data;
import java.util.List;
......@@ -34,10 +36,16 @@ public class PageDataVO<T> {
return pageDataVo;
}
public static <M> PageDataVO<M> pageInfo(Integer page, Integer limit, List<M> list){
PageHelper.startPage(page,limit);
PageInfo<M> listPageInfo = new PageInfo<M>(list);
return pageInfo(listPageInfo);
// public static <M> PageDataVO<M> pageInfo(Integer page, Integer limit, List<M> list){
// PageInfo<M> pageInfo = new PageInfo<M>(list);
// return PageDataVO.pageInfo(pageInfo);
// }
public static <M> PageDataVO<M> pageInfo(Integer page, Integer limit, ISelect select){
return PageDataVO.pageInfo(PageHelper.startPage(page, limit).doSelectPageInfo(select));
}
public static <M> PageDataVO<M> pageInfo(Query query, ISelect select){
return PageDataVO.pageInfo(PageHelper.startPage(query.getPage(), query.getLimit()).doSelectPageInfo(select));
}
}
......@@ -53,6 +53,11 @@
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.4</version>
</dependency>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>
<!-- druid -->
<dependency>
<groupId>com.github.drtrang</groupId>
......
......@@ -48,11 +48,6 @@
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>
<!-- excel 组件 -->
<dependency>
......
......@@ -5,6 +5,7 @@ import java.util.Map;
public enum OrderTypeEnum {
RentVehicle(1, "租车订单"),
TOUR(2, "旅游订单"),
;
/**
* 编码
......
......@@ -3,6 +3,7 @@ package com.xxfc.platform.order.rest;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.github.pagehelper.PageHelper;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.context.BaseContextHandler;
......@@ -69,7 +70,7 @@ public class BaseOrderController extends CommonBaseController {
}
dto.setCrtUser(Integer.valueOf(BaseContextHandler.getUserID()));
Query query = new Query(dto);
return new ObjectRestResponse<>().data(PageDataVO.pageInfo(query.getPage(), query.getLimit(), baseOrderBiz.pageByParm(query.getSuper())));
return new ObjectRestResponse<>().data(PageDataVO.pageInfo(query, () -> baseOrderBiz.pageByParm(query.getSuper())));
}
@ApiOperation("订单详情")
......@@ -81,17 +82,22 @@ public class BaseOrderController extends CommonBaseController {
if(StringUtils.isBlank(BaseContextHandler.getUserID())) {
throw new BaseException(ResultCode.AJAX_WECHAT_NOTEXIST_CODE);
}
Query query = initQuery(no);
PageDataVO<OrderPageVO> page = PageDataVO.pageInfo(query, () -> baseOrderBiz.pageByParm(query.getSuper()));
if(page.getData().isEmpty()) {
throw new BaseException(ResultCode.NOTEXIST_CODE);
}
return new ObjectRestResponse<>().data(page.getData().get(0));
}
private Query initQuery(String no) {
QueryOrderDetailDTO qodd = new QueryOrderDetailDTO();
qodd.setCrtUser(Integer.valueOf(BaseContextHandler.getUserID()));
qodd.setNo(no);
qodd.setLimit(1);
qodd.setPage(1);
Query query = new Query(qodd);
PageDataVO<OrderPageVO> page = PageDataVO.pageInfo(query.getPage(), query.getLimit(), baseOrderBiz.pageByParm(query.getSuper()));
if(page.getData().isEmpty()) {
throw new BaseException(ResultCode.NOTEXIST_CODE);
}
return new ObjectRestResponse<>().data(page.getData().get(0));
return query;
}
@RequestMapping(value = "/pay",method = RequestMethod.POST)
......
......@@ -14,6 +14,7 @@ import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum;
import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum;
import com.xxfc.platform.order.entity.OrderCostDetail;
import com.xxfc.platform.order.pojo.order.RentVehicleBO;
import com.xxfc.platform.order.pojo.order.TourBO;
import com.xxfc.platform.order.pojo.price.RentVehiclePriceVO;
import com.xxfc.platform.vehicle.entity.VehicleModel;
import com.xxfc.platform.vehicle.feign.VehicleFeign;
......@@ -26,7 +27,7 @@ import java.math.BigDecimal;
@Service
@Log4j
public class OrderTourService extends AbstractOrderHandle<OrderRentVehicleBiz, RentVehicleBO> {
public class OrderTourService extends AbstractOrderHandle<OrderRentVehicleBiz, TourBO> {
private static BigDecimal DRIVER_PRICE = new BigDecimal("600.00");
private static BigDecimal DAMAGE_SAFE = new BigDecimal("100.00"); //车损免赔
......@@ -44,40 +45,38 @@ public class OrderTourService extends AbstractOrderHandle<OrderRentVehicleBiz, R
@PostConstruct
public void init(){
this.orderTypeEnum = OrderTypeEnum.RentVehicle;
this.orderTypeEnum = OrderTypeEnum.TOUR;
}
@Override
public void initDetail(RentVehicleBO bo) {
public void initDetail(TourBO bo) {
super.initDetail(bo);
VehicleModel vehicleModel = vehicleFeign.get(bo.getModelId()).getData();
bo.setVehicleModel(vehicleModel);
//VehicleModel vehicleModel = vehicleFeign.get(bo.getModelId()).getData();
//bo.setVehicleModel(vehicleModel);
}
@Override
public void handleDetail(RentVehicleBO bo) {
//获取可用车辆
acquireVehicle(bo);
public void handleDetail(TourBO bo) {
//设置订单状态为3
bo.getOrder().setStatus(OrderStatusEnum.ORDER_UNPAY.getCode());
//设置订单图片
bo.getOrder().setPicture(bo.getVehicleModel().getPicture());
//bo.getOrder().setPicture(bo.getVehicleModel().getPicture());
//设置订单名称
bo.getOrder().setName(bo.getVehicleModel().getName());
//bo.getOrder().setName(bo.getVehicleModel().getName());
super.handleDetail(bo);
}
@Override
public void handleCalculate(RentVehicleBO bo) {
public void handleCalculate(TourBO bo) {
RentVehiclePriceVO rvpv = calculatePrice(bo);
BeanUtil.copyProperties(rvpv, bo.getOrder());
BeanUtil.copyProperties(rvpv, bo);
}
@Override
public RentVehiclePriceVO calculatePrice(RentVehicleBO detail) {
public RentVehiclePriceVO calculatePrice(TourBO detail) {
BigDecimal orderAmount = BigDecimal.ZERO;
BigDecimal goodsAmount = BigDecimal.ZERO;
BigDecimal vehicleAmount = BigDecimal.ZERO;
......@@ -85,12 +84,12 @@ public class OrderTourService extends AbstractOrderHandle<OrderRentVehicleBiz, R
//计算价格
//计算车辆费用
VehicleModel vehicleModel = vehicleFeign.get(detail.getModelId()).getData();
vehicleAmount = vehicleAmount.add(vehicleModel.getPrice().multiply(BigDecimal.valueOf(detail.getDayNum())));
if(DRIVER_TYPE_COMPANY.equals(detail.getDriverType())) {
//计算司机费用
driverAmount = driverAmount.add(DRIVER_PRICE.multiply(BigDecimal.valueOf(detail.getDayNum())));
}
// VehicleModel vehicleModel = vehicleFeign.get(detail.getModelId()).getData();
// vehicleAmount = vehicleAmount.add(vehicleModel.getPrice().multiply(BigDecimal.valueOf(detail.getDayNum())));
// if(DRIVER_TYPE_COMPANY.equals(detail.getDriverType())) {
// //计算司机费用
// driverAmount = driverAmount.add(DRIVER_PRICE.multiply(BigDecimal.valueOf(detail.getDayNum())));
// }
//商品价格
goodsAmount = goodsAmount.add(vehicleAmount).add(driverAmount);
//总价格(包含押金)
......@@ -104,9 +103,9 @@ public class OrderTourService extends AbstractOrderHandle<OrderRentVehicleBiz, R
rvp.setVehicleAmount(vehicleAmount);
rvp.setRealAmount(orderAmount);
rvp.setDeposit(DEPOSIT);
rvp.setModelAmount(vehicleModel.getPrice());
// rvp.setModelAmount(vehicleModel.getPrice());
rvp.setDriverPrice(DRIVER_PRICE);
rvp.setModelName(vehicleModel.getName());
// rvp.setModelName(vehicleModel.getName());
rvp.setDayNum(detail.getDayNum());
rvp.setVehicleNum(1);
rvp.setDriverNum(1);
......@@ -129,15 +128,4 @@ public class OrderTourService extends AbstractOrderHandle<OrderRentVehicleBiz, R
vo.setCostDetail(result);
return result;
}
private String acquireVehicle(RentVehicleBO detail) {
//根据车型、时间、距离,门店,预定车辆
// BookVehicleVO bookVehicleVO = new BookVehicleVO(){{
// setBookStartDate(detail);
// }};
// vehicleFeign.rentApplyVehicle()
String vehicleId = "0e9a88db-cb1b-48a4-b307-40f89eed906f";
detail.setVehicleId(vehicleId);
return vehicleId;
}
}
package com.xxfc.platform.tour.biz;
import com.github.pagehelper.PageHelper;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.tour.entity.TourGood;
import com.xxfc.platform.tour.mapper.TourGoodMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.xxfc.platform.tour.entity.TourGood;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import java.util.HashMap;
import java.util.Map;
......@@ -28,7 +28,6 @@ public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> {
/**
* 查询旅游路线列表
*
* @param page
* @param limit
* @param query
......@@ -38,15 +37,18 @@ public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> {
* @param distance
* @return
*/
public PageDataVO<TourGood> getGoodList(int page, int limit, String query, Double latitude, Double longitude, Integer tagId, Double distance) {
//查询参数
Map<String, Object> params = new HashMap<String, Object>();
params.put("query", query);
params.put("latitude", latitude);
params.put("longitude", longitude);
params.put("tagId", tagId);
params.put("distance", distance);
// List<TourGood> list = tourGoodMapper.getGoodList(params);
return PageDataVO.pageInfo(page, limit, mapper.getGoodList(params));
public PageDataVO<TourGood> getGoodList(int page, int limit , String query , Double latitude, Double longitude, Integer tagId, Double distance){
Map<String, Object> params = initParam(page, limit, query, latitude, longitude, tagId, distance);
return PageDataVO.pageInfo(page, limit, () -> mapper.getGoodList(params));
}
private Map<String, Object> initParam(int page, int limit, String query, Double latitude, Double longitude, Integer tagId, Double distance) {
Map<String,Object> params = new HashMap<String,Object>();
params.put("query",query);
params.put("latitude",latitude);
params.put("longitude",longitude);
params.put("tagId",tagId);
params.put("distance",distance);
return params;
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment