Commit 9cf6d346 authored by jiaorz's avatar jiaorz

修改代码

parent 4abb6c63
......@@ -25,6 +25,7 @@ import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@Service
......@@ -94,7 +95,7 @@ public class MsgBiz {
List<Integer> ids = new ArrayList<>();
ids.add(2);
ids.add(4);
Query query = new Query(Criteria.where("body.type").in(ids));
Query query = new Query(Criteria.where("body.type").in(ids).and("count.praise").gt(1000));
int totalSize = mongoTemplate.find(query, Msg.class, "s_msg").size();
query.with(pageable);
query.with(new Sort(Sort.Direction.DESC, "count.praise"));
......@@ -131,13 +132,11 @@ public class MsgBiz {
* @return
*/
private List<Msg> fetchAndAttach(List<Msg> list, Integer userId) {
for (Msg msg : list) {
//添加评论
Iterator<Msg> iterator = list.iterator();
while (iterator.hasNext()) {
Msg msg = iterator.next();
Query query = new Query(Criteria.where("msgId").is(msg.getId()));
query.with(new Sort(Sort.Direction.DESC, "time"));
List<Comment> comments = mongoTemplate.find(query, Comment.class, "s_comment");
msg.setComments(replaceCommentResult(comments));
//添加点赞
List<Praise> praise = mongoTemplate.find(query, Praise.class, "s_praise");
msg.setPraises(replacePraiseResult(praise));
......@@ -148,7 +147,12 @@ public class MsgBiz {
msg.setIsPraise(0);
msg.setIsCollect(0);
}
//添加评论
List<Comment> comments = mongoTemplate.find(query, Comment.class, "s_comment");
msg.setComments(replaceCommentResult(comments));
}
return list;
}
......
......@@ -4,8 +4,8 @@ import java.util.HashMap;
import java.util.Map;
public enum CrosstownTypeEnum {
RentVehicle(1, "交车"),
TOUR(2, "还车"),
DEPARTURE(1, "交车"),
ARRIVE(2, "还车"),
;
/**
* 编码
......
......@@ -101,6 +101,7 @@ public class OrderVehicleCrosstown {
* deductions: 扣除项
* cost:费用
* id:编号(用于顺序)
* type :费用类型
*/
private String dedDetail;
......
......@@ -20,4 +20,8 @@ public class DedDetailDTO {
* 编号(用于顺序)
*/
Integer id;
//1、延期, 2、车辆损坏 3、其他
Integer type;
}
......@@ -29,4 +29,5 @@ public class OrderVehicleCrosstownDto extends OrderVehicleCrosstown {
private String vehicleNumberPlat;
private String username;
}
package com.xxfc.platform.order.biz;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions;
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.UserDTO;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.activity.user.UserInfoBiz;
import com.xxfc.platform.order.contant.enumerate.CrosstownTypeEnum;
import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.entity.OrderRentVehicleDetail;
import com.xxfc.platform.order.entity.OrderUserLicense;
......@@ -18,9 +17,12 @@ import com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto;
import com.xxfc.platform.vehicle.common.RestResponse;
import com.xxfc.platform.vehicle.entity.Vehicle;
import com.xxfc.platform.vehicle.feign.VehicleFeign;
import com.xxfc.platform.vehicle.pojo.VehicleArrivalVo;
import com.xxfc.platform.vehicle.pojo.VehicleDepartureVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
......@@ -73,6 +75,7 @@ public class OrderVehicalCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
return list;
}
@Transactional
public ObjectRestResponse<OrderVehicleCrosstownDto> add(OrderVehicleCrosstownDto orderVehicleCrosstownDto) {
log.info("添加的参数:orderVehicaleCrosstown = {}", orderVehicleCrosstownDto);
UserDTO userDTO = userInfoBiz.getAdminUserInfo();
......@@ -88,25 +91,33 @@ public class OrderVehicalCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
return ObjectRestResponse.createFailedResult(500,"订单不存在!");
}
OrderRentVehicleDetail orderRentVehicleDetail = orderRentVehicleBiz.selectById(baseOrder.getDetailId());
//出车
if(orderVehicleCrosstownDto.getType() == CrosstownTypeEnum.DEPARTURE.getCode()) { //交车
VehicleDepartureVo vehicleDepartureVo = new VehicleDepartureVo();
vehicleDepartureVo.setVehicleId(orderRentVehicleDetail.getVehicleId());
vehicleDepartureVo.setDepartureBranchCompanyId(orderRentVehicleDetail.getStartCompanyId());
vehicleDepartureVo.setExpectArrivalBranchCompanyId(orderRentVehicleDetail.getEndCompanyId());
vehicleDepartureVo.setMileage(orderVehicleCrosstownDto.getMileage());
vehicleDepartureVo.setUse("用户租车");
vehicleDepartureVo.setBookRecordId(Integer.parseInt(orderRentVehicleDetail.getBookRecordId() + ""));
vehicleDepartureVo.setUser(userDTO.getUsername());
vehicleDepartureVo.setUserTel(userDTO.getTelPhone());
vehicleDepartureVo.setCheckMan(orderVehicleCrosstownDto.getLicenseName());
vehicleDepartureVo.setCheckManTel(orderVehicleCrosstownDto.getLicensePhone());
vehicleFeign.departureBySmall(vehicleDepartureVo);
} else if (orderVehicleCrosstownDto.getType() == CrosstownTypeEnum.ARRIVE.getCode()) { //还车
VehicleArrivalVo vehicleArrivalVo = new VehicleArrivalVo();
vehicleArrivalVo.setVehicleId(orderRentVehicleDetail.getVehicleId());
vehicleArrivalVo.setArrivalBranchCompanyId(userDTO.getCompanyId());
vehicleArrivalVo.setMileage(orderVehicleCrosstownDto.getMileage());
vehicleArrivalVo.setRecycleMan(userDTO.getName());
vehicleArrivalVo.setRecycleManTel(userDTO.getTelPhone());
vehicleFeign.arrivalBySmall(vehicleArrivalVo);
}
//出车成功后修改订单状态
List<OrderVehicleCrosstownDto> oldValue = orderVehicalCrosstownBiz.selectByOrderId(orderVehicleCrosstownDto);
if (oldValue .size() == 1) {
//已有直接返回
//交车完成 设置订单状态为出行中
handleOrderStatus(baseOrder, orderRentVehicleDetail);
OrderVehicleCrosstownDto vehicleCrosstownDto = new OrderVehicleCrosstownDto();
BeanUtil.copyProperties(oldValue.get(0), vehicleCrosstownDto, CopyOptions.create().setIgnoreNullValue(true).setIgnoreError(true));
List<OrderUserLicense> orderUserLicenses = orderUserLicenseBiz.selectByIds(oldValue.get(0).getUserLicenseId()).getData();
if(orderUserLicenses != null && orderUserLicenses.size() > 0) {
orderVehicleCrosstownDto.setLicenseIdCard(orderUserLicenses.get(0).getLicenseIdCard());
orderVehicleCrosstownDto.setLicenseImg(orderUserLicenses.get(0).getLicenseImg());
orderVehicleCrosstownDto.setLicenseName(orderUserLicenses.get(0).getLicenseName());
orderVehicleCrosstownDto.setLicensePhone(orderUserLicenses.get(0).getLicensePhone());
}
RestResponse<Vehicle> restResponse = vehicleFeign.findById(orderRentVehicleDetail.getVehicleId());
if(restResponse.getData() != null) {
vehicleCrosstownDto.setVehicleNumberPlat(restResponse.getData().getNumberPlate());
}
return ObjectRestResponse.succ(vehicleCrosstownDto);
return ObjectRestResponse.succ(oldValue.get(0));
} else if(oldValue .size() <= 0) {
getOrderLicense(orderVehicleCrosstownDto);
orderVehicalCrosstownBiz.insertSelective(orderVehicleCrosstownDto);
......
......@@ -22,7 +22,7 @@ public enum ResCode {
//车辆信息相关返回码-预定申请信息
VEHICLE_BOOKED_RECORD_ALREADY_CHANGED(103001,"车辆预定申请已被审批,请刷新后继续操作"),
VEHICLE_BOOKED_RECORD_STATUS_CHANGED(103002,"车辆预定申请状态已变更,请刷新后继续操作"),
VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED(103003,"车辆预定里程数不符合,请刷新后继续操作"),
VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED(103003,"请输入仪表盘内当前显示的公里数"),
VEHICLE_DEPARTURE_VEHICLE_UNEXIST(104001,"车辆不存在"),
VEHICLE_DEPARTURE_VEHICLE_DISABLE(104002,"车辆不可用"),
......
......@@ -4,14 +4,13 @@ import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.vo.GoodDataVO;
import com.xxfc.platform.vehicle.common.RestResponse;
import com.xxfc.platform.vehicle.entity.*;
import com.xxfc.platform.vehicle.pojo.CompanyDetail;
import com.xxfc.platform.vehicle.pojo.RentVehicleBookDTO;
import com.xxfc.platform.vehicle.pojo.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Set;
import java.util.Map;
import java.util.Set;
/**
* Created by ace on 2017/9/15.
......@@ -30,6 +29,14 @@ public interface VehicleFeign {
@RequestMapping(value = "/vehicleInfo/getByIds", method = RequestMethod.GET)
public RestResponse< List<Vehicle>> getByIds(@RequestParam(value = "ids") List<String> id);
//提车
@PostMapping("/active/small/departure")
public RestResponse departureBySmall(@RequestBody VehicleDepartureVo departureVo);
//还车
@PostMapping("/active/small/arrival")
public RestResponse arrivalBySmall(@RequestBody VehicleArrivalVo arrivalVo);
//修改评分
@RequestMapping(value = "/vehicleModel/app/addScore", method = RequestMethod.GET)
public RestResponse addScore(@RequestParam(value="id")Integer id, @RequestParam(value="score")Integer score);
......
......@@ -4,6 +4,8 @@ import com.github.wxiaoqi.security.common.vo.PageParam;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class VehiclePlanDto extends PageParam {
......@@ -31,7 +33,7 @@ public class VehiclePlanDto extends PageParam {
@ApiModelProperty(value = "所属分公司大区")
private Integer zoneId;
private String[] companyIds;
private List<String> companyIds;
private String[] zoneIds;
private List<String> zoneIds;
}
......@@ -411,7 +411,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
for(Map.Entry<String,List<String>> entry:yearMonthAndDate.entrySet()){
Boolean rsEach = applyVehicle4EmployeePerMonth(bookVehicleVo.getVehicleId(),entry.getValue(),entry.getKey());
if(Boolean.FALSE.equals(rsEach)){
throw new BaseException(ResultCode.FAILED_CODE);
throw new BaseException("车辆已经被预定!");
}
}
......@@ -448,7 +448,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
//修改相关车辆预定记录
Boolean hasSuc = bookedVehicle(bookVehicleVo);
if(!hasSuc){
throw new BaseException(ResultCode.FAILED_CODE);
throw new BaseException("车辆预定失败");
}
//添加随车物品
......@@ -1270,6 +1270,8 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
if(userDTO == null) {
return ObjectRestResponse.createFailedResult(235, "token失效");
}
List<String> zoneList = null;
List<String> companyList = null;
if(vehiclePlanDto.getZoneId() == null) { //默认查出所有权限内的数据
if(DATA_ALL_FALSE.equals(userDTO.getDataAll())) { //不能获取全部数据
String zoneId = null;
......@@ -1278,16 +1280,24 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
} else {
zoneId = userDTO.getZoneId() + ",";
}
vehiclePlanDto.setZoneIds(zoneId.split(","));
zoneList = new ArrayList<>(Arrays.asList(zoneId.split(",")));
String companyId = null;
if(StringUtils.isNotBlank(userDTO.getDataCompany())) {
companyId = userDTO.getDataCompany();
} else {
companyId = userDTO.getCompanyId() + ",";
}
vehiclePlanDto.setCompanyIds(companyId.split(","));
companyList = new ArrayList<>(Arrays.asList(companyId.split(",")));
}
}
if(vehiclePlanDto.getParkBranchCompanyId() != null) {
if (companyList == null) {
companyList = Lists.newArrayList();
}
companyList.add(vehiclePlanDto.getParkBranchCompanyId() + "");
}
vehiclePlanDto.setCompanyIds(companyList);
vehiclePlanDto.setZoneIds(zoneList);
Query query = new Query(vehiclePlanDto);
PageDataVO<VehicleAndModelInfoVo> pageDataVO = PageDataVO.pageInfo(query, () -> mapper.getVehicle(query.getSuper()));
return ObjectRestResponse.succ(pageDataVO);
......
......@@ -376,9 +376,8 @@
</select>
<select id="getBookRecord" resultMap="searchBookRecord" parameterType="com.xxfc.platform.vehicle.pojo.VehicleBookRecordQueryVo">
select bc3.name parkCompanyName,bc4.name subordinateBranchName, conv(v2.booked_date,10,2) book_date, conv(v4.booked_hour,10,2) startHour,conv(v5.booked_hour,10,2) endHour, bc1.`name` lift_company_name, bc2.`name` ret_company_name, v3.number_plate,v1.*
select bc3.name parkCompanyName,bc4.name subordinateBranchName, conv(v4.booked_hour,10,2) startHour,conv(v5.booked_hour,10,2) endHour, bc1.`name` lift_company_name, bc2.`name` ret_company_name, v3.number_plate,v1.*
from vehicle_book_record v1
LEFT JOIN vehicle_book_info v2 on v1.vehicle_id = v2.vehicle and v2.year_month = CONCAT(YEAR(v1.book_start_date),"-",IF(MONTH(v1.book_start_date) > 10,MONTH(v1.book_start_date),CONCAT("0",MONTH(v1.book_start_date))))
LEFT JOIN vehicle_book_hour_info v4 on v4.book_record_id = v1.id and YEAR(v4.year_month_day) = YEAR(v1.book_start_date) AND MONTH(v4.year_month_day) = MONTH(v1.book_start_date) AND DAY(v4.year_month_day) =DAY(v1.book_start_date)
LEFT JOIN vehicle_book_hour_info v5 on v5.book_record_id = v1.id and YEAR(v5.year_month_day) = YEAR(v1.book_end_date) AND MONTH(v5.year_month_day) = MONTH(v1.book_end_date) AND DAY(v5.year_month_day) =DAY(v1.book_end_date)
LEFT JOIN branch_company bc1 ON v1.lift_company = bc1.id
......@@ -388,7 +387,7 @@
LEFT JOIN branch_company bc4 on v3.subordinate_branch = bc4.id
<where>
<if test="selectedMonth != null">
and v2.year_month = #{selectedMonth}
and (v1.book_start_date like CONCAT(#{selectedMonth}, "%") or v1.book_start_date like CONCAT(#{selectedMonth}, "%"))
</if>
<if test="numberPlate != null">
and v3.number_plate = #{numberPlate}
......
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