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