Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
238b539d
提交
238b539d
authored
8月 05, 2024
作者:
杨启发
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
结算单优化
上级
030e8f91
隐藏空白字符变更
内嵌
并排
正在显示
13 个修改的文件
包含
324 行增加
和
8 行删除
+324
-8
SettlementOwnerDetailEnum.java
...x/performance/enums/settle/SettlementOwnerDetailEnum.java
+17
-0
PageCarrierSettlementOwnerDetailParam.java
...param/pc/owner/PageCarrierSettlementOwnerDetailParam.java
+4
-0
PagePendingCarrierSettlementOwnerDetailParam.java
...c/owner/PagePendingCarrierSettlementOwnerDetailParam.java
+17
-0
CarrierPagePendingSettlementOwnerDetailVO.java
...ier/settle/CarrierPagePendingSettlementOwnerDetailVO.java
+25
-0
CarrierSettlementDriverDetailController.java
...r/pc/carrier/CarrierSettlementDriverDetailController.java
+13
-1
CarrierSettlementOwnerDetailController.java
...er/pc/carrier/CarrierSettlementOwnerDetailController.java
+18
-1
SettlementOwnerDetailDaoImpl.java
...ormance/dao/impl/settle/SettlementOwnerDetailDaoImpl.java
+32
-5
SettlementOwnerDetailDao.java
.../clx/performance/dao/settle/SettlementOwnerDetailDao.java
+3
-0
SettlementDriverDetailServiceImpl.java
...ervice/impl/settle/SettlementDriverDetailServiceImpl.java
+83
-0
SettlementOwnerDetailServiceImpl.java
...service/impl/settle/SettlementOwnerDetailServiceImpl.java
+99
-0
SettlementDriverDetailService.java
...ormance/service/settle/SettlementDriverDetailService.java
+4
-0
SettlementOwnerDetailService.java
...formance/service/settle/SettlementOwnerDetailService.java
+7
-0
SettlementOwnerDetailStruct.java
...erformance/struct/settle/SettlementOwnerDetailStruct.java
+2
-1
没有找到文件。
performance-api/src/main/java/com/clx/performance/enums/settle/SettlementOwnerDetailEnum.java
浏览文件 @
238b539d
...
...
@@ -84,4 +84,21 @@ public enum SettlementOwnerDetailEnum {
}
}
@Getter
@AllArgsConstructor
public
enum
HandleStatus
{
NO
(
0
,
"待处理"
),
YES
(
1
,
"已处理"
),
;
private
final
Integer
code
;
private
final
String
msg
;
public
static
Optional
<
HandleStatus
>
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
(
HandleStatus:
:
getMsg
).
orElse
(
null
);
}
}
}
performance-api/src/main/java/com/clx/performance/param/pc/owner/PageCarrierSettlementOwnerDetailParam.java
浏览文件 @
238b539d
...
...
@@ -25,5 +25,9 @@ public class PageCarrierSettlementOwnerDetailParam extends PageParam {
@ApiModelProperty
(
value
=
"订单编号"
,
example
=
"201457878"
)
private
String
orderNo
;
@ApiModelProperty
(
value
=
"开始时间"
)
private
String
startTime
;
@ApiModelProperty
(
value
=
"结束时间"
)
private
String
endTime
;
}
performance-api/src/main/java/com/clx/performance/param/pc/owner/PagePendingCarrierSettlementOwnerDetailParam.java
0 → 100644
浏览文件 @
238b539d
package
com
.
clx
.
performance
.
param
.
pc
.
owner
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
@Getter
@Setter
@NoArgsConstructor
@ToString
public
class
PagePendingCarrierSettlementOwnerDetailParam
extends
PageCarrierSettlementOwnerDetailParam
{
@ApiModelProperty
(
value
=
"处理状态,0:待处理,1:已处理"
)
private
Integer
handleStatus
;
}
performance-api/src/main/java/com/clx/performance/vo/pc/carrier/settle/CarrierPagePendingSettlementOwnerDetailVO.java
0 → 100644
浏览文件 @
238b539d
package
com
.
clx
.
performance
.
vo
.
pc
.
carrier
.
settle
;
import
com.msl.common.convertor.type.MoneyOutConvert
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.Setter
;
import
java.math.BigDecimal
;
@Getter
@Setter
public
class
CarrierPagePendingSettlementOwnerDetailVO
extends
CarrierPageSettlementOwnerDetailVO
{
@ApiModelProperty
(
value
=
"处理状态,0:待处理,1:已处理"
)
private
Integer
handleStatus
;
@ApiModelProperty
(
value
=
"磅单审核通过时间"
)
private
String
poundAuditTime
;
@ApiModelProperty
(
value
=
"操作人"
)
private
String
invoicingCompanyModifiedBy
;
@ApiModelProperty
(
value
=
"操作时间"
)
private
String
invoicingCompanyModifiedTime
;
}
performance-web/src/main/java/com/clx/performance/controller/pc/carrier/CarrierSettlementDriverDetailController.java
浏览文件 @
238b539d
...
...
@@ -11,12 +11,17 @@ import io.swagger.annotations.Api;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.poi.xssf.streaming.SXSSFWorkbook
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.MediaType
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.servlet.http.HttpServletResponse
;
@Slf4j
@RestController
@RequestMapping
(
value
=
"/pc/carrier/settlementDriverDetail"
)
...
...
@@ -36,5 +41,12 @@ public class CarrierSettlementDriverDetailController {
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
}
@ApiOperation
(
value
=
"导出车主运单计费"
,
notes
=
"<br>By:杨启发"
)
@PostMapping
(
"/exportSettlementDriverDetail"
)
public
void
exportSettlementDriverDetail
(
@RequestBody
@Validated
PageCarrierSettlementDriverDetailParam
param
,
HttpServletResponse
response
)
throws
Exception
{
try
(
SXSSFWorkbook
workbook
=
settlementDriverDetailService
.
exportSettlementDriverDetail
(
param
))
{
response
.
setHeader
(
HttpHeaders
.
CONTENT_TYPE
,
MediaType
.
APPLICATION_OCTET_STREAM_VALUE
);
workbook
.
write
(
response
.
getOutputStream
());
}
}
}
performance-web/src/main/java/com/clx/performance/controller/pc/carrier/CarrierSettlementOwnerDetailController.java
浏览文件 @
238b539d
package
com
.
clx
.
performance
.
controller
.
pc
.
carrier
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.driver.PageCarrierSettlementDriverDetailParam
;
import
com.clx.performance.param.pc.owner.PageCarrierSettlementOwnerDetailParam
;
import
com.clx.performance.param.pc.owner.PageOwnerSettlementOwnerDetailParam
;
import
com.clx.performance.param.pc.owner.PagePendingCarrierSettlementOwnerDetailParam
;
import
com.clx.performance.service.settle.SettlementOwnerDetailService
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPagePendingSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.owner.settle.PageOwnerSettlementOwnerDetailVO
;
import
com.msl.common.base.PageData
;
...
...
@@ -56,6 +59,20 @@ public class CarrierSettlementOwnerDetailController {
workbook
.
write
(
response
.
getOutputStream
());
}
@ApiOperation
(
value
=
"待处理运单计费列表(货主)"
,
notes
=
"<br>By:杨启发"
)
@PostMapping
(
"/pagePendingSettlementOwnerDetail"
)
@UnitCovert
(
param
=
false
)
public
Result
<
PageData
<
CarrierPagePendingSettlementOwnerDetailVO
>>
pagePendingSettlementOwnerDetail
(
@RequestBody
@Validated
PagePendingCarrierSettlementOwnerDetailParam
param
)
{
IPage
<
CarrierPagePendingSettlementOwnerDetailVO
>
page
=
settlementOwnerDetailService
.
pagePendingSettlementOwnerDetail
(
param
);
return
Result
.
page
(
page
.
getRecords
(),
page
.
getTotal
(),
page
.
getPages
());
}
@ApiOperation
(
value
=
"导出货主待处理运单计费"
,
notes
=
"<br>By:杨启发"
)
@PostMapping
(
"/exportPendingSettlementOwnerDetail"
)
public
void
exportPendingSettlementOwnerDetail
(
@RequestBody
@Validated
PagePendingCarrierSettlementOwnerDetailParam
param
,
HttpServletResponse
response
)
throws
Exception
{
try
(
SXSSFWorkbook
workbook
=
settlementOwnerDetailService
.
exportPendingSettlementOwnerDetail
(
param
))
{
response
.
setHeader
(
HttpHeaders
.
CONTENT_TYPE
,
MediaType
.
APPLICATION_OCTET_STREAM_VALUE
);
workbook
.
write
(
response
.
getOutputStream
());
}
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/settle/SettlementOwnerDetailDaoImpl.java
浏览文件 @
238b539d
package
com
.
clx
.
performance
.
dao
.
impl
.
settle
;
import
cn.hutool.core.date.LocalDateTimeUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
...
...
@@ -7,9 +8,11 @@ import com.clx.performance.dao.settle.SettlementOwnerDetailDao;
import
com.clx.performance.enums.settle.SettlementOwnerDetailEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerEnum
;
import
com.clx.performance.mapper.settle.SettlementOwnerDetailMapper
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
com.clx.performance.param.pc.owner.PageCarrierSettlementOwnerDetailParam
;
import
com.clx.performance.param.pc.owner.PageOwnerSettlementOwnerDetailParam
;
import
com.clx.performance.param.pc.owner.PagePendingCarrierSettlementOwnerDetailParam
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.impl.BaseDaoImpl
;
import
org.apache.commons.lang3.StringUtils
;
...
...
@@ -19,6 +22,9 @@ import java.time.LocalDateTime;
import
java.util.List
;
import
java.util.Objects
;
import
static
com
.
clx
.
performance
.
enums
.
settle
.
SettlementOwnerDetailEnum
.
HandleStatus
.
NO
;
import
static
com
.
clx
.
performance
.
enums
.
settle
.
SettlementOwnerDetailEnum
.
HandleStatus
.
YES
;
/**
* @Author: aiqinguo
* @Description: 货主运单计费明细
...
...
@@ -105,21 +111,31 @@ public class SettlementOwnerDetailDaoImpl extends BaseDaoImpl<SettlementOwnerDet
@Override
public
IPage
<
SettlementOwnerDetail
>
pageSettlementOwnerDetail
(
PageCarrierSettlementOwnerDetailParam
param
)
{
LambdaQueryWrapper
<
SettlementOwnerDetail
>
query
=
buildQuery
(
param
);
return
baseMapper
.
selectPage
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
query
);
}
private
LambdaQueryWrapper
<
SettlementOwnerDetail
>
buildQuery
(
PageCarrierSettlementOwnerDetailParam
param
)
{
LambdaQueryWrapper
<
SettlementOwnerDetail
>
query
=
new
LambdaQueryWrapper
<>();
if
(
StringUtils
.
isNotBlank
(
param
.
getChildNo
())){
query
.
eq
(
SettlementOwnerDetail
::
getChildNo
,
param
.
getChildNo
());
query
.
eq
(
SettlementOwnerDetail
::
getChildNo
,
param
.
getChildNo
());
}
if
(
StringUtils
.
isNotBlank
(
param
.
getOrderNo
())){
query
.
eq
(
SettlementOwnerDetail
::
getOrderNo
,
param
.
getOrderNo
());
query
.
eq
(
SettlementOwnerDetail
::
getOrderNo
,
param
.
getOrderNo
());
}
if
(
Objects
.
nonNull
(
param
.
getOwnerUserNo
())){
query
.
eq
(
SettlementOwnerDetail
::
getOwnerUserNo
,
param
.
getOwnerUserNo
());
query
.
eq
(
SettlementOwnerDetail
::
getOwnerUserNo
,
param
.
getOwnerUserNo
());
}
if
(
Objects
.
nonNull
(
param
.
getOwnerUserName
())){
query
.
like
(
SettlementOwnerDetail
::
getOwnerName
,
param
.
getOwnerUserName
());
query
.
like
(
SettlementOwnerDetail
::
getOwnerName
,
param
.
getOwnerUserName
());
}
if
(
StringUtils
.
isNotBlank
(
param
.
getStartTime
())
&&
StringUtils
.
isNotBlank
(
param
.
getEndTime
())){
query
.
between
(
SettlementOwnerDetail:
:
getCreateTime
,
param
.
getStartTime
(),
param
.
getEndTime
());
}
else
{
query
.
between
(
SettlementOwnerDetail
::
getCreateTime
,
LocalDateTimeUtil
.
now
().
minusMonths
(
3
),
LocalDateTimeUtil
.
now
());
}
query
.
orderByDesc
(
SettlementOwnerDetail
::
getCreateTime
);
return
baseMapper
.
selectPage
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
query
)
;
return
query
;
}
@Override
...
...
@@ -201,4 +217,15 @@ public class SettlementOwnerDetailDaoImpl extends BaseDaoImpl<SettlementOwnerDet
);
}
@Override
public
IPage
<
SettlementOwnerDetail
>
pagePendingSettlementOwnerDetail
(
PagePendingCarrierSettlementOwnerDetailParam
param
)
{
LambdaQueryWrapper
<
SettlementOwnerDetail
>
query
=
buildQuery
(
param
);
if
(
Objects
.
equals
(
param
.
getHandleStatus
(),
NO
.
getCode
()))
{
query
.
isNull
(
SettlementOwnerDetail:
:
getInvoicingCompanyId
);
}
else
if
(
Objects
.
equals
(
param
.
getHandleStatus
(),
YES
.
getCode
())){
query
.
isNotNull
(
SettlementOwnerDetail:
:
getInvoicingCompanyId
);
}
return
baseMapper
.
selectPage
(
Page
.
of
(
param
.
getPage
(),
param
.
getPageSize
()),
query
);
}
}
performance-web/src/main/java/com/clx/performance/dao/settle/SettlementOwnerDetailDao.java
浏览文件 @
238b539d
...
...
@@ -5,6 +5,7 @@ import com.clx.performance.mapper.settle.SettlementOwnerDetailMapper;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
com.clx.performance.param.pc.owner.PageCarrierSettlementOwnerDetailParam
;
import
com.clx.performance.param.pc.owner.PageOwnerSettlementOwnerDetailParam
;
import
com.clx.performance.param.pc.owner.PagePendingCarrierSettlementOwnerDetailParam
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.BaseDao
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -53,4 +54,6 @@ public interface SettlementOwnerDetailDao extends BaseDao<SettlementOwnerDetailM
List
<
SettlementOwnerDetail
>
listPayStatusSync
();
List
<
SettlementOwnerDetail
>
listInvoiceTypeSync
();
IPage
<
SettlementOwnerDetail
>
pagePendingSettlementOwnerDetail
(
PagePendingCarrierSettlementOwnerDetailParam
param
);
}
performance-web/src/main/java/com/clx/performance/service/impl/settle/SettlementDriverDetailServiceImpl.java
浏览文件 @
238b539d
...
...
@@ -4,18 +4,28 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.dao.settle.SettlementDriverDetailDao
;
import
com.clx.performance.enums.loan.OwnerLoanRecordEnum
;
import
com.clx.performance.enums.settle.SettlementDriverEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerEnum
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementDriverDetailParam
;
import
com.clx.performance.param.pc.driver.PageCarrierSettlementDriverDetailParam
;
import
com.clx.performance.service.settle.SettlementDriverDetailService
;
import
com.clx.performance.struct.settle.SettlementDriverDetailStruct
;
import
com.clx.performance.utils.excel.ExcelData
;
import
com.clx.performance.utils.excel.ExcelField
;
import
com.clx.performance.utils.excel.ExcelSheet
;
import
com.clx.performance.utils.excel.ExcelUtil
;
import
com.clx.performance.vo.pc.breakcontract.carrier.PageCarrierBreakContractSettlementDriverDetailVO
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementDriverDetailVO
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.poi.xssf.streaming.SXSSFWorkbook
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Objects
;
...
...
@@ -127,6 +137,79 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai
return
settlementDriverDetailDao
.
getByChildNo
(
childNo
).
get
();
}
@Override
public
SXSSFWorkbook
exportSettlementDriverDetail
(
PageCarrierSettlementDriverDetailParam
param
)
{
param
.
setPage
(
1
);
param
.
setPageSize
(
1000000
);
IPage
<
CarrierPageSettlementDriverDetailVO
>
settlementDriverDetailPage
=
pageSettlementDriverDetail
(
param
);
List
<
CarrierPageSettlementDriverDetailVO
>
list
=
settlementDriverDetailPage
.
getRecords
();
// 组装表头
List
<
ExcelField
>
fieldList
=
new
ArrayList
<>();
fieldList
.
add
(
new
ExcelField
(
0
,
"运单编号"
,
"childNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
1
,
"货单编号"
,
"orderGoodsNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
2
,
"订单编号"
,
"orderNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
3
,
"车主编码"
,
"driverUserNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
4
,
"车主名称"
,
"driverName"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
5
,
"货物名称"
,
"goodsName"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
6
,
"车牌号"
,
"truckNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
7
,
"开票公司"
,
"invoicingCompanyShorterName"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
8
,
"开票标识"
,
"invoiceType"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
9
,
"预付标识"
,
"prepayFreightFlag"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
10
,
"借款标识"
,
"loanFlagMsg"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
11
,
"实际净重(吨)"
,
"weight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
12
,
"运费单价"
,
"freightPrice"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
13
,
"应付运费"
,
"freight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
14
,
"货损单价"
,
"lossPrice"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
15
,
"货损吨数"
,
"lossWeight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
16
,
"货损金额"
,
"lossFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
17
,
"结算金额"
,
"settlementFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
18
,
"毛利率"
,
"platformServiceFeeRate"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
19
,
"毛利润"
,
"platformServiceFee"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
20
,
"结算单号"
,
"settlementNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
21
,
"创建时间"
,
"createTime"
,
5000
));
// 组装数据
List
<
List
<
ExcelData
>>
dataList
=
new
ArrayList
<>();
for
(
CarrierPageSettlementDriverDetailVO
dto
:
list
)
{
List
<
ExcelData
>
rowData
=
new
ArrayList
<>();
rowData
.
add
(
new
ExcelData
(
dto
.
getChildNo
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getOrderGoodsNo
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getOrderNo
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getDriverUserNo
()
+
""
));
rowData
.
add
(
new
ExcelData
(
dto
.
getDriverName
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getGoodsName
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getTruckNo
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getInvoicingCompanyShorterName
()));
rowData
.
add
(
new
ExcelData
(
SettlementOwnerEnum
.
InvoiceType
.
getMsgByCode
(
dto
.
getInvoiceType
())));
rowData
.
add
(
new
ExcelData
(
SettlementDriverEnum
.
PrepayFreightFlag
.
getMsgByCode
(
dto
.
getPrepayFreightFlag
())));
rowData
.
add
(
new
ExcelData
(
dto
.
getLoanFlagMsg
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getWeight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getFreightPrice
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getFreight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getLossPrice
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getLossWeight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getLossFreight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getSettlementFreight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getPlatformServiceFeeRate
()
+
"%"
));
rowData
.
add
(
new
ExcelData
(
dto
.
getPlatformServiceFee
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getSettlementNo
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getCreateTime
()));
dataList
.
add
(
rowData
);
}
ExcelSheet
excelSheet
=
new
ExcelSheet
(
"车主运单计费"
,
"车主运单计费"
,
fieldList
,
dataList
);
//创建excel
return
ExcelUtil
.
create
(
excelSheet
);
}
public
static
String
formatLoanMsg
(
Integer
loanFlag
)
{
if
(
Objects
.
equals
(
loanFlag
,
OwnerLoanRecordEnum
.
LoanFlag
.
LOAN
.
getCode
()))
{
return
OwnerLoanRecordEnum
.
LoanFlag
.
LOAN
.
getMsg
();
...
...
performance-web/src/main/java/com/clx/performance/service/impl/settle/SettlementOwnerDetailServiceImpl.java
浏览文件 @
238b539d
...
...
@@ -6,7 +6,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dao.settle.SettlementDriverDetailDao
;
import
com.clx.performance.dao.settle.SettlementOwnerDetailDao
;
import
com.clx.performance.enums.PlatformAccountConfigEnum
;
import
com.clx.performance.enums.settle.SettlementDriverEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerDetailEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerEnum
;
import
com.clx.performance.enums.settle.SettlementWayEnum
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.OrderGoods
;
...
...
@@ -14,6 +17,7 @@ import com.clx.performance.model.settle.SettlementDriverDetail;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
com.clx.performance.param.pc.owner.PageCarrierSettlementOwnerDetailParam
;
import
com.clx.performance.param.pc.owner.PageOwnerSettlementOwnerDetailParam
;
import
com.clx.performance.param.pc.owner.PagePendingCarrierSettlementOwnerDetailParam
;
import
com.clx.performance.service.settle.SettlementCommonService
;
import
com.clx.performance.service.settle.SettlementOwnerDetailService
;
import
com.clx.performance.struct.settle.SettlementOwnerDetailStruct
;
...
...
@@ -21,6 +25,8 @@ import com.clx.performance.utils.excel.ExcelData;
import
com.clx.performance.utils.excel.ExcelField
;
import
com.clx.performance.utils.excel.ExcelSheet
;
import
com.clx.performance.utils.excel.ExcelUtil
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPagePendingSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementDriverDetailVO
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.owner.settle.PageOwnerSettlementOwnerDetailVO
;
import
lombok.AllArgsConstructor
;
...
...
@@ -300,4 +306,97 @@ public class SettlementOwnerDetailServiceImpl implements SettlementOwnerDetailS
return
false
;
}
}
@Override
public
IPage
<
CarrierPagePendingSettlementOwnerDetailVO
>
pagePendingSettlementOwnerDetail
(
PagePendingCarrierSettlementOwnerDetailParam
param
)
{
IPage
<
SettlementOwnerDetail
>
result
=
settlementOwnerDetailDao
.
pagePendingSettlementOwnerDetail
(
param
);
List
<
CarrierPagePendingSettlementOwnerDetailVO
>
list
=
settlementOwnerDetailStruct
.
covertPendingList
(
result
.
getRecords
());
list
.
forEach
(
vo
->{
vo
.
setHandleStatus
(
Objects
.
isNull
(
vo
.
getInvoicingCompanyId
())?
SettlementOwnerDetailEnum
.
HandleStatus
.
NO
.
getCode
():
SettlementOwnerDetailEnum
.
HandleStatus
.
YES
.
getCode
());
});
return
new
Page
<
CarrierPagePendingSettlementOwnerDetailVO
>().
setRecords
(
list
).
setTotal
(
result
.
getTotal
()).
setPages
(
result
.
getPages
());
}
@Override
public
SXSSFWorkbook
exportPendingSettlementOwnerDetail
(
PagePendingCarrierSettlementOwnerDetailParam
param
)
{
param
.
setPage
(
1
);
param
.
setPageSize
(
1000000
);
IPage
<
CarrierPagePendingSettlementOwnerDetailVO
>
settlementOwnerDetailPage
=
pagePendingSettlementOwnerDetail
(
param
);
List
<
CarrierPagePendingSettlementOwnerDetailVO
>
list
=
settlementOwnerDetailPage
.
getRecords
();
// 组装表头
List
<
ExcelField
>
fieldList
=
new
ArrayList
<>();
fieldList
.
add
(
new
ExcelField
(
0
,
"运单编号"
,
"childNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
1
,
"货主编码"
,
"ownerUserNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
2
,
"货主名称"
,
"ownerName"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
3
,
"结算方式"
,
"settlementWay"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
4
,
"货物名称"
,
"goodsName"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
5
,
"实际净重(吨)"
,
"weight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
6
,
"平台运费报价"
,
"freightPrice"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
7
,
"应付运费"
,
"freight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
8
,
"货损吨数"
,
"lossWeight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
9
,
"货损单价"
,
"lossPrice"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
10
,
"货损金额"
,
"lossFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
11
,
"管理费率(%)"
,
"invoiceServiceFeeRate"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
12
,
"管理费"
,
"invoiceServiceFee"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
13
,
"预付运费金额"
,
"prepayFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
14
,
"借款抵扣金额"
,
"loanFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
15
,
"结算金额"
,
"settlementFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
16
,
"开票金额"
,
"invoiceFreight"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
17
,
"开票标识"
,
"invoiceType"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
18
,
"状态"
,
"handleStatus"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
19
,
"订单编号"
,
"orderNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
20
,
"结算单号"
,
"settlementNo"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
21
,
"磅单审核通过时间"
,
"poundAuditTime"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
22
,
"创建时间"
,
"createTime"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
23
,
"操作人"
,
"invoicingCompanyModifiedBy"
,
5000
));
fieldList
.
add
(
new
ExcelField
(
24
,
"操作时间"
,
"invoicingCompanyModifiedTime"
,
5000
));
// 组装数据
List
<
List
<
ExcelData
>>
dataList
=
new
ArrayList
<>();
for
(
CarrierPagePendingSettlementOwnerDetailVO
dto
:
list
)
{
List
<
ExcelData
>
rowData
=
new
ArrayList
<>();
rowData
.
add
(
new
ExcelData
(
dto
.
getChildNo
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getOwnerUserNo
()+
""
));
rowData
.
add
(
new
ExcelData
(
dto
.
getOwnerName
()));
rowData
.
add
(
new
ExcelData
(
SettlementWayEnum
.
WayType
.
getMsgByCode
(
dto
.
getSettlementWay
())));
rowData
.
add
(
new
ExcelData
(
dto
.
getGoodsName
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getWeight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getFreightPrice
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getFreight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getLossWeight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getLossPrice
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getLossFreight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getFreightPrice
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getFreight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getLossPrice
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getLossWeight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getLossFreight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getInvoiceServiceFeeRate
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getInvoiceServiceFee
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getPrepayFreight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getLoanFreight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getSettlementFreight
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getInvoiceFreight
()));
rowData
.
add
(
new
ExcelData
(
SettlementOwnerEnum
.
InvoiceType
.
getMsgByCode
(
dto
.
getInvoiceType
())));
rowData
.
add
(
new
ExcelData
(
SettlementOwnerDetailEnum
.
HandleStatus
.
getMsgByCode
(
dto
.
getHandleStatus
())));
rowData
.
add
(
new
ExcelData
(
dto
.
getOrderNo
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getSettlementNo
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getPoundAuditTime
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getCreateTime
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getInvoicingCompanyModifiedBy
()));
rowData
.
add
(
new
ExcelData
(
dto
.
getInvoicingCompanyModifiedTime
()));
dataList
.
add
(
rowData
);
}
ExcelSheet
excelSheet
=
new
ExcelSheet
(
"货主运单计费-待处理"
,
"货主运单计费-待处理"
,
fieldList
,
dataList
);
//创建excel
return
ExcelUtil
.
create
(
excelSheet
);
}
}
performance-web/src/main/java/com/clx/performance/service/settle/SettlementDriverDetailService.java
浏览文件 @
238b539d
...
...
@@ -3,8 +3,10 @@ package com.clx.performance.service.settle;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.settle.SettlementDriverDetail
;
import
com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementDriverDetailParam
;
import
com.clx.performance.param.pc.driver.PageCarrierSettlementDriverDetailParam
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementDriverDetailVO
;
import
org.apache.poi.xssf.streaming.SXSSFWorkbook
;
/**
* @author liruixin
...
...
@@ -18,4 +20,6 @@ public interface SettlementDriverDetailService {
IPage
<
CarrierPageSettlementDriverDetailVO
>
pageSettlementDriverDetail
(
PageCarrierSettlementDriverDetailParam
param
);
SettlementDriverDetail
selectOneByChildNo
(
String
childNo
);
SXSSFWorkbook
exportSettlementDriverDetail
(
PageCarrierSettlementDriverDetailParam
param
);
}
performance-web/src/main/java/com/clx/performance/service/settle/SettlementOwnerDetailService.java
浏览文件 @
238b539d
...
...
@@ -4,8 +4,11 @@ package com.clx.performance.service.settle;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.param.pc.driver.PageCarrierSettlementDriverDetailParam
;
import
com.clx.performance.param.pc.owner.PageCarrierSettlementOwnerDetailParam
;
import
com.clx.performance.param.pc.owner.PageOwnerSettlementOwnerDetailParam
;
import
com.clx.performance.param.pc.owner.PagePendingCarrierSettlementOwnerDetailParam
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPagePendingSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.owner.settle.PageOwnerSettlementOwnerDetailVO
;
import
org.apache.poi.xssf.streaming.SXSSFWorkbook
;
...
...
@@ -28,4 +31,8 @@ public interface SettlementOwnerDetailService {
Integer
getInvoiceType
(
String
orderNo
);
Boolean
thawAndLockSettlement
(
String
orderNo
);
IPage
<
CarrierPagePendingSettlementOwnerDetailVO
>
pagePendingSettlementOwnerDetail
(
PagePendingCarrierSettlementOwnerDetailParam
param
);
SXSSFWorkbook
exportPendingSettlementOwnerDetail
(
PagePendingCarrierSettlementOwnerDetailParam
param
);
}
performance-web/src/main/java/com/clx/performance/struct/settle/SettlementOwnerDetailStruct.java
浏览文件 @
238b539d
...
...
@@ -3,6 +3,7 @@ package com.clx.performance.struct.settle;
import
com.clx.performance.enums.settle.SettlementOwnerDetailEnum
;
import
com.clx.performance.enums.settle.SettlementOwnerEnum
;
import
com.clx.performance.model.settle.SettlementOwnerDetail
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPagePendingSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementOwnerDetailVO
;
import
com.clx.performance.vo.pc.owner.settle.PageOwnerSettlementOwnerDetailVO
;
import
com.msl.common.utils.DateStructUtil
;
...
...
@@ -20,7 +21,7 @@ public interface SettlementOwnerDetailStruct {
List
<
CarrierPageSettlementOwnerDetailVO
>
covertList
(
List
<
SettlementOwnerDetail
>
list
);
List
<
CarrierPagePendingSettlementOwnerDetailVO
>
covertPendingList
(
List
<
SettlementOwnerDetail
>
list
);
@Named
(
"toBaseVo"
)
@Mapping
(
target
=
"invoiceTypeMsg"
,
expression
=
"java(SettlementOwnerEnum.InvoiceType.getMsgByCode(settlementOwner.getInvoiceType()))"
)
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论