Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
84f56c02
提交
84f56c02
authored
4月 24, 2024
作者:
huyufan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
接单判断
上级
330547c9
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
209 行增加
和
2 行删除
+209
-2
OrderChildCheckParam.java
...a/com/clx/performance/param/app/OrderChildCheckParam.java
+44
-0
OrderChildVO.java
...rc/main/java/com/clx/performance/vo/app/OrderChildVO.java
+6
-0
OrderGoodsVO.java
...src/main/java/com/clx/performance/vo/pc/OrderGoodsVO.java
+7
-0
AppDriverOrderChildController.java
...ormance/controller/app/AppDriverOrderChildController.java
+7
-0
TruckLocationDTO.java
...n/java/com/clx/performance/dto/zjxl/TruckLocationDTO.java
+86
-0
OrderChildService.java
...n/java/com/clx/performance/service/OrderChildService.java
+2
-0
OrderChildServiceImpl.java
...m/clx/performance/service/impl/OrderChildServiceImpl.java
+55
-2
OrderGoodsServiceImpl.java
...m/clx/performance/service/impl/OrderGoodsServiceImpl.java
+2
-0
没有找到文件。
performance-api/src/main/java/com/clx/performance/param/app/OrderChildCheckParam.java
0 → 100644
浏览文件 @
84f56c02
package
com
.
clx
.
performance
.
param
.
app
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.math.BigDecimal
;
@Getter
@Setter
@NoArgsConstructor
public
class
OrderChildCheckParam
extends
PositionParam
{
@ApiModelProperty
(
value
=
"货单编号"
,
example
=
"100000000"
)
@NotBlank
(
message
=
"货单编号不能为空"
)
private
String
orderGoodsNo
;
@ApiModelProperty
(
value
=
"车辆id"
,
example
=
"1"
)
@NotNull
(
message
=
"车辆id空"
)
private
Integer
truckId
;
@ApiModelProperty
(
value
=
"车牌号"
,
example
=
"1"
)
@NotNull
(
message
=
"车牌号不能为空"
)
private
String
truckNo
;
@ApiModelProperty
(
value
=
"司机用户编号"
,
example
=
"1"
)
@NotNull
(
message
=
"司机用户编号空"
)
private
Long
driverUserNo
;
@ApiModelProperty
(
"纬度"
)
private
BigDecimal
latitude
;
@ApiModelProperty
(
"经度"
)
private
BigDecimal
longitude
;
@ApiModelProperty
(
"可卸车时间段开始"
)
private
String
unloadBeginTime
;
@ApiModelProperty
(
"可卸车时间段结束"
)
private
String
unloadEndTime
;
}
performance-api/src/main/java/com/clx/performance/vo/app/OrderChildVO.java
浏览文件 @
84f56c02
...
...
@@ -205,5 +205,10 @@ public class OrderChildVO {
@MoneyOutConvert
private
BigDecimal
lossAmount
;
@ApiModelProperty
(
"可卸车时间段开始"
)
private
String
unloadBeginTime
;
@ApiModelProperty
(
"可卸车时间段结束"
)
private
String
unloadEndTime
;
}
\ No newline at end of file
performance-api/src/main/java/com/clx/performance/vo/pc/OrderGoodsVO.java
浏览文件 @
84f56c02
...
...
@@ -132,4 +132,10 @@ public class OrderGoodsVO {
@ApiModelProperty
(
"用车方式 1:平台车辆配货 2:自有车辆配货"
)
private
Integer
vehicleUsage
;
@ApiModelProperty
(
"可卸车时间段开始"
)
private
String
unloadBeginTime
;
@ApiModelProperty
(
"可卸车时间段结束"
)
private
String
unloadEndTime
;
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/controller/app/AppDriverOrderChildController.java
浏览文件 @
84f56c02
...
...
@@ -32,6 +32,13 @@ public class AppDriverOrderChildController {
private
final
OrderChildService
orderChildService
;
@ApiOperation
(
value
=
"接单判断"
,
notes
=
"<br>By:胡宇帆"
)
@PostMapping
(
"/getOrderChildCheck"
)
public
Result
<
String
>
getOrderChildCheck
(
@RequestBody
@Validated
OrderChildCheckParam
param
)
{
return
Result
.
ok
(
orderChildService
.
getOrderChildCheck
(
param
));
}
@ApiOperation
(
value
=
"接单"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
"/saveOrderChild"
)
public
Result
<
SaveOrderChildVO
>
saveOrderChild
(
@RequestBody
@Validated
OrderChildSaveParam
param
)
{
...
...
performance-web/src/main/java/com/clx/performance/dto/zjxl/TruckLocationDTO.java
浏览文件 @
84f56c02
...
...
@@ -38,5 +38,91 @@ public class TruckLocationDTO {
}
public
String
getTruckNo
()
{
return
truckNo
;
}
public
void
setTruckNo
(
String
truckNo
)
{
this
.
truckNo
=
truckNo
;
}
public
BigDecimal
getAngle
()
{
return
angle
;
}
public
void
setAngle
(
BigDecimal
angle
)
{
this
.
angle
=
angle
;
}
public
BigDecimal
getSpeed
()
{
return
speed
;
}
public
void
setSpeed
(
BigDecimal
speed
)
{
this
.
speed
=
speed
;
}
public
BigDecimal
[]
getLocation
()
{
return
location
;
}
public
void
setLocation
(
BigDecimal
[]
location
)
{
this
.
location
=
location
;
}
public
String
getGpsTime
()
{
return
gpsTime
;
}
public
void
setGpsTime
(
String
gpsTime
)
{
this
.
gpsTime
=
gpsTime
;
}
public
String
getProvince
()
{
return
province
;
}
public
void
setProvince
(
String
province
)
{
this
.
province
=
province
;
}
public
String
getCity
()
{
return
city
;
}
public
void
setCity
(
String
city
)
{
this
.
city
=
city
;
}
public
String
getCountry
()
{
return
country
;
}
public
void
setCountry
(
String
country
)
{
this
.
country
=
country
;
}
public
String
getAddress
()
{
return
address
;
}
public
void
setAddress
(
String
address
)
{
this
.
address
=
address
;
}
public
String
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
String
createTime
)
{
this
.
createTime
=
createTime
;
}
public
String
getModifiedTime
()
{
return
modifiedTime
;
}
public
void
setModifiedTime
(
String
modifiedTime
)
{
this
.
modifiedTime
=
modifiedTime
;
}
}
performance-web/src/main/java/com/clx/performance/service/OrderChildService.java
浏览文件 @
84f56c02
...
...
@@ -94,4 +94,6 @@ public interface OrderChildService {
IPage
<
OwnerOrderChildVO
>
pageOwnerOrderChildList
(
PageOwnerOrderChildListParam
param
);
OrderChildVO
getOwnerOrderChildInfo
(
String
childNo
);
String
getOrderChildCheck
(
OrderChildCheckParam
param
);
}
performance-web/src/main/java/com/clx/performance/service/impl/OrderChildServiceImpl.java
浏览文件 @
84f56c02
package
com
.
clx
.
performance
.
service
.
impl
;
import
cn.hutool.json.JSONUtil
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.order.enums.OrderEnum
;
...
...
@@ -7,6 +8,7 @@ import com.clx.order.enums.VehicleUsageEnum;
import
com.clx.order.feign.OrderFeign
;
import
com.clx.order.vo.feign.FeignAddressVO
;
import
com.clx.order.vo.feign.FeignOrderInfoVO
;
import
com.clx.order.vo.feign.FeignOrderVO
;
import
com.clx.performance.component.GoodsOrderTruckRecordComponent
;
import
com.clx.performance.component.OrderChildLoanComponent
;
import
com.clx.performance.constant.RedisConstants
;
...
...
@@ -17,6 +19,7 @@ import com.clx.performance.dao.settle.SettlementOwnerDetailDao;
import
com.clx.performance.dto.OrderChildExpectDTO
;
import
com.clx.performance.dto.gd.GdRouteDTO
;
import
com.clx.performance.dto.payment.WalletResidueCardDTO
;
import
com.clx.performance.dto.zjxl.TruckLocationDTO
;
import
com.clx.performance.dto.zjxl.TruckTraceDTO
;
import
com.clx.performance.enums.*
;
import
com.clx.performance.extranal.user.*
;
...
...
@@ -69,6 +72,7 @@ import org.springframework.transaction.annotation.Transactional;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
...
...
@@ -1353,9 +1357,10 @@ public class OrderChildServiceImpl implements OrderChildService {
public
OrderChildVO
getOrderChildInfo
(
String
childNo
)
{
UserSessionData
loginUserInfo
=
TokenUtil
.
getLoginUserInfo
();
Long
userNo
=
loginUserInfo
.
getUserNo
();
OrderChild
orderChild
=
orderChildDao
.
getByChildNo
(
childNo
).
orElseThrow
(
PerformanceResultEnum
.
ORDER_CHILD_NO_FOUND
);
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderChild
.
getOrderNo
());
if
(!
Objects
.
equals
(
orderChild
.
getDriverUserNo
(),
userNo
)
&&
!
Objects
.
equals
(
orderChild
.
getTruckOwnUserNo
(),
userNo
))
{
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
ORDER_CHILD_NO_FOUND
);
...
...
@@ -1396,7 +1401,8 @@ public class OrderChildServiceImpl implements OrderChildService {
//亏吨扣款
result
.
setLossAmount
(
calcLossAmount
(
result
.
getLossWeight
(),
orderChild
.
getLossPrice
()));
result
.
setUnloadBeginTime
(
orderInfoFeign
.
getUnloadBeginTime
());
result
.
setUnloadEndTime
(
orderInfoFeign
.
getUnloadEndTime
());
//查询结算信息
Optional
<
SettlementOwnerDetail
>
optional
=
settlementOwnerDetailDao
.
getByChildNo
(
childNo
);
...
...
@@ -1461,6 +1467,53 @@ public class OrderChildServiceImpl implements OrderChildService {
return
result
;
}
@Override
public
String
getOrderChildCheck
(
OrderChildCheckParam
param
)
{
OrderGoods
orderGoods
=
orderGoodsDao
.
getByOrderGoodsNo
(
param
.
getOrderGoodsNo
()).
get
();
BigDecimal
sendLatitude
=
orderGoods
.
getSendLatitude
();
BigDecimal
sendLongitude
=
orderGoods
.
getSendLongitude
();
BigDecimal
longitude
=
param
.
getLongitude
();
BigDecimal
latitude
=
param
.
getLatitude
();
TruckLocationDTO
truckLocationDTO
=
zjxlGpsService
.
getTruckLastLocation
(
param
.
getTruckNo
());
//如果中交兴路获取到位置信息,则使用中交,否则用APP传的位置信息
if
(
truckLocationDTO
!=
null
)
{
BigDecimal
[]
location
=
truckLocationDTO
.
getLocation
();
longitude
=
location
[
0
];
latitude
=
location
[
1
];
log
.
info
(
"当前中交兴路获取司机车牌:{},相关位置信息:{}"
,
param
.
getTruckNo
(),
JSONUtil
.
parse
(
truckLocationDTO
));
}
List
<
GdRouteDTO
>
route
=
gdService
.
getRoute
(
longitude
,
latitude
,
sendLongitude
,
sendLatitude
);
if
(
CollectionUtils
.
isNotEmpty
(
route
))
{
GdRouteDTO
gdRouteDTO
=
route
.
get
(
0
);
Integer
duration
=
gdRouteDTO
.
getDuration
();
//预计到达时间
LocalDateTime
localDateTime
=
LocalDateTime
.
now
().
plusSeconds
(
duration
);
LocalDate
localDate
=
localDateTime
.
toLocalDate
();
String
begin
=
localDate
+
param
.
getUnloadBeginTime
();
String
end
=
localDate
+
param
.
getUnloadEndTime
();
//可以装货时间
LocalDateTime
beginLocalDateTime
=
DateUtils
.
parseDateTime
(
begin
).
get
();
LocalDateTime
endLocalDateTime
=
DateUtils
.
parseDateTime
(
end
).
get
();
if
(
localDateTime
.
isAfter
(
beginLocalDateTime
)
&&
localDateTime
.
isBefore
(
endLocalDateTime
))
{
log
.
info
(
"不用弹"
);
return
"不用弹"
;
}
else
{
log
.
info
(
"需要弹"
);
return
"需要弹"
;
}
}
return
"不用弹,高德数据为空"
;
}
//计算亏吨吨数
private
BigDecimal
calcLossWeight
(
OrderChild
orderChild
){
if
(
Objects
.
nonNull
(
orderChild
.
getUnloadNet
())){
...
...
performance-web/src/main/java/com/clx/performance/service/impl/OrderGoodsServiceImpl.java
浏览文件 @
84f56c02
...
...
@@ -137,6 +137,8 @@ public class OrderGoodsServiceImpl implements OrderGoodsService, InitializingBea
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderNo
);
orderGoodsVO
.
setReveiveAddressAll
(
orderInfoFeign
.
getReveiveAddressAll
());
orderGoodsVO
.
setSendAddressAll
(
orderInfoFeign
.
getSendAddressAll
());
orderGoodsVO
.
setUnloadBeginTime
(
orderInfoFeign
.
getUnloadBeginTime
());
orderGoodsVO
.
setUnloadEndTime
(
orderInfoFeign
.
getUnloadEndTime
());
orderGoodsVO
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
.
compareTo
(
orderGoodsVO
.
getResidueTransportWeight
())
>
0
?
BigDecimal
.
ZERO
:
orderGoodsVO
.
getResidueTransportWeight
());
return
orderGoodsVO
;
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论