Commit 525708c9 authored by 周健威's avatar 周健威

解决冲突

parents fb85cfba 1399b47c
......@@ -18,8 +18,6 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example;
import java.lang.reflect.ParameterizedType;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
......@@ -51,6 +49,11 @@ public class UserBiz extends BaseBiz<UserMapper,User> {
@Override
@CacheClear(pre="user{1.username}")
public void updateSelectiveById(User entity) {
User user1= super.selectById(entity.getId());
if(user1!=null&&StringUtils.isNotBlank(entity.getPassword())&&!user1.getPassword().equals(entity.getPassword())){
String password = new BCryptPasswordEncoder(UserConstant.PW_ENCORDER_SALT).encode(entity.getPassword());
entity.setPassword(password);
}
super.updateSelectiveById(entity);
}
......@@ -68,7 +71,17 @@ public class UserBiz extends BaseBiz<UserMapper,User> {
public TableResultResponse<User> selectPage(Query query, User currentUser) {
if(DATA_ALL_TRUE.equals(currentUser.getDataAll())) {
return super.selectByQuery(query);
Example example = new Example(User.class);
if(query.entrySet().size()>0) {
Example.Criteria criteria = example.createCriteria();
for (Map.Entry<String, Object> entry : query.entrySet()) {
criteria.andLike(entry.getKey(), "%" + entry.getValue().toString() + "%");
}
}
example.createCriteria().andGreaterThan("id",1);
Page<Object> result = PageHelper.startPage(query.getPage(), query.getLimit());
List<User> list = mapper.selectByExample(example);
return new TableResultResponse<User>(result.getTotal(), list);
}else {
Example example = new Example(User.class);
if(query.entrySet().size()>0) {
......@@ -83,9 +96,24 @@ public class UserBiz extends BaseBiz<UserMapper,User> {
if(StringUtils.isNotBlank(currentUser.getDataZone())){
example.createCriteria().andIn("zoneId", Arrays.asList(currentUser.getDataZone().split(",")));
}
example.createCriteria().andGreaterThan("id",1);
Page<Object> result = PageHelper.startPage(query.getPage(), query.getLimit());
List<User> list = mapper.selectByExample(example);
return new TableResultResponse<User>(result.getTotal(), list);
}
}
public List<User> getCountByUsername(String username){
User user = new User();
user.setUsername(username);
return mapper.select(user);
}
public User getUserByUid(Integer toUid){
User user=mapper.getUserByUid(toUid);
if(user!=null){
user=mapper.selectByPrimaryKey(user.getId());
}
return user;
}
}
package com.github.wxiaoqi.security.admin.entity;
import java.io.Serializable;
import javax.persistence.*;
/**
* 用户关系表
*
* @author Mr.AG
* @email 463540703@qq.com
* @date 2019-06-04 14:29:29
*/
@Table(name = "base_user_relation")
public class BaseUserRelation implements Serializable {
private static final long serialVersionUID = 1L;
//主键id
@Id
private Integer id;
//用户id
@Column(name = "user_id")
private Integer userId;
//小程序用户id
@Column(name = "to_uid")
private Integer toUid;
//是否有效;0-有效;1-无效
@Column(name = "staus")
private Integer staus;
//创建时间
@Column(name = "crt_time")
private Long crtTime;
//更新时间
@Column(name = "upd_time")
private Long updTime;
//是否删除;0-正常;1-删除
@Column(name = "is_del")
private Integer isDel;
/**
* 设置:主键id
*/
public void setId(Integer id) {
this.id = id;
}
/**
* 获取:主键id
*/
public Integer getId() {
return id;
}
/**
* 设置:用户id
*/
public void setUserId(Integer userId) {
this.userId = userId;
}
/**
* 获取:用户id
*/
public Integer getUserId() {
return userId;
}
/**
* 设置:小程序用户id
*/
public void setToUid(Integer toUid) {
this.toUid = toUid;
}
/**
* 获取:小程序用户id
*/
public Integer getToUid() {
return toUid;
}
/**
* 设置:是否有效;0-有效;1-无效
*/
public void setStaus(Integer staus) {
this.staus = staus;
}
/**
* 获取:是否有效;0-有效;1-无效
*/
public Integer getStaus() {
return staus;
}
/**
* 设置:创建时间
*/
public void setCrtTime(Long crtTime) {
this.crtTime = crtTime;
}
/**
* 获取:创建时间
*/
public Long getCrtTime() {
return crtTime;
}
/**
* 设置:更新时间
*/
public void setUpdTime(Long updTime) {
this.updTime = updTime;
}
/**
* 获取:更新时间
*/
public Long getUpdTime() {
return updTime;
}
/**
* 设置:是否删除;0-正常;1-删除
*/
public void setIsDel(Integer isDel) {
this.isDel = isDel;
}
/**
* 获取:是否删除;0-正常;1-删除
*/
public Integer getIsDel() {
return isDel;
}
}
package com.github.wxiaoqi.security.admin.mapper;
import com.github.wxiaoqi.security.admin.entity.BaseUserRelation;
import tk.mybatis.mapper.common.Mapper;
/**
* 用户关系表
*
* @author Mr.AG
* @email 463540703@qq.com
* @date 2019-06-04 14:29:29
*/
public interface BaseUserRelationMapper extends Mapper<BaseUserRelation> {
}
......@@ -10,4 +10,5 @@ public interface UserMapper extends Mapper<User> {
public List<User> selectMemberByGroupId(@Param("groupId") int groupId);
public List<User> selectLeaderByGroupId(@Param("groupId") int groupId);
// public List<User> userPage(@Param("groupId") String name);
User getUserByUid(@Param("to_uid") Integer to_uid);
}
\ No newline at end of file
......@@ -60,11 +60,24 @@ public class PublicController {
if (username == null) {
throw new Exception();
}
Integer userid=Integer.parseInt(username);
Integer userid = Integer.parseInt(username);
AppUserDetail user = detailBiz.getUserByUserid(userid);
if (user == null) {
throw new Exception();
}
return new ObjectRestResponse<AppUserDetail>().rel(true).data(user);
}
@RequestMapping(value = "/userinfo-by-uid", method = RequestMethod.GET)
public @ResponseBody
ObjectRestResponse userinfoByUid(Integer uid) throws Exception {
if (uid == null||uid==0) {
throw new Exception();
}
User user = userBiz.getUserByUid(uid);
if (user == null) {
throw new Exception();
}
return new ObjectRestResponse<User>().rel(true).data(user);
}
}
......@@ -18,6 +18,7 @@ import com.github.wxiaoqi.security.common.rest.CommonBaseController;
import com.github.wxiaoqi.security.common.util.Query;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
......@@ -73,6 +74,13 @@ public class UserController extends CommonBaseController {
@IgnoreClientToken
public ObjectRestResponse<User> add(@RequestBody UserVO vo){
handleDataLimit(vo);
String username=vo.getUsername();
if(StringUtils.isNotBlank(username)) {
List<User> list = userBiz.getCountByUsername(username);
if (list.size() > 0) {
throw new RuntimeException("用户名不能重复");
}
}
userBiz.insertSelective(vo);
//添加权限关系
groupBiz.modifyUserGroups(vo.getId(), vo.getMembers());
......@@ -81,10 +89,11 @@ public class UserController extends CommonBaseController {
private void handleDataLimit(@RequestBody UserVO dto) {
if(null != dto.getDataLimit()) {
if(dto.getDataLimit().contains(CURRENT_COMPANY)) {
if(dto.getDataLimit().contains(CURRENT_COMPANY)&&dto.getCompanyId()!=null) {
dto.setDataCompany(dto.getCompanyId().toString());
}
if(dto.getDataLimit().contains(CURRENT_ZONE)) {
if(dto.getDataLimit().contains(CURRENT_ZONE)&&dto.getZoneId()!=null) {
dto.setDataZone(dto.getZoneId().toString());
}
if(dto.getDataLimit().contains(DATA_ALL)) {
......@@ -149,6 +158,19 @@ public class UserController extends CommonBaseController {
@ResponseBody
public ObjectRestResponse<User> update(@RequestBody UserVO vo){
handleDataLimit(vo);
String username=vo.getUsername();
if(StringUtils.isNotBlank(username)){
List<User> list=userBiz.getCountByUsername(username);
if(list.size()>1){
throw new RuntimeException("用户名不能重复");
}
if(list.size()==1){
User user=list.get(0);
if(user.getId()!=vo.getId()){
throw new RuntimeException("用户名不能重复");
}
}
}
userBiz.updateSelectiveById(vo);
//添加权限关系
groupBiz.modifyUserGroups(vo.getId(), vo.getMembers());
......
......@@ -26,6 +26,7 @@
<result column="upd_user" jdbcType="VARCHAR" property="updUser" />
<result column="upd_name" jdbcType="VARCHAR" property="updName" />
<result column="upd_host" jdbcType="VARCHAR" property="updHost" />
<result column="data_all" jdbcType="SMALLINT" property="dataAll" />
<result column="attr1" jdbcType="VARCHAR" property="attr1" />
<result column="attr2" jdbcType="VARCHAR" property="attr2" />
<result column="attr3" jdbcType="VARCHAR" property="attr3" />
......@@ -48,6 +49,12 @@
on gm.user_id = u.id where gm.group_id = #{groupId}
</select>
<select id="getUserByUid" resultMap="BaseResultMap">
select u.* from base_user u
left join base_user_relation r
on r.user_id = u.id where r.to_uid = #{to_uid} limit 1
</select>
<!-- <select id="userPage" resultMap="BaseResultMap">-->
<!-- select u.* from base_user u-->
<!-- left join base_group_leader gm-->
......
......@@ -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.2:3306/ag_admin_v1?useUnicode=true&characterEncoding=UTF-8
username: root
password: sslcloud123*()
jackson:
......
#代码生成器,配置信息
#包名
package=com.xxfc.platform.order
package=com.github.wxiaoqi.security.admin
#作者
author=zjw
#Email
......
......@@ -74,6 +74,8 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
@Value("${vehicle.baseUploadPath}")
private String baseUploadPath ;
@Value("${vehicle.fristMileage}")
private Integer fristMileage ;
/**
* 每批次最大更、插入车辆最大条目数
......@@ -184,6 +186,8 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
Vehicle vehicle = new Vehicle();
BeanUtils.copyProperties(vehicle, addOrUpdateVehicleVo);
vehicle.setId(UUID.randomUUID().toString());
vehicle.setParkBranchCompanyId(vehicle.getSubordinateBranch());
vehicle.setMaintenanceMileage(fristMileage);
// 检查车牌或者编码是否已存在,已存在则返回失败
List<Vehicle> exitsVehicles = lockByCode(addOrUpdateVehicleVo);
if(CollectionUtils.isNotEmpty(exitsVehicles)){
......@@ -227,6 +231,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
for(AddOrUpdateVehicleVo addOrUpdateVehicleVo:addOrUpdateVehicleVoList){
Vehicle vehicle = new Vehicle();
BeanUtils.copyProperties(vehicle, addOrUpdateVehicleVo);
vehicle.setParkBranchCompanyId(vehicle.getSubordinateBranch());
//悲观锁,检查是否已存在车牌或编码
List<Vehicle> exitsVehicles = lockByCode(addOrUpdateVehicleVo);
if(CollectionUtils.isNotEmpty(exitsVehicles)){
......@@ -304,7 +309,9 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
vehicleBookRecord.setRemark(bookVehicleVo.getRemark());
vehicleBookRecord.setDestination(bookVehicleVo.getDestination());
vehicleBookRecord.setLiftCompany(bookVehicleVo.getLiftCompany());
vehicleBookRecord.setRetCompany(bookVehicleVo.getRetCompany());
vehicleBookRecordMapper.insertSelective(vehicleBookRecord);
Long bookRecordId=vehicleBookRecord.getId();
List<Map<String,Object>> params = Lists.newArrayList();
if(MapUtils.isNotEmpty(bookVehicleVo.getSelectedAccItem())){
for(Map.Entry<Integer,Integer> idAndAmount : bookVehicleVo.getSelectedAccItem().entrySet()){
......@@ -316,7 +323,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> {
}
bookRecordAccItemMapper.batchAdd(params);
}
return RestResponse.suc();
return RestResponse.suc(bookRecordId);
}
@Transactional
......
......@@ -31,6 +31,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
......@@ -74,31 +75,53 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
public RestResponse<Integer> lift(Integer operatorId,String userName,LiftVehicleVo liftVehicleVo) throws Exception{
VehicleBookRecord record=mapper.selectByPrimaryKey( liftVehicleVo.getId());
Integer mileageLift=liftVehicleVo.getMileageLift();
if(record==null||mileageLift==null){
return RestResponse.code(ResCode.VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED.getCode());
}
Integer mileageLift1=record.getMileageLift();
if(mileageLift1==null||mileageLift>=mileageLift1){
Map<String, Object> params = PropertyUtils.describe(liftVehicleVo);
params.put("reviewerLift", operatorId);
params.put("reviewerNameLift", userName);
params.put("targetStatus", VehicleBookRecordStatus.LIFTED.getCode());
params.put("conditionStatus", VehicleBookRecordStatus.APPROVE.getCode());
params.put("mileageLift", liftVehicleVo.getMileageLift());
params.put("mileageLift",mileageLift );
Integer effected = mapper.liftOrRet(params);
if(effected == 0){
return RestResponse.code(ResCode.VEHICLE_BOOKED_RECORD_STATUS_CHANGED.getCode());
}
}else {
return RestResponse.code(ResCode.VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED.getCode());
}
return RestResponse.suc();
}
public RestResponse<Integer> retVehicle(Integer operatorId,String userName,RetVehicleVo retVehicleVo) throws Exception{
VehicleBookRecord record=mapper.selectByPrimaryKey( retVehicleVo.getId());
Integer mileageRet=retVehicleVo.getMileageRet();
if(record==null||mileageRet==null){
return RestResponse.code(ResCode.VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED.getCode());
}
Integer mileageLift=record.getMileageLift();
if(mileageLift!=null&&mileageRet>=mileageLift){
Map<String, Object> params = PropertyUtils.describe(retVehicleVo);
params.put("targetStatus", VehicleBookRecordStatus.RETURNED.getCode());
params.put("conditionStatus", VehicleBookRecordStatus.LIFTED.getCode());
params.put("reviewerReturn", operatorId);
params.put("reviewerNameReturn", userName);
params.put("mileageRet", retVehicleVo.getMileageRet());
params.put("mileageRet", mileageRet);
params.put("haveViolation", retVehicleVo.getHaveViolation());
Integer effected = mapper.liftOrRet(params);
if(effected == 0){
return RestResponse.code(ResCode.VEHICLE_BOOKED_RECORD_STATUS_CHANGED.getCode());
}
}else {
return RestResponse.code(ResCode.VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED.getCode());
}
return RestResponse.suc();
}
......@@ -108,7 +131,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
* @return
* @throws Exception
*/
public PageDataVo<QueryVehicleBookRecordVo> page(VehicleBookRecordQueryVo vehicleBookRecordQueryVo) throws Exception{
public PageDataVo<QueryVehicleBookRecordVo> page(VehicleBookRecordQueryVo vehicleBookRecordQueryVo,List<Integer> companyList) throws Exception{
Map<String, Object> params = PropertyUtils.describe(vehicleBookRecordQueryVo);
String selectedMonth = (String)params.get("selectedMonth");
if(StringUtils.isBlank(selectedMonth)){
......@@ -128,6 +151,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
Integer pageNo = (Integer) params.get("page");
params.remove("pageNo");
PageHelper.startPage(pageNo,pageSize);
params.put("companyList", companyList);
List<QueryVehicleBookRecordVo> bookRecordAndVehicleInfo = mapper.getByPage(params);
Map<Long,Map<Integer,Integer>> rs = getRelatedAccItemsAndAmount(bookRecordAndVehicleInfo,
bookRecordAccItemTbName);
......
......@@ -25,17 +25,17 @@ public class VehicleDepartureService {
@Autowired
VehicleMapper vehicleMapper;
public PageInfo<VehicleDepartureLogVo> page(String numberPlate, Integer page, Integer limit) {
public PageInfo<VehicleDepartureLogVo> page(String numberPlate,String time, Integer page, Integer limit) {
PageHelper.startPage(page, limit);
return new PageInfo<>(vehicleDepartureLogMapper.selectVoAll(numberPlate));
return new PageInfo<>(vehicleDepartureLogMapper.selectVoAll(numberPlate,time));
}
public PageInfo<VehicleDepartureLogVo> pageNotAllData(String numberPlate, Integer page, Integer limit, List<Integer> companyList) {
public PageInfo<VehicleDepartureLogVo> pageNotAllData(String numberPlate,String time, Integer page, Integer limit, List<Integer> companyList) {
PageHelper.startPage(page, limit);
if (companyList == null || companyList.size() == 0) {
companyList = Arrays.asList(-1);
}
return new PageInfo<>(vehicleDepartureLogMapper.selectVoAllNotAllData(numberPlate, companyList));
return new PageInfo<>(vehicleDepartureLogMapper.selectVoAllNotAllData(numberPlate,time, companyList));
}
public PageInfo<VehicleDepartureLogVo> findByVehicle(String vehicleId, Integer page, Integer limit) {
......
......@@ -45,9 +45,9 @@ public class VehicleUpkeepService {
vehicleUpkeepItemMapper.deleteByPrimaryKey(id);
}
public PageInfo<VehicleUpkeepLogVo> pageLog(String numberPlate, Integer page, Integer limit) {
public PageInfo<VehicleUpkeepLogVo> pageLog(String numberPlate, Integer page, Integer limit, List<Integer> companyList) {
PageHelper.startPage(page, limit);
return new PageInfo<>(vehicleUpkeepLogMapper.selectVoAll(numberPlate));
return new PageInfo<>(vehicleUpkeepLogMapper.selectVoAll(numberPlate,companyList));
}
public VehicleUpkeepLogVo getLogVoById(Integer id) {
......
......@@ -88,7 +88,7 @@ public class VehicleWarningMsgBiz extends BaseBiz<VehicleWarningMsgMapper, Vehic
*/
public PageDataVo<VehicleWarningMsg> getByPage(QueryVehicleWarningMsgVo queryVehicleWarningMsgVo){
PageHelper.startPage(queryVehicleWarningMsgVo.getPage(),queryVehicleWarningMsgVo.getLimit());
List<VehicleWarningMsg> vehicleWarningMsgs = mapper.getByPage(queryVehicleWarningMsgVo);
List<VehicleWarningMsg> vehicleWarningMsgs = mapper.getByPages(queryVehicleWarningMsgVo);
PageInfo<VehicleWarningMsg> vehicleWarningMsgPageInfo = new PageInfo<>(vehicleWarningMsgs);
return PageDataVo.pageInfo(vehicleWarningMsgPageInfo);
}
......
......@@ -18,6 +18,7 @@ public enum ResCode {
//车辆信息相关返回码-预定申请信息
VEHICLE_BOOKED_RECORD_ALREADY_CHANGED(103001,"车辆预定申请已被审批,请刷新后继续操作"),
VEHICLE_BOOKED_RECORD_STATUS_CHANGED(103002,"车辆预定申请状态已变更,请刷新后继续操作"),
VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED(103003,"车辆预定里程数不符合,请刷新后继续操作"),
VEHICLE_DEPARTURE_VEHICLE_UNEXIST(104001,"车辆不存在"),
VEHICLE_DEPARTURE_VEHICLE_DISABLE(104002,"车辆不可用"),
......
......@@ -14,5 +14,7 @@ import org.springframework.web.bind.annotation.RequestParam;
public interface UserFeign {
@RequestMapping(value = "/public/userinfo-by-token")
public ObjectRestResponse<UserDTO> userinfoByToken(@RequestParam("token") String token);
@RequestMapping(value = "/public/userinfo-by-uid")
public ObjectRestResponse<UserDTO> userinfoByUid(@RequestParam("uid") Integer uid);
}
......@@ -13,11 +13,11 @@ public interface VehicleDepartureLogMapper extends BaseMapper<VehicleDepartureLo
List<VehicleDepartureLogVo> selectByVehicleId(String vehicleId);
List<VehicleDepartureLogVo> selectVoAll(@Param("numberPlate") String numberPlate);
List<VehicleDepartureLogVo> selectVoAll(@Param("numberPlate") String numberPlate,@Param("time") String time);
List<VehicleDepartureLogVo> selectVoAllNotAllData(@Param("numberPlate") String numberPlate, @Param("companyList") List<Integer> companyList);
List<VehicleDepartureLogVo> selectVoAllNotAllData(@Param("numberPlate") String numberPlate, @Param("time") String time,@Param("companyList") List<Integer> companyList);
Integer selectMileageByVehicleId(String vehicleId);
Integer selectDayByVehicleId(String vehicleId);
String selectDayByVehicleId(String vehicleId);
}
......@@ -27,4 +27,10 @@ public interface VehicleMapper extends Mapper<Vehicle> {
@Param("lastStatus") Integer lastStatus);
Vehicle selectByNumberPlate(String numberPlate);
//保养结束
int updateMileageStatusByIdAndStatus(@Param("vehicleId") String vehicleId, @Param("status") Integer status,
@Param("lastStatus") Integer lastStatus,@Param("mileage") Integer mileage);
//开始保养
int upMileageByIdAndStatus(@Param("vehicleId") String vehicleId, @Param("status") Integer status,
@Param("lastStatus") Integer lastStatus,@Param("mileage") Integer mileage);
}
\ No newline at end of file
......@@ -9,7 +9,7 @@ import tk.mybatis.mapper.common.Mapper;
import java.util.List;
public interface VehicleUpkeepLogMapper extends Mapper<VehicleUpkeepLog> {
List<VehicleUpkeepLogVo> selectVoAll(@Param("numberPlate") String numberPlate);
List<VehicleUpkeepLogVo> selectVoAll(@Param("numberPlate") String numberPlate,@Param("companyList")List<Integer> companyList);
VehicleUpkeepLogVo selectVoById(Integer id);
......
......@@ -11,6 +11,7 @@ public interface VehicleWarningMsgMapper extends Mapper<VehicleWarningMsg> {
public List<VehicleWarningMsg> getByPage(QueryVehicleWarningMsgVo queryVehicleWarningMsgVo);
public List<VehicleWarningMsg> getByPages(QueryVehicleWarningMsgVo queryVehicleWarningMsgVo);
public List<VehicleWarningMsg> getMsgByVehicle(String vehicleId);
......
package com.xinxincaravan.caravan.vehicle.rest;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.xinxincaravan.caravan.vehicle.biz.VehicleActiveService;
import com.xinxincaravan.caravan.vehicle.common.RestResponse;
import com.xinxincaravan.caravan.vehicle.constant.ResCode.ResCode;
......@@ -37,6 +38,42 @@ public class VehicleActiveController {
return RestResponse.suc();
}
/**
* 发车
*
* @return
*/
@PostMapping("small/departure")
@IgnoreUserToken
public RestResponse departureBySmall(@RequestBody VehicleDepartureVo departureVo) {
if (departureVo == null || departureVo.getVehicleId() == null
|| departureVo.getMileage() == null || departureVo.getDepartureBranchCompanyId() == null
|| departureVo.getExpectArrivalBranchCompanyId() == null) {
return RestResponse.codeAndMessage(ResCode.INVALID_REST_REQ_PARAM.getCode(),
ResCode.INVALID_REST_REQ_PARAM.getDesc());
}
vehicleActiveService.departure(departureVo);
return RestResponse.suc();
}
/**
* 还车
*
* @param arrivalVo
* @return
*/
@PostMapping("small/arrival")
public RestResponse arrivalBySmall(@RequestBody VehicleArrivalVo arrivalVo) {
if (arrivalVo == null || arrivalVo.getVehicleId() == null
|| arrivalVo.getMileage() == null) {
return RestResponse.codeAndMessage(ResCode.INVALID_REST_REQ_PARAM.getCode(),
ResCode.INVALID_REST_REQ_PARAM.getDesc());
}
vehicleActiveService.arrival(arrivalVo);
return RestResponse.suc();
}
/**
* 还车
*
......
......@@ -104,7 +104,27 @@ public class VehicleController extends BaseController<VehicleBiz> {
return RestResponse.code(ResCode.INVALID_REST_REQ_PARAM.getCode());
}
}
@RequestMapping(value = "/small/page", method = RequestMethod.GET)
@IgnoreUserToken
public RestResponse<PageDataVo<QueryVehicleVo>> getByPageBySmall(@RequestParam String vehiclePageQueryVoJson,@RequestParam Integer uid) throws Exception {
VehiclePageQueryVo vehiclePageQueryVo = null;
try {
vehiclePageQueryVo = JSON.parseObject(vehiclePageQueryVoJson, VehiclePageQueryVo.class);
UserDTO userDTO = userFeign.userinfoByUid(uid).getData();
if (userDTO != null) {
if (userDTO.getDataAll() == 2) {
List<Integer> companyList = vehicleBiz.dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
return RestResponse.data(baseBiz.getByPageNotAllData(vehiclePageQueryVo, companyList));
}
}
return RestResponse.data(baseBiz.getByPage(vehiclePageQueryVo));
} catch (JSONException ex) {
return RestResponse.code(ResCode.INVALID_REST_REQ_PARAM.getCode());
} catch (CustomIllegalParamException ex) {
return RestResponse.code(ResCode.INVALID_REST_REQ_PARAM.getCode());
}
}
@RequestMapping(value = "/upload/drivingLicense", method = RequestMethod.POST)
public RestResponse uploadDrivingLicense(@RequestParam("file") MultipartFile file)
throws Exception {
......@@ -146,9 +166,18 @@ public class VehicleController extends BaseController<VehicleBiz> {
public RestResponse<Integer> applyVehicle(@RequestBody BookVehicleVo bookVehicleVo) throws Exception {
Integer operatorId = Integer.parseInt(BaseContextHandler.getUserID());
String userName = BaseContextHandler.getName();
return baseBiz.applyVehicle4Employee(operatorId, bookVehicleVo, userName);
RestResponse<Integer> result= baseBiz.applyVehicle4Employee(operatorId, bookVehicleVo, userName);
if(result.getStatus()==200){
if(result.getData()!=null||result.getData()>0){
String id=result.getData()+"";
Long bookRecordId=Long.parseLong(id);
return baseBiz.reviewVehicleBooking(operatorId, bookRecordId, VehicleBookRecordStatus.APPROVE.getCode(), userName);
}
}
return result;
}
/**
* 批准预定车辆预定
*
......@@ -222,7 +251,14 @@ public class VehicleController extends BaseController<VehicleBiz> {
VehicleBookRecordQueryVo vehicleBookRecordQueryVo = null;
try {
vehicleBookRecordQueryVo = JSON.parseObject(vehicleBookRecordQueryVoJson, VehicleBookRecordQueryVo.class);
return RestResponse.data(vehicleBookRecordBiz.page(vehicleBookRecordQueryVo));
UserDTO userDTO = userFeign.userinfoByToken(userAuthConfig.getToken(request)).getData();
List<Integer> companyList =new ArrayList<>();
if (userDTO != null) {
if (userDTO.getDataAll() == 2) {
companyList = vehicleBiz.dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
}
}
return RestResponse.data(vehicleBookRecordBiz.page(vehicleBookRecordQueryVo,companyList));
} catch (JSONException ex) {
return RestResponse.code(ResCode.INVALID_REST_REQ_PARAM.getCode());
} catch (CustomIllegalParamException ex) {
......
package com.xinxincaravan.caravan.vehicle.rest;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.xinxincaravan.caravan.vehicle.biz.VehicleBiz;
import com.xinxincaravan.caravan.vehicle.biz.VehicleDepartureService;
......@@ -34,7 +35,7 @@ public class VehicleDepartureController {
private UserAuthConfig userAuthConfig;
@GetMapping("page")
public RestResponse page(String numberPlate, Integer page, Integer limit, HttpServletRequest request) {
public RestResponse page(String numberPlate, String time,Integer page, Integer limit, HttpServletRequest request) {
if (page == null || limit == null) {
page = 1;
limit = 10;
......@@ -43,10 +44,26 @@ public class VehicleDepartureController {
if (userDTO != null) {
if (userDTO.getDataAll() == 2) {
List<Integer> companyList = vehicleBiz.dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
return RestResponse.data(vehicleDepartureService.pageNotAllData(numberPlate, page, limit, companyList));
return RestResponse.data(vehicleDepartureService.pageNotAllData(numberPlate,time, page, limit, companyList));
}
}
return RestResponse.suc(vehicleDepartureService.page(numberPlate, page, limit));
return RestResponse.suc(vehicleDepartureService.page(numberPlate,time,page, limit));
}
@GetMapping("small/page")
@IgnoreUserToken
public RestResponse pageBySmall(String numberPlate, String time,Integer page, Integer limit, Integer uid,HttpServletRequest request) {
if (page == null || limit == null) {
page = 1;
limit = 10;
}
UserDTO userDTO = userFeign.userinfoByUid(uid).getData();
if (userDTO != null) {
if (userDTO.getDataAll() == 2) {
List<Integer> companyList = vehicleBiz.dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
return RestResponse.data(vehicleDepartureService.pageNotAllData(numberPlate,time, page, limit, companyList));
}
}
return RestResponse.suc(vehicleDepartureService.page(numberPlate,time,page, limit));
}
@GetMapping("findByVehicle")
......
package com.xinxincaravan.caravan.vehicle.rest;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.xinxincaravan.caravan.vehicle.biz.VehicleBiz;
import com.xinxincaravan.caravan.vehicle.biz.VehicleUpkeepService;
import com.xinxincaravan.caravan.vehicle.common.RestResponse;
import com.xinxincaravan.caravan.vehicle.constant.ResCode.ResCode;
import com.xinxincaravan.caravan.vehicle.entity.VehicleUpkeepItem;
import com.xinxincaravan.caravan.vehicle.feign.UserFeign;
import com.xinxincaravan.caravan.vehicle.feign.dto.UserDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
@RestController
@RequestMapping("upkeep")
public class VehicleUpkeepController {
......@@ -14,6 +22,16 @@ public class VehicleUpkeepController {
@Autowired
private VehicleUpkeepService vehicleUpkeepService;
@Autowired
VehicleBiz vehicleBiz;
@Autowired
UserFeign userFeign;
@Autowired
private UserAuthConfig userAuthConfig;
@Autowired
protected HttpServletRequest request;
@GetMapping("item/all")
public RestResponse allItem() {
......@@ -65,7 +83,14 @@ public class VehicleUpkeepController {
page = 1;
limit = 10;
}
return RestResponse.suc(vehicleUpkeepService.pageLog(numberPlate, page, limit));
UserDTO userDTO = userFeign.userinfoByToken(userAuthConfig.getToken(request)).getData();
List<Integer> companyList =new ArrayList<>();
if (userDTO != null) {
if (userDTO.getDataAll() == 2) {
companyList = vehicleBiz.dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
}
}
return RestResponse.suc(vehicleUpkeepService.pageLog(numberPlate, page, limit,companyList));
}
@GetMapping("log/{id}")
......
......@@ -123,4 +123,8 @@ public class AddOrUpdateVehicleVo {
* 生产商
*/
private Date receiveTime;
/**
* 最后公里数
*/
private Integer mileageLastUpdate;
}
\ No newline at end of file
......@@ -72,5 +72,8 @@ public class BookVehicleVo {
*/
private Integer haveViolation;
//还车分公司
private Integer retCompany;
}
\ No newline at end of file
......@@ -91,6 +91,10 @@ public class QueryVehicleVo {
* 保养时间
*/
private Date maintenanceDate;
/**
* 保养时间
*/
private Integer mileage;
/**
* 保养里程数
......
......@@ -20,6 +20,10 @@ public class VehicleDepartureLogVo {
String arrivalTime;
Integer mileageStart;
Integer mileageEnd;
Integer mileage;
Integer state;
String numberPlate;
String departureDay;
String departureName;
String arrivalName;
}
......@@ -14,7 +14,7 @@ public class VehicleDepartureStatisticDataVo {
/**
* 出车天数
*/
Integer departureDay;
String departureDay;
/**
* 出车公里数
*/
......
......@@ -31,6 +31,19 @@ public class VehiclePageQueryVo {
* 所属分支机构(id)
*/
private Integer subordinateBranch;
/**
* 所属分支机构(id)
*/
private Integer addrProvince;
/**
* 所属分支机构(id)
*/
private Integer addrCity;
/**
* 片区
*/
private Integer zoneId;
/**
* 用途类型:租赁房车(1)、展车等,对应关系见车辆常量表
......
......@@ -56,11 +56,15 @@ public class VehicleWarningMsgQueryVo {
*/
private Integer vehicleCode;
private Integer subordinateBranch;
/**
* 对应车牌号
*/
private String numberPlate;
private Integer mileageLastUpdate;
private Date createTime;
......
......@@ -189,6 +189,7 @@
vehicle_book_record
where
`book_end_date` between #{startDate} and #{endDate}
order by id
limit #{pageStart},#{pageSize}
</select>
......@@ -243,6 +244,23 @@
vehicle_book_info vbf on vbf.vehicle = vbr.vehicle and vbf.year_month = #{selectedMonth}
where
1=1
<if test="companyList != null and companyList.size() > 0">
and ( vbr.lift_company in (
<trim suffixOverrides=",">
<foreach collection="companyList" item="companyId">
#{companyId},
</foreach>
</trim>
)
or vbr.ret_company in (
<trim suffixOverrides=",">
<foreach collection="companyList" item="companyId">
#{companyId},
</foreach>
</trim>
)
)
</if>
<if test="liftCompany !=null">
and vbr.lift_company = #{liftCompany}
</if>
......
......@@ -17,33 +17,63 @@
order by create_time desc
</select>
<select id="selectVoAll" resultType="com.xinxincaravan.caravan.vehicle.vo.VehicleDepartureLogVo">
select vehicle_departure_log.*,vehicle.number_plate
select vehicle_departure_log.*,vehicle.number_plate,
/* IFNULL(DATEDIFF(vehicle_departure_log.arrival_time,vehicle_departure_log.departure_time),0)*/
CONCAT(IFNULL(floor((unix_timestamp(vehicle_departure_log.arrival_time) - unix_timestamp(vehicle_departure_log.departure_time)) / 86400),0),'天',
IFNULL(floor(IF((unix_timestamp(vehicle_departure_log.arrival_time) - unix_timestamp(vehicle_departure_log.departure_time))>86400,(unix_timestamp(vehicle_departure_log.arrival_time)
- unix_timestamp(vehicle_departure_log.departure_time)) MOD 86400/3600,(unix_timestamp(vehicle_departure_log.arrival_time) - unix_timestamp(vehicle_departure_log.departure_time))/3600)),0),'小时')
as departureDay,bc.name as departureName,bc1.name as arrivalName,
IF((IFNULL(vehicle_departure_log.mileage_end,0)-IFNULL(vehicle_departure_log.mileage_start,0))>0,IFNULL(vehicle_departure_log.mileage_end,0)-IFNULL(vehicle_departure_log.mileage_start,0),0) as mileage
from vehicle_departure_log
left join vehicle on vehicle_departure_log.vehicle_id = vehicle.id
LEFT JOIN branch_company bc ON vehicle_departure_log.departure_branch_company_id = bc.id
LEFT JOIN branch_company bc1 ON vehicle_departure_log.arrival_branch_company_id = bc1.id
<trim prefix="where">
1=1
<if test="numberPlate != null and numberPlate != ''">
vehicle.number_plate = #{numberPlate}
and vehicle.number_plate = #{numberPlate}
</if>
<if test="time != null and time != ''">
and (vehicle_departure_log.arrival_time >= str_to_date(#{time}, '%Y-%m-%d %H')
or TO_DAYS(vehicle_departure_log.arrival_time)=TO_DAYS(str_to_date(#{time}, '%Y-%m-%d %H'))
or vehicle_departure_log.arrival_time is null
)
and
(
vehicle_departure_log.departure_time &lt;= str_to_date(#{time}, '%Y-%m-%d %H')
or TO_DAYS(vehicle_departure_log.departure_time)=TO_DAYS(str_to_date(#{time}, '%Y-%m-%d %H'))
or vehicle_departure_log.departure_time is null
)
</if>
</trim>
order by create_time desc
</select>
<select id="selectVoAllNotAllData" resultType="com.xinxincaravan.caravan.vehicle.vo.VehicleDepartureLogVo">
select vehicle_departure_log.*,vehicle.number_plate
select vehicle_departure_log.*,vehicle.number_plate,
/*IFNULL(DATEDIFF(vehicle_departure_log.arrival_time,vehicle_departure_log.departure_time),0)*/
CONCAT(IFNULL(floor((unix_timestamp(vehicle_departure_log.arrival_time) - unix_timestamp(vehicle_departure_log.departure_time)) / 86400),0),'天',
IFNULL(floor(IF((unix_timestamp(vehicle_departure_log.arrival_time) - unix_timestamp(vehicle_departure_log.departure_time))>86400,(unix_timestamp(vehicle_departure_log.arrival_time)
- unix_timestamp(vehicle_departure_log.departure_time)) MOD 86400/3600,(unix_timestamp(vehicle_departure_log.arrival_time) - unix_timestamp(vehicle_departure_log.departure_time))/3600)),0),'小时')
as departureDay,bc.name as departureName,bc1.name as arrivalName,
IF((IFNULL(vehicle_departure_log.mileage_end,0)-IFNULL(vehicle_departure_log.mileage_start,0))>0,IFNULL(vehicle_departure_log.mileage_end,0)-IFNULL(vehicle_departure_log.mileage_start,0),0) as mileage
from vehicle_departure_log
left join vehicle on vehicle_departure_log.vehicle_id = vehicle.id
LEFT JOIN branch_company bc ON vehicle_departure_log.departure_branch_company_id = bc.id
LEFT JOIN branch_company bc1 ON vehicle_departure_log.arrival_branch_company_id = bc1.id
<trim prefix="where" suffixOverrides="and">
<if test="numberPlate != null and numberPlate != ''">
vehicle.number_plate = #{numberPlate} and
</if>
<if test="companyList != null">
( vehicle.park_branch_company_id in (
( vehicle_departure_log.departure_branch_company_id in (
<foreach collection="companyList" item="companyId">
<trim suffixOverrides=",">
#{companyId},
</trim>
</foreach>
)
or vehicle.expect_destination_branch_company_id in (
or vehicle_departure_log.arrival_branch_company_id in (
<foreach collection="companyList" item="companyId">
<trim suffixOverrides=",">
#{companyId},
......@@ -52,6 +82,18 @@
)
)
</if>
<if test="time != null and time != ''">
and (vehicle_departure_log.arrival_time >= str_to_date(#{time}, '%Y-%m-%d %H')
or TO_DAYS(vehicle_departure_log.arrival_time)=TO_DAYS(str_to_date(#{time}, '%Y-%m-%d %H'))
or vehicle_departure_log.arrival_time is null
)
and
(
vehicle_departure_log.departure_time &lt;= str_to_date(#{time}, '%Y-%m-%d %H')
or TO_DAYS(vehicle_departure_log.departure_time)=TO_DAYS(str_to_date(#{time}, '%Y-%m-%d %H'))
or vehicle_departure_log.departure_time is null
)
</if>
</trim>
order by create_time desc
</select>
......@@ -60,10 +102,21 @@
from vehicle_departure_log
where vehicle_id = #{vehicleId};
</select>
<select id="selectDayByVehicleId" resultType="int">
select sum(to_days(arrival_time) - to_days(departure_time))
from vehicle_departure_log
where vehicle_id = #{vehicleId};
<select id="selectDayByVehicleId" resultType="String">
SELECT
CONCAT(IFNULL(floor(t.total_expire_minute / 86400),0),'天',IFNULL(floor(IF(t.total_expire_minute>86400,t.total_expire_minute MOD 86400/3600,
t.total_expire_minute/3600)),0),'小时')
FROM
(
SELECT
SUM(
unix_timestamp(arrival_time) - unix_timestamp(departure_time)
) AS total_expire_minute
FROM
vehicle_departure_log
WHERE
vehicle_id =#{vehicleId}
) t
</select>
</mapper>
\ No newline at end of file
......@@ -12,13 +12,13 @@
<select id="getByPage" parameterType="java.util.Map"
resultType="com.xinxincaravan.caravan.vehicle.vo.QueryVehicleVo">
select v.`id`,
select DISTINCT v.`id`,
v.`code`,
v.`status`,
v.number_plate,
v.brand,
v.subordinate_branch,
bc.name as subBranchName,
IFNULL(v.park_branch_company_id,v.expect_destination_branch_company_id) AS subordinate_branch,
IFNULL(bc.name,bc1.name) AS subBranchName,
v.use_type,
v.remark,
v.create_time,
......@@ -36,7 +36,8 @@
v.engine_num,
v.manufacturer,
v.receive_time,
v.update_time
v.update_time,
v.mileage_last_update as mileage
<if test=" yearMonthAndParam !=null ">
,vbi.booked_date
</if>
......@@ -45,7 +46,8 @@
left join
vehicle_book_info vbi on v.`id` = vbi.vehicle
</if>
left join branch_company bc on v.`subordinate_branch` = bc.id
LEFT JOIN branch_company bc ON v.park_branch_company_id = bc.id
LEFT JOIN branch_company bc1 ON v.expect_destination_branch_company_id = bc1.id
where
1=1
<if test="mRangeDateEnd !=null">
......@@ -72,9 +74,6 @@
<if test="vin !=null and vin != ''">
and v.vin = #{vin}
</if>
<if test="subordinateBranch !=null">
and v.subordinate_branch = #{subordinateBranch}
</if>
<if test="code !=null">
and v.code = #{code}
</if>
......@@ -82,7 +81,7 @@
and v.status = #{status}
</if>
<if test="numberPlate !=null and numberPlate != ''">
and v.number_plate = #{numberPlate}
and v.number_plate like concat('%',#{numberPlate},'%')
</if>
<if test="brand !=null">
and v.brand = #{brand}
......@@ -99,18 +98,36 @@
)
</foreach>
</if>
<if test="subordinateBranch !=null or addrProvince !=null or addrCity !=null or zoneId !=null ">
and (
<trim suffixOverrides="OR">
<if test="subordinateBranch !=null ">
( v.park_branch_company_id = #{subordinateBranch} or v.expect_destination_branch_company_id=#{subordinateBranch} ) OR
</if>
<if test="addrProvince !=null">
(bc.addr_province=#{addrProvince} or bc1.addr_province=#{addrProvince}) OR
</if>
<if test="addrCity !=null">
(bc.addr_city=#{addrProvince} or bc1.addr_city=#{addrProvince}) OR
</if>
<if test="zoneId !=null">
(bc.zone_id=#{zoneId} or bc1.zone_id=#{zoneId}) OR
</if>
</trim>
)
</if>
order by v.code
</select>
<select id="getByPageNotAllData" parameterType="java.util.Map"
resultType="com.xinxincaravan.caravan.vehicle.vo.QueryVehicleVo">
select v.`id`,
select DISTINCT v.`id`,
v.`code`,
v.`status`,
v.number_plate,
v.brand,
v.subordinate_branch,
bc.name as subBranchName,
IFNULL(v.park_branch_company_id,v.expect_destination_branch_company_id) AS subordinate_branch,
IFNULL(bc.name,bc1.name) AS subBranchName,
v.use_type,
v.remark,
v.create_time,
......@@ -128,7 +145,8 @@
v.engine_num,
v.manufacturer,
v.receive_time,
v.update_time
v.update_time,
v.mileage_last_update as mileage
<if test=" yearMonthAndParam !=null ">
,vbi.booked_date
</if>
......@@ -137,23 +155,24 @@
left join
vehicle_book_info vbi on v.`id` = vbi.vehicle
</if>
left join branch_company bc on v.`subordinate_branch` = bc.id
LEFT JOIN branch_company bc ON v.park_branch_company_id = bc.id
LEFT JOIN branch_company bc1 ON v.expect_destination_branch_company_id = bc1.id
where
1=1
<if test="companyList != null">
and ( v.park_branch_company_id in (
<trim suffixOverrides=",">
<foreach collection="companyList" item="companyId">
<trim suffixOverrides=",">
#{companyId},
</trim>
#{companyId},
</foreach>
</trim>
)
or v.expect_destination_branch_company_id in (
<trim suffixOverrides=",">
<foreach collection="companyList" item="companyId">
<trim suffixOverrides=",">
#{companyId},
</trim>
</foreach>
</trim>
)
)
</if>
......@@ -181,9 +200,6 @@
<if test="vin !=null and vin != ''">
and v.vin = #{vin}
</if>
<if test="subordinateBranch !=null">
and v.subordinate_branch = #{subordinateBranch}
</if>
<if test="code !=null">
and v.code = #{code}
</if>
......@@ -191,7 +207,7 @@
and v.status = #{status}
</if>
<if test="numberPlate !=null and numberPlate != ''">
and v.number_plate = #{numberPlate}
and v.number_plate like concat('%',#{numberPlate},'%')
</if>
<if test="brand !=null">
and v.brand = #{brand}
......@@ -208,6 +224,24 @@
)
</foreach>
</if>
<if test="subordinateBranch !=null or addrProvince !=null or addrCity !=null or zoneId !=null ">
and (
<trim suffixOverrides="OR">
<if test="subordinateBranch !=null ">
( v.park_branch_company_id = #{subordinateBranch} or v.expect_destination_branch_company_id=#{subordinateBranch} ) OR
</if>
<if test="addrProvince !=null">
(bc.addr_province=#{addrProvince} or bc1.addr_province=#{addrProvince}) OR
</if>
<if test="addrCity !=null">
(bc.addr_city=#{addrProvince} or bc1.addr_city=#{addrProvince}) OR
</if>
<if test="zoneId !=null">
(bc.zone_id=#{zoneId} or bc1.zone_id=#{zoneId}) OR
</if>
</trim>
)
</if>
order by v.code
</select>
......@@ -233,4 +267,15 @@
where id = #{vehicleId} and status = #{lastStatus}
</update>
<update id="updateMileageStatusByIdAndStatus">
update vehicle
set status = #{status},maintenance_mileage=#{mileage}
where id = #{vehicleId} and status = #{lastStatus}
</update>
<update id="upMileageByIdAndStatus">
update vehicle
set status = #{status},mileage_last_update=#{mileage}
where id = #{vehicleId} and status = #{lastStatus}
</update>
</mapper>
\ No newline at end of file
......@@ -34,8 +34,19 @@
left join vehicle b on a.vehicle_id = b.id
left join branch_company c on a.branch_company_id = c.id
<trim prefix="where">
1=1
<if test="numberPlate != null and numberPlate != ''">
b.number_plate = #{numberPlate}
and b.number_plate = #{numberPlate}
</if>
<if test="companyList != null and companyList.size() > 0">
and ( a.branch_company_id in (
<trim suffixOverrides=",">
<foreach collection="companyList" item="companyId">
#{companyId},
</foreach>
</trim>
)
)
</if>
</trim>
order by a.create_time desc
......
......@@ -24,5 +24,21 @@
select id, type, status, msg, rule_id, msg_key, vehicle_id, create_time, update_time, remark from vehicle_warning_msg where vehicle_id = #{_parameter}
</select>
<select id="getByPages" resultType="com.xinxincaravan.caravan.vehicle.vo.VehicleWarningMsgQueryVo"
parameterType="com.xinxincaravan.caravan.vehicle.vo.QueryVehicleWarningMsgVo">
SELECT id as vehicleId,code as vehicleCode,number_plate as numberPlate,mileage_last_update as mileageLastUpdate,status,
IFNULL(park_branch_company_id,expect_destination_branch_company_id) AS subordinateBranch,
CONCAT('当前公里数为:',mileage_last_update,' 保养公里数:',maintenance_mileage,' 请尽快保养!') as msg
,1 as type,update_time as createTime FROM vehicle
WHERE mileage_last_update>=maintenance_mileage
<if test="vehicleCode != null">
and vcode = #{vehicleCode}
</if>
<if test="numberPlate != null and numberPlate != '' ">
and number_plate = #{numberPlate}
</if>
</select>
</mapper>
\ No newline at end of file
......@@ -66,6 +66,12 @@
<version>2.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.github.wxiaoqi</groupId>
<artifactId>ace-admin-api</artifactId>
<version>2.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>
......
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