Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cloud-platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
youjj
cloud-platform
Commits
0574f50d
Commit
0574f50d
authored
Aug 19, 2019
by
hezhen
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
http://113.105.137.151:22280/youjj/cloud-platform
into dev
parents
f63e0901
0c682738
Changes
22
Show whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
393 additions
and
230 deletions
+393
-230
ResultCode.java
...thub/wxiaoqi/security/common/util/process/ResultCode.java
+1
-0
resultcod.properties
...common/src/main/resources/properties/resultcod.properties
+4
-1
UserMemberDTO.java
.../com/github/wxiaoqi/security/admin/dto/UserMemberDTO.java
+2
-0
TokenAop.java
...m/github/wxiaoqi/security/admin/support/aop/TokenAop.java
+6
-1
BaseUserMemberBiz.java
.../github/wxiaoqi/security/admin/biz/BaseUserMemberBiz.java
+37
-30
BaseUserMemberController.java
...wxiaoqi/security/admin/rest/BaseUserMemberController.java
+6
-1
OrderTourDetail.java
.../java/com/xxfc/platform/order/entity/OrderTourDetail.java
+2
-1
BaseOrderBiz.java
...c/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
+7
-21
OrderTourVerificationBiz.java
...com/xxfc/platform/order/biz/OrderTourVerificationBiz.java
+6
-2
BackStageOrderController.java
...om/xxfc/platform/order/rest/BackStageOrderController.java
+8
-4
BookType.java
...ain/java/com/xxfc/platform/vehicle/constant/BookType.java
+25
-0
ResultVehicleVo.java
.../java/com/xxfc/platform/vehicle/pojo/ResultVehicleVo.java
+2
-0
VehiclePageQueryVo.java
...va/com/xxfc/platform/vehicle/pojo/VehiclePageQueryVo.java
+4
-0
VehiclePlanDto.java
...va/com/xxfc/platform/vehicle/pojo/dto/VehiclePlanDto.java
+4
-0
VehicleActiveService.java
...a/com/xxfc/platform/vehicle/biz/VehicleActiveService.java
+24
-8
VehicleBiz.java
...c/main/java/com/xxfc/platform/vehicle/biz/VehicleBiz.java
+62
-11
VehicleBookHourInfoBiz.java
...com/xxfc/platform/vehicle/biz/VehicleBookHourInfoBiz.java
+3
-4
VehicleBookRecordBiz.java
...a/com/xxfc/platform/vehicle/biz/VehicleBookRecordBiz.java
+167
-142
VehicleActiveController.java
...m/xxfc/platform/vehicle/rest/VehicleActiveController.java
+0
-1
VehicleBookRecordMapper.xml
...ver/src/main/resources/mapper/VehicleBookRecordMapper.xml
+2
-2
VehicleMapper.xml
...ehicle-server/src/main/resources/mapper/VehicleMapper.xml
+18
-1
VehicleWarningMsgMapper.xml
...ver/src/main/resources/mapper/VehicleWarningMsgMapper.xml
+3
-0
No files found.
ace-common/src/main/java/com/github/wxiaoqi/security/common/util/process/ResultCode.java
View file @
0574f50d
...
...
@@ -24,6 +24,7 @@ public class ResultCode {
// 预定时间不能小于当前时间
public
static
int
ONLY_BOOK_FROM_TODAY
=
Integer
.
valueOf
(
SystemProperty
.
getResultConfig
(
"ONLY_BOOK_FROM_TODAY"
));
public
static
int
END_TIME_FROM_TODAY
=
Integer
.
valueOf
(
SystemProperty
.
getResultConfig
(
"END_TIME_FROM_TODAY"
));
// 只能预定两个月内的车辆
public
static
int
ONLY_BOOK_TWO_MONTH
=
Integer
.
valueOf
(
SystemProperty
.
getResultConfig
(
"ONLY_BOOK_TWO_MONTH"
));
...
...
ace-common/src/main/resources/properties/resultcod.properties
View file @
0574f50d
...
...
@@ -248,3 +248,6 @@ RET_COMPANY_CAN_NOT_BE_NULL = 4018
NUMBER_PLAT_CAN_NOT_BE_NULL
=
4019
4019
=
车牌不能为空
END_TIME_FROM_TODAY
=
4020
4020
=
结束时间不能小于开始时间
\ No newline at end of file
ace-modules/ace-admin-api/src/main/java/com/github/wxiaoqi/security/admin/dto/UserMemberDTO.java
View file @
0574f50d
...
...
@@ -66,6 +66,8 @@ public class UserMemberDTO {
@ApiModelProperty
(
value
=
"有效期;0代表永久"
)
private
Long
validTime
;
@Column
(
name
=
"member_name"
)
@ApiModelProperty
(
"会员名"
)
private
String
memberName
;
...
...
ace-modules/ace-admin-api/src/main/java/com/github/wxiaoqi/security/admin/support/aop/TokenAop.java
View file @
0574f50d
...
...
@@ -21,6 +21,7 @@ import javax.annotation.Resource;
import
javax.servlet.http.HttpServletRequest
;
import
java.lang.reflect.Method
;
import
java.lang.reflect.Parameter
;
import
java.util.Objects
;
/**
* @author libin
...
...
@@ -72,7 +73,11 @@ public class TokenAop {
args
[
i
]=
new
AppUserDTO
();
break
;
}
args
[
i
]=
userFeign
.
userDetailByToken
(
token
).
getData
();
AppUserDTO
userDTO
=
userFeign
.
userDetailByToken
(
token
).
getData
();
if
(
Objects
.
isNull
(
userDTO
)){
userDTO
=
new
AppUserDTO
();
}
args
[
i
]=
userDTO
;
break
;
}
if
(
UserDTO
.
class
.
equals
(
parameter
.
getType
())){
...
...
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/biz/BaseUserMemberBiz.java
View file @
0574f50d
...
...
@@ -73,7 +73,9 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper, BaseUserMem
return
;
}
Integer
userId
=
userMemberDTO
.
getUserId
();
UserMemberVo
userMemberVo
=
getMemberInfoByUserId
(
userId
);
BaseUserMember
baseUserMember
=
new
BaseUserMember
();
BeanUtils
.
copyProperties
(
baseUserMember
,
userMemberDTO
);
Integer
freeDays
=
baseUserMember
.
getRentFreeDays
();
...
...
@@ -106,6 +108,7 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper, BaseUserMem
baseUserMember
.
setBuyCount
(
userMemberVo
.
getBuyCount
()
+
buyCount
);
baseUserMember
.
setTotalNumber
(
totalNumber
);
baseUserMember
.
setRentFreeDays
(
freeDays
);
getMyBiz
().
updateSelectiveById
(
baseUserMember
);
}
AppUserVo
userVo
=
detailBiz
.
getUserInfoById
(
userId
);
...
...
@@ -212,42 +215,46 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper, BaseUserMem
/**
* 设置用户会员
*
* @param
baseUserMemberV
O
* @param
userMemberDT
O
*/
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
UpdateUserMember
(
BaseUserMemberVO
baseUserMemberVO
)
throws
InvocationTargetException
,
IllegalAccessException
{
Example
exa
=
Example
.
builder
(
BaseUserMember
.
class
).
where
(
WeekendSqls
.<
BaseUserMember
>
custom
()
.
andEqualTo
(
BaseUserMember:
:
getUserId
,
baseUserMemberVO
.
getUserId
())
).
build
();
List
<
BaseUserMember
>
baseUserMembers
=
mapper
.
selectByExample
(
exa
);
@Transactional
(
rollbackFor
=
Exception
.
class
,
propagation
=
Propagation
.
REQUIRED
)
public
void
UpdateUserMember
(
UserMemberDTO
userMemberDTO
)
throws
InvocationTargetException
,
IllegalAccessException
{
Integer
userId
=
userMemberDTO
.
getUserId
();
BaseUserMember
baseUserMember
=
new
BaseUserMember
();
BeanUtilsBean
.
getInstance
().
copyProperties
(
baseUserMember
,
baseUserMemberVO
);
if
(
CollectionUtils
.
isEmpty
(
baseUserMembers
))
{
if
(
baseUserMemberVO
.
getMemberLevel
()
==
null
||
baseUserMember
.
getValidTime
()
==
null
||
baseUserMember
.
getValidTime
()<
0
)
{
throw
new
BaseException
(
"设置无效!无会员等级、会员有效期或会员有效期为负数!"
);
}
baseUserMember
.
setCrtTime
(
System
.
currentTimeMillis
());
baseUserMember
.
setIsDel
(
0
);
baseUserMember
.
setPayCount
(
0
);
baseUserMember
.
setCardLeave
(
1
);
baseUserMember
.
setRecentRecharge
(
System
.
currentTimeMillis
());
Integer
buyCount
=
baseUserMember
.
getBuyCount
()
==
null
?
0
:
baseUserMember
.
getBuyCount
();
baseUserMember
.
setBuyCount
(
buyCount
+
1
);
BeanUtils
.
copyProperties
(
baseUserMember
,
userMemberDTO
);
Integer
freeDays
=
baseUserMember
.
getRentFreeDays
()
==
null
?
0
:
baseUserMember
.
getRentFreeDays
();
Integer
totalNumber
=
baseUserMember
.
getTotalNumber
()
==
null
?
0
:
baseUserMember
.
getTotalNumber
();
if
(
totalNumber
<
freeDays
)
{
freeDays
=
totalNumber
;
}
Integer
buyCount
=
userMemberDTO
.
getBuyCount
()
==
null
?
1
:
userMemberDTO
.
getBuyCount
()
;
UserMemberVo
userMemberVo
=
getMemberInfoByUserId
(
userMemberDTO
.
getUserId
());
if
(
userMemberVo
==
null
)
{
baseUserMember
.
setRentFreeDays
(
freeDays
);
baseUserMember
.
setBuyCount
(
buyCount
);
insertSelective
(
baseUserMember
);
return
;
}
else
if
(
baseUserMembers
.
size
()
==
1
)
{
baseUserMember
.
setUpdTime
(
System
.
currentTimeMillis
());
baseUserMember
.
setBuyCount
(
baseUserMembers
.
get
(
0
).
getBuyCount
()
+
1
);
baseUserMember
.
setId
(
baseUserMembers
.
get
(
0
).
getId
());
mapper
.
updateByPrimaryKeySelective
(
baseUserMember
);
}
else
{
throw
new
BaseException
(
"错误!该账号有多条会员信息!"
);
baseUserMember
.
setId
(
userMemberVo
.
getId
());
Integer
number
=
userMemberVo
.
getTotalNumber
()
==
null
?
0
:
userMemberVo
.
getTotalNumber
();
Integer
days
=
userMemberVo
.
getRentFreeDays
()
==
null
?
0
:
userMemberVo
.
getRentFreeDays
();
baseUserMember
.
setBuyCount
(
userMemberVo
.
getBuyCount
()
+
buyCount
);
number
=(
totalNumber
-
number
)+
number
;
days
=(
freeDays
-
days
)+
days
;
baseUserMember
.
setTotalNumber
(
number
);
baseUserMember
.
setRentFreeDays
(
days
);
getMyBiz
().
updateSelectiveById
(
baseUserMember
);
}
AppUserVo
userVo
=
detailBiz
.
getUserInfoById
(
userId
);
if
(
userVo
!=
null
&&
(
userVo
.
getIsMember
()
==
null
||
userVo
.
getIsMember
()
==
0
))
{
AppUserVo
userVo1
=
new
AppUserVo
();
userVo1
.
setId
(
userVo
.
getId
());
userVo1
.
setUserid
(
userId
);
userVo1
.
setIsMember
(
1
);
detailBiz
.
updUuserInfoById
(
userVo1
);
}
}
}
\ No newline at end of file
ace-modules/ace-admin/src/main/java/com/github/wxiaoqi/security/admin/rest/BaseUserMemberController.java
View file @
0574f50d
...
...
@@ -53,7 +53,12 @@ public class BaseUserMemberController extends BaseController<BaseUserMemberBiz,
@PutMapping
(
"/setUserMember"
)
public
ObjectRestResponse
UpdateUserMember
(
@RequestBody
UserMemberDTO
userMemberDTO
)
throws
Exception
{
baseBiz
.
updUserMemberByUserId
(
userMemberDTO
);
if
(
userMemberDTO
==
null
||
userMemberDTO
.
getRentFreeDays
()<
0
||
userMemberDTO
.
getTotalNumber
()<
0
)
{
return
ObjectRestResponse
.
createDefaultFail
();
}
baseBiz
.
UpdateUserMember
(
userMemberDTO
);
return
ObjectRestResponse
.
succ
();
}
}
xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/entity/OrderTourDetail.java
View file @
0574f50d
package
com
.
xxfc
.
platform
.
order
.
entity
;
import
com.github.wxiaoqi.security.admin.vo.AppUserVo
;
import
com.xxfc.platform.tour.entity.TourUser
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -245,5 +246,5 @@ public class OrderTourDetail implements Serializable {
private
Integer
isOutside
;
@Transient
private
List
<
AppUserVo
>
userVoList
;
private
List
<
TourUser
>
userVoList
;
}
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/BaseOrderBiz.java
View file @
0574f50d
...
...
@@ -26,6 +26,7 @@ import com.xxfc.platform.order.pojo.order.OrderPageVO;
import
com.xxfc.platform.order.pojo.order.OrderVehicleCrosstownDto
;
import
com.xxfc.platform.order.pojo.order.QueryOrderDTO
;
import
com.xxfc.platform.order.rest.BaseOrderController
;
import
com.xxfc.platform.tour.entity.TourUser
;
import
com.xxfc.platform.tour.feign.TourFeign
;
import
com.xxfc.platform.universal.constant.DictionaryKey
;
import
com.xxfc.platform.universal.dto.SendMsgDTO
;
...
...
@@ -179,18 +180,11 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> {
orderPageVo
.
setVehicalNumberPlat
(
response
.
getData
().
getNumberPlate
());
}
}
else
if
(
orderPageVo
.
getOrderTourDetail
()
!=
null
)
{
List
<
Integer
>
ids
=
Lists
.
newArrayList
();
if
(
orderPageVo
.
getOrderTourDetail
().
getTourUserIds
().
contains
(
","
))
{
String
[]
strings
=
orderPageVo
.
getOrderTourDetail
().
getTourUserIds
().
split
(
","
);
for
(
int
i
=
0
;
i
<
strings
.
length
;
i
++)
{
ids
.
add
(
Integer
.
parseInt
(
StringUtils
.
isNotBlank
(
strings
[
i
])
?
strings
[
i
]
:
"0"
));
}
}
else
{
ids
.
add
(
Integer
.
parseInt
(
orderPageVo
.
getOrderTourDetail
().
getTourUserIds
()));
}
List
<
AppUserVo
>
list
=
userFeign
.
getByUserIds
(
ids
).
getData
();
if
(
StringUtils
.
isNotBlank
(
orderPageVo
.
getOrderTourDetail
().
getTourUserIds
()))
{
List
<
TourUser
>
list
=
tourFeign
.
getTourUsers
(
orderPageVo
.
getOrderTourDetail
().
getTourUserIds
()).
getData
();
orderPageVo
.
getOrderTourDetail
().
setUserVoList
(
list
==
null
||
list
.
size
()
<=
0
?
new
ArrayList
<>()
:
list
);
}
}
//设置保留金
Map
<
String
,
Dictionary
>
dictionaryMap
=
thirdFeign
.
dictionaryGetAll4Map
().
getData
();
BigDecimal
illegalReserve
=
new
BigDecimal
(
dictionaryMap
.
get
(
APP_ORDER
+
"_"
+
DictionaryKey
.
ILLEGAL_RESERVE
).
getDetail
());
...
...
@@ -268,19 +262,11 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper, BaseOrder> {
orderPageVo
.
setVehicalNumberPlat
(
restResponse
.
getData
().
getNumberPlate
());
}
}
else
if
(
orderPageVo
.
getOrderTourDetail
()
!=
null
)
{
List
<
Integer
>
ids
=
Lists
.
newArrayList
();
if
(
orderPageVo
.
getOrderTourDetail
().
getTourUserIds
().
contains
(
","
))
{
String
[]
strings
=
orderPageVo
.
getOrderTourDetail
().
getTourUserIds
().
split
(
","
);
for
(
int
i
=
0
;
i
<
strings
.
length
;
i
++)
{
ids
.
add
(
Integer
.
parseInt
(
StringUtils
.
isNotBlank
(
strings
[
i
])
?
strings
[
i
]
:
"0"
));
}
}
else
{
ids
.
add
(
Integer
.
parseInt
(
orderPageVo
.
getOrderTourDetail
().
getTourUserIds
()));
}
List
<
AppUserVo
>
list
=
userFeign
.
getByUserIds
(
ids
).
getData
();
if
(
StringUtils
.
isNotBlank
(
orderPageVo
.
getOrderTourDetail
().
getTourUserIds
()))
{
List
<
TourUser
>
list
=
tourFeign
.
getTourUsers
(
orderPageVo
.
getOrderTourDetail
().
getTourUserIds
()).
getData
();
orderPageVo
.
getOrderTourDetail
().
setUserVoList
(
list
==
null
||
list
.
size
()
<=
0
?
new
ArrayList
<>()
:
list
);
}
}
//设置保留金
Map
<
String
,
Dictionary
>
dictionaryMap
=
thirdFeign
.
dictionaryGetAll4Map
().
getData
();
BigDecimal
illegalReserve
=
new
BigDecimal
(
dictionaryMap
.
get
(
APP_ORDER
+
"_"
+
DictionaryKey
.
ILLEGAL_RESERVE
).
getDetail
());
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/biz/OrderTourVerificationBiz.java
View file @
0574f50d
...
...
@@ -16,6 +16,10 @@ import com.xxfc.platform.vehicle.entity.BranchCompany;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.time.Instant
;
import
java.time.LocalTime
;
import
java.time.temporal.ChronoUnit
;
import
java.util.Date
;
import
java.util.List
;
/**
...
...
@@ -89,7 +93,7 @@ public class OrderTourVerificationBiz{
}
// 出发时间 是否已经发车
/*
Date departureDate = tourFeign.selectDepartureDataBySpeId(tourDetail.getSpePriceId());
Date
departureDate
=
tourFeign
.
selectDepartureDataBySpeId
(
tourDetail
.
getSpePriceId
());
Long
departureTime
=
tourFeign
.
selectDepartureTimeByStartCompanyIdAndRouteId
(
tourDetail
.
getStartCompanyId
(),
tourDetail
.
getGoodId
());
Integer
departureStatus
=
tourFeign
.
selectDepartureStatusByVerificationId
(
verificationId
);
LocalTime
localDepartureTime
=
LocalTime
.
ofSecondOfDay
(
departureTime
);
...
...
@@ -110,7 +114,7 @@ public class OrderTourVerificationBiz{
if
(
departureStatus
==
1
){
return
ObjectRestResponse
.
createFailedResultWithObj
(
400
,
"已经发车"
,
1
);
}
*/
}
baseOrder
=
new
BaseOrder
();
...
...
xx-order/xx-order-server/src/main/java/com/xxfc/platform/order/rest/BackStageOrderController.java
View file @
0574f50d
...
...
@@ -25,6 +25,8 @@ import com.xxfc.platform.order.entity.OrderRentVehicleDetail;
import
com.xxfc.platform.order.pojo.OrderAccompanyDTO
;
import
com.xxfc.platform.order.pojo.order.*
;
import
com.xxfc.platform.order.service.OrderRentVehicleService
;
import
com.xxfc.platform.tour.entity.TourUser
;
import
com.xxfc.platform.tour.feign.TourFeign
;
import
com.xxfc.platform.vehicle.common.RestResponse
;
import
com.xxfc.platform.vehicle.constant.VehicleBookRecordStatus
;
import
com.xxfc.platform.vehicle.entity.BranchCompany
;
...
...
@@ -78,6 +80,9 @@ public class BackStageOrderController extends CommonBaseController implements Us
@Autowired
UserFeign
userFeign
;
@Autowired
TourFeign
tourFeign
;
@Resource
VehicleFeign
vehicleFeign
;
...
...
@@ -180,10 +185,9 @@ public class BackStageOrderController extends CommonBaseController implements Us
if
(
startResponse
.
getData
()
!=
null
)
{
orderPageVO
.
setStartCompanyName
(
startResponse
.
getData
().
getName
());
}
List
<
Integer
>
tourUserIds
=
Arrays
.
asList
(
orderPageVO
.
getOrderTourDetail
().
getTourUserIds
().
split
(
","
)).
parallelStream
().
map
(
s
->
Integer
.
valueOf
(
s
.
trim
())).
collect
(
Collectors
.
toList
());
ObjectRestResponse
<
List
<
AppUserVo
>>
users
=
userFeign
.
getByUserIds
(
tourUserIds
);
if
(
users
.
getData
()
!=
null
)
{
orderPageVO
.
getOrderTourDetail
().
setUserVoList
(
users
.
getData
()
==
null
?
users
.
getData
()
:
new
ArrayList
<>());
if
(
StringUtils
.
isNotBlank
(
orderPageVO
.
getOrderTourDetail
().
getTourUserIds
()))
{
List
<
TourUser
>
tourUsers
=
tourFeign
.
getTourUsers
(
orderPageVO
.
getOrderTourDetail
().
getTourUserIds
()).
getData
();
orderPageVO
.
getOrderTourDetail
().
setUserVoList
(
tourUsers
==
null
||
tourUsers
.
size
()
<=
0
?
new
ArrayList
<>()
:
tourUsers
);
}
}
...
...
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/constant/BookType.java
View file @
0574f50d
...
...
@@ -57,6 +57,31 @@ public enum BookType {
this
.
desc
=
desc
;
}
public
static
String
getByCode
(
Integer
code
)
{
switch
(
code
)
{
case
2
:
return
EMPLOYEE_APPLY
.
getDesc
();
case
1
:
return
USER_RENT
.
getDesc
();
case
3
:
return
REPAIRING
.
getDesc
();
case
4
:
return
SHOW
.
getDesc
();
case
5
:
return
TOUR
.
getDesc
();
case
6
:
return
MAINTAIN
.
getDesc
();
case
7
:
return
BOOKING
.
getDesc
();
case
8
:
return
DISABLE
.
getDesc
();
case
9
:
return
CUSTOMER_APPLY
.
getDesc
();
case
10
:
return
OTHER
.
getDesc
();
}
return
""
;
}
public
static
Boolean
exists
(
Integer
code
){
return
codeAndDesc
.
containsKey
(
code
);
}
...
...
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/pojo/ResultVehicleVo.java
View file @
0574f50d
...
...
@@ -148,4 +148,6 @@ public class ResultVehicleVo {
* 收车时间
*/
private
Date
receiveTime
;
private
Integer
modelId
;
}
\ No newline at end of file
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/pojo/VehiclePageQueryVo.java
View file @
0574f50d
...
...
@@ -128,5 +128,9 @@ public class VehiclePageQueryVo {
*/
private
Integer
haveViolation
;
/**
* 车型id
*/
private
Integer
modelId
;
}
xx-vehicle/xx-vehicle-api/src/main/java/com/xxfc/platform/vehicle/pojo/dto/VehiclePlanDto.java
View file @
0574f50d
...
...
@@ -39,4 +39,8 @@ public class VehiclePlanDto extends PageParam {
*/
private
Integer
useType
;
/**
* 车型id
*/
private
Integer
modelId
;
}
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/VehicleActiveService.java
View file @
0574f50d
...
...
@@ -3,10 +3,8 @@ package com.xxfc.platform.vehicle.biz;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.bean.copier.CopyOptions
;
import
com.github.wxiaoqi.security.common.exception.BaseException
;
import
com.xxfc.platform.vehicle.constant.*
;
import
com.xxfc.platform.vehicle.constant.ResCode.ResCode
;
import
com.xxfc.platform.vehicle.constant.VehicleActiveType
;
import
com.xxfc.platform.vehicle.constant.VehicleDepartureState
;
import
com.xxfc.platform.vehicle.constant.VehicleStatus
;
import
com.xxfc.platform.vehicle.entity.*
;
import
com.xxfc.platform.vehicle.mapper.*
;
import
com.xxfc.platform.vehicle.pojo.*
;
...
...
@@ -89,8 +87,10 @@ public class VehicleActiveService {
ResCode
.
VEHICLE_DEPARTURE_VEHICLE_DISABLE
.
getCode
());
}
//修改预约记录状态
VehicleBookRecord
vehicleBookRecord
=
null
;
if
(
departureVo
.
getBookRecordId
()
!=
null
)
{
updateBookRecordStatus
(
departureVo
.
getBookRecordId
(),
1
);
vehicleBookRecord
=
vehicleBookRecordBiz
.
selectById
(
departureVo
.
getBookRecordId
());
updateBookRecordStatus
(
vehicleBookRecord
,
1
);
}
VehicleDepartureLogVo
vehicleDepartureLogVo
=
vehicleDepartureLogMapper
.
selectByBookRecordId
(
departureVo
.
getBookRecordId
());
if
(
vehicleDepartureLogVo
!=
null
)
{
...
...
@@ -100,6 +100,12 @@ public class VehicleActiveService {
departureLog
.
setUpdateTime
(
new
Date
());
departureLog
.
setState
(
VehicleDepartureState
.
DEPARTURE
.
getCode
());
departureLog
.
setDepartureRemark
(
departureVo
.
getRemark
());
if
(
vehicleBookRecord
!=
null
)
{
departureLog
.
setDepartureBranchCompanyId
(
vehicleBookRecord
.
getLiftCompany
());
departureLog
.
setUse
(
BookType
.
getByCode
(
vehicleBookRecord
.
getBookType
()));
departureLog
.
setUser
(
vehicleBookRecord
.
getVehicleUsername
());
departureLog
.
setUserTel
(
vehicleBookRecord
.
getVehicleUserPhone
());
}
vehicleDepartureLogMapper
.
updateByPrimaryKeySelective
(
departureLog
);
}
else
{
// 出车记录
...
...
@@ -111,6 +117,11 @@ public class VehicleActiveService {
departureLog
.
setState
(
VehicleDepartureState
.
DEPARTURE
.
getCode
());
departureLog
.
setBookRecordId
(
departureVo
.
getBookRecordId
());
departureLog
.
setDepartureRemark
(
departureVo
.
getRemark
());
if
(
vehicleBookRecord
!=
null
)
{
departureLog
.
setUse
(
BookType
.
getByCode
(
vehicleBookRecord
.
getBookType
()));
departureLog
.
setUser
(
vehicleBookRecord
.
getVehicleUsername
());
departureLog
.
setUserTel
(
vehicleBookRecord
.
getVehicleUserPhone
());
}
vehicleDepartureLogMapper
.
insert
(
departureLog
);
}
...
...
@@ -128,6 +139,7 @@ public class VehicleActiveService {
}
}
public
String
getVehicleStatus
(
Integer
status
,
String
vehicleId
)
{
StringBuilder
stringBuilder
=
new
StringBuilder
();
switch
(
status
)
{
...
...
@@ -193,9 +205,10 @@ public class VehicleActiveService {
throw
new
BaseException
(
ResCode
.
VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE
.
getDesc
(),
ResCode
.
VEHICLE_DEPARTURE_VEHICLE_UNDEPARTURE
.
getCode
());
}
VehicleBookRecord
vehicleBookRecord
=
null
;
if
(
arrivalVo
.
getBookRecordId
()
!=
null
)
{
updateBookRecordStatus
(
arrivalVo
.
getBookRecordId
(),
2
);
vehicleBookRecord
=
vehicleBookRecordBiz
.
selectById
(
arrivalVo
.
getBookRecordId
());
updateBookRecordStatus
(
vehicleBookRecord
,
2
);
}
...
...
@@ -216,6 +229,9 @@ public class VehicleActiveService {
departureLog
.
setIllegalAmount
(
arrivalVo
.
getIllegalAmount
());
departureLog
.
setArrivalPic
(
arrivalVo
.
getArrivalPic
());
departureLog
.
setArrivalRemark
(
arrivalVo
.
getRemark
());
if
(
vehicleBookRecord
!=
null
)
{
departureLog
.
setDepartureBranchCompanyId
(
vehicleBookRecord
.
getRetCompany
());
}
vehicleDepartureLogMapper
.
updateByPrimaryKeySelective
(
departureLog
);
// 车辆活动日志
VehicleActiveLog
activeLog
=
vehicleActiveLogMapper
.
selectLastByVehicleId
(
arrivalVo
.
getVehicleId
());
...
...
@@ -233,8 +249,8 @@ public class VehicleActiveService {
}
}
public
void
updateBookRecordStatus
(
Integer
bookRecordI
d
,
Integer
type
)
{
VehicleBookRecord
vehicleBookRecord
=
vehicleBookRecordBiz
.
selectById
(
bookRecordId
);
public
void
updateBookRecordStatus
(
VehicleBookRecord
vehicleBookRecor
d
,
Integer
type
)
{
if
(
vehicleBookRecord
!=
null
)
{
if
(
type
==
1
)
{
vehicleBookRecord
.
setActualStartDate
(
new
Date
());
...
...
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/VehicleBiz.java
View file @
0574f50d
...
...
@@ -412,7 +412,17 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
public
VehicleBookRecord
applyVehicle
(
Integer
userId
,
BookVehicleVO
bookVehicleVo
,
String
userName
)
throws
Exception
{
log
.
info
(
"预定车辆参数:userId = {}, bookVehicleVo = {},username = {}"
,
userId
,
bookVehicleVo
,
userName
);
//检查车辆信息是否合法
checkIfVehicleExists
(
bookVehicleVo
.
getVehicleId
());
Vehicle
vehicle
=
mapper
.
selectByPrimaryKey
(
bookVehicleVo
.
getVehicleId
());
if
(
vehicle
==
null
)
{
throw
new
BaseException
(
ResCode
.
VEHICLE_DEPARTURE_VEHICLE_UNEXIST
.
getDesc
(),
ResCode
.
VEHICLE_DEPARTURE_VEHICLE_UNEXIST
.
getCode
());
}
if
(!
vehicle
.
getStatus
().
equals
(
VehicleStatus
.
NORMAL
.
getCode
()))
{
throw
new
BaseException
(
ResCode
.
VEHICLE_DEPARTURE_VEHICLE_DISABLE
.
getDesc
()
+
", 车辆状态是:"
+
getVehicleStatus
(
vehicle
.
getStatus
(),
vehicle
.
getId
()),
ResCode
.
VEHICLE_DEPARTURE_VEHICLE_DISABLE
.
getCode
());
}
if
(
StringUtils
.
isBlank
(
bookVehicleVo
.
getBookStartDate
())
||
StringUtils
.
isBlank
(
bookVehicleVo
.
getBookEndDate
()))
{
throw
new
BaseException
(
ResultCode
.
DATE_TIME_IS_NULL
);
}
//提取日期和相应的预定目标日期
Map
<
String
,
List
<
String
>>
yearMonthAndDate
=
Maps
.
newHashMap
();
DateTime
startDay
=
DateTime
.
parse
(
bookVehicleVo
.
getBookStartDate
(),
DATE_TIME_FORMATTER
);
...
...
@@ -440,6 +450,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
vehicleBookRecord
.
setStatus
(
bookVehicleVo
.
getStatus
());
vehicleBookRecord
.
setBookUser
(
userId
);
vehicleBookRecord
.
setBookUserName
(
userName
);
vehicleBookRecord
.
setLiftCompany
(
vehicle
.
getParkBranchCompanyId
());
vehicleBookRecordBiz
.
save
(
vehicleBookRecord
);
}
else
{
vehicleBookRecord
=
vehicleBookRecordBiz
.
selectById
(
bookVehicleVo
.
getVehicleBookRecordId
());
...
...
@@ -741,15 +752,47 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
* @param id
*/
public
boolean
checkIfVehicleExists
(
String
id
){
Integer
count
=
mapper
.
selectCount
(
new
Vehicle
(){{
setId
(
id
);
}});
if
(
count
<=
0
){
Vehicle
vehicle
=
mapper
.
selectByPrimaryKey
(
id
);
if
(
vehicle
==
null
)
{
return
false
;
}
if
(!
vehicle
.
getStatus
().
equals
(
VehicleStatus
.
NORMAL
.
getCode
()))
{
throw
new
BaseException
(
ResCode
.
VEHICLE_DEPARTURE_VEHICLE_DISABLE
.
getDesc
()
+
", 车辆状态是:"
+
getVehicleStatus
(
vehicle
.
getStatus
(),
vehicle
.
getId
()),
ResCode
.
VEHICLE_DEPARTURE_VEHICLE_DISABLE
.
getCode
());
}
return
true
;
}
public
String
getVehicleStatus
(
Integer
status
,
String
vehicleId
)
{
StringBuilder
stringBuilder
=
new
StringBuilder
();
switch
(
status
)
{
case
1
:
stringBuilder
.
append
(
"正常运行"
);
break
;
case
2
:
stringBuilder
.
append
(
"维修"
);
break
;
case
3
:
stringBuilder
.
append
(
"报废"
);
break
;
case
4
:
stringBuilder
.
append
(
"出车"
);
break
;
case
5
:
stringBuilder
.
append
(
"保养"
);
break
;
}
List
<
VehicleBookRecordVo
>
vehicleBookRecordVos
=
vehicleBookRecordBiz
.
selectByVehicleId
(
vehicleId
);
if
(
vehicleBookRecordVos
!=
null
&&
vehicleBookRecordVos
.
size
()
>
0
)
{
stringBuilder
.
append
(
"中,使用人:"
);
stringBuilder
.
append
(
vehicleBookRecordVos
.
get
(
0
).
getVehicleUsername
());
stringBuilder
.
append
(
" 使用人电话:"
);
stringBuilder
.
append
(
vehicleBookRecordVos
.
get
(
0
).
getVehicleUserPhone
());
}
return
stringBuilder
.
toString
();
}
/**
* 把日期范围转换为列表,并检查操作范围是否合法
* @param yearMonthAndDate
...
...
@@ -807,7 +850,8 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
DateTime
endDay
=
DateTime
.
parse
(
bookVehicleVo
.
getUnbookEndDate
(),
DATE_TIME_FORMATTER
);
//转换日期范围为列表,并检查是否合法
uinbookDateList4DatePeriod
(
yearMonthAndDate
,
startDay
,
endDay
);
Map
<
String
,
Integer
>
map
=
vehicleBookHourInfoBiz
.
getPredictableHours
(
bookVehicleVo
.
getUnbookStartDate
(),
bookVehicleVo
.
getUnbookEndDate
(),
bookVehicleVo
.
getNotCheckTimeLegal
());
//原设计为 读取 bookVehicleVo.getNotCheckTimeLegal(), 现在取消/拒绝 true
Map
<
String
,
Integer
>
map
=
vehicleBookHourInfoBiz
.
getPredictableHours
(
bookVehicleVo
.
getUnbookStartDate
(),
bookVehicleVo
.
getUnbookEndDate
(),
Boolean
.
TRUE
);
if
(
yearMonthAndDate
.
size
()>
3
){
//连续的日期最多夸3个月
throw
new
BaseException
(
ResultCode
.
ONLY_UNBOOK_TWO_MONTH
);
}
...
...
@@ -848,6 +892,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
}
public
boolean
unbookHourInfo
(
String
vehicleId
,
Map
<
String
,
Integer
>
hourInfo
,
Map
<
String
,
Object
>
params
)
{
boolean
flag
=
false
;
for
(
Map
.
Entry
<
String
,
Integer
>
entry
:
hourInfo
.
entrySet
())
{
VehicleBookHourInfoDto
vehicleBookHourInfoDto
=
new
VehicleBookHourInfoDto
();
vehicleBookHourInfoDto
.
setYearMonthDay
(
entry
.
getKey
());
...
...
@@ -855,12 +900,15 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
List
<
VehicleBookHourInfo
>
vehicleBookHourInfos
=
vehicleBookHourInfoBiz
.
selectByVehicleAndDate
(
vehicleBookHourInfoDto
);
if
(
vehicleBookHourInfos
!=
null
&&
vehicleBookHourInfos
.
size
()
>
0
)
{
if
((
vehicleBookHourInfos
.
get
(
0
).
getBookedHour
()
|
0
)
==
0
)
{
if
(!
flag
)
{
Integer
effected
=
vehicleBookInfoMapper
.
updateBookedInfo
(
params
);
if
(
effected
<
1
)
{
return
Boolean
.
FALSE
;
}
else
{
flag
=
true
;
continue
;
}
}
}
else
{
vehicleBookHourInfos
.
get
(
0
).
setBookedHour
((
vehicleBookHourInfos
.
get
(
0
).
getBookedHour
()
&
~
entry
.
getValue
()));
int
effect
=
vehicleBookHourInfoBiz
.
updateByIdRe
(
vehicleBookHourInfos
.
get
(
0
));
...
...
@@ -1045,6 +1093,9 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
//处理预定日期相关参数
adjustBookedInfoParam
(
params
,
vehiclePageQueryVo
);
params
.
get
(
"yearMonthAndParam"
);
if
(
vehiclePageQueryVo
.
getModelId
()
==
null
)
{
params
.
remove
(
"modelId"
);
}
PageHelper
.
startPage
(
pageNo
,
pageSize
);
List
<
ResultVehicleVo
>
vehicles
=
mapper
.
getByPage
(
params
);
PageInfo
<
ResultVehicleVo
>
vehiclePageInfo
=
new
PageInfo
<>(
vehicles
);
...
...
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/VehicleBookHourInfoBiz.java
View file @
0574f50d
...
...
@@ -47,11 +47,10 @@ public class VehicleBookHourInfoBiz extends BaseBiz<VehicleBookHourInfoMapper, V
if
(
bookStartDate
.
compareTo
(
DateTime
.
now
().
toString
(
DEFAULT_DATE_TIME_FORMATTER
))
<
0
)
{
throw
new
BaseException
(
ResultCode
.
ONLY_BOOK_FROM_TODAY
);
}
if
(
bookStartDate
.
compareTo
(
bookEndDate
)
>
0
)
{
throw
new
BaseException
(
ResultCode
.
ONLY_BOOK_FROM_TODAY
);
}
if
(
bookStartDate
.
compareTo
(
bookEndDate
)
>
0
)
{
throw
new
BaseException
(
ResultCode
.
END_TIME_FROM_TODAY
);
}
Map
<
String
,
Integer
>
predictableHours
=
Maps
.
newHashMap
();
//预定开始小时
int
hour
=
new
DateTime
(
startDate
).
hourOfDay
().
get
();
...
...
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/biz/VehicleBookRecordBiz.java
View file @
0574f50d
...
...
@@ -30,6 +30,7 @@ import org.apache.commons.beanutils.BeanUtils;
import
org.apache.commons.beanutils.PropertyUtils
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.poi.ss.formula.functions.T
;
import
org.joda.time.DateTime
;
import
org.joda.time.format.DateTimeFormat
;
import
org.joda.time.format.DateTimeFormatter
;
...
...
@@ -40,10 +41,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.Iterator
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
...
...
@@ -76,30 +74,32 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
VehicleUpkeepService
vehicleUpkeepService
;
@Override
public
UserFeign
getUserFeign
()
{
return
userFeign
;}
public
UserFeign
getUserFeign
()
{
return
userFeign
;
}
public
void
save
(
VehicleBookRecord
vehicleBookRecord
)
{
insertSelectiveRe
(
vehicleBookRecord
);
}
public
int
changeRecordStatus
(
Map
<
String
,
Object
>
updateParam
)
{
return
mapper
.
changeRecordStatus
(
updateParam
);
public
int
changeRecordStatus
(
Map
<
String
,
Object
>
updateParam
)
{
return
mapper
.
changeRecordStatus
(
updateParam
);
}
public
QueryVehicleBookRecordVo
getById
(
Long
id
,
DateTime
endDate
)
throws
Exception
{
Map
<
String
,
Object
>
recordParams
=
Maps
.
newHashMap
();
recordParams
.
put
(
"id"
,
id
);
recordParams
.
put
(
"tbName"
,
TB_NAME_REAL
);
public
QueryVehicleBookRecordVo
getById
(
Long
id
,
DateTime
endDate
)
throws
Exception
{
Map
<
String
,
Object
>
recordParams
=
Maps
.
newHashMap
();
recordParams
.
put
(
"id"
,
id
);
recordParams
.
put
(
"tbName"
,
TB_NAME_REAL
);
DateTime
selectedMonthDate
=
endDate
.
withMillisOfDay
(
0
).
withDayOfMonth
(
1
);
String
bookRecordAccItemTbName
=
TB_ACC_ITEM_NAME_REAL
;
if
(
selectedMonthDate
.
compareTo
(
DateTime
.
now
().
plusMonths
(-
1
).
withDayOfMonth
(
1
).
withMillisOfDay
(
0
))
<
0
)
{
recordParams
.
put
(
"tbName"
,
getTbName
(
String
.
valueOf
(
selectedMonthDate
.
getYear
())));
if
(
selectedMonthDate
.
compareTo
(
DateTime
.
now
().
plusMonths
(-
1
).
withDayOfMonth
(
1
).
withMillisOfDay
(
0
))
<
0
)
{
recordParams
.
put
(
"tbName"
,
getTbName
(
String
.
valueOf
(
selectedMonthDate
.
getYear
())));
bookRecordAccItemTbName
=
getAccItemTbName
(
String
.
valueOf
(
selectedMonthDate
.
getYear
()));
}
VehicleBookRecord
vehicleBookRecord
=
mapper
.
getById
(
recordParams
);
QueryVehicleBookRecordVo
queryVehicleBookRecordVo
=
new
QueryVehicleBookRecordVo
();
BeanUtils
.
copyProperties
(
queryVehicleBookRecordVo
,
vehicleBookRecord
);
Map
<
Long
,
Map
<
Integer
,
Integer
>>
rs
=
getRelatedAccItemsAndAmount
(
Lists
.
newArrayList
(
queryVehicleBookRecordVo
),
bookRecordAccItemTbName
);
BeanUtils
.
copyProperties
(
queryVehicleBookRecordVo
,
vehicleBookRecord
);
Map
<
Long
,
Map
<
Integer
,
Integer
>>
rs
=
getRelatedAccItemsAndAmount
(
Lists
.
newArrayList
(
queryVehicleBookRecordVo
),
bookRecordAccItemTbName
);
queryVehicleBookRecordVo
.
setAccItemAndAmount
(
rs
.
get
(
queryVehicleBookRecordVo
.
getId
()));
return
queryVehicleBookRecordVo
;
}
...
...
@@ -110,14 +110,14 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
vehicleBookRecordQueryVo
.
setPage
(
pageNo
);
vehicleBookRecordQueryVo
.
setLimit
(
pageSize
);
UserDTO
userDTO
=
getAdminUserInfo
();
if
(
userDTO
==
null
)
{
if
(
userDTO
==
null
)
{
return
RestResponse
.
codeAndMessage
(
235
,
"token失效"
);
}
List
<
Integer
>
companyList
=
Lists
.
newArrayList
();
if
(
DATA_ALL_FALSE
.
equals
(
userDTO
.
getDataAll
()))
{
//不能获取全部数据
if
(
DATA_ALL_FALSE
.
equals
(
userDTO
.
getDataAll
()))
{
//不能获取全部数据
companyList
=
dataCompany
(
userDTO
.
getDataZone
(),
userDTO
.
getDataCompany
());
if
(
vehicleBookRecordQueryVo
.
getCompanyId
()
!=
null
)
{
if
(
companyList
.
contains
(
vehicleBookRecordQueryVo
.
getCompanyId
()))
{
//如果权限中有这个公司就允许查询, 否则就直接返回空
if
(
vehicleBookRecordQueryVo
.
getCompanyId
()
!=
null
)
{
if
(
companyList
.
contains
(
vehicleBookRecordQueryVo
.
getCompanyId
()))
{
//如果权限中有这个公司就允许查询, 否则就直接返回空
companyList
.
clear
();
companyList
.
add
(
vehicleBookRecordQueryVo
.
getCompanyId
());
}
else
{
...
...
@@ -125,7 +125,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
}
}
}
else
{
if
(
vehicleBookRecordQueryVo
.
getCompanyId
()
!=
null
)
{
if
(
vehicleBookRecordQueryVo
.
getCompanyId
()
!=
null
)
{
companyList
.
add
(
vehicleBookRecordQueryVo
.
getCompanyId
());
}
}
...
...
@@ -143,23 +143,23 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
vehicleBookRecordQueryVo
.
setPage
(
pageNo
);
vehicleBookRecordQueryVo
.
setLimit
(
pageSize
);
UserDTO
userDTO
=
getAdminUserInfo
();
if
(
userDTO
==
null
)
{
if
(
userDTO
==
null
)
{
return
RestResponse
.
codeAndMessage
(
235
,
"token失效"
);
}
vehicleBookRecordQueryVo
.
setUserCompany
(
userDTO
.
getCompanyId
());
List
<
Integer
>
companyList
=
Lists
.
newArrayList
();
if
(
DATA_ALL_FALSE
.
equals
(
userDTO
.
getDataAll
()))
{
//不能获取全部数据
if
(
DATA_ALL_FALSE
.
equals
(
userDTO
.
getDataAll
()))
{
//不能获取全部数据
companyList
=
dataCompany
(
userDTO
.
getDataZone
(),
userDTO
.
getDataCompany
());
if
(
vehicleBookRecordQueryVo
.
getCompanyId
()
!=
null
)
{
if
(
companyList
.
contains
(
vehicleBookRecordQueryVo
.
getCompanyId
()))
{
//如果权限中有这个公司就允许查询, 否则就直接返回空
if
(
vehicleBookRecordQueryVo
.
getCompanyId
()
!=
null
)
{
if
(
companyList
.
contains
(
vehicleBookRecordQueryVo
.
getCompanyId
()))
{
//如果权限中有这个公司就允许查询, 否则就直接返回空
companyList
.
clear
();
companyList
.
add
(
vehicleBookRecordQueryVo
.
getCompanyId
());
}
else
{
return
RestResponse
.
suc
();
}
}
if
(
vehicleBookRecordQueryVo
.
getLiftCompany
()
!=
null
)
{
if
(
companyList
.
contains
(
vehicleBookRecordQueryVo
.
getLiftCompany
()))
{
//如果权限中有这个公司就允许查询, 否则就直接返回空
if
(
vehicleBookRecordQueryVo
.
getLiftCompany
()
!=
null
)
{
if
(
companyList
.
contains
(
vehicleBookRecordQueryVo
.
getLiftCompany
()))
{
//如果权限中有这个公司就允许查询, 否则就直接返回空
companyList
.
clear
();
companyList
.
add
(
vehicleBookRecordQueryVo
.
getLiftCompany
());
}
else
{
...
...
@@ -167,24 +167,28 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
}
}
}
else
{
if
(
vehicleBookRecordQueryVo
.
getCompanyId
()
!=
null
)
{
if
(
vehicleBookRecordQueryVo
.
getCompanyId
()
!=
null
)
{
companyList
.
add
(
vehicleBookRecordQueryVo
.
getCompanyId
());
}
if
(
vehicleBookRecordQueryVo
.
getLiftCompany
()
!=
null
)
{
if
(
vehicleBookRecordQueryVo
.
getLiftCompany
()
!=
null
)
{
companyList
.
add
(
vehicleBookRecordQueryVo
.
getLiftCompany
());
}
}
vehicleBookRecordQueryVo
.
setCompanyIds
(
companyList
);
if
(
vehicleBookRecordQueryVo
.
getStatus
()
!=
null
&&
vehicleBookRecordQueryVo
.
getStatus
()
==
2
)
{
Query
query2
=
new
Query
(
vehicleBookRecordQueryVo
);
List
<
VehicleBookRecordVo
>
list
=
mapper
.
getBookRecordInfo
(
query
2
.
getSuper
());
Query
query
=
new
Query
(
vehicleBookRecordQueryVo
);
if
(
vehicleBookRecordQueryVo
.
getStatus
()
!=
null
&&
vehicleBookRecordQueryVo
.
getStatus
()
==
2
)
{
List
<
VehicleBookRecordVo
>
list
=
mapper
.
getBookRecordInfo
(
query
.
getSuper
());
removeStatus2
(
list
);
PageHelper
.
startPage
(
pageNo
,
pageSize
);
PageInfo
<
VehicleBookRecordVo
>
vehicleBookRecordVoPageInfo
=
new
PageInfo
<>(
list
);
getupKeeps
(
vehicleBookRecordVoPageInfo
.
getList
());
return
RestResponse
.
suc
(
PageDataVO
.
pageInfo
(
vehicleBookRecordVoPageInfo
));
PageDataVO
<
VehicleBookRecordVo
>
vehicleBookRecordVoPageDataVO
=
PageDataVO
.
pageInfo
(
vehicleBookRecordVoPageInfo
);
vehicleBookRecordVoPageDataVO
.
setPageNum
(
pageNo
);
vehicleBookRecordVoPageDataVO
.
setPageSize
(
pageSize
);
vehicleBookRecordVoPageDataVO
.
setTotalCount
((
long
)
vehicleBookRecordVoPageInfo
.
getList
().
size
());
vehicleBookRecordVoPageDataVO
.
setTotalPage
((
vehicleBookRecordVoPageInfo
.
getList
().
size
()
+
pageSize
-
1
)
/
pageSize
);
vehicleBookRecordVoPageDataVO
.
setData
(
getData
(
vehicleBookRecordVoPageInfo
.
getList
(),
pageNo
,
pageSize
));
return
RestResponse
.
suc
(
vehicleBookRecordVoPageDataVO
);
}
Query
query
=
new
Query
(
vehicleBookRecordQueryVo
);
PageDataVO
<
VehicleBookRecordVo
>
pageDataVO
=
PageDataVO
.
pageInfo
(
query
,
()
->
mapper
.
getBookRecordInfo
(
query
.
getSuper
()));
getupKeeps
(
pageDataVO
.
getData
());
return
RestResponse
.
suc
(
pageDataVO
);
...
...
@@ -193,21 +197,22 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
public
void
removeStatus2
(
List
<
VehicleBookRecordVo
>
list
)
{
Iterator
<
VehicleBookRecordVo
>
iterator
=
list
.
iterator
();
while
(
iterator
.
hasNext
())
{
if
(
iterator
.
next
().
getVehicleDepartureLogVo
()
!=
null
)
{
if
(
iterator
.
next
().
getVehicleDepartureLogVo
()
!=
null
)
{
iterator
.
remove
();
}
}
}
/**
* 获取随身物品
*/
public
List
<
VehicleBookRecordVo
>
getupKeeps
(
List
<
VehicleBookRecordVo
>
vehicleBookRecordVos
)
{
for
(
VehicleBookRecordVo
vehicleBookRecordVo
:
vehicleBookRecordVos
)
{
if
(
vehicleBookRecordVo
.
getBookType
()
==
BookType
.
MAINTAIN
.
getCode
())
{
//获取 保养项目
if
(
StringUtils
.
isNotBlank
(
vehicleBookRecordVo
.
getUpkeepIds
()))
{
for
(
VehicleBookRecordVo
vehicleBookRecordVo
:
vehicleBookRecordVos
)
{
if
(
vehicleBookRecordVo
.
getBookType
()
==
BookType
.
MAINTAIN
.
getCode
())
{
//获取 保养项目
if
(
StringUtils
.
isNotBlank
(
vehicleBookRecordVo
.
getUpkeepIds
()))
{
List
<
Integer
>
upKeeps
=
Arrays
.
asList
(
vehicleBookRecordVo
.
getUpkeepIds
().
split
(
","
)).
parallelStream
().
map
(
s
->
Integer
.
valueOf
(
s
)).
collect
(
Collectors
.
toList
());
if
(
upKeeps
.
size
()
>
0
)
{
if
(
upKeeps
.
size
()
>
0
)
{
List
<
VehicleUpkeepItem
>
vehicleUpkeepItems
=
vehicleUpkeepService
.
getUpkeepsByIds
(
upKeeps
);
vehicleBookRecordVo
.
setVehicleUpkeepItems
(
vehicleUpkeepItems
);
}
...
...
@@ -218,7 +223,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
}
public
RestResponse
<
Integer
>
lift
(
Integer
operatorId
,
String
userName
,
LiftVehicleVo
liftVehicleVo
)
throws
Exception
{
public
RestResponse
<
Integer
>
lift
(
Integer
operatorId
,
String
userName
,
LiftVehicleVo
liftVehicleVo
)
throws
Exception
{
Map
<
String
,
Object
>
params
=
PropertyUtils
.
describe
(
liftVehicleVo
);
params
.
put
(
"reviewerLift"
,
operatorId
);
params
.
put
(
"reviewerNameLift"
,
userName
);
...
...
@@ -226,22 +231,22 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
params
.
put
(
"conditionStatus"
,
VehicleBookRecordStatus
.
APPROVE
.
getCode
());
params
.
put
(
"mileageLift"
,
liftVehicleVo
.
getMileageLift
());
Integer
effected
=
mapper
.
liftOrRet
(
params
);
if
(
effected
==
0
)
{
if
(
effected
==
0
)
{
return
RestResponse
.
code
(
ResCode
.
VEHICLE_BOOKED_RECORD_STATUS_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
)
{
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());
throw
new
BaseException
(
ResCode
.
VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED
.
getDesc
(),
ResCode
.
VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED
.
getCode
());
}
Integer
mileageLift
=
record
.
getMileageLift
();
if
(
mileageLift
!=
null
&&
mileageRet
>=
mileageLift
)
{
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
());
...
...
@@ -250,10 +255,10 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
params
.
put
(
"mileageRet"
,
mileageRet
);
params
.
put
(
"haveViolation"
,
retVehicleVo
.
getHaveViolation
());
Integer
effected
=
mapper
.
liftOrRet
(
params
);
if
(
effected
==
0
)
{
if
(
effected
==
0
)
{
return
RestResponse
.
code
(
ResCode
.
VEHICLE_BOOKED_RECORD_STATUS_CHANGED
.
getCode
());
}
}
else
{
}
else
{
throw
new
BaseException
(
ResCode
.
VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED
.
getDesc
(),
ResCode
.
VEHICLE_BOOKED_RECORD_MILEAGE_CHANGED
.
getCode
());
}
return
RestResponse
.
suc
();
...
...
@@ -261,38 +266,39 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
/**
* 按页查询
*
* @param vehicleBookRecordQueryVo
* @return
* @throws Exception
*/
public
PageDataVO
<
QueryVehicleBookRecordVo
>
page
(
VehicleBookRecordQueryVo
vehicleBookRecordQueryVo
,
List
<
Integer
>
companyList
)
throws
Exception
{
public
PageDataVO
<
QueryVehicleBookRecordVo
>
page
(
VehicleBookRecordQueryVo
vehicleBookRecordQueryVo
,
List
<
Integer
>
companyList
)
throws
Exception
{
Map
<
String
,
Object
>
params
=
PropertyUtils
.
describe
(
vehicleBookRecordQueryVo
);
String
bookRecordAccItemTbName
=
TB_ACC_ITEM_NAME_REAL
;
params
.
put
(
"tbName"
,
TB_NAME_REAL
);
if
(
params
.
get
(
"selectedMonth"
)
!=
null
)
{
String
selectedMonth
=
(
String
)
params
.
get
(
"selectedMonth"
);
if
(
StringUtils
.
isBlank
(
selectedMonth
))
{
params
.
put
(
"tbName"
,
TB_NAME_REAL
);
if
(
params
.
get
(
"selectedMonth"
)
!=
null
)
{
String
selectedMonth
=
(
String
)
params
.
get
(
"selectedMonth"
);
if
(
StringUtils
.
isBlank
(
selectedMonth
))
{
throw
new
BaseException
(
" no month selected "
);
}
DateTime
selectedMonthDate
=
DateTime
.
parse
(
selectedMonth
,
YEARMONTH_DATE_TIME_FORMATTER
);
if
(
selectedMonthDate
.
compareTo
(
DateTime
.
now
().
plusMonths
(-
1
).
withDayOfMonth
(
1
).
withMillisOfDay
(
0
))
<
0
)
{
params
.
put
(
"tbName"
,
getTbName
(
String
.
valueOf
(
selectedMonthDate
.
getYear
())));
DateTime
selectedMonthDate
=
DateTime
.
parse
(
selectedMonth
,
YEARMONTH_DATE_TIME_FORMATTER
);
if
(
selectedMonthDate
.
compareTo
(
DateTime
.
now
().
plusMonths
(-
1
).
withDayOfMonth
(
1
).
withMillisOfDay
(
0
))
<
0
)
{
params
.
put
(
"tbName"
,
getTbName
(
String
.
valueOf
(
selectedMonthDate
.
getYear
())));
bookRecordAccItemTbName
=
getAccItemTbName
(
String
.
valueOf
(
selectedMonthDate
.
getYear
()));
}
params
.
put
(
"bookedStartDate"
,
selectedMonthDate
.
withDayOfMonth
(
1
).
toString
());
params
.
put
(
"bookedEndDate"
,
selectedMonthDate
.
plusMonths
(
1
).
withDayOfMonth
(
1
).
toDate
());
params
.
put
(
"bookedStartDate"
,
selectedMonthDate
.
withDayOfMonth
(
1
).
toString
());
params
.
put
(
"bookedEndDate"
,
selectedMonthDate
.
plusMonths
(
1
).
withDayOfMonth
(
1
).
toDate
());
}
Integer
pageSize
=
(
Integer
)
params
.
get
(
"limit"
);
params
.
remove
(
"pageSize"
);
Integer
pageNo
=
(
Integer
)
params
.
get
(
"page"
);
params
.
remove
(
"pageNo"
);
params
.
put
(
"companyList"
,
companyList
);
PageHelper
.
startPage
(
pageNo
,
pageSize
);
PageHelper
.
startPage
(
pageNo
,
pageSize
);
List
<
QueryVehicleBookRecordVo
>
bookRecordAndVehicleInfo
=
mapper
.
getByPage
(
params
);
Map
<
Long
,
Map
<
Integer
,
Integer
>>
rs
=
getRelatedAccItemsAndAmount
(
bookRecordAndVehicleInfo
,
Map
<
Long
,
Map
<
Integer
,
Integer
>>
rs
=
getRelatedAccItemsAndAmount
(
bookRecordAndVehicleInfo
,
bookRecordAccItemTbName
);
//获取相关随行物品信息
for
(
QueryVehicleBookRecordVo
queryVehicleBookRecordVo:
bookRecordAndVehicleInfo
)
{
for
(
QueryVehicleBookRecordVo
queryVehicleBookRecordVo
:
bookRecordAndVehicleInfo
)
{
queryVehicleBookRecordVo
.
setAccItemAndAmount
(
rs
.
get
(
queryVehicleBookRecordVo
.
getId
()));
}
PageInfo
<
QueryVehicleBookRecordVo
>
vehiclePageInfo
=
new
PageInfo
<>(
bookRecordAndVehicleInfo
);
...
...
@@ -306,29 +312,30 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
/**
* 获取相关申请记录对应随行物品的数量,并放入map
*
* @param bookRecordAndVehicleInfos
* @return
*/
public
Map
<
Long
,
Map
<
Integer
,
Integer
>>
getRelatedAccItemsAndAmount
(
List
<
QueryVehicleBookRecordVo
>
bookRecordAndVehicleInfos
,
String
tbName
)
{
public
Map
<
Long
,
Map
<
Integer
,
Integer
>>
getRelatedAccItemsAndAmount
(
List
<
QueryVehicleBookRecordVo
>
bookRecordAndVehicleInfos
,
String
tbName
)
{
List
<
Long
>
bookRecordIds
=
Lists
.
newArrayList
();
if
(
CollectionUtils
.
isEmpty
(
bookRecordAndVehicleInfos
))
{
if
(
CollectionUtils
.
isEmpty
(
bookRecordAndVehicleInfos
))
{
return
null
;
}
for
(
QueryVehicleBookRecordVo
queryVehicleBookRecordVo:
bookRecordAndVehicleInfos
)
{
for
(
QueryVehicleBookRecordVo
queryVehicleBookRecordVo
:
bookRecordAndVehicleInfos
)
{
bookRecordIds
.
add
(
queryVehicleBookRecordVo
.
getId
());
}
List
<
BookRecordAccItem
>
bookRecordAccItems
=
bookRecordAccItemMapper
.
getByRecords
(
ImmutableMap
.
of
(
"bookRecordIds"
,
bookRecordIds
,
"tbName"
,
tbName
));
Map
<
Long
,
Map
<
Integer
,
Integer
>>
rs
=
Maps
.
newHashMap
();
for
(
BookRecordAccItem
bookRecordAccItem
:
bookRecordAccItems
)
{
if
(!
rs
.
containsKey
(
bookRecordAccItem
.
getBookRecordId
()))
{
rs
.
put
(
bookRecordAccItem
.
getBookRecordId
(),
Maps
.
newHashMap
());
List
<
BookRecordAccItem
>
bookRecordAccItems
=
bookRecordAccItemMapper
.
getByRecords
(
ImmutableMap
.
of
(
"bookRecordIds"
,
bookRecordIds
,
"tbName"
,
tbName
));
Map
<
Long
,
Map
<
Integer
,
Integer
>>
rs
=
Maps
.
newHashMap
();
for
(
BookRecordAccItem
bookRecordAccItem
:
bookRecordAccItems
)
{
if
(!
rs
.
containsKey
(
bookRecordAccItem
.
getBookRecordId
()))
{
rs
.
put
(
bookRecordAccItem
.
getBookRecordId
(),
Maps
.
newHashMap
());
}
rs
.
get
(
bookRecordAccItem
.
getBookRecordId
()).
put
(
bookRecordAccItem
.
getAccItemId
(),
bookRecordAccItem
.
getAmount
());
put
(
bookRecordAccItem
.
getAccItemId
(),
bookRecordAccItem
.
getAmount
());
}
return
rs
;
}
...
...
@@ -339,7 +346,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
* 每年一张表
*/
@Scheduled
(
cron
=
"0 0 1 1 * ?"
)
//每月1号1点触发
public
void
transfer2HistoryTb
(){
public
void
transfer2HistoryTb
()
{
try
{
//获取表格名称
DateTime
now
=
DateTime
.
now
();
//当前获取的时间为标准
...
...
@@ -349,7 +356,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
//每月初将上上月数据从当前信息表中删除
delDataTheMonthBeforeLast
(
now
);
}
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
e
.
getMessage
());
}
...
...
@@ -360,15 +367,15 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
* 获取上月数据,并复制到历史表
*/
@Transactional
public
Boolean
copyDataLastMoth
(
DateTime
now
)
throws
Exception
{
public
Boolean
copyDataLastMoth
(
DateTime
now
)
throws
Exception
{
String
lastMonthStr
=
now
.
plusMonths
(-
1
).
toString
(
YEARMONTH_DATE_TIME_FORMATTER
);
String
redisKey
=
RedisKey
.
TRANSFER_BOOK_RECORD_LOCK_PREFIX
+
lastMonthStr
;
String
redisKey
=
RedisKey
.
TRANSFER_BOOK_RECORD_LOCK_PREFIX
+
lastMonthStr
;
String
tbName
=
getTbName
(
now
.
plusMonths
(-
1
).
toString
(
"yyyy"
));
String
accItemTbName
=
getAccItemTbName
(
now
.
plusMonths
(-
1
).
toString
(
"yyyy"
));
Boolean
hasSuc
=
customRedisTemplate
.
opsForValue
().
setIfAbsent
(
redisKey
,
String
.
valueOf
(
DateTime
.
now
().
getMillis
()));
if
(
hasSuc
)
{
//设置1天后过期
customRedisTemplate
.
expire
(
redisKey
,
1
,
TimeUnit
.
DAYS
);
}
else
{
Boolean
hasSuc
=
customRedisTemplate
.
opsForValue
().
setIfAbsent
(
redisKey
,
String
.
valueOf
(
DateTime
.
now
().
getMillis
()));
if
(
hasSuc
)
{
//设置1天后过期
customRedisTemplate
.
expire
(
redisKey
,
1
,
TimeUnit
.
DAYS
);
}
else
{
log
.
info
(
"[预定记录迁移]乐观锁获取失败,该线程不执行任务。"
);
return
Boolean
.
FALSE
;
}
...
...
@@ -386,19 +393,19 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
vehicleBookRecords
=
mapper
.
getByPage4Month
(
params
);
//复制相关随行物品关系
copyAccItemRel2His
(
vehicleBookRecords
,
accItemTbName
);
if
(
CollectionUtils
.
isNotEmpty
(
vehicleBookRecords
))
{
if
(
CollectionUtils
.
isNotEmpty
(
vehicleBookRecords
))
{
//插入数据到历史表
for
(
VehicleBookRecord
vehicleBookRecord
:
vehicleBookRecords
)
{
for
(
VehicleBookRecord
vehicleBookRecord
:
vehicleBookRecords
)
{
VehicleBookRecordAndTbNameVo
vehicleBookRecordAndTbNameVo
=
new
VehicleBookRecordAndTbNameVo
();
BeanUtils
.
copyProperties
(
vehicleBookRecordAndTbNameVo
,
vehicleBookRecord
);
BeanUtils
.
copyProperties
(
vehicleBookRecordAndTbNameVo
,
vehicleBookRecord
);
vehicleBookRecordAndTbNameVo
.
setTbName
(
tbName
);
mapper
.
insertHis
(
vehicleBookRecordAndTbNameVo
);
}
}
curPageNo
++;
log
.
info
(
"【复制上月预定记录至历史表中】,当前复制页【"
+
curPageNo
+
"】,页大小【"
+
COPY_BATCH_SIZE
+
"】"
);
}
while
(
CollectionUtils
.
isNotEmpty
(
vehicleBookRecords
));
log
.
info
(
"复制上月预定记录至历史表中完成,总页数【"
+(
curPageNo
-
1
)+
"】"
);
log
.
info
(
"【复制上月预定记录至历史表中】,当前复制页【"
+
curPageNo
+
"】,页大小【"
+
COPY_BATCH_SIZE
+
"】"
);
}
while
(
CollectionUtils
.
isNotEmpty
(
vehicleBookRecords
));
log
.
info
(
"复制上月预定记录至历史表中完成,总页数【"
+
(
curPageNo
-
1
)
+
"】"
);
return
Boolean
.
TRUE
;
}
...
...
@@ -407,7 +414,7 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
* 删除上上月数据
*/
@Transactional
public
void
delDataTheMonthBeforeLast
(
DateTime
now
){
public
void
delDataTheMonthBeforeLast
(
DateTime
now
)
{
Integer
effected
=
0
;
Integer
total
=
0
;
Map
<
String
,
Object
>
params
=
Maps
.
newHashMap
();
...
...
@@ -419,57 +426,59 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
List
<
Long
>
bookRecordIds
=
mapper
.
getIdInYearMothLimit
(
params
);
deleteAccItemRelByRecord
(
bookRecordIds
);
effected
=
mapper
.
del4YearMoth
(
params
);
total
+=
effected
;
log
.
info
(
"开始删除预定记录数据,删除总数【"
+
total
+
"】"
);
}
while
(
effected
!=
0
);
total
+=
effected
;
log
.
info
(
"开始删除预定记录数据,删除总数【"
+
total
+
"】"
);
}
while
(
effected
!=
0
);
log
.
info
(
"删除预定记录数据完成"
);
}
/**
* 删除随影订车记录的随行物品记录
*
* @param bookRecordIds
*/
private
void
deleteAccItemRelByRecord
(
List
<
Long
>
bookRecordIds
){
if
(
CollectionUtils
.
isEmpty
(
bookRecordIds
))
{
private
void
deleteAccItemRelByRecord
(
List
<
Long
>
bookRecordIds
)
{
if
(
CollectionUtils
.
isEmpty
(
bookRecordIds
))
{
return
;
}
Example
example
=
new
Example
(
BookRecordAccItem
.
class
);
Example
.
Criteria
criteria
=
example
.
createCriteria
();
criteria
.
andIn
(
"bookRecordId"
,
bookRecordIds
);
criteria
.
andIn
(
"bookRecordId"
,
bookRecordIds
);
bookRecordAccItemMapper
.
deleteByExample
(
example
);
}
/**
* 复制相应预定记录的随行物品信息
* (注意了参数列表中的记录的历史年份必须属于当前月)
*
* @param vehicleBookRecords
*/
@Transactional
public
void
copyAccItemRel2His
(
List
<
VehicleBookRecord
>
vehicleBookRecords
,
String
accItemTbName
)
{
if
(
CollectionUtils
.
isEmpty
(
vehicleBookRecords
))
{
return
;
public
void
copyAccItemRel2His
(
List
<
VehicleBookRecord
>
vehicleBookRecords
,
String
accItemTbName
)
{
if
(
CollectionUtils
.
isEmpty
(
vehicleBookRecords
))
{
return
;
}
List
<
Long
>
recordIds
=
Lists
.
newArrayList
();
for
(
VehicleBookRecord
vehicleBookRecord
:
vehicleBookRecords
)
{
for
(
VehicleBookRecord
vehicleBookRecord
:
vehicleBookRecords
)
{
recordIds
.
add
(
vehicleBookRecord
.
getId
());
}
List
<
BookRecordAccItem
>
bookRecordAccItems
=
bookRecordAccItemMapper
.
getByRecords
(
ImmutableMap
.
of
(
"bookRecordIds"
,
recordIds
,
"tbName"
,
TB_ACC_ITEM_NAME_REAL
));
if
(
CollectionUtils
.
isEmpty
(
bookRecordAccItems
))
{
ImmutableMap
.
of
(
"bookRecordIds"
,
recordIds
,
"tbName"
,
TB_ACC_ITEM_NAME_REAL
));
if
(
CollectionUtils
.
isEmpty
(
bookRecordAccItems
))
{
return
;
}
List
<
Map
<
String
,
Object
>>
bookRecordAccItemsTemp
=
Lists
.
newArrayList
();
for
(
Integer
index
=
0
;
index
<
bookRecordAccItems
.
size
();
index
++)
{
List
<
Map
<
String
,
Object
>>
bookRecordAccItemsTemp
=
Lists
.
newArrayList
();
for
(
Integer
index
=
0
;
index
<
bookRecordAccItems
.
size
();
index
++)
{
bookRecordAccItemsTemp
.
add
(
ImmutableMap
.
of
(
"id"
,
bookRecordAccItems
.
get
(
index
).
getId
(),
"bookRecordId"
,
bookRecordAccItems
.
get
(
index
).
getBookRecordId
(),
"accItemId"
,
bookRecordAccItems
.
get
(
index
).
getAccItemId
(),
"amount"
,
bookRecordAccItems
.
get
(
index
).
getAmount
()
"id"
,
bookRecordAccItems
.
get
(
index
).
getId
(),
"bookRecordId"
,
bookRecordAccItems
.
get
(
index
).
getBookRecordId
(),
"accItemId"
,
bookRecordAccItems
.
get
(
index
).
getAccItemId
(),
"amount"
,
bookRecordAccItems
.
get
(
index
).
getAmount
()
));
if
(
index
==
COPY_BATCH_SIZE
||
index
==
bookRecordAccItems
.
size
()
-
1
)
{
if
(
index
==
COPY_BATCH_SIZE
||
index
==
bookRecordAccItems
.
size
()
-
1
)
{
bookRecordAccItemMapper
.
batchAdd2Tb
(
ImmutableMap
.
of
(
"list"
,
bookRecordAccItemsTemp
,
"tbName"
,
accItemTbName
"list"
,
bookRecordAccItemsTemp
,
"tbName"
,
accItemTbName
));
bookRecordAccItemsTemp
=
Lists
.
newArrayList
();
}
...
...
@@ -478,54 +487,56 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
}
public
PageDataVO
<
VehicleRecordInfoVo
>
getListByParam
(
VehiclePlanDto
vehiclePlanDto
)
{
Query
query
=
new
Query
(
vehiclePlanDto
);
PageDataVO
<
VehicleRecordInfoVo
>
pageDataVO
=
PageDataVO
.
pageInfo
(
query
,
()
->
mapper
.
getByParam
(
query
.
getSuper
()));
return
pageDataVO
;
}
private
String
getTbNameNow
(){
return
TB_NAME_PREFIX
+
DateTime
.
now
().
toString
(
YEAR_DATE_TIME_FORMATTER
);
private
String
getTbNameNow
()
{
return
TB_NAME_PREFIX
+
DateTime
.
now
().
toString
(
YEAR_DATE_TIME_FORMATTER
);
}
/**
* 获取历史表名称
*
* @param year
* @return
*/
private
String
getTbName
(
String
year
){
return
TB_NAME_PREFIX
+
year
;
private
String
getTbName
(
String
year
)
{
return
TB_NAME_PREFIX
+
year
;
}
private
String
getAccItemTbNameNow
(){
return
TB_ACC_ITEM_NAME_PREFIX
+
DateTime
.
now
().
toString
(
YEAR_DATE_TIME_FORMATTER
);
private
String
getAccItemTbNameNow
()
{
return
TB_ACC_ITEM_NAME_PREFIX
+
DateTime
.
now
().
toString
(
YEAR_DATE_TIME_FORMATTER
);
}
/**
* 获取历史表名称
*
* @param year
* @return
*/
private
String
getAccItemTbName
(
String
year
){
return
TB_ACC_ITEM_NAME_PREFIX
+
year
;
private
String
getAccItemTbName
(
String
year
)
{
return
TB_ACC_ITEM_NAME_PREFIX
+
year
;
}
/**
* 创建当年相关表格
*/
private
void
createTbIfNotExists
(
String
tbName
){
private
void
createTbIfNotExists
(
String
tbName
)
{
mapper
.
createTbIfNotExists
(
tbName
);
}
private
void
createAccItemTbIfNotExists
(
String
tbName
){
private
void
createAccItemTbIfNotExists
(
String
tbName
)
{
bookRecordAccItemMapper
.
createTbIfNotExists
(
tbName
);
}
public
List
<
Integer
>
dataCompany
(
String
dataZone
,
String
dataCompany
)
{
List
<
BranchCompany
>
zoneCompanys
=
branchCompanyBiz
.
dataCompany
(
dataZone
);
//((VehicleBiz)AopContext.currentProxy()).dataCompany(dataZone);
List
<
Integer
>
zoneCompanyIds
=
zoneCompanys
.
parallelStream
().
map
(
BranchCompany:
:
getId
).
collect
(
Collectors
.
toList
());
if
(
StringUtils
.
isNotBlank
(
dataCompany
))
{
if
(
StringUtils
.
isNotBlank
(
dataCompany
))
{
List
<
Integer
>
dataCompanyIds
=
Arrays
.
asList
(
dataCompany
.
split
(
","
)).
parallelStream
().
map
(
s
->
Integer
.
valueOf
(
s
)).
collect
(
Collectors
.
toList
());
zoneCompanyIds
.
addAll
(
dataCompanyIds
);
}
...
...
@@ -533,4 +544,18 @@ public class VehicleBookRecordBiz extends BaseBiz<VehicleBookRecordMapper, Vehic
return
zoneCompanyIds
.
parallelStream
().
distinct
().
collect
(
Collectors
.
toList
());
}
public
List
<
VehicleBookRecordVo
>
getData
(
List
<
VehicleBookRecordVo
>
data
,
Integer
currentPage
,
Integer
pageSize
)
{
int
fromIndex
=
(
currentPage
-
1
)
*
pageSize
;
if
(
fromIndex
>=
data
.
size
())
{
return
Collections
.
emptyList
();
//空数组
}
if
(
fromIndex
<
0
)
{
return
Collections
.
emptyList
();
//空数组
}
int
toIndex
=
currentPage
*
pageSize
;
if
(
toIndex
>=
data
.
size
())
{
toIndex
=
data
.
size
();
}
return
data
.
subList
(
fromIndex
,
toIndex
);
}
}
xx-vehicle/xx-vehicle-server/src/main/java/com/xxfc/platform/vehicle/rest/VehicleActiveController.java
View file @
0574f50d
...
...
@@ -46,7 +46,6 @@ public class VehicleActiveController {
@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
)
{
...
...
xx-vehicle/xx-vehicle-server/src/main/resources/mapper/VehicleBookRecordMapper.xml
View file @
0574f50d
...
...
@@ -367,7 +367,7 @@
where id = #{id}
</select>
<select
id=
"
ge
tByVehicleId"
parameterType=
"java.lang.String"
<select
id=
"
selec
tByVehicleId"
parameterType=
"java.lang.String"
resultType=
"com.xxfc.platform.vehicle.pojo.VehicleBookRecordVo"
>
SELECT v1.*,bc2.name retCompanyName from vehicle_book_record v1
LEFT JOIN branch_company bc2 on v1.ret_company = bc2.id
...
...
@@ -485,7 +485,7 @@
and v1.book_user != -2
</where>
group by v1.id
order by
create_tim
e DESC
order by
book_start_dat
e DESC
</select>
...
...
xx-vehicle/xx-vehicle-server/src/main/resources/mapper/VehicleMapper.xml
View file @
0574f50d
...
...
@@ -19,7 +19,7 @@
<association
property=
"vehicleModel"
column=
"model_id"
select=
"com.xxfc.platform.vehicle.mapper.VehicleModelMapper.selectByPrimaryKey"
/>
<association
property=
"vehicleBookRecord"
column=
"id"
select=
"com.xxfc.platform.vehicle.mapper.VehicleBookRecordMapper.
ge
tByVehicleId"
/>
select=
"com.xxfc.platform.vehicle.mapper.VehicleBookRecordMapper.
selec
tByVehicleId"
/>
</resultMap>
<resultMap
id=
"vehicleModel"
type=
"com.xxfc.platform.vehicle.pojo.VehicleAndModelInfoVo"
>
...
...
@@ -70,6 +70,7 @@
v.manufacturer,
v.receive_time,
v.update_time,
v.model_id,
v.mileage_last_update as mileage
<if
test=
" yearMonthAndParam != null "
>
,vbi.booked_date
...
...
@@ -92,6 +93,9 @@
<if
test=
"mRangeDateEnd !=null"
>
and v.maintenance_date
<
= #{mRangeDateEnd}
</if>
<if
test=
"modelId != null and modelId != ''"
>
and v.model_id = #{modelId}
</if>
<if
test=
"mRangeDateStart !=null"
>
and v.maintenance_date
>
= #{mRangeDateStart}
</if>
...
...
@@ -202,6 +206,7 @@
v.manufacturer,
v.receive_time,
v.update_time,
v.model_id,
v.mileage_last_update as mileage
<if
test=
" yearMonthAndParam !=null "
>
,vbi.booked_date
...
...
@@ -245,6 +250,9 @@
<if
test=
"mRangeDateEnd !=null"
>
and v.maintenance_date
<
= #{mRangeDateEnd}
</if>
<if
test=
"modelId != null and modelId != ''"
>
and v.model_id = #{modelId}
</if>
<if
test=
"mRangeDateStart !=null"
>
and v.maintenance_date
>
= #{mRangeDateStart}
</if>
...
...
@@ -392,6 +400,9 @@
<if
test=
"useType != null"
>
and v1.use_type = #{useType}
</if>
<if
test=
"modelId != null and modelId != ''"
>
and v1.model_id = #{modelId}
</if>
and v1.is_del != 1
</where>
</select>
...
...
@@ -415,6 +426,9 @@
#{id}
</foreach>
</if>
<if
test=
"modelId != null and modelId != ''"
>
and v1.model_id = #{modelId}
</if>
and v1.is_del != 1
</where>
ORDER BY parkCompanyName
...
...
@@ -493,6 +507,9 @@
#{id}
</foreach>
</if>
<if
test=
"modelId != null and modelId != ''"
>
and v2.model_id = #{modelId}
</if>
and v2.is_del != 1
</where>
</select>
...
...
xx-vehicle/xx-vehicle-server/src/main/resources/mapper/VehicleWarningMsgMapper.xml
View file @
0574f50d
...
...
@@ -58,6 +58,9 @@
<if
test=
"status != null"
>
and v.status = #{status}
</if>
<if
test=
"modelId != null and modelId != ''"
>
and v.model_id = #{modelId}
</if>
<if
test=
"companyIds != null and companyIds.size > 0"
>
and v.park_branch_company_id in
<foreach
collection=
"companyIds"
item=
"id"
open=
"("
separator=
","
close=
")"
>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment