Commit a42c5ac7 authored by hezhen's avatar hezhen

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

parents 956b9137 c71b8cc2
...@@ -17,6 +17,7 @@ import io.swagger.annotations.ApiOperation; ...@@ -17,6 +17,7 @@ import io.swagger.annotations.ApiOperation;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
...@@ -71,15 +72,17 @@ public class UserMemberAdminController { ...@@ -71,15 +72,17 @@ public class UserMemberAdminController {
@ApiOperation("会员excel模板下载") @ApiOperation("会员excel模板下载")
@GetMapping("/app/unauth/user/excel_model/dowload") @GetMapping(value = "/app/unauth/user/excel_model/dowload",produces = "application/vnd.ms-excel")
public ResponseEntity<byte[]> dowloadUserMemberExcelModel(HttpServletResponse response){ public ResponseEntity<byte[]> dowloadUserMemberExcelModel(HttpServletResponse response){
// 重置response // 重置response
response.reset(); response.reset();
response.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8");
response.setContentType("multipart/form-data"); // response.setContentType("application/vnd.ms-excel");
response.addHeader("Content-Disposition", "attachment;filename=usermember.xlsx"); response.addHeader("Content-Disposition", "attachment;filename=usermember.xlsx");
InputStream inputStream = AdminBootstrap.class.getClassLoader().getResourceAsStream("file/usermember.xlsx"); InputStream inputStream = AdminBootstrap.class.getClassLoader().getResourceAsStream("file/usermember.xlsx");
try { try {
response.setContentLength(inputStream.available());
byte[] bytes = IOUtils.toByteArray(inputStream); byte[] bytes = IOUtils.toByteArray(inputStream);
return ResponseEntity.ok(bytes); return ResponseEntity.ok(bytes);
} catch (IOException e) { } catch (IOException e) {
......
...@@ -6,6 +6,7 @@ import java.util.Map; ...@@ -6,6 +6,7 @@ import java.util.Map;
public enum CrosstownTypeEnum { public enum CrosstownTypeEnum {
DEPARTURE(1, "交车"), DEPARTURE(1, "交车"),
ARRIVE(2, "还车"), ARRIVE(2, "还车"),
FIXED_LOSS(3, "定损"),
; ;
/** /**
* 编码 * 编码
......
...@@ -11,6 +11,7 @@ public enum OrderStatusEnum { ...@@ -11,6 +11,7 @@ public enum OrderStatusEnum {
ORDER_TOSTART(4, "待进行(待出行/租车已支付)"), ORDER_TOSTART(4, "待进行(待出行/租车已支付)"),
ORDER_WAIT(5, "出行中(进行中)"), ORDER_WAIT(5, "出行中(进行中)"),
ORDER_FINISH(6, "已完成"), ORDER_FINISH(6, "已完成"),
ORDER_FIXED_LOSS(-1, "定损"),
; ;
/** /**
* 编码 * 编码
......
...@@ -242,4 +242,11 @@ public class BaseOrder implements Serializable { ...@@ -242,4 +242,11 @@ public class BaseOrder implements Serializable {
@ApiModelProperty(value = "使用的优惠券票号,逗号分割") @ApiModelProperty(value = "使用的优惠券票号,逗号分割")
@Column(name = "coupon_ticker_nos") @Column(name = "coupon_ticker_nos")
private String couponTickerNos; private String couponTickerNos;
/**
* 下单时的会员等级
*/
@ApiModelProperty(value = "下单时的会员等级")
@Column(name = "member_level")
private Integer memberLevel;
} }
...@@ -7,6 +7,7 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz; ...@@ -7,6 +7,7 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.activity.user.UserInfoBiz; import com.xxfc.platform.activity.user.UserInfoBiz;
import com.xxfc.platform.order.contant.enumerate.CrosstownTypeEnum; import com.xxfc.platform.order.contant.enumerate.CrosstownTypeEnum;
import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum;
import com.xxfc.platform.order.entity.BaseOrder; 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.entity.OrderUserLicense; import com.xxfc.platform.order.entity.OrderUserLicense;
...@@ -91,6 +92,7 @@ public class OrderVehicalCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp ...@@ -91,6 +92,7 @@ public class OrderVehicalCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
return ObjectRestResponse.createFailedResult(500,"订单不存在!"); return ObjectRestResponse.createFailedResult(500,"订单不存在!");
} }
OrderRentVehicleDetail orderRentVehicleDetail = orderRentVehicleBiz.selectById(baseOrder.getDetailId()); OrderRentVehicleDetail orderRentVehicleDetail = orderRentVehicleBiz.selectById(baseOrder.getDetailId());
//调用车辆管理的出车还车
//出车 //出车
if(orderVehicleCrosstownDto.getType() == CrosstownTypeEnum.DEPARTURE.getCode()) { //交车 if(orderVehicleCrosstownDto.getType() == CrosstownTypeEnum.DEPARTURE.getCode()) { //交车
VehicleDepartureVo vehicleDepartureVo = new VehicleDepartureVo(); VehicleDepartureVo vehicleDepartureVo = new VehicleDepartureVo();
...@@ -121,7 +123,7 @@ public class OrderVehicalCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp ...@@ -121,7 +123,7 @@ public class OrderVehicalCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
} else if(oldValue .size() <= 0) { } else if(oldValue .size() <= 0) {
getOrderLicense(orderVehicleCrosstownDto); getOrderLicense(orderVehicleCrosstownDto);
orderVehicalCrosstownBiz.insertSelective(orderVehicleCrosstownDto); orderVehicalCrosstownBiz.insertSelective(orderVehicleCrosstownDto);
handleOrderStatus(baseOrder, orderRentVehicleDetail); handleOrderStatus(baseOrder, orderRentVehicleDetail, orderVehicleCrosstownDto.getType());
RestResponse<Vehicle> restResponse = vehicleFeign.findById(orderRentVehicleDetail.getVehicleId()); RestResponse<Vehicle> restResponse = vehicleFeign.findById(orderRentVehicleDetail.getVehicleId());
if(restResponse.getData() != null) { if(restResponse.getData() != null) {
orderVehicleCrosstownDto.setVehicleNumberPlat(restResponse.getData().getNumberPlate()); orderVehicleCrosstownDto.setVehicleNumberPlat(restResponse.getData().getNumberPlate());
...@@ -131,14 +133,23 @@ public class OrderVehicalCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp ...@@ -131,14 +133,23 @@ public class OrderVehicalCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
return ObjectRestResponse.createDefaultFail(); return ObjectRestResponse.createDefaultFail();
} }
private void handleOrderStatus(BaseOrder baseOrder, OrderRentVehicleDetail orderRentVehicleDetail) { private void handleOrderStatus(BaseOrder baseOrder, OrderRentVehicleDetail orderRentVehicleDetail, Integer type) {
//交车完成 设置订单状态为出行中 //交车完成 设置订单状态为出行中
if (baseOrder.getStatus() == 4) { if (baseOrder.getStatus() == OrderStatusEnum.ORDER_TOSTART.getCode()) {//交车
//判断是否是今日交车 //判断是否是今日交车
baseOrder.setStatus(5); baseOrder.setStatus(OrderStatusEnum.ORDER_WAIT.getCode());
baseOrderBiz.updateSelectiveById(baseOrder); baseOrderBiz.updateSelectiveById(baseOrder);
} else if (baseOrder.getStatus() == 5) { } else if (baseOrder.getStatus() == OrderStatusEnum.ORDER_WAIT.getCode()) { //还车
baseOrder.setStatus(6); if(type == CrosstownTypeEnum.ARRIVE.getCode()) {//不定损直接还车
baseOrder.setStatus(OrderStatusEnum.ORDER_FINISH.getCode());
baseOrderBiz.updateSelectiveById(baseOrder);
baseOrderBiz.sendOrderMq(orderRentVehicleDetail, null, null, baseOrder, OrderMQDTO.ORDER_FINISH);
} else if(type == CrosstownTypeEnum.FIXED_LOSS.getCode()){ //定损还车
baseOrder.setStatus(OrderStatusEnum.ORDER_FIXED_LOSS.getCode());
baseOrderBiz.updateSelectiveById(baseOrder);
}
} else if (baseOrder.getStatus() == OrderStatusEnum.ORDER_FIXED_LOSS.getCode()) {//定损后还车
baseOrder.setStatus(OrderStatusEnum.ORDER_FINISH.getCode());
baseOrderBiz.updateSelectiveById(baseOrder); baseOrderBiz.updateSelectiveById(baseOrder);
baseOrderBiz.sendOrderMq(orderRentVehicleDetail, null, null, baseOrder, OrderMQDTO.ORDER_FINISH); baseOrderBiz.sendOrderMq(orderRentVehicleDetail, null, null, baseOrder, OrderMQDTO.ORDER_FINISH);
} }
......
...@@ -55,10 +55,7 @@ import org.springframework.web.context.request.ServletRequestAttributes; ...@@ -55,10 +55,7 @@ import org.springframework.web.context.request.ServletRequestAttributes;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.xxfc.platform.universal.constant.DictionaryKey.APP_ORDER; import static com.xxfc.platform.universal.constant.DictionaryKey.APP_ORDER;
...@@ -123,8 +120,8 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -123,8 +120,8 @@ public class BaseOrderController extends CommonBaseController implements UserRes
@IgnoreUserToken @IgnoreUserToken
public ObjectRestResponse<OrderAboutParamDTO> getOrderUnitPrice() { public ObjectRestResponse<OrderAboutParamDTO> getOrderUnitPrice() {
Map<String, Dictionary> dictionaryMap = thirdFeign.dictionaryGetAll4Map().getData(); Map<String, Dictionary> dictionaryMap = thirdFeign.dictionaryGetAll4Map().getData();
return ObjectRestResponse.succ(new OrderAboutParamDTO(){{ return ObjectRestResponse.succ(new OrderAboutParamDTO() {{
setInsurePrice(new BigDecimal(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.INSURE_PRICE).getDetail())); setInsurePrice(new BigDecimal(dictionaryMap.get(APP_ORDER + "_" + DictionaryKey.INSURE_PRICE).getDetail()));
}}); }});
} }
...@@ -135,13 +132,13 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -135,13 +132,13 @@ public class BaseOrderController extends CommonBaseController implements UserRes
@IgnoreUserToken @IgnoreUserToken
public ObjectRestResponse<OrderAboutParamDTO> getOrderParam() { public ObjectRestResponse<OrderAboutParamDTO> getOrderParam() {
Map<String, Dictionary> dictionaryMap = thirdFeign.dictionaryGetAll4Map().getData(); Map<String, Dictionary> dictionaryMap = thirdFeign.dictionaryGetAll4Map().getData();
return ObjectRestResponse.succ(new OrderAboutParamDTO(){{ return ObjectRestResponse.succ(new OrderAboutParamDTO() {{
setInsurePrice(new BigDecimal(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.INSURE_PRICE).getDetail())); setInsurePrice(new BigDecimal(dictionaryMap.get(APP_ORDER + "_" + DictionaryKey.INSURE_PRICE).getDetail()));
setActRent(new Long(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.ACT_RENT).getDetail())); setActRent(new Long(dictionaryMap.get(APP_ORDER + "_" + DictionaryKey.ACT_RENT).getDetail()));
setActTour(new Long(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.ACT_TOUR).getDetail())); setActTour(new Long(dictionaryMap.get(APP_ORDER + "_" + DictionaryKey.ACT_TOUR).getDetail()));
setActMember(new Long(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.ACT_MEMBER).getDetail())); setActMember(new Long(dictionaryMap.get(APP_ORDER + "_" + DictionaryKey.ACT_MEMBER).getDetail()));
setDamageSafe(new BigDecimal(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.DAMAGE_SAFE).getDetail())); setDamageSafe(new BigDecimal(dictionaryMap.get(APP_ORDER + "_" + DictionaryKey.DAMAGE_SAFE).getDetail()));
setDriverPrice(new BigDecimal(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.DRIVER_PRICE).getDetail())); setDriverPrice(new BigDecimal(dictionaryMap.get(APP_ORDER + "_" + DictionaryKey.DRIVER_PRICE).getDetail()));
}}); }});
} }
...@@ -173,14 +170,14 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -173,14 +170,14 @@ public class BaseOrderController extends CommonBaseController implements UserRes
dto.setEndTime(new Date().getTime()); dto.setEndTime(new Date().getTime());
} }
} }
if(StringUtils.isNotBlank(dto.getPhone())) { if (StringUtils.isNotBlank(dto.getPhone())) {
AppUserLogin appUserLogin = userFeign.one(dto.getPhone()); AppUserLogin appUserLogin = userFeign.one(dto.getPhone());
if(appUserLogin != null) { if (appUserLogin != null) {
dto.setUserId(appUserLogin.getId()); dto.setUserId(appUserLogin.getId());
} }
} }
UserDTO userDTO = getAdminUserInfo(); UserDTO userDTO = getAdminUserInfo();
if(userDTO == null) { if (userDTO == null) {
return ObjectRestResponse.succ(new PageDataVO<>()); return ObjectRestResponse.succ(new PageDataVO<>());
} }
List<BranchCompany> branchCompanies = vehicleFeign.companyAll(userDTO.getDataAll(), userDTO.getDataCompany(), userDTO.getDataZone()); List<BranchCompany> branchCompanies = vehicleFeign.companyAll(userDTO.getDataAll(), userDTO.getDataCompany(), userDTO.getDataZone());
...@@ -190,10 +187,10 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -190,10 +187,10 @@ public class BaseOrderController extends CommonBaseController implements UserRes
PageDataVO pageDataVO = PageDataVO.pageInfo(query, () -> baseOrderBiz.listOrder(query.getSuper())); PageDataVO pageDataVO = PageDataVO.pageInfo(query, () -> baseOrderBiz.listOrder(query.getSuper()));
List<OrderListVo> list = pageDataVO.getData(); List<OrderListVo> list = pageDataVO.getData();
List<Integer> userIds = list.stream().map(OrderListVo::getUserId).distinct().collect(Collectors.toList()); List<Integer> userIds = list.stream().map(OrderListVo::getUserId).distinct().collect(Collectors.toList());
if(userIds != null && userIds.size() >0) { if (userIds != null && userIds.size() > 0) {
ObjectRestResponse<List<AppUserVo>> objectRestResponse = userFeign.getByUserIds(userIds); ObjectRestResponse<List<AppUserVo>> objectRestResponse = userFeign.getByUserIds(userIds);
log.info("获取用户信息:objectRestResponse = {}", objectRestResponse.getData()); log.info("获取用户信息:objectRestResponse = {}", objectRestResponse.getData());
Map<String, AppUserVo> appUserVoMap = objectRestResponse.getData() == null? new HashMap<String, AppUserVo>() Map<String, AppUserVo> appUserVoMap = objectRestResponse.getData() == null ? new HashMap<String, AppUserVo>()
: objectRestResponse.getData().parallelStream().collect(Collectors.toMap(v -> v.getUserid().toString(), v -> v)); : objectRestResponse.getData().parallelStream().collect(Collectors.toMap(v -> v.getUserid().toString(), v -> v));
for (OrderListVo orderPageVO : list) { for (OrderListVo orderPageVO : list) {
...@@ -208,10 +205,10 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -208,10 +205,10 @@ public class BaseOrderController extends CommonBaseController implements UserRes
if (restResponse.getData() != null) { if (restResponse.getData() != null) {
orderPageVO.setVehicleNumberPlat(restResponse.getData().getNumberPlate()); orderPageVO.setVehicleNumberPlat(restResponse.getData().getNumberPlate());
} }
if(StringUtils.isNotBlank(orderPageVO.getOrderRentVehicleDetail().getMyDriverIds())) { if (StringUtils.isNotBlank(orderPageVO.getOrderRentVehicleDetail().getMyDriverIds())) {
List<OrderUserLicense> orderUserLicenses = orderUserLicenseBiz.selectByIds(orderPageVO.getOrderRentVehicleDetail().getMyDriverIds()).getData(); List<OrderUserLicense> orderUserLicenses = orderUserLicenseBiz.selectByIds(orderPageVO.getOrderRentVehicleDetail().getMyDriverIds()).getData();
if(orderUserLicenses != null && orderUserLicenses.size() > 0) { if (orderUserLicenses != null && orderUserLicenses.size() > 0) {
OrderVehicleCrosstownDto orderVehicleCrosstownDto = new OrderVehicleCrosstownDto(); OrderVehicleCrosstownDto orderVehicleCrosstownDto = new OrderVehicleCrosstownDto();
orderVehicleCrosstownDto.setLicenseIdCard(orderUserLicenses.get(0).getLicenseIdCard()); orderVehicleCrosstownDto.setLicenseIdCard(orderUserLicenses.get(0).getLicenseIdCard());
orderVehicleCrosstownDto.setLicenseImg(orderUserLicenses.get(0).getLicenseImg()); orderVehicleCrosstownDto.setLicenseImg(orderUserLicenses.get(0).getLicenseImg());
...@@ -222,23 +219,28 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -222,23 +219,28 @@ public class BaseOrderController extends CommonBaseController implements UserRes
} }
} }
if(orderPageVO.getOrderRentVehicleDetail() != null && orderPageVO.getOrderRentVehicleDetail().getStartCompanyId()!= null && orderPageVO.getOrderRentVehicleDetail().getEndCompanyId() != null) { if (orderPageVO.getOrderRentVehicleDetail() != null && orderPageVO.getOrderRentVehicleDetail().getStartCompanyId() != null && orderPageVO.getOrderRentVehicleDetail().getEndCompanyId() != null) {
ObjectRestResponse<CompanyDetail> startResponse = vehicleFeign.getCompanyDetail(orderPageVO.getOrderRentVehicleDetail().getStartCompanyId()); ObjectRestResponse<CompanyDetail> startResponse = vehicleFeign.getCompanyDetail(orderPageVO.getOrderRentVehicleDetail().getStartCompanyId());
if(startResponse.getData() != null) { if (startResponse.getData() != null) {
orderPageVO.setStartCompanyName(startResponse.getData().getName()); orderPageVO.setStartCompanyName(startResponse.getData().getName());
} }
ObjectRestResponse<CompanyDetail> restResponse = vehicleFeign.getCompanyDetail(orderPageVO.getOrderRentVehicleDetail().getEndCompanyId()); ObjectRestResponse<CompanyDetail> restResponse = vehicleFeign.getCompanyDetail(orderPageVO.getOrderRentVehicleDetail().getEndCompanyId());
if(restResponse.getData() != null) { if (restResponse.getData() != null) {
orderPageVO.setEndCompanyName(restResponse.getData().getName()); orderPageVO.setEndCompanyName(restResponse.getData().getName());
} }
} }
//旅游
if(orderPageVO.getOrderTourDetail() != null && orderPageVO.getOrderTourDetail().getStartCompanyId()!= null) { if (orderPageVO.getOrderTourDetail() != null && orderPageVO.getOrderTourDetail().getStartCompanyId() != null) {
ObjectRestResponse<CompanyDetail> startResponse = vehicleFeign.getCompanyDetail(orderPageVO.getOrderTourDetail().getStartCompanyId()); ObjectRestResponse<CompanyDetail> startResponse = vehicleFeign.getCompanyDetail(orderPageVO.getOrderTourDetail().getStartCompanyId());
if(startResponse.getData() != null) { if (startResponse.getData() != null) {
orderPageVO.setStartCompanyName(startResponse.getData().getName()); orderPageVO.setStartCompanyName(startResponse.getData().getName());
} }
List<Integer> tourUserIds = Arrays.asList(orderPageVO.getOrderTourDetail().getTourUserIds().split(",")).parallelStream().map(s -> Integer.valueOf(s)).collect(Collectors.toList());
ObjectRestResponse<List<AppUserVo>> users = userFeign.getByUserIds(tourUserIds);
if (users.getData() != null) {
orderPageVO.getOrderTourDetail().setUserVoList(users.getData() == null? users.getData() : null);
}
} }
...@@ -261,7 +263,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -261,7 +263,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes
} }
Query query = new Query(dto); Query query = new Query(dto);
PageDataVO<OrderPageVO> pageDataVO = PageDataVO.pageInfo(query, () -> baseOrderBiz.getRentVehicle(query.getSuper())); PageDataVO<OrderPageVO> pageDataVO = PageDataVO.pageInfo(query, () -> baseOrderBiz.getRentVehicle(query.getSuper()));
for(OrderPageVO orderPageVO : pageDataVO.getData()) { for (OrderPageVO orderPageVO : pageDataVO.getData()) {
if (orderPageVO.getOrderRentVehicleDetail() != null && orderPageVO.getOrderRentVehicleDetail().getVehicleId() != null) { if (orderPageVO.getOrderRentVehicleDetail() != null && orderPageVO.getOrderRentVehicleDetail().getVehicleId() != null) {
ObjectRestResponse<Vehicle> restResponse = vehicleFeign.get(orderPageVO.getOrderRentVehicleDetail().getVehicleId()); ObjectRestResponse<Vehicle> restResponse = vehicleFeign.get(orderPageVO.getOrderRentVehicleDetail().getVehicleId());
log.info("获取车辆信息返回消息:{}", restResponse.getMessage()); log.info("获取车辆信息返回消息:{}", restResponse.getMessage());
...@@ -295,7 +297,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -295,7 +297,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes
@IgnoreClientToken @IgnoreClientToken
@ResponseBody @ResponseBody
public ObjectRestResponse<OrderPageVO> get(@PathVariable String no) { public ObjectRestResponse<OrderPageVO> get(@PathVariable String no) {
log.info("no:"+ no + ",时间戳:"+ System.currentTimeMillis()); log.info("no:" + no + ",时间戳:" + System.currentTimeMillis());
checkAppUser(); checkAppUser();
//查询列表数据 //查询列表数据
...@@ -304,7 +306,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -304,7 +306,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes
if (page.getData().isEmpty()) { if (page.getData().isEmpty()) {
throw new BaseException(ResultCode.NOTEXIST_CODE); throw new BaseException(ResultCode.NOTEXIST_CODE);
} }
log.info("no:"+ no + ",时间戳:"+ System.currentTimeMillis()); log.info("no:" + no + ",时间戳:" + System.currentTimeMillis());
return new ObjectRestResponse<>().data(page.getData().get(0)); return new ObjectRestResponse<>().data(page.getData().get(0));
} }
...@@ -313,7 +315,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -313,7 +315,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes
@IgnoreClientToken @IgnoreClientToken
@ResponseBody @ResponseBody
public ObjectRestResponse<OrderPageVO> getOrderDetail(String orderNo) { public ObjectRestResponse<OrderPageVO> getOrderDetail(String orderNo) {
if(StringUtils.isBlank(orderNo)) { if (StringUtils.isBlank(orderNo)) {
return ObjectRestResponse.paramIsEmpty(); return ObjectRestResponse.paramIsEmpty();
} }
return baseOrderBiz.getOrderDetail(orderNo); return baseOrderBiz.getOrderDetail(orderNo);
...@@ -421,7 +423,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -421,7 +423,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes
//判断是否成功,并且订单是未支付状态,则添加支付编号和修改状态 //判断是否成功,并且订单是未支付状态,则添加支付编号和修改状态
if (StrUtil.isNotBlank(dto.getOrderNo())) { if (StrUtil.isNotBlank(dto.getOrderNo())) {
baseOrderBiz.payNotifyHandle(dto.getOrderNo(), dto.getTradeNo(), dto.getType()); baseOrderBiz.payNotifyHandle(dto.getOrderNo(), dto.getTradeNo(), dto.getType());
}else{ } else {
log.error(" exception notifyUrl : " + JSONUtil.toJsonStr(dto)); log.error(" exception notifyUrl : " + JSONUtil.toJsonStr(dto));
} }
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
...@@ -436,9 +438,10 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -436,9 +438,10 @@ public class BaseOrderController extends CommonBaseController implements UserRes
rabbitProduct.sendDelayMessage(baseOrderBiz.selectById(93), 1000L * 60); rabbitProduct.sendDelayMessage(baseOrderBiz.selectById(93), 1000L * 60);
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
} }
public UserDTO getAdminUserInfo() { public UserDTO getAdminUserInfo() {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
if(request.getHeader("Authorization") !=null) { if (request.getHeader("Authorization") != null) {
return userFeign.userinfoByToken(request.getHeader("Authorization")).getData(); return userFeign.userinfoByToken(request.getHeader("Authorization")).getData();
} }
return null; return null;
......
package com.xxfc.platform.order.service; package com.xxfc.platform.order.service;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.context.BaseContextHandler; import com.github.wxiaoqi.security.common.context.BaseContextHandler;
import com.github.wxiaoqi.security.common.exception.BaseException; import com.github.wxiaoqi.security.common.exception.BaseException;
...@@ -25,7 +27,7 @@ import java.util.Map; ...@@ -25,7 +27,7 @@ import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Transactional @Transactional
public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends OrderDetail>{ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends OrderDetail> implements UserRestInterface {
public static final int VERSION_INITIAL = 0; public static final int VERSION_INITIAL = 0;
...@@ -46,6 +48,14 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or ...@@ -46,6 +48,14 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or
@Autowired @Autowired
ActivityFeign activityFeign; ActivityFeign activityFeign;
@Autowired
protected UserFeign userFeign;
@Override
public UserFeign getUserFeign() {
return userFeign;
}
protected OrderTypeEnum orderTypeEnum; protected OrderTypeEnum orderTypeEnum;
protected Integer channel; protected Integer channel;
...@@ -76,6 +86,7 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or ...@@ -76,6 +86,7 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or
//设置用户id //设置用户id
baseOrder.setUserId(Integer.valueOf(BaseContextHandler.getUserID())); baseOrder.setUserId(Integer.valueOf(BaseContextHandler.getUserID()));
baseOrder.setMemberLevel(getAppUser().getMemberLevel());
return baseOrder; return baseOrder;
} }
......
...@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil; ...@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel; import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig; import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.github.wxiaoqi.security.common.context.BaseContextHandler; import com.github.wxiaoqi.security.common.context.BaseContextHandler;
import com.github.wxiaoqi.security.common.exception.BaseException; import com.github.wxiaoqi.security.common.exception.BaseException;
...@@ -39,7 +40,7 @@ import static com.xxfc.platform.universal.constant.DictionaryKey.APP_ORDER; ...@@ -39,7 +40,7 @@ import static com.xxfc.platform.universal.constant.DictionaryKey.APP_ORDER;
@Service @Service
@Log4j @Log4j
public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz, MemberBO> { public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz, MemberBO> implements UserRestInterface {
@Autowired @Autowired
TourFeign tourFeign; TourFeign tourFeign;
...@@ -65,9 +66,6 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz ...@@ -65,9 +66,6 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
@Autowired @Autowired
protected UserAuthConfig userAuthConfig; protected UserAuthConfig userAuthConfig;
@Autowired
UserFeign userFeign;
@Autowired @Autowired
ActivityFeign activityFeign; ActivityFeign activityFeign;
...@@ -79,10 +77,6 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz ...@@ -79,10 +77,6 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
this.orderTypeEnum = OrderTypeEnum.MEMBER; this.orderTypeEnum = OrderTypeEnum.MEMBER;
} }
public AppUserDTO getUserInfo(){
return userFeign.userDetailByToken(userAuthConfig.getToken(request)).getData();
}
@Override @Override
public void initDetail(MemberBO bo) { public void initDetail(MemberBO bo) {
super.initDetail(bo); super.initDetail(bo);
......
...@@ -33,6 +33,7 @@ import com.xxfc.platform.vehicle.entity.VehicleModel; ...@@ -33,6 +33,7 @@ import com.xxfc.platform.vehicle.entity.VehicleModel;
import com.xxfc.platform.vehicle.feign.VehicleFeign; import com.xxfc.platform.vehicle.feign.VehicleFeign;
import com.xxfc.platform.vehicle.pojo.CompanyDetail; import com.xxfc.platform.vehicle.pojo.CompanyDetail;
import com.xxfc.platform.vehicle.pojo.RentVehicleBookDTO; import com.xxfc.platform.vehicle.pojo.RentVehicleBookDTO;
import lombok.Data;
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;
...@@ -72,9 +73,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -72,9 +73,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
@Autowired @Autowired
OrderTemplateBiz orderTemplateBiz; OrderTemplateBiz orderTemplateBiz;
@Autowired
UserFeign userFeign;
@Autowired @Autowired
ThirdFeign thirdFeign; ThirdFeign thirdFeign;
...@@ -136,8 +134,12 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -136,8 +134,12 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
//设置订单名称 //设置订单名称
bo.getOrder().setName(bo.getVehicleModel().getName()); bo.getOrder().setName(bo.getVehicleModel().getName());
//是否有使用会员权益 则调用接口触发新增消费记录次数
//扣减免费天数 //扣减免费天数
if(null != bo.getFreeDays() && bo.getFreeDays() > 0) { if(SYS_TRUE.equals(bo.getOrder().getHasMemberRight())) {
if(null == bo.getFreeDays()) {
bo.setFreeDays(0);
}
int result = userFeign.memberDays(bo.getAppUserDTO().getUserid(), bo.getFreeDays(), UserFeign.MEMBER_DAYS_LOCK); int result = userFeign.memberDays(bo.getAppUserDTO().getUserid(), bo.getFreeDays(), UserFeign.MEMBER_DAYS_LOCK);
if(result < 0) { if(result < 0) {
throw new BaseException(ResultCode.FAILED_CODE); throw new BaseException(ResultCode.FAILED_CODE);
...@@ -224,21 +226,23 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -224,21 +226,23 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
String[] prices = StrUtil.isBlank(vehicleModel.getRentDiscountPrice()) String[] prices = StrUtil.isBlank(vehicleModel.getRentDiscountPrice())
?new String[]{vehicleModel.getPrice().toString(),vehicleModel.getPrice().toString(),vehicleModel.getPrice().toString()} ?new String[]{vehicleModel.getPrice().toString(),vehicleModel.getPrice().toString(),vehicleModel.getPrice().toString()}
:vehicleModel.getRentDiscountPrice().split(","); :vehicleModel.getRentDiscountPrice().split(",");
switch (MemberEnum.getByCode(detail.getAppUserDTO().getMemberLevel())) { HandleDiscountDTO handleDiscountDTO = new HandleDiscountDTO();
switch (MemberEnum.getByCode(dto.getMemberLevel())) {
case NORMAL: case NORMAL:
modelAmount = handleDiscount(vehicleModel, prices, NORMAL); handleDiscountDTO = handleDiscount(vehicleModel, prices, NORMAL);
detail.getOrder().setHasMemberRight(SYS_TRUE); detail.getOrder().setHasMemberRight(SYS_TRUE);
break; break;
case GOLD: case GOLD:
modelAmount = handleDiscount(vehicleModel, prices, GOLD); handleDiscountDTO = handleDiscount(vehicleModel, prices, GOLD);
detail.getOrder().setHasMemberRight(SYS_TRUE); detail.getOrder().setHasMemberRight(SYS_TRUE);
break; break;
case DIAMOND: case DIAMOND:
modelAmount = handleDiscount(vehicleModel, prices, DIAMOND); handleDiscountDTO = handleDiscount(vehicleModel, prices, DIAMOND);
detail.getOrder().setHasMemberRight(SYS_TRUE); detail.getOrder().setHasMemberRight(SYS_TRUE);
break; break;
} }
vehicleOrderItem.setUnitPrice(modelAmount); detail.setRebate(handleDiscountDTO.getRebate());
vehicleOrderItem.setUnitPrice(handleDiscountDTO.getModelAmount());
}else { }else {
modelAmount = vehicleModel.getPrice(); modelAmount = vehicleModel.getPrice();
} }
...@@ -311,15 +315,29 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -311,15 +315,29 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
* @param memberEnum * @param memberEnum
* @return * @return
*/ */
private BigDecimal handleDiscount(VehicleModel vehicleModel, String[] prices, MemberEnum memberEnum) { private HandleDiscountDTO handleDiscount(VehicleModel vehicleModel, String[] prices, MemberEnum memberEnum) {
BigDecimal modelAmount;//会员比例 BigDecimal modelAmount;//会员比例
BigDecimal hundred = BigDecimal.TEN;
Integer rebate = new Integer(0);
if(DISCOUNT_STATUS_MEMBER.equals(vehicleModel.getRentDiscountStatus())) { if(DISCOUNT_STATUS_MEMBER.equals(vehicleModel.getRentDiscountStatus())) {
modelAmount = new BigDecimal(String.valueOf((memberEnum.getPercent()/100d))).multiply(vehicleModel.getPrice()).setScale(2, BigDecimal.ROUND_HALF_UP); rebate = memberEnum.getPercent();
BigDecimal rebatePercent = new BigDecimal(String.valueOf((rebate/100d)));
modelAmount = rebatePercent.multiply(vehicleModel.getPrice()).setScale(2, BigDecimal.ROUND_HALF_UP);
}else { }else {
//会员固定价列表 //会员固定价列表
modelAmount = new BigDecimal(prices[(memberEnum.getCode() - 1)]); modelAmount = new BigDecimal(prices[(memberEnum.getCode() - 1)]);
rebate = modelAmount.divide(vehicleModel.getPrice()).multiply(hundred).setScale(0, BigDecimal.ROUND_UP).intValue();
} }
return modelAmount; HandleDiscountDTO handleDiscountDTO = new HandleDiscountDTO();
handleDiscountDTO.setRebate(rebate);
handleDiscountDTO.setModelAmount(modelAmount);
return handleDiscountDTO;
}
@Data
public class HandleDiscountDTO {
BigDecimal modelAmount;
Integer rebate;
} }
private String handleChildren(RentVehicleBO detail, Integer vehicleDayNum) { private String handleChildren(RentVehicleBO detail, Integer vehicleDayNum) {
......
...@@ -76,9 +76,6 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To ...@@ -76,9 +76,6 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To
@Autowired @Autowired
protected UserAuthConfig userAuthConfig; protected UserAuthConfig userAuthConfig;
@Autowired
UserFeign userFeign;
@Autowired @Autowired
ThirdFeign thirdFeign; ThirdFeign thirdFeign;
......
package com.xxfc.platform.vehicle.entity; package com.xxfc.platform.vehicle.entity;
import com.xxfc.platform.vehicle.constant.AccompanyingItemType;
import lombok.Data; import lombok.Data;
import tk.mybatis.mapper.annotation.KeySql;
import javax.persistence.Column; import javax.persistence.Column;
import javax.persistence.Id; import javax.persistence.Id;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/8/2 16:52
*/
@Data @Data
public class AccompanyingItem { public class AccompanyingItem {
public static final Integer NO_AMOUNT_LIMIT = -1; public static final Integer NO_AMOUNT_LIMIT = -1;
@Id @Id
private Integer id; private Integer id;
/**
* 物品类型,详见{@link AccompanyingItemType}
*/
@Column(name = "type" )
private Integer type;
/** /**
* 物品名称 * 物品名称
*/ */
...@@ -23,18 +35,37 @@ public class AccompanyingItem { ...@@ -23,18 +35,37 @@ public class AccompanyingItem {
private String name; private String name;
/** /**
* 物品类型,详见AccompanyingItemType *标配数量
*/ */
@Column(name = "type" ) @Column(name = "number")
private Integer type; private Integer number;
@Column(name = "rank")
private Integer rank;
/**
*单位
*/
@Column(name = "unit")
private String unit;
/**
*价格
*/
@Column(name = "price")
private BigDecimal price;
/** /**
* 备注 * 备注
*/ */
@Column(name = "remark")
private String remark; private String remark;
@Column(name = "create_time")
private Date createTime; private Date createTime;
@Column(name = "update_time")
private Date updateTime; private Date updateTime;
@Column(name = "is_del")
private Integer isDel;
} }
package com.xxfc.platform.vehicle.pojo.vo;
import com.xxfc.platform.vehicle.constant.AccompanyingItemType;
import lombok.Data;
import java.math.BigDecimal;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/8/2 16:42
*/
@Data
public class AccompanyingItemVo {
private Integer id;
/**
* 物品类型,详见{@link AccompanyingItemType}
*/
private Integer type;
/**
* 物品名称
*/
private String name;
/**
*标配数量
*/
private Integer number;
/**
*单位
*/
private String unit;
/**
*价格
*/
private BigDecimal price;
/**
* 备注
*/
private String remark;
/**
* 排序
*/
private Integer rank;
}
...@@ -12,12 +12,18 @@ import com.xxfc.platform.vehicle.mapper.AccompanyingItemMapper; ...@@ -12,12 +12,18 @@ import com.xxfc.platform.vehicle.mapper.AccompanyingItemMapper;
import com.xxfc.platform.vehicle.pojo.AddOrUpdateAccompanyingItem; import com.xxfc.platform.vehicle.pojo.AddOrUpdateAccompanyingItem;
import com.github.wxiaoqi.security.common.vo.PageDataVO; import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.vehicle.pojo.QueryAccompanyItemVo; import com.xxfc.platform.vehicle.pojo.QueryAccompanyItemVo;
import com.xxfc.platform.vehicle.pojo.vo.AccompanyingItemVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
@Service @Service
@Slf4j @Slf4j
...@@ -85,4 +91,26 @@ public class AccompanyingItemBiz extends BaseBiz<AccompanyingItemMapper, Accompa ...@@ -85,4 +91,26 @@ public class AccompanyingItemBiz extends BaseBiz<AccompanyingItemMapper, Accompa
Integer effected = mapper.deleteByPrimaryKey(id); Integer effected = mapper.deleteByPrimaryKey(id);
return RestResponse.suc(); return RestResponse.suc();
} }
public List<AccompanyingItemVo> listAllItem(){
List<AccompanyingItemVo> accompanyingItemVos = new ArrayList<>();
Example example = new Example(AccompanyingItem.class);
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("isDel",0);
List<AccompanyingItem> accompanyingItems = mapper.selectByExample(example);
if (CollectionUtils.isEmpty(accompanyingItems)){
return accompanyingItemVos;
}
List<AccompanyingItemVo> accompanyingItemVoList = accompanyingItems.stream().map(item -> {
AccompanyingItemVo accompanyingItemVo = new AccompanyingItemVo();
org.springframework.beans.BeanUtils.copyProperties(item, accompanyingItemVo);
return accompanyingItemVo;
}).sorted(Comparator.comparing(AccompanyingItemVo::getType).thenComparing(AccompanyingItemVo::getRank)).collect(Collectors.toList());
return accompanyingItemVoList;
}
} }
...@@ -19,10 +19,18 @@ import com.google.common.collect.Lists; ...@@ -19,10 +19,18 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.xxfc.platform.vehicle.common.CustomIllegalParamException; import com.xxfc.platform.vehicle.common.CustomIllegalParamException;
import com.xxfc.platform.vehicle.common.RestResponse; import com.xxfc.platform.vehicle.common.RestResponse;
import com.xxfc.platform.vehicle.constant.*; import com.xxfc.platform.vehicle.constant.ConstantType;
import com.xxfc.platform.vehicle.constant.RedisKey;
import com.xxfc.platform.vehicle.constant.ResCode.ResCode; import com.xxfc.platform.vehicle.constant.ResCode.ResCode;
import com.xxfc.platform.vehicle.entity.*; import com.xxfc.platform.vehicle.constant.VehicleBookRecordStatus;
import com.xxfc.platform.vehicle.mapper.*; import com.xxfc.platform.vehicle.constant.VehicleStatus;
import com.xxfc.platform.vehicle.entity.BranchCompany;
import com.xxfc.platform.vehicle.entity.Vehicle;
import com.xxfc.platform.vehicle.entity.VehicleBookInfo;
import com.xxfc.platform.vehicle.entity.VehicleBookRecord;
import com.xxfc.platform.vehicle.mapper.BookRecordAccItemMapper;
import com.xxfc.platform.vehicle.mapper.VehicleBookInfoMapper;
import com.xxfc.platform.vehicle.mapper.VehicleMapper;
import com.xxfc.platform.vehicle.pojo.*; import com.xxfc.platform.vehicle.pojo.*;
import com.xxfc.platform.vehicle.pojo.dto.VehiclePlanDto; import com.xxfc.platform.vehicle.pojo.dto.VehiclePlanDto;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -56,8 +64,6 @@ import java.util.*; ...@@ -56,8 +64,6 @@ import java.util.*;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.github.wxiaoqi.security.auth.common.constatns.CommonConstants.DATA_ALL_FALSE;
@Service @Service
@Slf4j @Slf4j
public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserRestInterface { public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserRestInterface {
...@@ -1278,12 +1284,23 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR ...@@ -1278,12 +1284,23 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
return ObjectRestResponse.createFailedResult(235, "token失效"); return ObjectRestResponse.createFailedResult(235, "token失效");
} }
List<Integer> companyList = Lists.newArrayList(); List<Integer> companyList = Lists.newArrayList();
if(DATA_ALL_FALSE.equals(userDTO.getDataAll())) { //不能获取全部数据 List<BranchCompany> branchCompany = branchCompanyBiz.getListByUser(userDTO);
companyList = dataCompany(userDTO.getDataZone(), userDTO.getDataCompany()); companyList = branchCompany.stream().map(BranchCompany::getId).collect(Collectors.toList());
}
if(vehiclePlanDto.getParkBranchCompanyId() != null) { if(vehiclePlanDto.getParkBranchCompanyId() != null) {
if(companyList.size() > 0) {
if(companyList.contains(vehiclePlanDto.getParkBranchCompanyId())) {
companyList.clear();
companyList.add(vehiclePlanDto.getParkBranchCompanyId());
} else {
return ObjectRestResponse.succ();
}
} else {
companyList.add(vehiclePlanDto.getParkBranchCompanyId()); companyList.add(vehiclePlanDto.getParkBranchCompanyId());
} }
}
log.info("用户权限公司ID: companyList = {}", companyList);
vehiclePlanDto.setCompanyIds(companyList); vehiclePlanDto.setCompanyIds(companyList);
Query query = new Query(vehiclePlanDto); Query query = new Query(vehiclePlanDto);
PageDataVO<VehicleAndModelInfoVo> pageDataVO = PageDataVO.pageInfo(query, () -> mapper.getVehicle(query.getSuper())); PageDataVO<VehicleAndModelInfoVo> pageDataVO = PageDataVO.pageInfo(query, () -> mapper.getVehicle(query.getSuper()));
......
...@@ -112,9 +112,18 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic ...@@ -112,9 +112,18 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
List<Integer> companyList = Lists.newArrayList(); List<Integer> companyList = Lists.newArrayList();
if(DATA_ALL_FALSE.equals(userDTO.getDataAll())) { //不能获取全部数据 if(DATA_ALL_FALSE.equals(userDTO.getDataAll())) { //不能获取全部数据
companyList = dataCompany(userDTO.getDataZone(), userDTO.getDataCompany()); companyList = dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
if(vehicleBookRecordQueryVo.getCompanyId() != null) {
if(companyList.contains(vehicleBookRecordQueryVo.getCompanyId())) { //如果权限中有这个公司就允许查询, 否则就直接返回空
companyList.clear();
companyList.add(vehicleBookRecordQueryVo.getCompanyId());
} else {
return RestResponse.suc();
}
}
} else {
if(vehicleBookRecordQueryVo.getCompanyId() != null) {
companyList.add(vehicleBookRecordQueryVo.getCompanyId());
} }
if(vehicleBookRecordQueryVo.getUserCompany() != null) {
companyList.add(vehicleBookRecordQueryVo.getUserCompany());
} }
vehicleBookRecordQueryVo.setCompanyIds(companyList); vehicleBookRecordQueryVo.setCompanyIds(companyList);
Query query = new Query(vehicleBookRecordQueryVo); Query query = new Query(vehicleBookRecordQueryVo);
...@@ -136,10 +145,20 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic ...@@ -136,10 +145,20 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
List<Integer> companyList = Lists.newArrayList(); List<Integer> companyList = Lists.newArrayList();
if(DATA_ALL_FALSE.equals(userDTO.getDataAll())) { //不能获取全部数据 if(DATA_ALL_FALSE.equals(userDTO.getDataAll())) { //不能获取全部数据
companyList = dataCompany(userDTO.getDataZone(), userDTO.getDataCompany()); companyList = dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
if(vehicleBookRecordQueryVo.getCompanyId() != null) {
if(companyList.contains(vehicleBookRecordQueryVo.getCompanyId())) { //如果权限中有这个公司就允许查询, 否则就直接返回空
companyList.clear();
companyList.add(vehicleBookRecordQueryVo.getCompanyId());
} else {
return RestResponse.suc();
} }
}
} else {
if(vehicleBookRecordQueryVo.getCompanyId() != null) { if(vehicleBookRecordQueryVo.getCompanyId() != null) {
companyList.add(vehicleBookRecordQueryVo.getCompanyId()); companyList.add(vehicleBookRecordQueryVo.getCompanyId());
} }
}
vehicleBookRecordQueryVo.setCompanyIds(companyList); vehicleBookRecordQueryVo.setCompanyIds(companyList);
Query query = new Query(vehicleBookRecordQueryVo); Query query = new Query(vehicleBookRecordQueryVo);
PageDataVO<VehicleBookRecordVo> pageDataVO = PageDataVO.pageInfo(query, () -> mapper.getBookRecordInfo(query.getSuper())); PageDataVO<VehicleBookRecordVo> pageDataVO = PageDataVO.pageInfo(query, () -> mapper.getBookRecordInfo(query.getSuper()));
......
...@@ -12,6 +12,7 @@ import com.xxfc.platform.vehicle.entity.AccompanyingItem; ...@@ -12,6 +12,7 @@ import com.xxfc.platform.vehicle.entity.AccompanyingItem;
import com.xxfc.platform.vehicle.pojo.AddOrUpdateAccompanyingItem; import com.xxfc.platform.vehicle.pojo.AddOrUpdateAccompanyingItem;
import com.github.wxiaoqi.security.common.vo.PageDataVO; import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.vehicle.pojo.QueryAccompanyItemVo; import com.xxfc.platform.vehicle.pojo.QueryAccompanyItemVo;
import com.xxfc.platform.vehicle.pojo.vo.AccompanyingItemVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -71,4 +72,10 @@ public class AccompanyingItemController extends BaseController<AccompanyingItemB ...@@ -71,4 +72,10 @@ public class AccompanyingItemController extends BaseController<AccompanyingItemB
public RestResponse<Integer> del(@PathVariable Integer id) throws Exception{ public RestResponse<Integer> del(@PathVariable Integer id) throws Exception{
return baseBiz.del(id); return baseBiz.del(id);
} }
@GetMapping("/app/unauth/items")
public RestResponse<List<AccompanyingItemVo>> listAccompanyingItemVo(){
List<AccompanyingItemVo> accompanyingItemVos = baseBiz.listAllItem();
return RestResponse.codeAndData(RestResponse.SUC_CODE,accompanyingItemVos);
}
} }
...@@ -402,7 +402,7 @@ ...@@ -402,7 +402,7 @@
</foreach> </foreach>
</if> </if>
and v1.status between 1 and 2 and v1.status between 1 and 2 and v1.book_user != -2
</where> </where>
order by create_time DESC order by create_time DESC
...@@ -440,6 +440,7 @@ ...@@ -440,6 +440,7 @@
<if test="status != null"> <if test="status != null">
and v1.status = #{status} and v1.status = #{status}
</if> </if>
and v1.book_user != -2
</where> </where>
group by v1.id group by v1.id
order by create_time DESC order by create_time DESC
......
...@@ -475,7 +475,9 @@ ...@@ -475,7 +475,9 @@
#{id} #{id}
</foreach> </foreach>
</if> </if>
and is_del != 1
</where> </where>
ORDER BY parkCompanyName
</select> </select>
<select id="countVehicleByParam" parameterType="com.xxfc.platform.vehicle.pojo.dto.VehiclePlanDto" <select id="countVehicleByParam" parameterType="com.xxfc.platform.vehicle.pojo.dto.VehiclePlanDto"
......
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