Commit 88da0f8a authored by 周健威's avatar 周健威 Committed by libin

添加后台帮客户下租车订单接口

parent 776673cd
package com.xxfc.platform.order.entity.inter; package com.xxfc.platform.order.entity.inter;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.xxfc.platform.order.contant.enumerate.ItemTypeEnum; import com.xxfc.platform.order.contant.enumerate.ItemTypeEnum;
import com.xxfc.platform.order.entity.BaseOrder; import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.entity.OrderItem; import com.xxfc.platform.order.entity.OrderItem;
...@@ -28,4 +29,8 @@ public interface OrderDetail extends OrderItemInter { ...@@ -28,4 +29,8 @@ public interface OrderDetail extends OrderItemInter {
void setTickerNo(List<String> tickerNo); void setTickerNo(List<String> tickerNo);
public AppUserDTO getAppUserDTO();
public void setAppUserDTO(AppUserDTO appUserDTO);
} }
...@@ -8,5 +8,5 @@ public class BgAddRentDTO extends AddRentVehicleDTO { ...@@ -8,5 +8,5 @@ public class BgAddRentDTO extends AddRentVehicleDTO {
/** /**
* 用户订单 * 用户订单
*/ */
Integer userId; Integer appUserId;
} }
...@@ -15,6 +15,7 @@ import com.xxfc.platform.order.entity.BaseOrder; ...@@ -15,6 +15,7 @@ import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.entity.OrderRentVehicleDetail; import com.xxfc.platform.order.entity.OrderRentVehicleDetail;
import com.xxfc.platform.order.pojo.order.add.AddRentVehicleDTO; import com.xxfc.platform.order.pojo.order.add.AddRentVehicleDTO;
import com.xxfc.platform.order.pojo.order.RentVehicleBO; import com.xxfc.platform.order.pojo.order.RentVehicleBO;
import com.xxfc.platform.order.pojo.order.add.BgAddRentDTO;
import com.xxfc.platform.order.pojo.price.RentVehiclePriceVO; import com.xxfc.platform.order.pojo.price.RentVehiclePriceVO;
import com.xxfc.platform.order.service.OrderRentVehicleService; import com.xxfc.platform.order.service.OrderRentVehicleService;
import com.xxfc.platform.vehicle.entity.BranchCompany; import com.xxfc.platform.vehicle.entity.BranchCompany;
...@@ -59,43 +60,8 @@ public class OrderRentVehicleController extends CommonBaseController { ...@@ -59,43 +60,8 @@ public class OrderRentVehicleController extends CommonBaseController {
@ResponseBody @ResponseBody
@ApiOperation(value = "确认租车订单") @ApiOperation(value = "确认租车订单")
public ObjectRestResponse<BaseOrder> add(@RequestBody AddRentVehicleDTO vo){ public ObjectRestResponse<BaseOrder> add(@RequestBody AddRentVehicleDTO vo){
if(null == vo.getEndCompanyId() || vo.getEndCompanyId().equals(0)) { RentVehicleBO bo = initRentVehicleBO(vo);
if(StrUtil.isBlank(vo.getEndAddr())) {
throw new BaseException(ResultCode.PARAM_ILLEGAL_CODE, Sets.newSet("公司参数不正确"));
}else {
Map<String, Object> map = BeanUtil.beanToMap(new BranchCompany(){{
setName(vo.getEndAddr());
}}, false, true);
List<BranchCompany> data = vehicleFeign.branchCompanyEntityList(map).getData();
if(null == data) {
throw new BaseException(ResultCode.PARAM_ILLEGAL_CODE, Sets.newSet("公司参数不正确"));
}else {
BranchCompany endCompany = vehicleFeign.branchCompanyEntityList(map).getData().get(0);
vo.setEndCompanyId(endCompany.getId());
}
}
}
if(vo.getStartCompanyId() != null) {
CompanyDetail companyDetail = vehicleFeign.getCompanyDetail(vo.getStartCompanyId()).getData();
if(companyDetail != null) {
vo.setStartAddr(companyDetail.detailAddr());
}
}
if(vo.getEndCompanyId() != null) {
CompanyDetail companyDetail = vehicleFeign.getCompanyDetail(vo.getEndCompanyId()).getData();
if(companyDetail != null) {
vo.setEndAddr(companyDetail.detailAddr());
}
}
RentVehicleBO bo = BeanUtil.toBean(vo, RentVehicleBO.class);
bo.setBookVehicleVO(new BookVehicleVO(){{
setBookStartDate(vo.getBookStartDate());
setBookEndDate(vo.getBookEndDate());
}});
bo.setAppUserDTO(userFeign.userDetailByToken(BaseContextHandler.getToken()).getData()); bo.setAppUserDTO(userFeign.userDetailByToken(BaseContextHandler.getToken()).getData());
bo.setTickerNo(StrUtil.isNotBlank(vo.getTickerNos())?
StrUtil.splitTrim(vo.getTickerNos(), ","):null);
bo.setAccompanyItems(vo.getAccompanyItems());
orderRentVehicleService.createOrder(bo); orderRentVehicleService.createOrder(bo);
return ObjectRestResponse.succ(bo.getOrder()); return ObjectRestResponse.succ(bo.getOrder());
} }
...@@ -103,22 +69,30 @@ public class OrderRentVehicleController extends CommonBaseController { ...@@ -103,22 +69,30 @@ public class OrderRentVehicleController extends CommonBaseController {
@RequestMapping(value = "back-stage/add",method = RequestMethod.POST) @RequestMapping(value = "back-stage/add",method = RequestMethod.POST)
@ResponseBody @ResponseBody
@ApiOperation(value = "后台人员为客户下租车订单") @ApiOperation(value = "后台人员为客户下租车订单")
public ObjectRestResponse<BaseOrder> backStagedd(@RequestBody AddRentVehicleDTO vo){ public ObjectRestResponse<BaseOrder> backStagedd(@RequestBody BgAddRentDTO dto){
RentVehicleBO bo = initRentVehicleBO(dto);
bo.setAppUserDTO(userFeign.userDetailById(dto.getAppUserId()).getData());
orderRentVehicleService.createOrder(bo);
return ObjectRestResponse.succ(bo.getOrder());
}
private RentVehicleBO initRentVehicleBO(@RequestBody AddRentVehicleDTO vo) {
if(null == vo.getEndCompanyId() || vo.getEndCompanyId().equals(0)) { if(null == vo.getEndCompanyId() || vo.getEndCompanyId().equals(0)) {
if(StrUtil.isBlank(vo.getEndAddr())) { if(StrUtil.isBlank(vo.getEndAddr())) {
throw new BaseException(ResultCode.PARAM_ILLEGAL_CODE, Sets.newSet("公司参数不正确")); throw new BaseException(ResultCode.PARAM_ILLEGAL_CODE, Sets.newSet("公司参数不正确"));
}else { }else {
Map<String, Object> map = BeanUtil.beanToMap(new BranchCompany(){{ Map<String, Object> map = BeanUtil.beanToMap(new BranchCompany(){{
setName(vo.getEndAddr()); setName(vo.getEndAddr());
}}, false, true); }}, false, true);
List<BranchCompany> data = vehicleFeign.branchCompanyEntityList(map).getData(); List<BranchCompany> data = vehicleFeign.branchCompanyEntityList(map).getData();
if(null == data) { if(null == data) {
throw new BaseException(ResultCode.PARAM_ILLEGAL_CODE, Sets.newSet("公司参数不正确")); throw new BaseException(ResultCode.PARAM_ILLEGAL_CODE, Sets.newSet("公司参数不正确"));
}else { }else {
BranchCompany endCompany = vehicleFeign.branchCompanyEntityList(map).getData().get(0); BranchCompany endCompany = vehicleFeign.branchCompanyEntityList(map).getData().get(0);
vo.setEndCompanyId(endCompany.getId()); vo.setEndCompanyId(endCompany.getId());
} }
} }
} }
if(vo.getStartCompanyId() != null) { if(vo.getStartCompanyId() != null) {
CompanyDetail companyDetail = vehicleFeign.getCompanyDetail(vo.getStartCompanyId()).getData(); CompanyDetail companyDetail = vehicleFeign.getCompanyDetail(vo.getStartCompanyId()).getData();
...@@ -137,12 +111,10 @@ public class OrderRentVehicleController extends CommonBaseController { ...@@ -137,12 +111,10 @@ public class OrderRentVehicleController extends CommonBaseController {
setBookStartDate(vo.getBookStartDate()); setBookStartDate(vo.getBookStartDate());
setBookEndDate(vo.getBookEndDate()); setBookEndDate(vo.getBookEndDate());
}}); }});
bo.setAppUserDTO(userFeign.userDetailByToken(BaseContextHandler.getToken()).getData());
bo.setTickerNo(StrUtil.isNotBlank(vo.getTickerNos())? bo.setTickerNo(StrUtil.isNotBlank(vo.getTickerNos())?
StrUtil.splitTrim(vo.getTickerNos(), ","):null); StrUtil.splitTrim(vo.getTickerNos(), ","):null);
bo.setAccompanyItems(vo.getAccompanyItems()); bo.setAccompanyItems(vo.getAccompanyItems());
orderRentVehicleService.createOrder(bo); return bo;
return ObjectRestResponse.succ(bo.getOrder());
} }
@RequestMapping(value = "list-by-order/{orderId}",method = RequestMethod.GET) @RequestMapping(value = "list-by-order/{orderId}",method = RequestMethod.GET)
......
...@@ -64,7 +64,7 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or ...@@ -64,7 +64,7 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or
* 创建基础订单 * 创建基础订单
* @return * @return
*/ */
public BaseOrder createBaseOrder(Integer orderOrigin) { public BaseOrder createBaseOrder(Integer orderOrigin, Integer appUserId) {
BaseOrder baseOrder = new BaseOrder(); BaseOrder baseOrder = new BaseOrder();
//设置下单来源 //设置下单来源
...@@ -85,13 +85,14 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or ...@@ -85,13 +85,14 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or
baseOrder.setVersion(VERSION_INITIAL); baseOrder.setVersion(VERSION_INITIAL);
//设置用户id //设置用户id
baseOrder.setUserId(Integer.valueOf(BaseContextHandler.getUserID())); baseOrder.setUserId(appUserId);
baseOrder.setMemberLevel(getAppUser().getMemberLevel()); baseOrder.setMemberLevel(getAppUser().getMemberLevel());
return baseOrder; return baseOrder;
} }
public void initDetail(Detail detail) { public void initDetail(Detail detail) {
BaseOrder order = createBaseOrder(detail.getOrderOrigin()); Integer appUserId = (null == detail.getAppUserDTO())? Integer.valueOf(BaseContextHandler.getUserID()): detail.getAppUserDTO().getId();
BaseOrder order = createBaseOrder(detail.getOrderOrigin(), appUserId);
detail.setOrder(order); detail.setOrder(order);
} }
......
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