Commit 40a0c447 authored by libin's avatar libin

wg

parents bc26eb01 39114f9c
......@@ -4,6 +4,8 @@ package com.github.wxiaoqi.security.common.constant;
* Created by ace on 2017/8/29.
*/
public class CommonConstants {
public static final int SYS_TRUE = 1;
public static final int SYS_FALSE = 0;
public final static String RESOURCE_TYPE_MENU = "menu";
public final static String RESOURCE_TYPE_BTN = "button";
// 用户token异常
......
......@@ -8,5 +8,5 @@ public class PageParam {
@ApiModelProperty("当前页码")
Integer page;
@ApiModelProperty("每页限制")
Integer limit;
Integer limit;
}
package com.github.wxiaoqi.security.admin.feign;
import com.github.wxiaoqi.security.admin.entity.AppUserDetail;
import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
......@@ -12,7 +11,6 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Map;
/**
* ${DESCRIPTION}
......@@ -40,9 +38,6 @@ public interface UserFeign {
@RequestMapping(value = "/member/levels", method = RequestMethod.GET)
public List<BaseUserMemberLevel> levels();
@RequestMapping(value = "/public/app/userinfo-by-id")
public Map<Integer, AppUserDetail> userDetailById(List<Integer> userids);
@RequestMapping(value = "/public/getByUserIds", method = RequestMethod.GET)
public ObjectRestResponse<List<AppUserVo>> getByUserIds(@RequestParam("ids")List<Integer> ids);
}
......@@ -45,7 +45,6 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
return null;
}
public AppUserVo getUserInfoById(Integer userid){
return mapper.getUserInfo(userid);
}
......
package com.github.wxiaoqi.security.admin.rest;
import com.ace.cache.annotation.Cache;
import com.github.wxiaoqi.security.admin.biz.AppUserBiz;
import com.github.wxiaoqi.security.admin.biz.AppUserDetailBiz;
import com.github.wxiaoqi.security.admin.entity.AppUser;
......@@ -20,6 +21,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
......@@ -128,5 +130,26 @@ public class AppUserController extends CommonBaseController {
return ObjectRestResponse.succ();
}
@GetMapping("/findByUserId")
public ObjectRestResponse<AppUserDetail> findByUserId(Integer id) {
if(id == null || id < 0) {
return ObjectRestResponse.createFailedResult(500, "参数id为空");
}
AppUserDetail appUserDetail = userDetailBiz.getUserByUserid(id);
return ObjectRestResponse.succ(appUserDetail);
}
@GetMapping("/getByUserIds")
public ObjectRestResponse<List<AppUserDetail>> getByUserIds(@RequestParam("ids") List<Integer> ids) {
if(ids == null) {
return ObjectRestResponse.createFailedResult(500, "参数id为空");
}
List<AppUserDetail> appUserDetails = new ArrayList<>();
for (Integer id : ids) {
AppUserDetail appUserDetail = userDetailBiz.getUserByUserid(id);
appUserDetails.add(appUserDetail);
}
return ObjectRestResponse.succ(appUserDetails);
}
}
......@@ -104,6 +104,7 @@ public class UserController extends CommonBaseController {
}
}
@RequestMapping(value = "/front/menus", method = RequestMethod.GET)
public @ResponseBody
List<MenuTree> getMenusByUsername(String token) throws Exception {
......
......@@ -10,7 +10,7 @@ spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://10.5.52.3:3306/xxfc_order?useUnicode=true&characterEncoding=UTF-8
url: jdbc:mysql://10.5.52.3:3306/vehicle?useUnicode=true&characterEncoding=UTF-8
username: root
password: sslcloud123*()
jackson:
......
#代码生成器,配置信息
#\u4EE3\u7801\u751F\u6210\u5668\uFF0C\u914D\u7F6E\u4FE1\u606F
#包名
package=com.xxfc.platform.order
#作者
author=zjw
#\u5305\u540D
package=com.xxfc.platform.campsite
#\u4F5C\u8005
author=libin
#Email
email=nishijjo@qq.com
#表前错误的Unicode字符串!
email=18178966185@163.com
#\u8868\u524D\u9519\u8BEF\u7684Unicode\u5B57\u7B26\u4E32!
tablePrefix=
#前端模块前缀
#\u524D\u7AEF\u6A21\u5757\u524D\u7F00
mainModule=auth
#类型转换,配置信息
#\u7C7B\u578B\u8F6C\u6362\uFF0C\u914D\u7F6E\u4FE1\u606F
tinyint=Integer
smallint=Integer
mediumint=Integer
......
......@@ -5,8 +5,9 @@ import ${package}.biz.${className}Biz;
import ${package}.entity.${className};
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Controller
@RestController
@RequestMapping("${secondModuleName}")
public class ${className}Controller extends BaseController<${className}Biz,${className}> {
......
......@@ -9,8 +9,8 @@ import lombok.Data;
/**
*
*
*
*
* @author zjw
* @email nishijjo@qq.com
* @date 2019-06-15 11:35:33
......@@ -19,7 +19,7 @@ import lombok.Data;
@Table(name = "base_order")
public class BaseOrder implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
......@@ -27,35 +27,35 @@ public class BaseOrder implements Serializable {
@GeneratedValue(generator = "JDBC")
@ApiModelProperty("主键")
private Integer id;
/**
* 订单号
*/
@Column(name = "no")
@ApiModelProperty(value = "订单号")
private String no;
/**
* 名称
*/
@Column(name = "name")
@ApiModelProperty(value = "名称")
private String name;
/**
* 订单类型 1--租车;2--旅游
*/
@Column(name = "type")
@ApiModelProperty(value = "订单类型 1--租车;2--旅游")
private Integer type;
/**
* 订单详情id
*/
@Column(name = "detail_id")
@ApiModelProperty(value = "订单详情id")
private Integer detailId;
/**
* 订单状态
0--删除
......@@ -76,112 +76,112 @@ public class BaseOrder implements Serializable {
+"5--出行中(进行中)"
+"6--已完成")
private Integer status;
/**
* 商品价格
*/
@Column(name = "goods_amount")
@ApiModelProperty(value = "商品价格")
private BigDecimal goodsAmount;
/**
* 订单价格
*/
@Column(name = "order_amount")
@ApiModelProperty(value = "订单价格")
private BigDecimal orderAmount;
/**
* 实际价格
*/
@Column(name = "real_amount")
@ApiModelProperty(value = "实际价格")
private BigDecimal realAmount;
/**
* 第三方类型(支付渠道)
*/
@Column(name = "third_type")
@ApiModelProperty(value = "第三方类型(支付渠道)")
private Integer thirdType;
/**
* 流水号
*/
@Column(name = "out_trade_no")
@ApiModelProperty(value = "流水号")
private String outTradeNo;
/**
* 订单图片
*/
@Column(name = "picture")
@ApiModelProperty(value = "订单图片")
private String picture;
/**
* 创建时间
*/
@Column(name = "crt_time")
@ApiModelProperty(value = "创建时间", hidden = true )
private Date crtTime;
/**
* 创建者id
*/
@Column(name = "crt_user")
@ApiModelProperty(value = "创建者id")
private String crtUser;
/**
* 创建者名称
*/
@Column(name = "crt_name")
@ApiModelProperty(value = "创建者名称")
private String crtName;
/**
* 用户id
*/
@Column(name = "user_id")
@ApiModelProperty(value = "用户id")
private Integer userId;
/**
* 更新时间
*/
@Column(name = "upd_time")
@ApiModelProperty(value = "更新时间", hidden = true )
private Date updTime;
/**
* 创建者ip
*/
@Column(name = "crt_host")
@ApiModelProperty(value = "创建者ip")
private String crtHost;
/**
* 取消原因
*/
@Column(name = "cancel_reason")
@ApiModelProperty(value = "取消原因")
private String cancelReason;
/**
* 退款流水号
*/
@Column(name = "refund_trade_no")
@ApiModelProperty(value = "退款流水号")
private String refundTradeNo;
/**
* 支付时间
*/
@Column(name = "pay_time")
@ApiModelProperty(value = "支付时间")
private Long payTime;
/**
* 退款时间
*/
......@@ -195,4 +195,18 @@ public class BaseOrder implements Serializable {
@Column(name = "has_discount")
@ApiModelProperty(value = "是否有优惠")
private Long hasDiscount;
/**
* 是否已支付
*/
@Column(name = "has_pay")
@ApiModelProperty(value = "是否已支付")
private Integer hasPay;
@Transient
private String username;
@Transient
private String vehicalNumberPlat;
}
package com.xxfc.platform.order.entity;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 订单退款记录表
*
* @author zjw
* @email nishijjo@qq.com
* @date 2019-06-18 11:08:09
*/
@Data
@Table(name = "order_refund")
public class OrderRefund implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@Id
@GeneratedValue(generator = "JDBC")
@ApiModelProperty("主键")
private Integer id;
/**
* 订单id
*/
@Column(name = "order_id")
@ApiModelProperty(value = "订单id")
private Integer orderId;
/**
* 退款对应的流水号
*/
@Column(name = "trade_no")
@ApiModelProperty(value = "退款对应的流水号")
private Integer tradeNo;
/**
* 退款时间
*/
@Column(name = "refund_time")
@ApiModelProperty(value = "退款时间")
private Long refundTime;
/**
* 退款类型 1--订单款;2--押金
*/
@Column(name = "refund_type")
@ApiModelProperty(value = "退款类型 1--订单款;2--押金")
private Integer refundType;
/**
* 退款状态 0--失败;1--成功
*/
@Column(name = "refund_status")
@ApiModelProperty(value = "退款状态 0--失败;1--成功")
private Integer refundStatus;
/**
* 退款金额
*/
@Column(name = "refund_amount")
@ApiModelProperty(value = "退款金额")
private Integer refundAmount;
/**
* 退款说明
*/
@Column(name = "refund_desc")
@ApiModelProperty(value = "退款说明")
private String refundDesc;
/**
* 创建时间
*/
@Column(name = "crt_time")
@ApiModelProperty(value = "创建时间", hidden = true )
private Long crtTime;
}
......@@ -2,7 +2,6 @@ package com.xxfc.platform.order.entity;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......
package com.xxfc.platform.order.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.RequiredArgsConstructor;
import javax.persistence.*;
@Table(name = "order_vehicle_crosstown")
@Data
@RequiredArgsConstructor
public class OrderVehicaleCrosstown {
/**
* 主键id
*/
@Id
private Integer id;
/**
* 订单id
*/
@Column(name = "order_id")
private Integer orderId;
/**
* 订单号
*/
@Column(name = "order_no")
private String orderNo;
/**
* 驾驶人
*/
@Column(name = "license_name")
private String licenseName;
/**
* 驾驶人手机号
*/
@Column(name = "license_phone")
private String licensePhone;
/**
* 驾驶证照
*/
@Column(name = "license_img")
private String licenseImg;
/**
* 公里数(公里)
*/
private Integer mileage;
/**
* 公里数取证照
*/
@Column(name = "mileage_img")
private String mileageImg;
/**
* 审核状态;0-未审核;1-已审核
*/
private Boolean status;
/**
* 审核时间
*/
@Column(name = "status_time")
private Long statusTime;
/**
* 审核名称
*/
@Column(name = "status_name")
private String statusName;
/**
* 审核人id
*/
@Column(name = "status_id")
private Integer statusId;
/**
* 是否删除;0-正常;1-删除
*/
@Column(name = "is_del")
private Boolean isDel;
/**
* 取证图片
*/
private String imgs;
/**
* 备注
*/
private String remak;
/**
* 创建时间
*/
private Long crtTime;
/**
* 更新时间
*/
private Long updTime;
/**
* 钥匙图片
*/
private String vehicleKey;
/**
* 是否有扣除项
*/
private Boolean isDed;
/**
* 扣除项明细
*/
private String dedDetail;
/**
* 驾驶人身份证号
*/
private String licenseIdCard;
/**
* 1、交车, 2、还车
*/
private Integer type;
}
\ No newline at end of file
......@@ -50,11 +50,6 @@ public class AddRentVehicleDTO{
@ApiModelProperty(value = "还车地点")
private String endAddr;
//费用详情
@Column(name = "cost_detail")
@ApiModelProperty(value = "费用详情")
private String costDetail;
//取车城市编号
@Column(name = "start_city")
@ApiModelProperty(value = "取车城市编号")
......
......@@ -17,6 +17,8 @@ public class RentVehiclePriceVO extends OrderPriceVO{
BigDecimal deposit;
@ApiModelProperty(value = "天数")
Integer dayNum;
@ApiModelProperty(value = "车辆天数")
Integer vehicleDayNum;
@ApiModelProperty(value = "车辆个数")
Integer vehicleNum;
@ApiModelProperty(value = "司机个数")
......
......@@ -25,7 +25,6 @@
<version>2.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>
......@@ -50,6 +49,11 @@
<version>5.1.30</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.9.3</version>
</dependency>
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper</artifactId>
......
......@@ -6,15 +6,23 @@ import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum;
import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum;
import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.entity.OrderRefund;
import com.xxfc.platform.order.entity.OrderRentVehicleDetail;
import com.xxfc.platform.order.mapper.BaseOrderMapper;
import com.xxfc.platform.order.pojo.order.OrderPageVO;
import com.xxfc.platform.universal.feign.ThirdFeign;
import com.xxfc.platform.universal.vo.OrderRefundVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_TRUE;
/**
*
*
......@@ -24,12 +32,25 @@ import java.util.Map;
*/
@Service
public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
@Autowired
OrderRentVehicleBiz orderRentVehicleBiz;
@Autowired
OrderRefundBiz orderRefundBiz;
@Autowired
ThirdFeign thirdFeign;
public List<OrderPageVO> pageByParm(Map<String, Object> paramMap){
return mapper.pageByParm(paramMap);
}
public List<OrderPageVO> listOrder(Map<String, Object> paramMap){
return mapper.listOrder(paramMap);
}
public List<OrderPageVO> getRentVehicle (Map<String, Object> paramMap) {
return mapper.getRentVehicle(paramMap);
}
private static Map<Integer, List<Integer>> cancelAble;
static {
cancelAble = new HashMap<Integer, List<Integer>>();
......@@ -48,6 +69,32 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
setStatus(OrderStatusEnum.ORDER_CANCEL.getCode());
setCancelReason(baseOrder.getCancelReason());
}});
//触发退款流程
//判断是否已支付
if(baseOrder.getHasPay().equals(SYS_TRUE)) {
//判断订单类型
if(OrderTypeEnum.RentVehicle.getCode().equals(baseOrder.getType())) {
OrderRentVehicleDetail orvd = orderRentVehicleBiz.selectOne(new OrderRentVehicleDetail(){{
setOrderId(baseOrder.getId());
}});
//计算退款金额
// 1、押金 + 租金(规则扣除)
BigDecimal refundAmont = orvd.getDeposit().add(baseOrder.getGoodsAmount());
thirdFeign.refund(new OrderRefundVo(){{
setAmount(baseOrder.getRealAmount().multiply(new BigDecimal("100")).intValue());
setRefundAmount(refundAmont.multiply(new BigDecimal("100")).intValue());
setOrderNo(baseOrder.getNo());
setRefundDesc("取消订单退款:"+ refundAmont.toString());
}});
//创建订单退款记录
}else if (OrderTypeEnum.TOUR.getCode().equals(baseOrder.getType())) {
}
}
}else {
throw new BaseException(ResultCode.FAILED_CODE);
}
......
package com.xxfc.platform.order.biz;
import org.springframework.stereotype.Service;
import com.xxfc.platform.order.entity.OrderRefund;
import com.xxfc.platform.order.mapper.OrderRefundMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
/**
* 订单退款记录表
*
* @author zjw
* @email nishijjo@qq.com
* @date 2019-06-18 11:08:09
*/
@Service
public class OrderRefundBiz extends BaseBiz<OrderRefundMapper,OrderRefund> {
}
\ No newline at end of file
package com.xxfc.platform.order.biz;
import com.ace.cache.annotation.Cache;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.xxfc.platform.order.entity.OrderVehicaleCrosstown;
import com.xxfc.platform.order.mapper.OrderVehicaleCrosstownMapper;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class OrderVehicalCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapper, OrderVehicaleCrosstown> {
public OrderVehicaleCrosstown get(Integer id){
return selectById(id);
}
public List<OrderVehicaleCrosstown> selectByOrderId(OrderVehicaleCrosstown orderVehicaleCrosstown) {
return mapper.selectByOrderId(orderVehicaleCrosstown);
}
}
package com.xxfc.platform.order.config;
import feign.RequestInterceptor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.util.Enumeration;
/**
* 自定义的请求头处理类,处理服务发送时的请求头;
* 将服务接收到的请求头中的uniqueId和token字段取出来,并设置到新的请求头里面去转发给下游服务
* 比如A服务收到一个请求,请求头里面包含uniqueId和token字段,A处理时会使用Feign客户端调用B服务
* 那么uniqueId和token这两个字段就会添加到请求头中一并发给B服务;
*
* @author mozping
* @version 1.0
* @date 2018/6/27 14:13
* @see FeignHeadConfiguration
* @since JDK1.8
*/
@Configuration
@Slf4j
public class FeignHeadConfiguration {
@Bean
public RequestInterceptor requestInterceptor() {
return requestTemplate -> {
ServletRequestAttributes attrs = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
if (attrs != null) {
HttpServletRequest request = attrs.getRequest();
Enumeration<String> headerNames = request.getHeaderNames();
if (headerNames != null) {
while (headerNames.hasMoreElements()) {
String name = headerNames.nextElement();
String value = request.getHeader(name);
/**
* 遍历请求头里面的属性字段,将logId和token添加到新的请求头中转发到下游服务
* */
if ("Authorization".equalsIgnoreCase(name)) {
log.debug("添加自定义请求头key:" + name + ",value:" + value);
requestTemplate.header(name, value);
} else {
log.debug("FeignHeadConfiguration", "非自定义请求头key:" + name + ",value:" + value + "不需要添加!");
}
}
} else {
log.warn("FeignHeadConfiguration", "获取请求头失败!");
}
}
};
}
}
......@@ -17,4 +17,5 @@ import java.util.Map;
public interface BaseOrderMapper extends Mapper<BaseOrder> {
public List<OrderPageVO> pageByParm(Map<String, Object> paramMap);
public List<OrderPageVO> listOrder(Map<String, Object> paramMap);
public List<OrderPageVO> getRentVehicle(Map<String, Object> paramMap);
}
package com.xxfc.platform.order.mapper;
import com.xxfc.platform.order.entity.OrderRefund;
import tk.mybatis.mapper.common.Mapper;
/**
* 订单退款记录表
*
* @author zjw
* @email nishijjo@qq.com
* @date 2019-06-18 11:08:09
*/
public interface OrderRefundMapper extends Mapper<OrderRefund> {
}
package com.xxfc.platform.order.mapper;
import com.xxfc.platform.order.entity.OrderVehicaleCrosstown;
import tk.mybatis.mapper.common.Mapper;
import java.util.List;
public interface OrderVehicaleCrosstownMapper extends Mapper<OrderVehicaleCrosstown> {
List<OrderVehicaleCrosstown> selectByOrderId(OrderVehicaleCrosstown orderVehicaleCrosstown);
}
\ No newline at end of file
package com.xxfc.platform.order.rest;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.order.biz.OrderRefundBiz;
import com.xxfc.platform.order.entity.OrderRefund;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("orderRefund")
public class OrderRefundController extends BaseController<OrderRefundBiz,OrderRefund> {
}
\ No newline at end of file
package com.xxfc.platform.order.rest;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.order.biz.OrderVehicalCrosstownBiz;
import com.xxfc.platform.order.entity.OrderVehicaleCrosstown;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping(value = "/orderVehicle")
@Api(value = "交还车记录", tags = {"交还车记录"})
@Slf4j
public class OrderVehicleCrosstownController {
@Autowired
OrderVehicalCrosstownBiz orderVehicalCrosstownBiz;
@PostMapping(value = "/add")
@ApiOperation(value = "添加交还车记录")
public ObjectRestResponse<?> add(OrderVehicaleCrosstown orderVehicaleCrosstown) {
log.info("添加的参数:orderVehicaleCrosstown = {}", orderVehicaleCrosstown);
if (orderVehicaleCrosstown == null) {
return ObjectRestResponse.createFailedResult(500, "参数为空!");
}
if (orderVehicaleCrosstown.getId() != null) {
OrderVehicaleCrosstown oldValue = orderVehicalCrosstownBiz.get(orderVehicaleCrosstown.getId());
if (oldValue != null) {
BeanUtil.copyProperties(orderVehicaleCrosstown, oldValue, CopyOptions.create().setIgnoreNullValue(true).setIgnoreError(true));
orderVehicalCrosstownBiz.updateSelectiveById(oldValue);
return ObjectRestResponse.succ();
}
orderVehicalCrosstownBiz.insertSelective(orderVehicaleCrosstown);
return ObjectRestResponse.succ();
} else {
orderVehicalCrosstownBiz.insertSelective(orderVehicaleCrosstown);
return ObjectRestResponse.succ();
}
}
@GetMapping(value = "/{id}")
@ApiOperation(value = "查询记录信息")
public ObjectRestResponse<OrderVehicaleCrosstown> get(@PathVariable Integer id) {
return ObjectRestResponse.succ(orderVehicalCrosstownBiz.get(id));
}
@GetMapping(value = "/getByOrderId")
@ApiOperation(value = "根据订单Id获取所有记录信息")
public ObjectRestResponse<List<OrderVehicaleCrosstown>> getByOrderId(OrderVehicaleCrosstown orderVehicaleCrosstown) {
if (orderVehicaleCrosstown == null) {
return ObjectRestResponse.createFailedResult(500, "参数orderId为空");
}
return ObjectRestResponse.succ(orderVehicalCrosstownBiz.selectByOrderId(orderVehicaleCrosstown));
}
}
......@@ -78,7 +78,7 @@ public abstract class AbstractOrderHandle<Biz extends BaseBiz, Detail extends Or
detail.setOrderId(detail.getOrder().getId());
detailBiz.insertSelective(detail);
detail.getOrder().setDetailId(detail.getId());
baseOrderBiz.updateById(detail.getOrder());
baseOrderBiz.updateSelectiveById(detail.getOrder());
}
// /**
......
......@@ -97,17 +97,17 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
//当前用户
AppUserDTO dto = detail.getAppUserDTO();
// //如果用户存在,并且为会员,并且车辆有优惠价
// if(null != dto && detail.getRentFreeDay() > 0 && dto.getRentFreeDays() > 0) {
// if(detail.getDayNum() > dto.getRentFreeDays()) {
// freeDayNum = dto.getRentFreeDays();
// }else {
// freeDayNum = detail.getDayNum();
// }
// vehicleDayNum = detail.getDayNum() - freeDayNum;
// }else {
// vehicleDayNum = detail.getDayNum();
// }
//如果用户存在,并且为会员,并且车辆有优惠价
if(null != dto && detail.getRentFreeDay() > 0 && dto.getRentFreeDays() > 0) {
if(detail.getDayNum() > dto.getRentFreeDays()) {
freeDayNum = dto.getRentFreeDays();
}else {
freeDayNum = detail.getDayNum();
}
vehicleDayNum = detail.getDayNum() - freeDayNum;
}else {
vehicleDayNum = detail.getDayNum();
}
//计算价格
//计算车辆费用
......@@ -130,7 +130,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
}else {
modelAmount = vehicleModel.getPrice();
}
vehicleAmount = vehicleAmount.add(modelAmount.multiply(BigDecimal.valueOf(detail.getDayNum())));
vehicleAmount = vehicleAmount.add(modelAmount.multiply(BigDecimal.valueOf(vehicleDayNum)));
if(DRIVER_TYPE_COMPANY.equals(detail.getDriverType())) {
//计算司机费用
driverAmount = driverAmount.add(DRIVER_PRICE.multiply(BigDecimal.valueOf(detail.getDayNum())));
......@@ -160,11 +160,12 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
rvp.setDamageSafePrice(DAMAGE_SAFE);
rvp.setModelName(vehicleModel.getName());
rvp.setDayNum(detail.getDayNum());
rvp.setVehicleDayNum(vehicleDayNum);
rvp.setVehicleNum(1);
rvp.setDriverNum(1);
//设置收费明细
costDetail(rvp, handlechildren(detail));
costDetail(rvp, handlechildren(detail, vehicleDayNum));
return rvp;
}
......@@ -186,8 +187,11 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
return modelAmount;
}
private String handlechildren(RentVehicleBO detail) {
StringBuffer childrenStr = new StringBuffer("${tem_0101}");
private String handlechildren(RentVehicleBO detail, Integer vehicleDayNum) {
StringBuffer childrenStr = new StringBuffer("");
if(vehicleDayNum > 0) {
childrenStr.append(",${tem_0101}");
}
if(DRIVER_TYPE_COMPANY.equals(detail.getDriverType())) {
childrenStr.append(",${tem_0102}");
}
......@@ -195,6 +199,9 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
if(DRIVER_TYPE_DAMAGE_SAFE.equals(detail.getDamageSafe())) {
childrenStr.append(",${tem_0104}");
}
if(childrenStr.length() > 0){
childrenStr.deleteCharAt(1);
}
return childrenStr.toString();
}
......
......@@ -57,7 +57,7 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To
VehicleFeign vehicleFeign;
private static Integer IS_CHILD = 0;
private static Integer IS_CHILD = 1;
// private static BigDecimal DRIVER_PRICE = new BigDecimal("600.00");
// private static BigDecimal DAMAGE_SAFE = new BigDecimal("100.00"); //车损免赔
......@@ -113,11 +113,11 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To
bo.setStartCityName(sysRegion.getName());
//设置verificationId 核销id
bo.setVerificationId(tourFeign.entityList(BeanUtil.beanToMap(new TourGoodVerification(){{
setSpeId(bo.getSpePriceId());
setGoodId(bo.getGoodId());
setSiteId(bo.getSiteId());
}})).getData().get(0).getId());
// bo.setVerificationId(tourFeign.entityList(BeanUtil.beanToMap(new TourGoodVerification(){{
// setSpeId(bo.getSpePriceId());
// setGoodId(bo.getGoodId());
// setSiteId(bo.getSiteId());
// }})).getData().get(0).getId());
//扣減庫存
tourFeign.stock(bo.getSpePriceId(), bo.getTotalNumber());
......
......@@ -27,7 +27,7 @@
<javaClientGenerator targetPackage="${targetMapperPackage}" targetProject="${targetJavaProject}"
type="XMLMAPPER"/>
<!-- <table tableName="vehicle" domainObjectName="Vehicle">-->
<!-- <table tableName="order_vehicle_crosstown" domainObjectName="Vehicle">-->
<!-- </table>-->
<!-- <table tableName="vehicle_book_info" domainObjectName="VehicleBookInfo">-->
<!-- </table>-->
......@@ -37,7 +37,7 @@
<!-- </table>-->
<!-- <table tableName="branch_company_stock_info" domainObjectName="BranchCompanyStockInfo"></table>-->
<!-- <table tableName="branch_company_stock_apply_info" domainObjectName="BranchCompanyStockApplyInfo"></table>-->
<table tableName="base_order" domainObjectName="baseOrder"></table>
<table tableName="order_vehicle_crosstown" domainObjectName="OrderVehicaleCrosstown"></table>
<!-- <table tableName="vehicle_upkeep_log" domainObjectName="VehicleUpkeepLog"></table>-->
</context>
</generatorConfiguration>
\ No newline at end of file
......@@ -68,6 +68,9 @@
</if>
<if test="status != null">
and b.status = #{status}
</if>
<if test="type != null">
and b.type = #{type}
</if>
<if test="no != null">
and no like CONCAT ("%", #{no}, "%")
......@@ -80,6 +83,34 @@
and r.start_company_id = #{startCompanyId}
or t.start_company_id = #{startCompanyId}
</if>
<if test="startZoneId != null">
and r.start_zone_id = #{startZoneId}
or t.start_zone_id = #{startZoneId}
</if>
</where>
order by b.crt_time desc
</select>
<select id="getRentVehicle" parameterType="Map" resultMap="orderPageMap">
select b.*
from base_order b
LEFT JOIN order_rent_vehicle_detail r on r.order_id = b.id
<where>
<if test="userId != null">
and b.user_id = #{userId}
</if>
<if test="status != null">
and b.status = #{status}
</if>
<if test="no != null">
and no like CONCAT ("%", #{no}, "%")
</if>
<if test="startTime != null">
and r.start_time between #{startTime} and #{endTime}
</if>
<if test="startCompanyId != null">
and r.start_company_id = #{startCompanyId}
</if>
</where>
order by b.crt_time desc
</select>
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xxfc.platform.order.mapper.OrderRefundMapper">
<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.xxfc.platform.order.entity.OrderRefund" id="orderRefundMap">
<result property="id" column="id"/>
<result property="orderId" column="order_id"/>
<result property="tradeNo" column="trade_no"/>
<result property="refundTime" column="refund_time"/>
<result property="refundType" column="refund_type"/>
<result property="refundStatus" column="refund_status"/>
<result property="refundAmount" column="refund_amount"/>
<result property="refundDesc" column="refund_desc"/>
<result property="crtTime" column="crt_time"/>
</resultMap>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xxfc.platform.order.mapper.OrderVehicaleCrosstownMapper">
<resultMap id="BaseResultMap" type="com.xxfc.platform.order.entity.OrderVehicaleCrosstown">
<!--
WARNING - @mbg.generated
-->
<id column="id" jdbcType="INTEGER" property="id" />
<result column="order_id" jdbcType="INTEGER" property="orderId" />
<result column="order_no" jdbcType="VARCHAR" property="orderNo" />
<result column="license_name" jdbcType="VARCHAR" property="licenseName" />
<result column="license_phone" jdbcType="VARCHAR" property="licensePhone" />
<result column="license_img" jdbcType="VARCHAR" property="licenseImg" />
<result column="mileage" jdbcType="INTEGER" property="mileage" />
<result column="mileage_img" jdbcType="VARCHAR" property="mileageImg" />
<result column="status" jdbcType="BIT" property="status" />
<result column="status_time" jdbcType="BIGINT" property="statusTime" />
<result column="status_name" jdbcType="VARCHAR" property="statusName" />
<result column="status_id" jdbcType="INTEGER" property="statusId" />
<result column="is_del" jdbcType="BIT" property="isDel" />
<result column="imgs" jdbcType="LONGVARCHAR" property="imgs" />
<result column="remak" jdbcType="LONGVARCHAR" property="remak" />
<result column="crt_time" jdbcType="BIGINT" property="crtTime" />
<result column="upd_time" jdbcType="BIGINT" property="updTime" />
<result column="vehicle_key" jdbcType="LONGVARCHAR" property="vehicleKey"/>
<result column="license_id_card" jdbcType="VARCHAR" property="licenseIdCard"/>
<result column="is_ded" jdbcType="BIT" property="isDeD" />
<result column="ded_detail" jdbcType="LONGVARCHAR" property="dedDetail" />
<result column="type" jdbcType="INTEGER" property="type"/>
</resultMap>
<select id="selectByOrderId" parameterType="com.xxfc.platform.order.entity.OrderVehicaleCrosstown" resultMap="BaseResultMap">
select *
from order_vehicle_crosstown
<where>
<if test="status != null">
and status = #{status}
</if>
<if test="type != null">
and type = #{type}
</if>
<if test="orderId != null">
and order_id = #{orderId}
</if>
<if test="orderNo != null">
and order_no = #{orderNo}
</if>
</where>
</select>
</mapper>
\ No newline at end of file
......@@ -72,6 +72,11 @@ public class TourGoodDTO {
@ApiModelProperty(value = "状态:0-未发布;1-上架;2-下架")
private Integer status;
//是否省外;0-省内;1-省外
@ApiModelProperty(value = "是否省外;0-省内;1-省外")
private Integer isOutside;
//是否推荐:0-未推荐;1-已推荐
@ApiModelProperty(value = "是否推荐:0-未推荐;1-已推荐")
private Integer recommend;
......
......@@ -90,7 +90,12 @@ public class TourGood implements Serializable {
@Column(name = "status")
@ApiModelProperty(value = "状态:0-未发布;1-上架;2-下架")
private Integer status;
//是否省外;0-省内;1-省外
@Column(name = "is_outside")
@ApiModelProperty(value = "是否省外;0-省内;1-省外")
private Integer isOutside;
//创建时间
@Column(name = "crt_time")
@ApiModelProperty(value = "创建时间", hidden = true )
......
......@@ -83,6 +83,10 @@ public class TourGoodDetailVo {
//更新时间
@ApiModelProperty(value = "更新时间", hidden = true )
private Long updTime;
//是否省外;0-省内;1-省外
@ApiModelProperty(value = "是否省外;0-省内;1-省外")
private Integer isOutside;
//是否推荐:0-未推荐;1-已推荐
@ApiModelProperty(value = "是否推荐:0-未推荐;1-已推荐")
......
......@@ -2,11 +2,6 @@ package com.xxfc.platform.tour.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.math.BigDecimal;
......@@ -74,6 +69,10 @@ public class TourGoodVo implements Serializable {
@ApiModelProperty(value = "状态:0-未发布;1-上架;2-下架")
private Integer status;
//是否省外;0-省内;1-省外
@ApiModelProperty(value = "是否省外;0-省内;1-省外")
private Integer isOutside;
//天数
@ApiModelProperty(value = "天数")
private Integer number;
......
......@@ -24,6 +24,7 @@
<result property="isMember" column="is_member"/>
<result property="stock" column="stock"/>
<result property="unit" column="unit"/>
<result property="isOutside" column="is_outside"/>
</resultMap>
<resultMap type="com.xxfc.platform.tour.vo.TourGoodVo" id="tourGoodVoMap">
......@@ -47,12 +48,13 @@
<result property="stock" column="stock"/>
<result property="unit" column="unit"/>
<result property="tagNames" column="tagNames"/>
<result property="isOutside" column="is_outside"/>
</resultMap>
<!--查询旅游路线列表-->
<select id="getGoodList" parameterType="java.util.Map" resultMap="tourGoodMap">
SELECT * from tour_good t
where t.is_del=1 AND t.g.status=1
where t.is_del=1 AND t.status=1
<if test="params.query != null and params.query != ''">
and (t.`name` like CONCAT('%',#{params.query},'%') or t.introduce like CONCAT('%',#{params.query},'%'))
</if>
......
......@@ -2,14 +2,15 @@ package com.xxfc.platform.vehicle.feign;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.vehicle.common.RestResponse;
import com.xxfc.platform.vehicle.entity.Vehicle;
import com.xxfc.platform.vehicle.entity.VehicleModel;
import com.xxfc.platform.vehicle.pojo.BookVehicleVO;
import com.xxfc.platform.vehicle.pojo.CompanyDetail;
import com.xxfc.platform.vehicle.pojo.RentVehicleBookDTO;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* Created by ace on 2017/9/15.
*/
......@@ -18,6 +19,15 @@ public interface VehicleFeign {
@GetMapping(value = "/vehicleModel/{id}")
public ObjectRestResponse<VehicleModel> get(@PathVariable("id") int id);
@GetMapping(value = "/vehicleInfo/{id}")
public ObjectRestResponse<Vehicle> get(@PathVariable("id") String id);
@RequestMapping(value = "/vehicleInfo/findById", method = RequestMethod.GET)
public RestResponse<Vehicle> findById(@RequestParam("id")String id);
@RequestMapping(value = "/vehicleInfo/getByIds", method = RequestMethod.GET)
public RestResponse< List<Vehicle>> getByIds(@RequestParam("ids") List<String> id);
//修改评分
@RequestMapping(value = "/vehicleModel/app/addScore", method = RequestMethod.GET)
public RestResponse addScore(@RequestParam(value="id")Integer id, @RequestParam(value="score")Integer score);
......
......@@ -18,24 +18,6 @@ public class VehicleUserScoreDTO {
@ApiModelProperty("主键id")
private Integer id;
/**
* 用户id
*/
@ApiModelProperty(value = "用户id")
private Integer userId;
/**
* 订单id
*/
@ApiModelProperty(value = "订单id")
private Integer orderId;
/**
* 车型id
*/
@ApiModelProperty(value = "车型id")
private Integer modelId;
/**
* 评分类型
*/
......
package com.xxfc.platform.vehicle.pojo.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
......@@ -10,4 +11,66 @@ import lombok.Data;
*/
@Data
public class VehicleUserScoreVo {
/**
* 主键id
*/
@ApiModelProperty("主键id")
private Integer id;
/**
* 用户id
*/
@ApiModelProperty(value = "用户id")
private Integer userId;
/**
* 用户名
*/
@ApiModelProperty(value = "用户名")
private String userName;
/**
* 用户头像地址
*/
@ApiModelProperty(value = "用户头像地址")
private String headUrl;
/**
* 评分类型
*/
@ApiModelProperty(value = "评分类型")
private Integer type;
/**
* 评价分
*/
@ApiModelProperty(value = "评价分")
private Integer aveScore;
/**
* 是否匿名;0-否;1-是
*/
@ApiModelProperty(value = "是否匿名;0-否;1-是")
private Integer isAnony;
/**
* 评价
*/
@ApiModelProperty(value = "评价")
private String comment;
/**
* 图片
*/
@ApiModelProperty(value = "图片")
private String imgs;
/**
* 创建时间
*/
@ApiModelProperty(value = "创建时间", hidden = true )
private Long crtTime;
}
......@@ -2,6 +2,7 @@ package com.xxfc.platform.vehicle.biz;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.ace.cache.annotation.Cache;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
......@@ -121,6 +122,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),headers, HttpStatus.CREATED);
}
@Cache(key = "vehical")
public Vehicle get(String id){
return mapper.selectByPrimaryKey(id);
}
......
......@@ -18,6 +18,7 @@ import com.xxfc.platform.vehicle.pojo.Cascade;
import com.xxfc.platform.vehicle.pojo.CataVo;
import lombok.extern.slf4j.Slf4j;
import org.assertj.core.util.Arrays;
import org.springframework.aop.framework.AopContext;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -148,7 +149,7 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl
//插入一级标签获得id
mapper.insertSelective(parent);
Integer parentId = parent.getId();
int i = 1/0;
//取出二级标签
List<VehiclePlatCata> childrens = cascade.getChildren();
//逐条插入二级标签
......
package com.xxfc.platform.vehicle.biz;
import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.vehicle.entity.VehicleUserScore;
import com.xxfc.platform.vehicle.mapper.VehicleUserScoreMapper;
import com.xxfc.platform.vehicle.pojo.dto.ScoreTypeDTO;
import com.xxfc.platform.vehicle.pojo.dto.VehicleUserScoreDTO;
import com.xxfc.platform.vehicle.pojo.dto.VehicleUserScoreListDTO;
import com.xxfc.platform.vehicle.pojo.vo.VehicleUserScoreVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
......@@ -23,15 +29,18 @@ import java.util.List;
* @date 2019-06-18 15:03:58
*/
@Service
@Slf4j
public class VehicleUserScoreBiz extends BaseBiz<VehicleUserScoreMapper, VehicleUserScore> {
/**
* 根据车型id查询
* @param modelId
* @return
*/
public PageDataVO<VehicleUserScoreVo> findVehicleUserScorePageByModelId(Integer modelId) {
public PageDataVO<VehicleUserScoreVo> findVehicleUserScorePageByModelId(Integer modelId,Integer pageNo,Integer pageSize) {
//根据模型id查找
PageDataVO<VehicleUserScoreListDTO> vehicleUserScoreDTOPageDataVO = PageDataVO.pageInfo(pageNo,pageSize,()->mapper.findyByModelIdAndApproved(modelId,1));
List<Integer> userIds = vehicleUserScoreDTOPageDataVO.getData().stream().map(VehicleUserScoreListDTO::getUserId).collect(Collectors.toList());
return null;
}
......@@ -40,14 +49,20 @@ public class VehicleUserScoreBiz extends BaseBiz<VehicleUserScoreMapper, Vehicle
* @param vehicleUserScoreDTO
* @return
*/
public int saveVehicleUserScore(VehicleUserScoreDTO vehicleUserScoreDTO) {
public int saveVehicleUserScore(VehicleUserScoreDTO vehicleUserScoreDTO, AppUserDTO appUserDTO) {
if (log.isDebugEnabled()){
log.debug("用户:{},评分的数据:【{}】",appUserDTO.getNickname(),vehicleUserScoreDTO);
}
vehicleUserScoreDTO.setCrtTime(Instant.now().toEpochMilli());
List<ScoreTypeDTO> scoretype = vehicleUserScoreDTO.getScoretype();
//评分明细
vehicleUserScoreDTO.setComment(JSONObject.toJSONString(scoretype));
//计算平均分值
double avgScore = scoretype.stream().mapToInt(ScoreTypeDTO::getScore).average().getAsDouble();
VehicleUserScore vehicleUserScore = new VehicleUserScore();
BeanUtils.copyProperties(vehicleUserScoreDTO,vehicleUserScore);
//vehicleUserScore.setAveScore();
vehicleUserScore.setAveScore(Long.valueOf(Math.round(avgScore)).intValue());
vehicleUserScore.setUserId(appUserDTO.getUserid());
return mapper.insertSelective(vehicleUserScore);
}
}
\ No newline at end of file
......@@ -23,5 +23,4 @@ public class VehicleBaseController<Biz extends BaseBiz> {
return userFeign.userDetailByToken(userAuthConfig.getToken(request)).getData();
}
}
package com.xxfc.platform.vehicle.mapper;
import com.xxfc.platform.vehicle.entity.VehicleUserScore;
import com.xxfc.platform.vehicle.pojo.dto.VehicleUserScoreListDTO;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import tk.mybatis.mapper.common.Mapper;
import java.util.List;
/**
* 用户评分表
*
......@@ -11,5 +16,13 @@ import tk.mybatis.mapper.common.Mapper;
* @date 2019-06-18 15:03:58
*/
public interface VehicleUserScoreMapper extends Mapper<VehicleUserScore> {
/**
* 根据审核状态和车型id查询评论
* @param modelId
* @param status
* @return
*/
@Select("select `user_id` as `userId`,`comment` as `comment`,`ave_score` as `aveScore`,`is_anony` as `isAnony`,`imgs` as `imgs`,`crt_time` as `crtTime` from `vehicle_user_score` where `model_id`=#{modelId} and `status`=#{status}")
List<VehicleUserScoreListDTO> findyByModelIdAndApproved(@Param("modelId") Integer modelId, @Param("status") Integer status);
}
package com.xxfc.platform.vehicle.rest;
import cn.hutool.core.bean.BeanUtil;
import com.ace.cache.annotation.Cache;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONException;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
......@@ -94,6 +95,26 @@ public class VehicleController extends BaseController<VehicleBiz> {
return baseBiz.discard(idList);
}
@RequestMapping(value = "/findById", method = RequestMethod.GET)
public RestResponse<Vehicle> findById(String id) {
Vehicle vehicle = baseBiz.get(id);
return RestResponse.data(vehicle);
}
@RequestMapping(value = "/vehicleInfo/getByIds", method = RequestMethod.GET)
public RestResponse< List<Vehicle>> getByIds(@RequestParam("ids") List<String> ids){
if(ids == null) {
return RestResponse.codeAndMessage(500, "参数为空!");
}
List<Vehicle> vehicles = new ArrayList<>();
for(String id : ids) {
log.info("查询车辆信息Id:{}",id);
Vehicle vehicle = baseBiz.get(id);
vehicles.add(vehicle);
}
return RestResponse.suc(vehicles);
}
@RequestMapping(value = "/page", method = RequestMethod.GET)
public RestResponse<PageDataVO<QueryVehicleVo>> getByPage(@RequestParam String vehiclePageQueryVoJson) throws Exception {
VehiclePageQueryVo vehiclePageQueryVo = null;
......
package com.xxfc.platform.vehicle.rest;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
......@@ -12,7 +13,7 @@ import org.springframework.web.bind.annotation.*;
/**
* @author libin
* @version 1.0
* @description 评
* @description 评
* @data 2019/6/18 15:32
*/
@RestController
......@@ -20,27 +21,29 @@ import org.springframework.web.bind.annotation.*;
public class VehicleUserScoreController extends BaseController<VehicleUserScoreBiz, VehicleUserScore> {
/**
* 保存评
* 保存评
* @param vehicleUserScoreDTO
* @return
*/
@PostMapping("/score")
public ObjectRestResponse<Void> saveVehicleUserScore(VehicleUserScoreDTO vehicleUserScoreDTO){
int effectRows = getBaseBiz().saveVehicleUserScore(vehicleUserScoreDTO);
public ObjectRestResponse<Void> saveVehicleUserScore(@RequestBody VehicleUserScoreDTO vehicleUserScoreDTO, AppUserDTO appUserDTO){
int effectRows = getBaseBiz().saveVehicleUserScore(vehicleUserScoreDTO,appUserDTO);
if (effectRows>0){
return ObjectRestResponse.succ();
}
return ObjectRestResponse.createDefaultFail();
}
/**
* 根据车型查询评分列表
* 根据车型查询评论列表 根据评分时间排序
*
* @param modelId
* @return
*/
@GetMapping("/scores")
public ObjectRestResponse<PageDataVO<VehicleUserScoreVo>> findVehicleUserScorePageByModelId(@RequestParam("modelId") Integer modelId) {
PageDataVO<VehicleUserScoreVo> pageDataVO = getBaseBiz().findVehicleUserScorePageByModelId(modelId);
public ObjectRestResponse<PageDataVO<VehicleUserScoreVo>> findVehicleUserScorePageByModelId(@RequestParam("modelId") Integer modelId,
@RequestParam("pageNo")Integer pageNo,
@RequestParam("pageSize") Integer pageSize) {
PageDataVO<VehicleUserScoreVo> pageDataVO = getBaseBiz().findVehicleUserScorePageByModelId(modelId,pageNo,pageSize);
return ObjectRestResponse.succ(pageDataVO);
}
}
\ 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