Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
3aaa3e8e
提交
3aaa3e8e
authored
10月 26, 2023
作者:
liuhaiquan
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/v5.7_break_contract_reverse_20231020' into…
Merge remote-tracking branch 'origin/v5.7_break_contract_reverse_20231020' into v5.7_break_contract_reverse_20231020
上级
a31a90dc
b038f7bc
显示空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
251 行增加
和
20 行删除
+251
-20
BreakContractSettlementLogEnum.java
...clx/performance/enums/BreakContractSettlementLogEnum.java
+54
-0
PerformanceResultEnum.java
...java/com/clx/performance/enums/PerformanceResultEnum.java
+2
-1
CarrierUploadInvoiceImgParam.java
...c/breakcontract/carrier/CarrierUploadInvoiceImgParam.java
+25
-0
CarrierBreakContractSettlementOwnerController.java
...arrier/CarrierBreakContractSettlementOwnerController.java
+8
-0
BreakContractSettlementOwnerDao.java
...ce/dao/breakcontract/BreakContractSettlementOwnerDao.java
+4
-0
BreakContractSettlementOwnerDaoImpl.java
...pl/breakcontract/BreakContractSettlementOwnerDaoImpl.java
+12
-0
BreakContractSettlementLogService.java
...vice/breakcontract/BreakContractSettlementLogService.java
+2
-0
BreakContractSettlementOwnerService.java
...ce/breakcontract/BreakContractSettlementOwnerService.java
+3
-0
OrderCancelServiceImpl.java
.../clx/performance/service/impl/OrderCancelServiceImpl.java
+94
-19
BreakContractSettlementLogServiceImpl.java
.../breakcontract/BreakContractSettlementLogServiceImpl.java
+21
-0
BreakContractSettlementOwnerServiceImpl.java
...reakcontract/BreakContractSettlementOwnerServiceImpl.java
+26
-0
没有找到文件。
performance-api/src/main/java/com/clx/performance/enums/BreakContractSettlementLogEnum.java
0 → 100644
浏览文件 @
3aaa3e8e
package
com
.
clx
.
performance
.
enums
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
import
java.util.Arrays
;
import
java.util.Objects
;
import
java.util.Optional
;
public
enum
BreakContractSettlementLogEnum
{
;
@Getter
@AllArgsConstructor
public
enum
Type
{
CREATE_SETTLEMENT
(
1
,
"创建结算单"
),
UPLOAD_SETTLEMENT
(
2
,
"上传结算凭证"
),
OWNER_TO_BE_CONFIRMED
(
3
,
"货主确认结算单"
),
SHIPPER_TO_PAYMENT
(
4
,
"货主付款"
),
PLATFORM_CONFIRMED_OWNER_PAYMENT
(
5
,
"平台确认付款"
),
PLATFORM_TO_PAYMENT
(
6
,
"平台付款"
),
OWNER_CONFIRMED_PLATFORM_PAYMENT
(
7
,
"货主确认付款"
),
COMPLETED
(
8
,
"已完结"
),
;
private
final
Integer
code
;
private
final
String
msg
;
public
static
Optional
<
Type
>
getByCode
(
int
code
)
{
return
Arrays
.
stream
(
values
()).
filter
(
e
->
Objects
.
equals
(
e
.
getCode
(),
code
)).
findFirst
();
}
public
static
String
getMsgByCode
(
int
code
)
{
return
getByCode
(
code
).
map
(
Type:
:
getMsg
).
orElse
(
null
);
}
}
@Getter
@AllArgsConstructor
public
enum
DeleteStatus
{
NO
(
0
,
"否"
),
YES
(
1
,
"是"
),
;
private
final
Integer
code
;
private
final
String
msg
;
}
}
performance-api/src/main/java/com/clx/performance/enums/PerformanceResultEnum.java
浏览文件 @
3aaa3e8e
...
@@ -77,7 +77,8 @@ public enum PerformanceResultEnum implements ResultEnum {
...
@@ -77,7 +77,8 @@ public enum PerformanceResultEnum implements ResultEnum {
BREAK_CONTRACT_NO_FOUND
(
1600
,
"违约不存在"
),
BREAK_CONTRACT_NO_FOUND
(
1600
,
"违约不存在"
),
BREAK_CONTRACT_RULE_NAME_EXIST
(
1601
,
"违约规则名称已存在"
),
BREAK_CONTRACT_RULE_NAME_EXIST
(
1601
,
"违约规则名称已存在"
),
BREAK_CONTRACT_RULE_NO_FOUND
(
1601
,
"违约规则不存在"
),
BREAK_CONTRACT_RULE_NO_FOUND
(
1602
,
"违约规则不存在"
),
STATUS_CHANGED
(
1603
,
"状态已变更,请重新刷新页面"
),
;
;
private
final
int
code
;
private
final
int
code
;
...
...
performance-api/src/main/java/com/clx/performance/param/pc/breakcontract/carrier/CarrierUploadInvoiceImgParam.java
0 → 100644
浏览文件 @
3aaa3e8e
package
com
.
clx
.
performance
.
param
.
pc
.
breakcontract
.
carrier
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
javax.validation.constraints.NotNull
;
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
CarrierUploadInvoiceImgParam
{
@NotNull
(
message
=
"id不能为空"
)
@ApiModelProperty
(
value
=
"id"
,
example
=
"100"
)
private
Integer
id
;
@NotNull
(
message
=
"结算凭证不能为空"
)
@ApiModelProperty
(
value
=
"结算凭证"
,
example
=
"/123.img"
)
private
String
invoiceImg
;
}
performance-web/src/main/java/com/clx/performance/controller/pc/breakcontract/carrier/CarrierBreakContractSettlementOwnerController.java
浏览文件 @
3aaa3e8e
package
com
.
clx
.
performance
.
controller
.
pc
.
breakcontract
.
carrier
;
package
com
.
clx
.
performance
.
controller
.
pc
.
breakcontract
.
carrier
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.breakcontract.carrier.CarrierUploadInvoiceImgParam
;
import
com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam
;
import
com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam
;
import
com.clx.performance.service.breakcontract.BreakContractSettlementOwnerService
;
import
com.clx.performance.service.breakcontract.BreakContractSettlementOwnerService
;
import
com.clx.performance.vo.pc.breakcontract.carrier.CarrierBreakContractSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.breakcontract.carrier.CarrierBreakContractSettlementOwnerDetailVO
;
...
@@ -59,4 +60,11 @@ public class CarrierBreakContractSettlementOwnerController {
...
@@ -59,4 +60,11 @@ public class CarrierBreakContractSettlementOwnerController {
return
Result
.
ok
(
breakContractSettlementOwnerService
.
getCarrierBreakContractSettlementOwnerDetail
(
id
));
return
Result
.
ok
(
breakContractSettlementOwnerService
.
getCarrierBreakContractSettlementOwnerDetail
(
id
));
}
}
@ApiOperation
(
value
=
"上传结算凭证"
,
notes
=
"<br>By:李瑞新"
)
@PostMapping
(
"/uploadInvoiceImg"
)
public
Result
uploadInvoiceImg
(
@RequestBody
@Validated
CarrierUploadInvoiceImgParam
param
)
{
breakContractSettlementOwnerService
.
uploadInvoiceImg
(
param
);
return
Result
.
ok
();
}
}
}
performance-web/src/main/java/com/clx/performance/dao/breakcontract/BreakContractSettlementOwnerDao.java
浏览文件 @
3aaa3e8e
...
@@ -6,6 +6,7 @@ import com.clx.performance.mapper.breakcontract.BreakContractSettlementOwnerMapp
...
@@ -6,6 +6,7 @@ import com.clx.performance.mapper.breakcontract.BreakContractSettlementOwnerMapp
import
com.clx.performance.model.breakcontract.BreakContractSettlementOwner
;
import
com.clx.performance.model.breakcontract.BreakContractSettlementOwner
;
import
com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam
;
import
com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam
;
import
com.msl.common.dao.BaseDao
;
import
com.msl.common.dao.BaseDao
;
import
org.apache.ibatis.annotations.Param
;
/**
/**
* @author liruixin
* @author liruixin
...
@@ -13,5 +14,8 @@ import com.msl.common.dao.BaseDao;
...
@@ -13,5 +14,8 @@ import com.msl.common.dao.BaseDao;
* Time 16:02
* Time 16:02
*/
*/
public
interface
BreakContractSettlementOwnerDao
extends
BaseDao
<
BreakContractSettlementOwnerMapper
,
BreakContractSettlementOwner
,
Integer
>
{
public
interface
BreakContractSettlementOwnerDao
extends
BaseDao
<
BreakContractSettlementOwnerMapper
,
BreakContractSettlementOwner
,
Integer
>
{
IPage
<
BreakContractSettlementOwner
>
pageCarrierBreakContractSettlementOwnerList
(
PageCarrierBreakContractSettlementOwnerParam
param
);
IPage
<
BreakContractSettlementOwner
>
pageCarrierBreakContractSettlementOwnerList
(
PageCarrierBreakContractSettlementOwnerParam
param
);
boolean
uploadInvoiceImg
(
@Param
(
"id"
)
Integer
id
,
@Param
(
"invoiceImg"
)
String
invoiceImg
);
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/breakcontract/BreakContractSettlementOwnerDaoImpl.java
浏览文件 @
3aaa3e8e
...
@@ -22,6 +22,8 @@ import java.util.Objects;
...
@@ -22,6 +22,8 @@ import java.util.Objects;
*/
*/
@Repository
@Repository
public
class
BreakContractSettlementOwnerDaoImpl
extends
BaseDaoImpl
<
BreakContractSettlementOwnerMapper
,
BreakContractSettlementOwner
,
Integer
>
implements
BreakContractSettlementOwnerDao
{
public
class
BreakContractSettlementOwnerDaoImpl
extends
BaseDaoImpl
<
BreakContractSettlementOwnerMapper
,
BreakContractSettlementOwner
,
Integer
>
implements
BreakContractSettlementOwnerDao
{
@Override
@Override
public
IPage
<
BreakContractSettlementOwner
>
pageCarrierBreakContractSettlementOwnerList
(
PageCarrierBreakContractSettlementOwnerParam
param
)
{
public
IPage
<
BreakContractSettlementOwner
>
pageCarrierBreakContractSettlementOwnerList
(
PageCarrierBreakContractSettlementOwnerParam
param
)
{
LambdaQueryWrapper
<
BreakContractSettlementOwner
>
query
=
new
LambdaQueryWrapper
<>();
LambdaQueryWrapper
<
BreakContractSettlementOwner
>
query
=
new
LambdaQueryWrapper
<>();
...
@@ -34,4 +36,14 @@ public class BreakContractSettlementOwnerDaoImpl extends BaseDaoImpl<BreakContra
...
@@ -34,4 +36,14 @@ public class BreakContractSettlementOwnerDaoImpl extends BaseDaoImpl<BreakContra
query
.
orderByDesc
(
BreakContractSettlementOwner:
:
getId
);
query
.
orderByDesc
(
BreakContractSettlementOwner:
:
getId
);
return
baseMapper
.
selectPage
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
query
);
return
baseMapper
.
selectPage
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
query
);
}
}
@Override
public
boolean
uploadInvoiceImg
(
Integer
id
,
String
invoiceImg
)
{
return
update
(
lUdWrapper
()
.
eq
(
BreakContractSettlementOwner:
:
getId
,
id
)
.
eq
(
BreakContractSettlementOwner:
:
getStatus
,
BreakContractSettlementOwnerEnum
.
Status
.
TO_BE_LOCKED
.
getCode
())
.
set
(
BreakContractSettlementOwner:
:
getInvoiceImg
,
invoiceImg
)
.
set
(
BreakContractSettlementOwner:
:
getStatus
,
BreakContractSettlementOwnerEnum
.
Status
.
OWNER_TO_BE_CONFIRMED
.
getCode
())
);
}
}
}
performance-web/src/main/java/com/clx/performance/service/breakcontract/BreakContractSettlementLogService.java
浏览文件 @
3aaa3e8e
...
@@ -6,4 +6,6 @@ package com.clx.performance.service.breakcontract;
...
@@ -6,4 +6,6 @@ package com.clx.performance.service.breakcontract;
* Time 16:02
* Time 16:02
*/
*/
public
interface
BreakContractSettlementLogService
{
public
interface
BreakContractSettlementLogService
{
void
saveBreakSettlementLog
(
String
settlementNo
,
Integer
type
,
String
remark
,
Integer
createType
,
Long
createBy
,
String
createName
);
}
}
performance-web/src/main/java/com/clx/performance/service/breakcontract/BreakContractSettlementOwnerService.java
浏览文件 @
3aaa3e8e
package
com
.
clx
.
performance
.
service
.
breakcontract
;
package
com
.
clx
.
performance
.
service
.
breakcontract
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.breakcontract.carrier.CarrierUploadInvoiceImgParam
;
import
com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam
;
import
com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam
;
import
com.clx.performance.vo.pc.breakcontract.carrier.CarrierBreakContractSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.breakcontract.carrier.CarrierBreakContractSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerVO
;
import
com.clx.performance.vo.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerVO
;
...
@@ -18,4 +19,6 @@ public interface BreakContractSettlementOwnerService {
...
@@ -18,4 +19,6 @@ public interface BreakContractSettlementOwnerService {
SXSSFWorkbook
exportCarrierBreakContractSettlementOwnerList
(
PageCarrierBreakContractSettlementOwnerParam
param
);
SXSSFWorkbook
exportCarrierBreakContractSettlementOwnerList
(
PageCarrierBreakContractSettlementOwnerParam
param
);
CarrierBreakContractSettlementOwnerDetailVO
getCarrierBreakContractSettlementOwnerDetail
(
Integer
id
);
CarrierBreakContractSettlementOwnerDetailVO
getCarrierBreakContractSettlementOwnerDetail
(
Integer
id
);
void
uploadInvoiceImg
(
CarrierUploadInvoiceImgParam
param
);
}
}
performance-web/src/main/java/com/clx/performance/service/impl/OrderCancelServiceImpl.java
浏览文件 @
3aaa3e8e
...
@@ -6,6 +6,7 @@ import com.clx.order.feign.OrderFeign;
...
@@ -6,6 +6,7 @@ import com.clx.order.feign.OrderFeign;
import
com.clx.order.vo.feign.FeignOrderVO
;
import
com.clx.order.vo.feign.FeignOrderVO
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dao.OrderGoodsDao
;
import
com.clx.performance.dao.OrderGoodsDao
;
import
com.clx.performance.dao.OrderGoodsTruckBindDao
;
import
com.clx.performance.enums.OrderChildEnum
;
import
com.clx.performance.enums.OrderChildEnum
;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.enums.OrderGoodsStatusEnum
;
import
com.clx.performance.enums.TruckDemandEnum
;
import
com.clx.performance.enums.TruckDemandEnum
;
...
@@ -13,6 +14,7 @@ import com.clx.performance.model.OrderChild;
...
@@ -13,6 +14,7 @@ import com.clx.performance.model.OrderChild;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.service.OrderCancelService
;
import
com.clx.performance.service.OrderCancelService
;
import
com.clx.performance.service.OrderChildService
;
import
com.clx.performance.service.OrderChildService
;
import
com.msl.common.result.Result
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -36,25 +38,30 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -36,25 +38,30 @@ public class OrderCancelServiceImpl implements OrderCancelService {
private
final
OrderGoodsDao
orderGoodsDao
;
private
final
OrderGoodsDao
orderGoodsDao
;
private
final
OrderGoodsTruckBindDao
orderGoodsTruckBindDao
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
ownerCancelOrderPre
(
String
orderNo
)
{
public
void
ownerCancelOrderPre
(
String
orderNo
)
{
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderNo
);
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderNo
);
BigDecimal
orderResidueWeight
=
new
BigDecimal
(
orderInfoFeign
.
getResidueWeight
());
BigDecimal
orderTransportWeight
=
new
BigDecimal
(
orderInfoFeign
.
getTransportWeight
());
if
(
BigDecimal
.
ZERO
.
compareTo
(
orderResidueWeight
)
==
0
)
{
throw
new
RuntimeException
(
"需要承运吨数的车辆,已全部到达货源地,无法取消"
);
}
List
<
OrderGoods
>
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
List
<
OrderGoods
>
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
if
(
CollectionUtil
.
isEmpty
(
orderGoodsList
))
{
if
(
CollectionUtil
.
isEmpty
(
orderGoodsList
))
{
//未产生货单
//未产生货单
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
CANCELED
.
getCode
());
Result
<
Object
>
result
=
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
CANCELED
.
getCode
());
if
(!
result
.
succeed
())
{
throw
new
RuntimeException
(
"货主取消订单失败,原因:远程调用取消订单失败"
);
}
}
BigDecimal
orderGoodsResidueWeight
=
orderGoodsList
.
stream
().
map
(
OrderGoods:
:
getResidueTransportWeight
).
reduce
(
BigDecimal:
:
add
).
get
();
return
;
if
(
BigDecimal
.
ZERO
.
compareTo
(
orderGoodsResidueWeight
)
==
0
)
{
throw
new
RuntimeException
(
"需要承运吨数的车辆,已全部到达货源地,无法取消"
);
}
}
List
<
OrderChild
>
orderChildren
=
orderChildDao
.
selectResidueWeight
(
orderNo
);
if
(
CollectionUtil
.
isEmpty
(
orderChildren
))
{
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
);
if
(
CollectionUtil
.
isEmpty
(
orderChildrenList
))
{
Result
<
Object
>
result
=
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
CANCELED
.
getCode
());
if
(!
result
.
succeed
())
{
throw
new
RuntimeException
(
"货主取消订单失败,原因:远程调用取消订单失败"
);
}
//说明此刻未产生运单
//说明此刻未产生运单
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
OrderGoods
update
=
new
OrderGoods
();
OrderGoods
update
=
new
OrderGoods
();
...
@@ -62,17 +69,22 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -62,17 +69,22 @@ public class OrderCancelServiceImpl implements OrderCancelService {
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
());
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
CANCELED
.
getCode
());
}
else
{
}
else
{
BigDecimal
orderChildResidueWeight
=
orderChildrenList
.
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
if
(
orderChildResidueWeight
.
compareTo
(
orderTransportWeight
)
==
0
)
{
throw
new
RuntimeException
(
"当前订单已无余量可取消"
);
}
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
OrderGoods
update
=
new
OrderGoods
();
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
update
.
setId
(
orderGoods
.
getId
());
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
COMPLETED
.
getCode
());
Result
<
Object
>
result
=
orderFeign
.
updateOrderStatusByOrderNo
(
orderNo
,
OrderEnum
.
Status
.
COMPLETED
.
getCode
());
if
(!
result
.
succeed
())
{
throw
new
RuntimeException
(
"货主取消订单失败,原因:远程调用取消订单失败"
);
}
}
}
}
}
...
@@ -81,13 +93,12 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -81,13 +93,12 @@ public class OrderCancelServiceImpl implements OrderCancelService {
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
ownerCancelOrder
(
String
orderNo
)
{
public
void
ownerCancelOrder
(
String
orderNo
)
{
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderNo
);
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderNo
);
BigDecimal
orderResidueWeightAll
=
BigDecimal
.
ZERO
;
List
<
OrderGoods
>
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
List
<
OrderGoods
>
orderGoodsList
=
orderGoodsDao
.
getOrderGoodsListByOrderNo
(
orderNo
);
Map
<
Integer
,
BigDecimal
>
truckDemandMap
=
new
HashMap
<>();
Map
<
Integer
,
BigDecimal
>
truckDemandMap
=
new
HashMap
<>();
truckDemandMap
.
put
(
TruckDemandEnum
.
TruckType
.
PLATFORM_CAR
.
getCode
(),
BigDecimal
.
ZERO
);
truckDemandMap
.
put
(
TruckDemandEnum
.
TruckType
.
PLATFORM_CAR
.
getCode
(),
BigDecimal
.
ZERO
);
truckDemandMap
.
put
(
TruckDemandEnum
.
TruckType
.
PLATFORM_ANY_CAR
.
getCode
(),
BigDecimal
.
ZERO
);
truckDemandMap
.
put
(
TruckDemandEnum
.
TruckType
.
OWNER_CAR
.
getCode
(),
BigDecimal
.
ZERO
);
truckDemandMap
.
put
(
TruckDemandEnum
.
TruckType
.
OWNER_CAR
.
getCode
(),
BigDecimal
.
ZERO
);
if
(!
TruckDemandEnum
.
TruckType
.
PLATFORM_ANY_CAR
.
getCode
().
equals
(
orderInfoFeign
.
getTruckDemand
()))
{
if
(
OrderEnum
.
Status
.
COMPLETED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
if
(
OrderEnum
.
Status
.
COMPLETED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
//已完结
//已完结
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
);
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
);
...
@@ -96,6 +107,7 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -96,6 +107,7 @@ public class OrderCancelServiceImpl implements OrderCancelService {
OrderChild
update
=
new
OrderChild
();
OrderChild
update
=
new
OrderChild
();
update
.
setId
(
orderChild
.
getId
());
update
.
setId
(
orderChild
.
getId
());
update
.
setStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
());
update
.
setStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
());
//TODO 补充批量更新接口 关闭运单状态
orderChildDao
.
updateEntityByKey
(
update
);
orderChildDao
.
updateEntityByKey
(
update
);
}
}
Map
<
String
,
List
<
OrderGoods
>>
orderGoodsMap
=
orderGoodsList
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderGoods:
:
getOrderGoodsNo
));
Map
<
String
,
List
<
OrderGoods
>>
orderGoodsMap
=
orderGoodsList
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderGoods:
:
getOrderGoodsNo
));
...
@@ -105,18 +117,81 @@ public class OrderCancelServiceImpl implements OrderCancelService {
...
@@ -105,18 +117,81 @@ public class OrderCancelServiceImpl implements OrderCancelService {
for
(
Map
.
Entry
<
String
,
List
<
OrderGoods
>>
entry
:
orderGoodsMap
.
entrySet
())
{
for
(
Map
.
Entry
<
String
,
List
<
OrderGoods
>>
entry
:
orderGoodsMap
.
entrySet
())
{
String
orderGoodsNo
=
entry
.
getKey
();
String
orderGoodsNo
=
entry
.
getKey
();
OrderGoods
orderGoods
=
entry
.
getValue
().
get
(
0
);
OrderGoods
orderGoods
=
entry
.
getValue
().
get
(
0
);
BigDecimal
sum
=
orderChildMap
.
get
(
orderGoodsNo
).
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal:
:
add
).
get
();
BigDecimal
sum
=
orderChildMap
.
get
(
orderGoodsNo
).
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
truckDemandMap
.
put
(
orderGoods
.
getTruckDemand
(),
truckDemandMap
.
get
(
orderGoods
.
getTruckDemand
()).
add
(
orderGoods
.
getResidueTransportWeight
().
add
(
sum
)));
OrderGoods
update
=
new
OrderGoods
();
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
update
.
setId
(
orderGoods
.
getId
());
update
.
setResidueTransportWeight
(
orderGoods
.
getResidueTransportWeight
().
add
(
sum
));
//TODO 补充批量更新接口 关闭货单状态
truckDemandMap
.
put
(
orderGoods
.
getTruckDemand
(),
truckDemandMap
.
get
(
orderGoods
.
getTruckDemand
()).
add
(
update
.
getResidueTransportWeight
()));
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
}
else
if
(
OrderEnum
.
Status
.
CANCELED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
}
else
if
(
OrderEnum
.
Status
.
CANCELED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
//已取消
//已取消
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
truckDemandMap
.
put
(
orderGoods
.
getTruckDemand
(),
truckDemandMap
.
get
(
orderGoods
.
getTruckDemand
()).
add
(
orderGoods
.
getResidueTransportWeight
()));
truckDemandMap
.
put
(
orderGoods
.
getTruckDemand
(),
truckDemandMap
.
get
(
orderGoods
.
getTruckDemand
()).
add
(
orderGoods
.
getResidueTransportWeight
()));
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
//TODO 补充批量更新接口 关闭货单状态
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
CANCEL
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
}
}
else
{
Map
<
Integer
,
BigDecimal
>
vehicleUsageMap
=
new
HashMap
<>();
if
(
OrderEnum
.
Status
.
COMPLETED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
//已完结
List
<
OrderChild
>
orderChildrenList
=
orderChildDao
.
selectResidueWeight
(
orderNo
);
for
(
OrderChild
orderChild
:
orderChildrenList
)
{
OrderChild
update
=
new
OrderChild
();
update
.
setId
(
orderChild
.
getId
());
update
.
setStatus
(
OrderChildEnum
.
Status
.
OWNER_CANCEL
.
getCode
());
//TODO 补充批量更新接口 关闭运单状态
orderChildDao
.
updateEntityByKey
(
update
);
}
//货单
Map
<
String
,
List
<
OrderGoods
>>
orderGoodsMap
=
orderGoodsList
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderGoods:
:
getOrderGoodsNo
));
//运单
Map
<
String
,
List
<
OrderChild
>>
orderChildMap
=
orderChildrenList
.
stream
().
collect
(
Collectors
.
groupingBy
(
OrderChild:
:
getOrderGoodsNo
));
for
(
Map
.
Entry
<
String
,
List
<
OrderGoods
>>
entry
:
orderGoodsMap
.
entrySet
())
{
String
orderGoodsNo
=
entry
.
getKey
();
OrderGoods
orderGoods
=
entry
.
getValue
().
get
(
0
);
BigDecimal
sum
=
orderChildMap
.
get
(
orderGoodsNo
).
stream
().
map
(
OrderChild:
:
getWeight
).
reduce
(
BigDecimal
.
ZERO
,
BigDecimal:
:
add
);
vehicleUsageMap
.
put
(
orderGoods
.
getVehicleUsage
(),
vehicleUsageMap
.
get
(
orderGoods
.
getVehicleUsage
()).
add
(
orderGoods
.
getResidueTransportWeight
().
add
(
sum
)));
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
//TODO 补充批量更新接口 关闭货单状态
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
else
if
(
OrderEnum
.
Status
.
CANCELED
.
getCode
().
equals
(
orderInfoFeign
.
getOrderStatus
()))
{
//已取消
for
(
OrderGoods
orderGoods
:
orderGoodsList
)
{
vehicleUsageMap
.
put
(
orderGoods
.
getVehicleUsage
(),
vehicleUsageMap
.
get
(
orderGoods
.
getVehicleUsage
()).
add
(
orderGoods
.
getResidueTransportWeight
()));
OrderGoods
update
=
new
OrderGoods
();
update
.
setId
(
orderGoods
.
getId
());
//TODO 补充批量更新接口 关闭货单状态
update
.
setResidueTransportWeight
(
BigDecimal
.
ZERO
);
update
.
setOrderGoodsStatus
(
OrderGoodsStatusEnum
.
Status
.
COMPLETED
.
getCode
());
orderGoodsDao
.
updateEntityByKey
(
update
);
}
}
String
platformResidueCarryWeight
=
orderInfoFeign
.
getPlatformResidueCarryWeight
();
String
ownResidueCarryWeight
=
orderInfoFeign
.
getOwnResidueCarryWeight
();
BigDecimal
platformResidueSum
=
new
BigDecimal
(
platformResidueCarryWeight
).
add
(
vehicleUsageMap
.
get
(
1
));
BigDecimal
ownResidueSum
=
new
BigDecimal
(
ownResidueCarryWeight
).
add
(
vehicleUsageMap
.
get
(
2
));
BigDecimal
residueSum
=
new
BigDecimal
(
orderInfoFeign
.
getResidueWeight
()).
add
(
platformResidueSum
).
add
(
ownResidueSum
);
}
}
...
...
performance-web/src/main/java/com/clx/performance/service/impl/breakcontract/BreakContractSettlementLogServiceImpl.java
浏览文件 @
3aaa3e8e
package
com
.
clx
.
performance
.
service
.
impl
.
breakcontract
;
package
com
.
clx
.
performance
.
service
.
impl
.
breakcontract
;
import
com.clx.performance.dao.breakcontract.BreakContractSettlementLogDao
;
import
com.clx.performance.dao.breakcontract.BreakContractSettlementOwnerDetailDao
;
import
com.clx.performance.model.breakcontract.BreakContractSettlementLog
;
import
com.clx.performance.service.breakcontract.BreakContractSettlementLogService
;
import
com.clx.performance.service.breakcontract.BreakContractSettlementLogService
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
/**
/**
...
@@ -9,5 +14,21 @@ import org.springframework.stereotype.Service;
...
@@ -9,5 +14,21 @@ import org.springframework.stereotype.Service;
* Time 16:02
* Time 16:02
*/
*/
@Service
@Service
@Slf4j
@AllArgsConstructor
public
class
BreakContractSettlementLogServiceImpl
implements
BreakContractSettlementLogService
{
public
class
BreakContractSettlementLogServiceImpl
implements
BreakContractSettlementLogService
{
private
final
BreakContractSettlementLogDao
breakContractSettlementLogDao
;
@Override
public
void
saveBreakSettlementLog
(
String
settlementNo
,
Integer
type
,
String
remark
,
Integer
createType
,
Long
createBy
,
String
createName
)
{
BreakContractSettlementLog
breakContractSettlementLog
=
new
BreakContractSettlementLog
();
breakContractSettlementLog
.
setCreateBy
(
createBy
);
breakContractSettlementLog
.
setCreateName
(
createName
);
breakContractSettlementLog
.
setCreateType
(
createType
);
breakContractSettlementLog
.
setRemark
(
remark
);
breakContractSettlementLog
.
setSettlementNo
(
settlementNo
);
breakContractSettlementLog
.
setType
(
type
);
breakContractSettlementLogDao
.
saveEntity
(
breakContractSettlementLog
);
}
}
}
performance-web/src/main/java/com/clx/performance/service/impl/breakcontract/BreakContractSettlementOwnerServiceImpl.java
浏览文件 @
3aaa3e8e
...
@@ -5,10 +5,15 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
...
@@ -5,10 +5,15 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.breakcontract.BreakContractSettlementLogDao
;
import
com.clx.performance.dao.breakcontract.BreakContractSettlementLogDao
;
import
com.clx.performance.dao.breakcontract.BreakContractSettlementOwnerDao
;
import
com.clx.performance.dao.breakcontract.BreakContractSettlementOwnerDao
;
import
com.clx.performance.enums.BreakContractSettlementLogEnum
;
import
com.clx.performance.enums.BreakContractSettlementOwnerEnum
;
import
com.clx.performance.enums.OrderChildLogEnum
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.enums.PerformanceResultEnum
;
import
com.clx.performance.model.breakcontract.BreakContractSettlementLog
;
import
com.clx.performance.model.breakcontract.BreakContractSettlementLog
;
import
com.clx.performance.model.breakcontract.BreakContractSettlementOwner
;
import
com.clx.performance.model.breakcontract.BreakContractSettlementOwner
;
import
com.clx.performance.param.pc.breakcontract.carrier.CarrierUploadInvoiceImgParam
;
import
com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam
;
import
com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam
;
import
com.clx.performance.service.breakcontract.BreakContractSettlementLogService
;
import
com.clx.performance.service.breakcontract.BreakContractSettlementOwnerService
;
import
com.clx.performance.service.breakcontract.BreakContractSettlementOwnerService
;
import
com.clx.performance.struct.breakcontract.BreakContractSettlementLogStruct
;
import
com.clx.performance.struct.breakcontract.BreakContractSettlementLogStruct
;
import
com.clx.performance.struct.breakcontract.BreakContractSettlementOwnerStruct
;
import
com.clx.performance.struct.breakcontract.BreakContractSettlementOwnerStruct
;
...
@@ -19,6 +24,9 @@ import com.clx.performance.utils.excel.ExcelUtil;
...
@@ -19,6 +24,9 @@ import com.clx.performance.utils.excel.ExcelUtil;
import
com.clx.performance.vo.pc.breakcontract.carrier.CarrierBreakContractSettlementLogVO
;
import
com.clx.performance.vo.pc.breakcontract.carrier.CarrierBreakContractSettlementLogVO
;
import
com.clx.performance.vo.pc.breakcontract.carrier.CarrierBreakContractSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.breakcontract.carrier.CarrierBreakContractSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerVO
;
import
com.clx.performance.vo.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerVO
;
import
com.msl.common.exception.ServiceSystemException
;
import
com.msl.user.data.UserSessionData
;
import
com.msl.user.utils.TokenUtil
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.poi.xssf.streaming.SXSSFWorkbook
;
import
org.apache.poi.xssf.streaming.SXSSFWorkbook
;
...
@@ -26,6 +34,7 @@ import org.springframework.stereotype.Service;
...
@@ -26,6 +34,7 @@ import org.springframework.stereotype.Service;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Objects
;
/**
/**
* @author liruixin
* @author liruixin
...
@@ -41,6 +50,7 @@ public class BreakContractSettlementOwnerServiceImpl implements BreakContractSe
...
@@ -41,6 +50,7 @@ public class BreakContractSettlementOwnerServiceImpl implements BreakContractSe
private
final
BreakContractSettlementOwnerStruct
breakContractSettlementOwnerStruct
;
private
final
BreakContractSettlementOwnerStruct
breakContractSettlementOwnerStruct
;
private
final
BreakContractSettlementLogDao
breakContractSettlementLogDao
;
private
final
BreakContractSettlementLogDao
breakContractSettlementLogDao
;
private
final
BreakContractSettlementLogStruct
breakContractSettlementLogStruct
;
private
final
BreakContractSettlementLogStruct
breakContractSettlementLogStruct
;
private
final
BreakContractSettlementLogService
breakContractSettlementLogService
;
@Override
@Override
...
@@ -118,4 +128,20 @@ public class BreakContractSettlementOwnerServiceImpl implements BreakContractSe
...
@@ -118,4 +128,20 @@ public class BreakContractSettlementOwnerServiceImpl implements BreakContractSe
detail
.
setLogs
(
settlementLogVOS
);
detail
.
setLogs
(
settlementLogVOS
);
return
detail
;
return
detail
;
}
}
@Override
public
void
uploadInvoiceImg
(
CarrierUploadInvoiceImgParam
param
)
{
BreakContractSettlementOwner
settlementOwner
=
breakContractSettlementOwnerDao
.
getEntityByKey
(
param
.
getId
()).
orElseThrow
(
PerformanceResultEnum
.
DATA_NOT_FIND
);
if
(!
Objects
.
equals
(
settlementOwner
.
getStatus
(),
BreakContractSettlementOwnerEnum
.
Status
.
TO_BE_LOCKED
.
getCode
())){
throw
new
ServiceSystemException
(
PerformanceResultEnum
.
STATUS_CHANGED
);
}
breakContractSettlementOwnerDao
.
uploadInvoiceImg
(
param
.
getId
(),
param
.
getInvoiceImg
());
UserSessionData
loginUserInfo
=
TokenUtil
.
getLoginUserInfo
();
//保存结算单日志----上传结算凭证
breakContractSettlementLogService
.
saveBreakSettlementLog
(
settlementOwner
.
getSettlementNo
(),
BreakContractSettlementLogEnum
.
Type
.
CREATE_SETTLEMENT
.
getCode
(),
BreakContractSettlementLogEnum
.
Type
.
CREATE_SETTLEMENT
.
getMsg
(),
OrderChildLogEnum
.
CreateType
.
PLATFORM
.
getCode
(),
loginUserInfo
.
getUserNo
(),
loginUserInfo
.
getUserName
());
}
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论