diff --git a/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigAdvanceDetailOpenEntity.java b/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigAdvanceDetailOpenEntity.java new file mode 100644 index 000000000..762f483dc --- /dev/null +++ b/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigAdvanceDetailOpenEntity.java @@ -0,0 +1,24 @@ +package com.logpm.report.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import lombok.*; +import org.springblade.core.tenant.mp.TenantEntity; + +@Data +@TableName("logpm_reportconfig_advance_detail_open") +@ApiModel(value = "ReportConfigAdvanceDetailOpen对象", description = "暂存单开单报表配置") +@EqualsAndHashCode(callSuper = true) +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class ReportConfigAdvanceDetailOpenEntity extends TenantEntity { + + private Long warehouseId; + private String warehouseName; + + private String brand; + + private Integer hoursTime; + +} diff --git a/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigAllTrunklineEntity.java b/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigAllTrunklineEntity.java new file mode 100644 index 000000000..fdc6192a5 --- /dev/null +++ b/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigAllTrunklineEntity.java @@ -0,0 +1,26 @@ +package com.logpm.report.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import lombok.*; +import org.springblade.core.tenant.mp.TenantEntity; + +@Data +@TableName("logpm_reportconfig_all_trunkline") +@ApiModel(value = " ReportConfigAllTrunkline对象", description = "整体时效报表配置") +@EqualsAndHashCode(callSuper = true) +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class ReportConfigAllTrunklineEntity extends TenantEntity { + + private Long departureWarehouseId; + private String departureWarehouseName; + private Long destinationWarehouseId; + private String destinationWarehouseName; + + private String brand; + + private Integer hoursTime; + +} diff --git a/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigCheckWaybillEntity.java b/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigCheckWaybillEntity.java new file mode 100644 index 000000000..ad08954fe --- /dev/null +++ b/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigCheckWaybillEntity.java @@ -0,0 +1,26 @@ +package com.logpm.report.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import lombok.*; +import org.springblade.core.tenant.mp.TenantEntity; + +@Data +@TableName("logpm_reportconfig_check_waybill") +@ApiModel(value = "ReportConfigCheckWaybill对象", description = "审单报表配置") +@EqualsAndHashCode(callSuper = true) +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class ReportConfigCheckWaybillEntity extends TenantEntity { + + private Long departureWarehouseId; + private String departureWarehouseName; + private Long destinationWarehouseId; + private String destinationWarehouseName; + + private String brand; + + private Integer hoursTime; + +} diff --git a/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigDespatchEntity.java b/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigDespatchEntity.java new file mode 100644 index 000000000..4947aa6af --- /dev/null +++ b/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigDespatchEntity.java @@ -0,0 +1,26 @@ +package com.logpm.report.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import lombok.*; +import org.springblade.core.tenant.mp.TenantEntity; + +@Data +@TableName("logpm_reportconfig_despatch") +@ApiModel(value = " ReportConfigDespatch对象", description = "发运报表配置") +@EqualsAndHashCode(callSuper = true) +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class ReportConfigDespatchEntity extends TenantEntity { + + private Long departureWarehouseId; + private String departureWarehouseName; + private Long destinationWarehouseId; + private String destinationWarehouseName; + + private String brand; + + private Integer hoursTime; + +} diff --git a/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigTransferEntity.java b/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigTransferEntity.java new file mode 100644 index 000000000..feb900e2e --- /dev/null +++ b/blade-service-api/logpm-report-api/src/main/java/com/logpm/report/entity/ReportConfigTransferEntity.java @@ -0,0 +1,24 @@ +package com.logpm.report.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import lombok.*; +import org.springblade.core.tenant.mp.TenantEntity; + +@Data +@TableName("logpm_reportconfig_transfer") +@ApiModel(value = " ReportConfigTransfer对象", description = "中转报表配置") +@EqualsAndHashCode(callSuper = true) +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class ReportConfigTransferEntity extends TenantEntity { + + private Long warehouseId; + private String warehouseName; + + private String brand; + + private Integer hoursTime; + +} diff --git a/blade-service-api/logpm-statisticsdata-api/src/main/java/com/logpm/statistics/vo/StatisticsBalanceOrderExcel.java b/blade-service-api/logpm-statisticsdata-api/src/main/java/com/logpm/statistics/vo/StatisticsBalanceOrderExcel.java new file mode 100644 index 000000000..220c7497b --- /dev/null +++ b/blade-service-api/logpm-statisticsdata-api/src/main/java/com/logpm/statistics/vo/StatisticsBalanceOrderExcel.java @@ -0,0 +1,186 @@ +package com.logpm.statistics.vo; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.format.DateTimeFormat; +import com.alibaba.excel.annotation.format.NumberFormat; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import com.alibaba.excel.annotation.write.style.ContentRowHeight; +import com.alibaba.excel.annotation.write.style.HeadRowHeight; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +/** + * 结算单导出 + */ +@Data +@ColumnWidth(25) +@HeadRowHeight(20) +@ContentRowHeight(18) +public class StatisticsBalanceOrderExcel implements Serializable { + + + @ExcelProperty(value = "结算单号") + private String balanceOrderNo; // 结算单号 + + @ExcelProperty(value = "品牌") + private String brand; // 品牌 + + @ExcelProperty(value = "运单号") + private String waybillNo; // 运单号 + + @ExcelProperty(value = "订单号") + private String orderCode; // 订单号 + + @ExcelProperty(value = "服务类型") + private String typeServiceName; // 服务类型 +// +// @ExcelProperty(value = "货物品类") +// private String productGoods; // 货物品类 + + @ExcelProperty(value = "结算总金额") + @NumberFormat("0.00") + private BigDecimal totalBalanceFee; // 结算总金额 + + @ExcelProperty(value = "总数量") + private Integer totalCount; // 总数量 + + @ExcelProperty(value = "总重量") + @NumberFormat("0.00") + private BigDecimal totalWeight; // 总重量 + + @ExcelProperty(value = "总体积") + @NumberFormat("0.00") + private BigDecimal totalVolume; // 总体积 + + + @ExcelProperty(value = "收货单位") + private String consignee; // 收货单位 + + @ExcelProperty(value = "实际费用") + @NumberFormat("0.00") + private BigDecimal realTotalFee; // 实际费用 + + @ExcelProperty(value = "提货费") + @NumberFormat("0.00") + private BigDecimal pickupFee; // 提货费 + + @ExcelProperty(value = "运费") + @NumberFormat("0.00") + private BigDecimal freightFee; // 运费 + + @ExcelProperty(value = "仓库服务费") + @NumberFormat("0.00") + private BigDecimal warehouseServiceFee; // 仓库服务费 + + @ExcelProperty(value = "仓储费") + @NumberFormat("0.00") + private BigDecimal warehouseFee; // 仓储费 + + @ExcelProperty(value = "仓储管理费") + @NumberFormat("0.00") + private BigDecimal warehouseManageFee; // 仓储管理费 + + @ExcelProperty(value = "仓储分拣费") + @NumberFormat("0.00") + private BigDecimal warehouseSortingFee; // 仓储分拣费 + + @ExcelProperty(value = "仓储操作费") + @NumberFormat("0.00") + private BigDecimal warehouseOperatingFee; // 仓储操作费 + + @ExcelProperty(value = "配送费") + @NumberFormat("0.00") + private BigDecimal deliveryFee; // 配送费 + + @ExcelProperty(value = "配送服务费") + @NumberFormat("0.00") + private BigDecimal deliveryServiceFee; // 配送服务费 + + @ExcelProperty(value = "配送装卸费") + @NumberFormat("0.00") + private BigDecimal deliveryLoadingFee; // 配送装卸费 + + @ExcelProperty(value = "配送分拣费") + @NumberFormat("0.00") + private BigDecimal deliverySortingFee; // 配送分拣费 + + @ExcelProperty(value = "配送上楼费") + @NumberFormat("0.00") + private BigDecimal deliveryUpfloorFee; // 配送上楼费 + + @ExcelProperty(value = "配送平移费") + @NumberFormat("0.00") + private BigDecimal deliveryMoveFee; // 配送平移费 + + @ExcelProperty(value = "配送其他费") + @NumberFormat("0.00") + private BigDecimal deliveryOtherFee; // 配送其他费 + + @ExcelProperty(value = "超区费") + @NumberFormat("0.00") + private BigDecimal deliveryCrossingFee; // 超区费 + + @ExcelProperty(value = "安装费") + @NumberFormat("0.00") + private BigDecimal installFee; // 安装费 + + @ExcelProperty(value = "其他费") + @NumberFormat("0.00") + private BigDecimal otherFee; // 其他费 + + @ExcelProperty(value = "是否有售后") + private String aftersaleName; // 是否有售后 + + @ExcelProperty(value = "售后单号") + private String aftersaleOrder; // 售后单号 + + @ExcelProperty(value = "售后金额") + @NumberFormat("0.00") + private BigDecimal aftersalesFee; // 售后金额 + + + + + @ExcelProperty(value = "结算状态") + private String balanceStatusName; // 0未结算 1部分结算 2已结算 + + @ExcelProperty(value = "已结算金额") + @NumberFormat("0.00") + private BigDecimal hasBalanceFee; // 已结算金额 + + @ExcelProperty(value = "未结算金额") + @NumberFormat("0.00") + private BigDecimal noBalanceFee; // 未结算金额 + + @ExcelProperty(value = "结算时间") + @DateTimeFormat("yyyy-MM-dd") + private Date balanceTime; // 结算时间 + + @ExcelProperty(value = "结算人") + private String balanceUserName; // 结算人 + + @ExcelProperty(value = "结算备注") + private String balanceRemark; // 结算备注 + + @ExcelProperty(value = "是否有异常结算") + private String abnormalBalanceStatusName; // 是否有异常结算 + + @ExcelProperty(value = "异常金额") + @NumberFormat("0.00") + private BigDecimal abnormalBalanceFee; // 异常金额 + + @ExcelProperty(value = "异常时间") + @DateTimeFormat("yyyy-MM-dd") + private Date abnormalTime; // 异常时间 + + @ExcelProperty(value = "异常确认人") + private String abnormalUserName; // 异常确认人 + + @ExcelProperty(value = "异常备注") + private String abnormalRemark; // 异常备注 + +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportConfigController.java b/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportConfigController.java new file mode 100644 index 000000000..8facbf266 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportConfigController.java @@ -0,0 +1,142 @@ +package com.logpm.report.controller; + +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.service.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.tool.api.R; +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; + +@RestController +@AllArgsConstructor +@RequestMapping("/reportConfig") +@Api(value = "报表配置", tags = "报表配置") +public class ReportConfigController extends BladeController { + + private final IReportConfigAdvanceDetailOpenService reportConfigAdvanceDetailOpenService; + private final IReportConfigCheckWaybillService reportConfigCheckWaybillService; + private final IReportConfigDespatchService reportConfigDespatchService; + private final IReportConfigTransferService reportConfigTransferService; + private final IReportConfigAllTrunklineService reportConfigAllTrunklineService; + + //-------------------------开单及时率 + + + @PostMapping("/openTimeConfigPage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "开单时效配置报表", notes = "开单时效配置报表") + public R openTimeConfigPage(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigAdvanceDetailOpenService.openTimeConfigPage(reportConfigDTO); + } + + @PostMapping("/addOpenTimeConfig") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "新增开单时效配置", notes = "新增开单时效配置") + public R addOpenTimeConfig(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigAdvanceDetailOpenService.addOpenTimeConfig(reportConfigDTO); + } + + @PostMapping("/deleteOpenTimeConfig") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "删除开单时效配置", notes = "删除开单时效配置") + public R deleteOpenTimeConfig(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigAdvanceDetailOpenService.deleteOpenTimeConfig(reportConfigDTO); + } + + //--------------------审单及时率 + @PostMapping("/checkWaybillConfigPage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "审单时效配置报表", notes = "审单时效配置报表") + public R checkWaybillConfigPage(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigCheckWaybillService.checkWaybillConfigPage(reportConfigDTO); + } + + + @PostMapping("/addCheckWaybillConfig") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "新增审单时效配置", notes = "新增审单时效配置") + public R addCheckWaybillConfig(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigCheckWaybillService.addCheckWaybillConfig(reportConfigDTO); + } + + @PostMapping("/deleteCheckWaybillConfig") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "删除审单时效配置", notes = "删除审单时效配置") + public R deleteCheckWaybillConfig(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigCheckWaybillService.deleteCheckWaybillConfig(reportConfigDTO); + } + + //--------------------发运时效 + @PostMapping("/despatchConfigPage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "发运时效配置报表", notes = "发运时效配置报表") + public R despatchConfigPage(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigDespatchService.despatchConfigPage(reportConfigDTO); + } + + @PostMapping("/addDespatchConfig") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "新增发运时效配置", notes = "新增发运时效配置") + public R addDespatchConfig(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigDespatchService.addDespatchConfig(reportConfigDTO); + } + + @PostMapping("/deleteDespatchConfig") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "删除发运时效配置", notes = "删除发运时效配置") + public R deleteDespatchConfig(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigDespatchService.deleteDespatchConfig(reportConfigDTO); + } + + //--------------------中转时效 + @PostMapping("/transferConfigPage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "中转时效配置报表", notes = "中转时效配置报表") + public R transferConfigPage(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigTransferService.transferConfigPage(reportConfigDTO); + } + + @PostMapping("/addTransferConfig") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "新增中转时效配置", notes = "新增中转时效配置") + public R addTransferConfig(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigTransferService.addTransferConfig(reportConfigDTO); + } + + @PostMapping("/deleteTransferConfig") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "删除中转时效配置", notes = "删除中转时效配置") + public R deleteTransferConfig(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigTransferService.deleteTransferConfig(reportConfigDTO); + } + + //--------------------干线整体准时 + + @PostMapping("/allTrunklineConfigPage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "干线整体准时配置报表", notes = "干线整体准时配置报表") + public R allTrunklineConfigPage(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigAllTrunklineService.allTrunklineConfigPage(reportConfigDTO); + } + + @PostMapping("/addAllTrunklineConfig") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "新增干线整体准时配置", notes = "新增干线整体准时配置") + public R addAllTrunklineConfig(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigAllTrunklineService.addAllTrunklineConfig(reportConfigDTO); + } + + @PostMapping("/deleteAllTrunklineConfig") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "删除干线整体准时配置", notes = "删除干线整体准时配置") + public R deleteAllTrunklineConfig(@RequestBody ReportConfigDTO reportConfigDTO) { + return reportConfigAllTrunklineService.deleteAllTrunklineConfig(reportConfigDTO); + } + +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportQualityController.java b/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportQualityController.java new file mode 100644 index 000000000..92208cfa8 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportQualityController.java @@ -0,0 +1,43 @@ +package com.logpm.report.controller; + +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.logpm.report.dto.ReportQualityDTO; +import com.logpm.report.dto.ReportTimeDTO; +import com.logpm.report.service.IReportQualityService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.springblade.core.tool.api.R; +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; + +@RestController +@AllArgsConstructor +@RequestMapping("/reportQuality") +@Api(value = "质量报表", tags = "质量报表") +public class ReportQualityController { + + private final IReportQualityService reportQualityService; + + //------------------改单质量报表 + @PostMapping("/updateWaybillQualityPage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "改单质量报表", notes = "改单质量报表") + public R updateWaybillQualityPage(@RequestBody ReportQualityDTO reportQualityDTO) { + return reportQualityService.updateWaybillQualityPage(reportQualityDTO); + } + + @PostMapping("/updateWaybillQualityExport") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "改单质量报表导出", notes = "改单质量报表导出") + public void updateWaybillQualityExport(@RequestBody ReportQualityDTO reportQualityDTO, HttpServletResponse response) { + reportQualityService.updateWaybillQualityExport(reportQualityDTO,response); + } + + + +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportTimeController.java b/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportTimeController.java index 782600ae9..175eda99e 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportTimeController.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportTimeController.java @@ -20,6 +20,8 @@ public class ReportTimeController extends BladeController { private final IReportTimeService reportTimeService; + //-----------------------开单时效------------------------ + @PostMapping("/openTimePage") @ApiOperationSupport(order = 1) @ApiOperation(value = "开单时效报表", notes = "开单时效报表") @@ -34,6 +36,9 @@ public class ReportTimeController extends BladeController { reportTimeService.openTimeExport(reportTimeDTO,response); } + + //-----------------------审单时效------------------------ + @PostMapping("/checkWaybillTimePage") @ApiOperationSupport(order = 1) @ApiOperation(value = "审单时效报表", notes = "审单时效报表") @@ -49,4 +54,101 @@ public class ReportTimeController extends BladeController { } + //-----------------------订制品发运时效------------------------ + + @PostMapping("/packageStartTimePage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "订制品发运时效报表", notes = "订制品发运时效报表") + public R packageStartTimePage(@RequestBody ReportTimeDTO reportTimeDTO) { + return reportTimeService.packageStartTimePage(reportTimeDTO); + } + + @PostMapping("/packageStartTimeExport") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "订制品发运时效报表导出", notes = "订制品发运时效报表导出") + public void packageStartTimeExport(@RequestBody ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeService.packageStartTimeExport(reportTimeDTO,response); + } + + //-----------------------零担发运时效------------------------ + + @PostMapping("/zeroStartTimePage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "零担发运时效报表", notes = "零担发运时效报表") + public R zeroStartTimePage(@RequestBody ReportTimeDTO reportTimeDTO) { + return reportTimeService.zeroStartTimePage(reportTimeDTO); + } + + @PostMapping("/zeroStartTimeExport") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "零担发运时效报表导出", notes = "零担发运时效报表导出") + public void zeroStartTimeExport(@RequestBody ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeService.zeroStartTimeExport(reportTimeDTO,response); + } + + //-----------------------订制品中转时效------------------------ + + @PostMapping("/packageTransferTimePage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "订制品中转时效报表", notes = "订制品中转时效报表") + public R packageTransferTimePage(@RequestBody ReportTimeDTO reportTimeDTO) { + return reportTimeService.packageTransferTimePage(reportTimeDTO); + } + + @PostMapping("/packageTransferTimeExport") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "订制品中转时效报表导出", notes = "订制品中转时效报表导出") + public void packageTransferTimeExport(@RequestBody ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeService.packageTransferTimeExport(reportTimeDTO,response); + } + + //-----------------------零担中转时效------------------------ + + @PostMapping("/zeroTransferTimePage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "零担中转时效报表", notes = "零担中转时效报表") + public R zeroTransferTimePage(@RequestBody ReportTimeDTO reportTimeDTO) { + return reportTimeService.zeroTransferTimePage(reportTimeDTO); + } + + @PostMapping("/zeroTransferTimeExport") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "零担中转时效报表导出", notes = "零担中转时效报表导出") + public void zeroTransferTimeExport(@RequestBody ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeService.zeroTransferTimeExport(reportTimeDTO,response); + } + + //-----------------------订制品干线整体时效------------------------ + + @PostMapping("/packageAllTrunklineTimePage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "订制品干线时效报表", notes = "订制品干线时效报表") + public R packageAllTrunklineTimePage(@RequestBody ReportTimeDTO reportTimeDTO) { + return reportTimeService.packageAllTrunklineTimePage(reportTimeDTO); + } + + @PostMapping("/packageAllTrunklineTimeExport") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "订制品干线时效报表导出", notes = "订制品干线时效报表导出") + public void packageAllTrunklineTimeExport(@RequestBody ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeService.packageAllTrunklineTimeExport(reportTimeDTO,response); + } + + //-----------------------零担干线整体时效------------------------ + + @PostMapping("/zeroAllTrunklineTimePage") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "零担干线时效报表", notes = "零担干线时效报表") + public R zeroAllTrunklineTimePage(@RequestBody ReportTimeDTO reportTimeDTO) { + return reportTimeService.zeroAllTrunklineTimePage(reportTimeDTO); + } + + @PostMapping("/zeroAllTrunklineTimeExport") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "零担干线时效报表导出", notes = "零担干线时效报表导出") + public void zeroAllTrunklineTimeExport(@RequestBody ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeService.zeroAllTrunklineTimeExport(reportTimeDTO,response); + } + + } diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportConfigDTO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportConfigDTO.java new file mode 100644 index 000000000..4c5626efa --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportConfigDTO.java @@ -0,0 +1,37 @@ +package com.logpm.report.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +@Data +public class ReportConfigDTO implements Serializable { + + private Integer pageNum; + private Integer pageSize; + + private List warehouseIds; + + private List brands; + + private Long warehouseId; + private String warehouseName; + + private String brand; + + private Integer hoursTime; + + private Long id; + + private List departureWarehouseIds; + private List destinationWarehouseIds; + + private Long departureWarehouseId; + private String departureWarehouseName; + + private Long destinationWarehouseId; + private String destinationWarehouseName; + + +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportQualityDTO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportQualityDTO.java new file mode 100644 index 000000000..cabae08a6 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportQualityDTO.java @@ -0,0 +1,28 @@ +package com.logpm.report.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +@Data +public class ReportQualityDTO implements Serializable { + + private Integer pageNum; + private Integer pageSize; + + private List businessLineList; + private List brandList; + private List warehouseIds; + private List departureWarehouseIds; + private List destinationWarehouseIds; + + private String startTimeStr; + private String endTimeStr; + + private Date startTime; + private Date endTime; + + +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportTimeDTO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportTimeDTO.java index 750f1605b..d51a2fe8f 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportTimeDTO.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportTimeDTO.java @@ -24,4 +24,6 @@ public class ReportTimeDTO implements Serializable { private Date startTime; private Date endTime; + private Integer hoursTime; + } diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAdvanceDetailOpenMapper.java b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAdvanceDetailOpenMapper.java new file mode 100644 index 000000000..fabd9abb1 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAdvanceDetailOpenMapper.java @@ -0,0 +1,15 @@ +package com.logpm.report.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigAdvanceDetailOpenEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +@Mapper +public interface ReportConfigAdvanceDetailOpenMapper extends BaseMapper { + + + IPage openTimeConfigPage(IPage page, @Param("param") ReportConfigDTO reportConfigDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAdvanceDetailOpenMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAdvanceDetailOpenMapper.xml new file mode 100644 index 000000000..2d52a9ee0 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAdvanceDetailOpenMapper.xml @@ -0,0 +1,25 @@ + + + + + + + diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAllTrunklineMapper.java b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAllTrunklineMapper.java new file mode 100644 index 000000000..ba2500916 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAllTrunklineMapper.java @@ -0,0 +1,14 @@ +package com.logpm.report.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigAdvanceDetailOpenEntity; +import com.logpm.report.entity.ReportConfigAllTrunklineEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +@Mapper +public interface ReportConfigAllTrunklineMapper extends BaseMapper { + IPage allTrunklineConfigPage(IPage page, @Param("param") ReportConfigDTO reportConfigDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAllTrunklineMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAllTrunklineMapper.xml new file mode 100644 index 000000000..86fe0eb09 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigAllTrunklineMapper.xml @@ -0,0 +1,31 @@ + + + + + + + diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigCheckWaybillMapper.java b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigCheckWaybillMapper.java new file mode 100644 index 000000000..478a22627 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigCheckWaybillMapper.java @@ -0,0 +1,15 @@ +package com.logpm.report.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigCheckWaybillEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +@Mapper +public interface ReportConfigCheckWaybillMapper extends BaseMapper { + + + IPage checkWaybillConfigPage(IPage page, @Param("param") ReportConfigDTO reportConfigDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigCheckWaybillMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigCheckWaybillMapper.xml new file mode 100644 index 000000000..34db86702 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigCheckWaybillMapper.xml @@ -0,0 +1,31 @@ + + + + + + + diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigDespatchMapper.java b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigDespatchMapper.java new file mode 100644 index 000000000..63ecd1bd1 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigDespatchMapper.java @@ -0,0 +1,14 @@ +package com.logpm.report.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigDespatchEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +@Mapper +public interface ReportConfigDespatchMapper extends BaseMapper { + + IPage despatchConfigPage(IPage page, @Param("param") ReportConfigDTO reportConfigDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigDespatchMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigDespatchMapper.xml new file mode 100644 index 000000000..3e62ed6ac --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigDespatchMapper.xml @@ -0,0 +1,31 @@ + + + + + + + diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigTransferMapper.java b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigTransferMapper.java new file mode 100644 index 000000000..3db8fa096 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigTransferMapper.java @@ -0,0 +1,13 @@ +package com.logpm.report.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigTransferEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +@Mapper +public interface ReportConfigTransferMapper extends BaseMapper { + IPage transferConfigPage(IPage page, @Param("param") ReportConfigDTO reportConfigDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigTransferMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigTransferMapper.xml new file mode 100644 index 000000000..f065a947a --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportConfigTransferMapper.xml @@ -0,0 +1,25 @@ + + + + + + + diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportQualityMapper.java b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportQualityMapper.java new file mode 100644 index 000000000..3538914fc --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportQualityMapper.java @@ -0,0 +1,17 @@ +package com.logpm.report.mapper; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.report.dto.ReportQualityDTO; +import com.logpm.report.vo.ReportUpdateWaybillVO; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ReportQualityMapper { + + IPage updateWaybillQualityPage(IPage page, @Param("param") ReportQualityDTO reportQualityDTO); + + List updateWaybillQualityExport(@Param("param") ReportQualityDTO reportQualityDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportQuallityMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportQuallityMapper.xml new file mode 100644 index 000000000..04d08498d --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportQuallityMapper.xml @@ -0,0 +1,128 @@ + + + + + + + + + + diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.java b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.java index 6319984c0..dd901db67 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.java @@ -2,8 +2,7 @@ package com.logpm.report.mapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.report.dto.ReportTimeDTO; -import com.logpm.report.vo.ReportCheckWaybillTimeVO; -import com.logpm.report.vo.ReportOpenTimeVO; +import com.logpm.report.vo.*; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -20,4 +19,28 @@ public interface ReportTimeMapper { IPage checkWaybillTimePage(IPage page, @Param("param") ReportTimeDTO reportTimeDTO); List checkWaybillTimeExport(@Param("param") ReportTimeDTO reportTimeDTO); + + IPage packageStartTimePage(IPage page, @Param("param") ReportTimeDTO reportTimeDTO); + + List packageStartTimeExport(@Param("param") ReportTimeDTO reportTimeDTO); + + IPage zeroStartTimePage(IPage page, @Param("param") ReportTimeDTO reportTimeDTO); + + List zeroStartTimeExport(@Param("param") ReportTimeDTO reportTimeDTO); + + IPage packageTransferTimePage(IPage page, @Param("param") ReportTimeDTO reportTimeDTO); + + List packageTransferTimeExport(@Param("param") ReportTimeDTO reportTimeDTO); + + IPage zeroTransferTimePage(IPage page, @Param("param") ReportTimeDTO reportTimeDTO); + + List zeroTransferTimeExport(@Param("param") ReportTimeDTO reportTimeDTO); + + IPage packageAllTrunklineTimePage(IPage page, @Param("param") ReportTimeDTO reportTimeDTO); + + List packageAllTrunklineTimeExport(@Param("param") ReportTimeDTO reportTimeDTO); + + IPage zeroAllTrunklineTimePage(IPage page, @Param("param") ReportTimeDTO reportTimeDTO); + + List zeroAllTrunklineTimeExport(@Param("param") ReportTimeDTO reportTimeDTO); } diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.xml index 5afd7822f..ea106f17d 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.xml +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.xml @@ -15,9 +15,9 @@ IFNULL(round(sum(if(lta.waybill_status='0' and lta.freeze_status = '1',1,0))/count(lta.id)*100,2),'0.00') noOpenHasFreezeRate, sum(if(lta.waybill_status='0' and lta.freeze_status = '0',1,0)) noOpenNoFreezeNum, IFNULL(round(sum(if(lta.waybill_status='0' and lta.freeze_status = '0',1,0))/count(lta.id)*100,2),'0.00') noOpenNoFreezeRate, - sum(IF( lta.waybill_status='1' and lww.create_time <= DATE_ADD( lta.create_time, INTERVAL 72 HOUR ), 1, 0 )) onTimeNum, - sum(IF( lta.waybill_status='1' and lww.create_time > DATE_ADD( lta.create_time, INTERVAL 72 HOUR ), 1, 0 )) overTimeNum, - IFNULL(round(sum(IF( lta.waybill_status='1' and lww.create_time <= DATE_ADD( lta.create_time, INTERVAL 72 HOUR ), 1, 0 ))/sum(if(lta.waybill_status='1',1,0))*100,2),'0.00') onTimeRate, + sum(IF( lta.waybill_status='1' and lww.create_time <= DATE_ADD( lta.create_time, INTERVAL #{param.hoursTime} HOUR ), 1, 0 )) onTimeNum, + sum(IF( lta.waybill_status='1' and lww.create_time > DATE_ADD( lta.create_time, INTERVAL #{param.hoursTime} HOUR ), 1, 0 )) overTimeNum, + IFNULL(round(sum(IF( lta.waybill_status='1' and lww.create_time <= DATE_ADD( lta.create_time, INTERVAL #{param.hoursTime} HOUR ), 1, 0 ))/sum(if(lta.waybill_status='1',1,0))*100,2),'0.00') onTimeRate, IFNULL(round(sum(TIMESTAMPDIFF(SECOND, lta.create_time, lww.create_time))/sum(if(lta.waybill_status='1',1,0))/3600,1),'0.0') avgTime from logpm_trunkline_advance lta left join logpm_warehouse_warehouse waw on waw.id = lta.warehouse_id @@ -67,9 +67,9 @@ IFNULL(concat(round(sum(if(lta.waybill_status='0' and lta.freeze_status = '1',1,0))/count(lta.id)*100,2),'%'),'0.00%') noOpenHasFreezeRate, sum(if(lta.waybill_status='0' and lta.freeze_status = '0',1,0)) noOpenNoFreezeNum, IFNULL(concat(round(sum(if(lta.waybill_status='0' and lta.freeze_status = '0',1,0))/count(lta.id)*100,2),'%'),'0.00%') noOpenNoFreezeRate, - sum(IF( lta.waybill_status='1' and lww.create_time <= DATE_ADD( lta.create_time, INTERVAL 72 HOUR ), 1, 0 )) onTimeNum, - sum(IF( lta.waybill_status='1' and lww.create_time > DATE_ADD( lta.create_time, INTERVAL 72 HOUR ), 1, 0 )) overTimeNum, - IFNULL(concat(round(sum(IF( lta.waybill_status='1' and lww.create_time <= DATE_ADD( lta.create_time, INTERVAL 72 HOUR ), 1, 0 ))/sum(if(lta.waybill_status='1',1,0))*100,2),'%'),'0.00%') onTimeRate, + sum(IF( lta.waybill_status='1' and lww.create_time <= DATE_ADD( lta.create_time, INTERVAL #{param.hoursTime} HOUR ), 1, 0 )) onTimeNum, + sum(IF( lta.waybill_status='1' and lww.create_time > DATE_ADD( lta.create_time, INTERVAL #{param.hoursTime} HOUR ), 1, 0 )) overTimeNum, + IFNULL(concat(round(sum(IF( lta.waybill_status='1' and lww.create_time <= DATE_ADD( lta.create_time, INTERVAL #{param.hoursTime} HOUR ), 1, 0 ))/sum(if(lta.waybill_status='1',1,0))*100,2),'%'),'0.00%') onTimeRate, IFNULL(round(sum(TIMESTAMPDIFF(SECOND, lta.create_time, lww.create_time))/sum(if(lta.waybill_status='1',1,0))/3600,1),'0.0') avgTime from logpm_trunkline_advance lta left join logpm_warehouse_warehouse waw on waw.id = lta.warehouse_id @@ -116,8 +116,8 @@ count(lww.id) totalNum, sum(if(lww.check_status=1,1,0)) hasCheckNum, IFNULL(round(sum(if(lww.check_status=1,1,0))/count(lww.id)*100,2),'0.00') hasCheckRate, - sum(IF( lww.check_status=1 and lww.check_time <= DATE_ADD( lww.create_time, INTERVAL 72 HOUR ), 1, 0 )) onTimeCheckNum, - IFNULL(round(sum(IF( lww.check_status=1 and lww.check_time <= DATE_ADD( lww.create_time, INTERVAL 72 HOUR ), 1, 0 ))/sum(if(lww.check_status=1,1,0))*100,2),'0.00') onTimeCheckRate, + sum(IF( lww.check_status=1 and lww.check_time <= DATE_ADD( lww.create_time, INTERVAL #{param.hoursTime} HOUR ), 1, 0 )) onTimeCheckNum, + IFNULL(round(sum(IF( lww.check_status=1 and lww.check_time <= DATE_ADD( lww.create_time, INTERVAL #{param.hoursTime} HOUR ), 1, 0 ))/sum(if(lww.check_status=1,1,0))*100,2),'0.00') onTimeCheckRate, IFNULL(round(sum(TIMESTAMPDIFF(SECOND, lww.create_time, lww.check_time))/sum(if(lww.check_status=1,1,0))/3600,1),'0.0') avgCheckTime from logpm_warehouse_waybill lww left join logpm_warehouse_warehouse waw on waw.id = lww.departure_warehouse_id @@ -171,8 +171,8 @@ count(lww.id) totalNum, sum(if(lww.check_status=1,1,0)) hasCheckNum, IFNULL(concat(round(sum(if(lww.check_status=1,1,0))/count(lww.id)*100,2),'%'),'0.00%') hasCheckRate, - sum(IF( lww.check_status=1 and lww.check_time <= DATE_ADD( lww.create_time, INTERVAL 72 HOUR ), 1, 0 )) onTimeCheckNum, - IFNULL(concat(round(sum(IF( lww.check_status=1 and lww.check_time <= DATE_ADD( lww.create_time, INTERVAL 72 HOUR ), 1, 0 ))/sum(if(lww.check_status=1,1,0))*100,2),'%'),'0.00%') onTimeCheckRate, + sum(IF( lww.check_status=1 and lww.check_time <= DATE_ADD( lww.create_time, INTERVAL #{param.hoursTime} HOUR ), 1, 0 )) onTimeCheckNum, + IFNULL(concat(round(sum(IF( lww.check_status=1 and lww.check_time <= DATE_ADD( lww.create_time, INTERVAL #{param.hoursTime} HOUR ), 1, 0 ))/sum(if(lww.check_status=1,1,0))*100,2),'%'),'0.00%') onTimeCheckRate, IFNULL(round(sum(TIMESTAMPDIFF(SECOND, lww.create_time, lww.check_time))/sum(if(lww.check_status=1,1,0))/3600,1),'0.0') avgCheckTime from logpm_warehouse_waybill lww left join logpm_warehouse_warehouse waw on waw.id = lww.departure_warehouse_id @@ -216,4 +216,1181 @@ lww.brand + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigAdvanceDetailOpenService.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigAdvanceDetailOpenService.java new file mode 100644 index 000000000..103c9d5aa --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigAdvanceDetailOpenService.java @@ -0,0 +1,14 @@ +package com.logpm.report.service; + +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigAdvanceDetailOpenEntity; +import org.springblade.core.mp.base.BaseService; +import org.springblade.core.tool.api.R; + +public interface IReportConfigAdvanceDetailOpenService extends BaseService { + R openTimeConfigPage(ReportConfigDTO reportConfigDTO); + + R addOpenTimeConfig(ReportConfigDTO reportConfigDTO); + + R deleteOpenTimeConfig(ReportConfigDTO reportConfigDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigAllTrunklineService.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigAllTrunklineService.java new file mode 100644 index 000000000..6f4d49799 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigAllTrunklineService.java @@ -0,0 +1,14 @@ +package com.logpm.report.service; + +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigAllTrunklineEntity; +import org.springblade.core.mp.base.BaseService; +import org.springblade.core.tool.api.R; + +public interface IReportConfigAllTrunklineService extends BaseService { + R allTrunklineConfigPage(ReportConfigDTO reportConfigDTO); + + R addAllTrunklineConfig(ReportConfigDTO reportConfigDTO); + + R deleteAllTrunklineConfig(ReportConfigDTO reportConfigDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigCheckWaybillService.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigCheckWaybillService.java new file mode 100644 index 000000000..f9dae4e10 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigCheckWaybillService.java @@ -0,0 +1,14 @@ +package com.logpm.report.service; + +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigCheckWaybillEntity; +import org.springblade.core.mp.base.BaseService; +import org.springblade.core.tool.api.R; + +public interface IReportConfigCheckWaybillService extends BaseService { + R checkWaybillConfigPage(ReportConfigDTO reportConfigDTO); + + R addCheckWaybillConfig(ReportConfigDTO reportConfigDTO); + + R deleteCheckWaybillConfig(ReportConfigDTO reportConfigDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigDespatchService.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigDespatchService.java new file mode 100644 index 000000000..a4bfe0498 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigDespatchService.java @@ -0,0 +1,14 @@ +package com.logpm.report.service; + +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigDespatchEntity; +import org.springblade.core.mp.base.BaseService; +import org.springblade.core.tool.api.R; + +public interface IReportConfigDespatchService extends BaseService { + R despatchConfigPage(ReportConfigDTO reportConfigDTO); + + R addDespatchConfig(ReportConfigDTO reportConfigDTO); + + R deleteDespatchConfig(ReportConfigDTO reportConfigDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigTransferService.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigTransferService.java new file mode 100644 index 000000000..97549945e --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportConfigTransferService.java @@ -0,0 +1,14 @@ +package com.logpm.report.service; + +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigTransferEntity; +import org.springblade.core.mp.base.BaseService; +import org.springblade.core.tool.api.R; + +public interface IReportConfigTransferService extends BaseService { + R transferConfigPage(ReportConfigDTO reportConfigDTO); + + R addTransferConfig(ReportConfigDTO reportConfigDTO); + + R deleteTransferConfig(ReportConfigDTO reportConfigDTO); +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportQualityService.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportQualityService.java new file mode 100644 index 000000000..2c5d71f9c --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportQualityService.java @@ -0,0 +1,13 @@ +package com.logpm.report.service; + +import com.logpm.report.dto.ReportQualityDTO; +import org.springblade.core.tool.api.R; + +import javax.servlet.http.HttpServletResponse; + +public interface IReportQualityService { + R updateWaybillQualityPage(ReportQualityDTO reportQualityDTO); + + void updateWaybillQualityExport(ReportQualityDTO reportQualityDTO, HttpServletResponse response); + +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportTimeService.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportTimeService.java index 8bc490bf8..b0590eb5f 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportTimeService.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/IReportTimeService.java @@ -15,4 +15,28 @@ public interface IReportTimeService { R checkWaybillTimePage(ReportTimeDTO reportTimeDTO); void checkWaybillTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response); + + R packageStartTimePage(ReportTimeDTO reportTimeDTO); + + void packageStartTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response); + + R zeroStartTimePage(ReportTimeDTO reportTimeDTO); + + void zeroStartTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response); + + R packageTransferTimePage(ReportTimeDTO reportTimeDTO); + + void packageTransferTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response); + + R zeroTransferTimePage(ReportTimeDTO reportTimeDTO); + + void zeroTransferTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response); + + R packageAllTrunklineTimePage(ReportTimeDTO reportTimeDTO); + + void packageAllTrunklineTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response); + + R zeroAllTrunklineTimePage(ReportTimeDTO reportTimeDTO); + + void zeroAllTrunklineTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response); } diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigAdvanceDetailOpenServiceImpl.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigAdvanceDetailOpenServiceImpl.java new file mode 100644 index 000000000..6902aa9bd --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigAdvanceDetailOpenServiceImpl.java @@ -0,0 +1,67 @@ +package com.logpm.report.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigAdvanceDetailOpenEntity; +import com.logpm.report.mapper.ReportConfigAdvanceDetailOpenMapper; +import com.logpm.report.service.IReportConfigAdvanceDetailOpenService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.tool.api.R; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +@Service +@AllArgsConstructor +@Slf4j +public class ReportConfigAdvanceDetailOpenServiceImpl extends BaseServiceImpl implements IReportConfigAdvanceDetailOpenService { + @Override + public R openTimeConfigPage(ReportConfigDTO reportConfigDTO) { + + IPage page = new Page<>(); + page.setCurrent(reportConfigDTO.getPageNum()); + page.setSize(reportConfigDTO.getPageSize()); + + IPage ipage = baseMapper.openTimeConfigPage(page, reportConfigDTO); + + return R.data(ipage); + } + + @Override + public R addOpenTimeConfig(ReportConfigDTO reportConfigDTO) { + + Long warehouseId = reportConfigDTO.getWarehouseId(); + String warehouseName = reportConfigDTO.getWarehouseName(); + String brand = reportConfigDTO.getBrand(); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("warehouse_name",warehouseName) + .eq("brand",brand) + .eq("is_deleted",0); + ReportConfigAdvanceDetailOpenEntity reportConfigAdvanceDetailOpenEntity = baseMapper.selectOne(queryWrapper); + if(!Objects.isNull(reportConfigAdvanceDetailOpenEntity)){ + reportConfigAdvanceDetailOpenEntity.setHoursTime(reportConfigDTO.getHoursTime()); + }else{ + reportConfigAdvanceDetailOpenEntity = ReportConfigAdvanceDetailOpenEntity.builder() + .warehouseId(warehouseId) + .warehouseName(warehouseName) + .brand(brand) + .hoursTime(reportConfigDTO.getHoursTime()) + .build(); + } + saveOrUpdate(reportConfigAdvanceDetailOpenEntity); + + return R.success("保存成功"); + } + + @Override + public R deleteOpenTimeConfig(ReportConfigDTO reportConfigDTO) { + Long id = reportConfigDTO.getId(); + removeById(id); + return R.success("删除成功"); + } +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigAllTrunklineServiceImpl.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigAllTrunklineServiceImpl.java new file mode 100644 index 000000000..65aa2dc69 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigAllTrunklineServiceImpl.java @@ -0,0 +1,69 @@ +package com.logpm.report.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigAdvanceDetailOpenEntity; +import com.logpm.report.entity.ReportConfigAllTrunklineEntity; +import com.logpm.report.mapper.ReportConfigAllTrunklineMapper; +import com.logpm.report.service.IReportConfigAllTrunklineService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.tool.api.R; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +@Service +@AllArgsConstructor +@Slf4j +public class ReportConfigAllTrunklineServiceImpl extends BaseServiceImpl implements IReportConfigAllTrunklineService { + @Override + public R allTrunklineConfigPage(ReportConfigDTO reportConfigDTO) { + IPage page = new Page<>(); + page.setCurrent(reportConfigDTO.getPageNum()); + page.setSize(reportConfigDTO.getPageSize()); + + IPage ipage = baseMapper.allTrunklineConfigPage(page, reportConfigDTO); + + return R.data(ipage); + } + + @Override + public R addAllTrunklineConfig(ReportConfigDTO reportConfigDTO) { + Long departureWarehouseId = reportConfigDTO.getDepartureWarehouseId(); + String departureWarehouseName = reportConfigDTO.getDepartureWarehouseName(); + Long destinationWarehouseId = reportConfigDTO.getDestinationWarehouseId(); + String destinationWarehouseName = reportConfigDTO.getDestinationWarehouseName(); + String brand = reportConfigDTO.getBrand(); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("departure_warehouse_name",departureWarehouseName) + .eq("destination_warehouse_name",destinationWarehouseName) + .eq("is_deleted",0); + ReportConfigAllTrunklineEntity reportConfigAllTrunklineEntity = baseMapper.selectOne(queryWrapper); + if(!Objects.isNull(reportConfigAllTrunklineEntity)){ + reportConfigAllTrunklineEntity.setHoursTime(reportConfigDTO.getHoursTime()); + }else{ + reportConfigAllTrunklineEntity = ReportConfigAllTrunklineEntity.builder() + .departureWarehouseId(departureWarehouseId) + .departureWarehouseName(departureWarehouseName) + .destinationWarehouseId(destinationWarehouseId) + .destinationWarehouseName(destinationWarehouseName) + .hoursTime(reportConfigDTO.getHoursTime()) + .build(); + } + saveOrUpdate(reportConfigAllTrunklineEntity); + + return R.success("保存成功"); + } + + @Override + public R deleteAllTrunklineConfig(ReportConfigDTO reportConfigDTO) { + Long id = reportConfigDTO.getId(); + removeById(id); + return R.success("删除成功"); + } +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigCheckWaybillServiceImpl.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigCheckWaybillServiceImpl.java new file mode 100644 index 000000000..564ed2981 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigCheckWaybillServiceImpl.java @@ -0,0 +1,70 @@ +package com.logpm.report.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigCheckWaybillEntity; +import com.logpm.report.mapper.ReportConfigCheckWaybillMapper; +import com.logpm.report.service.IReportConfigCheckWaybillService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.tool.api.R; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +@Service +@AllArgsConstructor +@Slf4j +public class ReportConfigCheckWaybillServiceImpl extends BaseServiceImpl implements IReportConfigCheckWaybillService { + @Override + public R checkWaybillConfigPage(ReportConfigDTO reportConfigDTO) { + IPage page = new Page<>(); + page.setCurrent(reportConfigDTO.getPageNum()); + page.setSize(reportConfigDTO.getPageSize()); + + IPage ipage = baseMapper.checkWaybillConfigPage(page, reportConfigDTO); + + return R.data(ipage); + } + + @Override + public R addCheckWaybillConfig(ReportConfigDTO reportConfigDTO) { + Long departureWarehouseId = reportConfigDTO.getDepartureWarehouseId(); + String departureWarehouseName = reportConfigDTO.getDepartureWarehouseName(); + Long destinationWarehouseId = reportConfigDTO.getDestinationWarehouseId(); + String destinationWarehouseName = reportConfigDTO.getDestinationWarehouseName(); + String brand = reportConfigDTO.getBrand(); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("departure_warehouse_name",departureWarehouseName) + .eq("destination_warehouse_name",destinationWarehouseName) + .eq("brand",brand) + .eq("is_deleted",0); + ReportConfigCheckWaybillEntity reportConfigCheckWaybillEntity = baseMapper.selectOne(queryWrapper); + if(!Objects.isNull(reportConfigCheckWaybillEntity)){ + reportConfigCheckWaybillEntity.setHoursTime(reportConfigDTO.getHoursTime()); + }else{ + reportConfigCheckWaybillEntity = ReportConfigCheckWaybillEntity.builder() + .departureWarehouseId(departureWarehouseId) + .departureWarehouseName(departureWarehouseName) + .destinationWarehouseId(destinationWarehouseId) + .destinationWarehouseName(destinationWarehouseName) + .brand(brand) + .hoursTime(reportConfigDTO.getHoursTime()) + .build(); + } + saveOrUpdate(reportConfigCheckWaybillEntity); + + return R.success("保存成功"); + } + + @Override + public R deleteCheckWaybillConfig(ReportConfigDTO reportConfigDTO) { + Long id = reportConfigDTO.getId(); + removeById(id); + return R.success("删除成功"); + } +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigDespatchServiceImpl.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigDespatchServiceImpl.java new file mode 100644 index 000000000..890ed4fda --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigDespatchServiceImpl.java @@ -0,0 +1,70 @@ +package com.logpm.report.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigDespatchEntity; +import com.logpm.report.mapper.ReportConfigDespatchMapper; +import com.logpm.report.service.IReportConfigDespatchService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.tool.api.R; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +@Service +@AllArgsConstructor +@Slf4j +public class ReportConfigDespatchServiceImpl extends BaseServiceImpl implements IReportConfigDespatchService { + @Override + public R despatchConfigPage(ReportConfigDTO reportConfigDTO) { + IPage page = new Page<>(); + page.setCurrent(reportConfigDTO.getPageNum()); + page.setSize(reportConfigDTO.getPageSize()); + + IPage ipage = baseMapper.despatchConfigPage(page, reportConfigDTO); + + return R.data(ipage); + } + + @Override + public R addDespatchConfig(ReportConfigDTO reportConfigDTO) { + Long departureWarehouseId = reportConfigDTO.getDepartureWarehouseId(); + String departureWarehouseName = reportConfigDTO.getDepartureWarehouseName(); + Long destinationWarehouseId = reportConfigDTO.getDestinationWarehouseId(); + String destinationWarehouseName = reportConfigDTO.getDestinationWarehouseName(); + String brand = reportConfigDTO.getBrand(); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("departure_warehouse_name",departureWarehouseName) + .eq("destination_warehouse_name",destinationWarehouseName) + .eq("brand",brand) + .eq("is_deleted",0); + ReportConfigDespatchEntity reportConfigDespatchEntity = baseMapper.selectOne(queryWrapper); + if(!Objects.isNull(reportConfigDespatchEntity)){ + reportConfigDespatchEntity.setHoursTime(reportConfigDTO.getHoursTime()); + }else{ + reportConfigDespatchEntity = ReportConfigDespatchEntity.builder() + .departureWarehouseId(departureWarehouseId) + .destinationWarehouseId(destinationWarehouseId) + .departureWarehouseName(departureWarehouseName) + .destinationWarehouseName(destinationWarehouseName) + .brand(brand) + .hoursTime(reportConfigDTO.getHoursTime()) + .build(); + } + saveOrUpdate(reportConfigDespatchEntity); + + return R.success("保存成功"); + } + + @Override + public R deleteDespatchConfig(ReportConfigDTO reportConfigDTO) { + Long id = reportConfigDTO.getId(); + removeById(id); + return R.success("删除成功"); + } +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigTransferServiceImpl.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigTransferServiceImpl.java new file mode 100644 index 000000000..44468ab66 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportConfigTransferServiceImpl.java @@ -0,0 +1,65 @@ +package com.logpm.report.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.logpm.report.dto.ReportConfigDTO; +import com.logpm.report.entity.ReportConfigTransferEntity; +import com.logpm.report.mapper.ReportConfigTransferMapper; +import com.logpm.report.service.IReportConfigTransferService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.core.tool.api.R; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +@Service +@AllArgsConstructor +@Slf4j +public class ReportConfigTransferServiceImpl extends BaseServiceImpl implements IReportConfigTransferService { + @Override + public R transferConfigPage(ReportConfigDTO reportConfigDTO) { + IPage page = new Page<>(); + page.setCurrent(reportConfigDTO.getPageNum()); + page.setSize(reportConfigDTO.getPageSize()); + + IPage ipage = baseMapper.transferConfigPage(page, reportConfigDTO); + + return R.data(ipage); + } + + @Override + public R addTransferConfig(ReportConfigDTO reportConfigDTO) { + Long warehouseId = reportConfigDTO.getWarehouseId(); + String warehouseName = reportConfigDTO.getWarehouseName(); + String brand = reportConfigDTO.getBrand(); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("warehouse_name",warehouseName) + .eq("brand",brand) + .eq("is_deleted",0); + ReportConfigTransferEntity reportConfigTransferEntity = baseMapper.selectOne(queryWrapper); + if(!Objects.isNull(reportConfigTransferEntity)){ + reportConfigTransferEntity.setHoursTime(reportConfigDTO.getHoursTime()); + }else{ + reportConfigTransferEntity = ReportConfigTransferEntity.builder() + .warehouseId(warehouseId) + .warehouseName(warehouseName) + .brand(brand) + .hoursTime(reportConfigDTO.getHoursTime()) + .build(); + } + saveOrUpdate(reportConfigTransferEntity); + + return R.success("保存成功"); + } + + @Override + public R deleteTransferConfig(ReportConfigDTO reportConfigDTO) { + Long id = reportConfigDTO.getId(); + removeById(id); + return R.success("删除成功"); + } +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportQualityServiceImpl.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportQualityServiceImpl.java new file mode 100644 index 000000000..524698ff7 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportQualityServiceImpl.java @@ -0,0 +1,53 @@ +package com.logpm.report.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.logpm.report.dto.ReportQualityDTO; +import com.logpm.report.mapper.ReportQualityMapper; +import com.logpm.report.service.IReportQualityService; +import com.logpm.report.vo.ReportCheckWaybillTimeVO; +import com.logpm.report.vo.ReportUpdateWaybillVO; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.common.utils.CommonUtil; +import org.springblade.core.excel.util.ExcelUtil; +import org.springblade.core.tool.api.R; +import org.springframework.stereotype.Service; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +@Service +@AllArgsConstructor +@Slf4j +public class ReportQualityServiceImpl implements IReportQualityService { + + private final ReportQualityMapper reportQualityMapper; + + @Override + public R updateWaybillQualityPage(ReportQualityDTO reportQualityDTO) { + IPage page = new Page<>(); + page.setCurrent(reportQualityDTO.getPageNum()); + page.setSize(reportQualityDTO.getPageSize()); + + reportQualityDTO.setStartTime(CommonUtil.getStartByDateStr(reportQualityDTO.getStartTimeStr())); + reportQualityDTO.setEndTime(CommonUtil.getEndByDateStr(reportQualityDTO.getEndTimeStr())); + + IPage iPage = reportQualityMapper.updateWaybillQualityPage(page,reportQualityDTO); + + return R.data(iPage); + } + + @Override + public void updateWaybillQualityExport(ReportQualityDTO reportQualityDTO, HttpServletResponse response) { + + reportQualityDTO.setStartTime(CommonUtil.getStartByDateStr(reportQualityDTO.getStartTimeStr())); + reportQualityDTO.setEndTime(CommonUtil.getEndByDateStr(reportQualityDTO.getEndTimeStr())); + + List list = reportQualityMapper.updateWaybillQualityExport(reportQualityDTO); + + //导出ls + ExcelUtil.export(response, "改单质量报表导出", "改单质量报表导出", list, ReportUpdateWaybillVO.class); + + } +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportTimeServiceImpl.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportTimeServiceImpl.java index 3a70a81db..8f3653a9b 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportTimeServiceImpl.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportTimeServiceImpl.java @@ -1,12 +1,16 @@ package com.logpm.report.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.logpm.report.dto.ReportTimeDTO; +import com.logpm.report.entity.ReportConfigAdvanceDetailOpenEntity; +import com.logpm.report.entity.ReportConfigCheckWaybillEntity; +import com.logpm.report.entity.ReportConfigDespatchEntity; +import com.logpm.report.entity.ReportConfigTransferEntity; import com.logpm.report.mapper.ReportTimeMapper; -import com.logpm.report.service.IReportTimeService; -import com.logpm.report.vo.ReportCheckWaybillTimeVO; -import com.logpm.report.vo.ReportOpenTimeVO; +import com.logpm.report.service.*; +import com.logpm.report.vo.*; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.common.utils.CommonUtil; @@ -16,6 +20,7 @@ import org.springframework.stereotype.Service; import javax.servlet.http.HttpServletResponse; import java.util.List; +import java.util.Objects; @Service @Slf4j @@ -23,6 +28,10 @@ import java.util.List; public class ReportTimeServiceImpl implements IReportTimeService { private final ReportTimeMapper reportTimeMapper; + private final IReportConfigAdvanceDetailOpenService advanceDetailOpenService; + private final IReportConfigCheckWaybillService checkWaybillService; + private final IReportConfigDespatchService despatchService; + private final IReportConfigTransferService transferService; @Override @@ -35,6 +44,17 @@ public class ReportTimeServiceImpl implements IReportTimeService { reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + reportTimeDTO.setHoursTime(72); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("warehouse_name","全部") + .eq("brand","全部") + .eq("is_deleted",0); + ReportConfigAdvanceDetailOpenEntity advanceDetailOpenEntity = advanceDetailOpenService.getOne(queryWrapper); + if(!Objects.isNull(advanceDetailOpenEntity)){ + reportTimeDTO.setHoursTime(advanceDetailOpenEntity.getHoursTime()); + } + IPage iPage = reportTimeMapper.openTimePage(page,reportTimeDTO); @@ -44,13 +64,21 @@ public class ReportTimeServiceImpl implements IReportTimeService { @Override public void openTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response) { - IPage page = new Page<>(); - page.setCurrent(reportTimeDTO.getPageNum()); - page.setSize(reportTimeDTO.getPageSize()); reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + reportTimeDTO.setHoursTime(72); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("warehouse_name","全部") + .eq("brand","全部") + .eq("is_deleted",0); + ReportConfigAdvanceDetailOpenEntity advanceDetailOpenEntity = advanceDetailOpenService.getOne(queryWrapper); + if(!Objects.isNull(advanceDetailOpenEntity)){ + reportTimeDTO.setHoursTime(advanceDetailOpenEntity.getHoursTime()); + } + List list = reportTimeMapper.openTimeExport(reportTimeDTO); //导出ls @@ -67,6 +95,18 @@ public class ReportTimeServiceImpl implements IReportTimeService { reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + reportTimeDTO.setHoursTime(72); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("departure_warehouse_name","全部") + .eq("destination_warehouse_name","全部") + .eq("brand","全部") + .eq("is_deleted",0); + ReportConfigCheckWaybillEntity checkWaybillEntity = checkWaybillService.getOne(queryWrapper); + if(!Objects.isNull(checkWaybillEntity)){ + reportTimeDTO.setHoursTime(checkWaybillEntity.getHoursTime()); + } + IPage iPage = reportTimeMapper.checkWaybillTimePage(page,reportTimeDTO); @@ -75,6 +115,30 @@ public class ReportTimeServiceImpl implements IReportTimeService { @Override public void checkWaybillTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + reportTimeDTO.setHoursTime(72); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("departure_warehouse_name","全部") + .eq("destination_warehouse_name","全部") + .eq("brand","全部") + .eq("is_deleted",0); + ReportConfigCheckWaybillEntity checkWaybillEntity = checkWaybillService.getOne(queryWrapper); + if(!Objects.isNull(checkWaybillEntity)){ + reportTimeDTO.setHoursTime(checkWaybillEntity.getHoursTime()); + } + + List list = reportTimeMapper.checkWaybillTimeExport(reportTimeDTO); + + //导出ls + ExcelUtil.export(response, "审单及时率报表导出", "审单及时率报表导出", list, ReportCheckWaybillTimeVO.class); + } + + @Override + public R packageStartTimePage(ReportTimeDTO reportTimeDTO) { IPage page = new Page<>(); page.setCurrent(reportTimeDTO.getPageNum()); page.setSize(reportTimeDTO.getPageSize()); @@ -82,9 +146,220 @@ public class ReportTimeServiceImpl implements IReportTimeService { reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); - List list = reportTimeMapper.checkWaybillTimeExport(reportTimeDTO); + reportTimeDTO.setHoursTime(72); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("departure_warehouse_name","全部") + .eq("destination_warehouse_name","全部") + .eq("brand","全部") + .eq("is_deleted",0); + ReportConfigDespatchEntity despatchEntity = despatchService.getOne(queryWrapper); + if(!Objects.isNull(despatchEntity)){ + reportTimeDTO.setHoursTime(despatchEntity.getHoursTime()); + } + + IPage iPage = reportTimeMapper.packageStartTimePage(page,reportTimeDTO); + + + return R.data(iPage); + } + + @Override + public void packageStartTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + reportTimeDTO.setHoursTime(72); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("departure_warehouse_name","全部") + .eq("destination_warehouse_name","全部") + .eq("brand","全部") + .eq("is_deleted",0); + ReportConfigDespatchEntity despatchEntity = despatchService.getOne(queryWrapper); + if(!Objects.isNull(despatchEntity)){ + reportTimeDTO.setHoursTime(despatchEntity.getHoursTime()); + } + + List list = reportTimeMapper.packageStartTimeExport(reportTimeDTO); //导出ls - ExcelUtil.export(response, "审单及时率报表导出", "审单及时率报表导出", list, ReportCheckWaybillTimeVO.class); + ExcelUtil.export(response, "订制品发运时效报表导出", "订制品发运时效报表导出", list, ReportPackgeStartTimeVO.class); + } + + @Override + public R zeroStartTimePage(ReportTimeDTO reportTimeDTO) { + IPage page = new Page<>(); + page.setCurrent(reportTimeDTO.getPageNum()); + page.setSize(reportTimeDTO.getPageSize()); + + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + reportTimeDTO.setHoursTime(72); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("departure_warehouse_name","全部") + .eq("destination_warehouse_name","全部") + .eq("brand","全部") + .eq("is_deleted",0); + ReportConfigDespatchEntity despatchEntity = despatchService.getOne(queryWrapper); + if(!Objects.isNull(despatchEntity)){ + reportTimeDTO.setHoursTime(despatchEntity.getHoursTime()); + } + + IPage iPage = reportTimeMapper.zeroStartTimePage(page,reportTimeDTO); + + + return R.data(iPage); + } + + @Override + public void zeroStartTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + reportTimeDTO.setHoursTime(72); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("departure_warehouse_name","全部") + .eq("destination_warehouse_name","全部") + .eq("brand","全部") + .eq("is_deleted",0); + ReportConfigDespatchEntity despatchEntity = despatchService.getOne(queryWrapper); + if(!Objects.isNull(despatchEntity)){ + reportTimeDTO.setHoursTime(despatchEntity.getHoursTime()); + } + + List list = reportTimeMapper.zeroStartTimeExport(reportTimeDTO); + + //导出ls + ExcelUtil.export(response, "零担发运时效报表导出", "零担发运时效报表导出", list, ReportPackgeStartTimeVO.class); + } + + @Override + public R packageTransferTimePage(ReportTimeDTO reportTimeDTO) { + IPage page = new Page<>(); + page.setCurrent(reportTimeDTO.getPageNum()); + page.setSize(reportTimeDTO.getPageSize()); + + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + reportTimeDTO.setHoursTime(48); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("warehouse_name","全部") + .eq("brand","全部") + .eq("is_deleted",0); + ReportConfigTransferEntity transferEntity = transferService.getOne(queryWrapper); + if(!Objects.isNull(transferEntity)){ + reportTimeDTO.setHoursTime(transferEntity.getHoursTime()); + } + + IPage iPage = reportTimeMapper.packageTransferTimePage(page,reportTimeDTO); + + + return R.data(iPage); + } + + @Override + public void packageTransferTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + reportTimeDTO.setHoursTime(48); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("warehouse_name","全部") + .eq("brand","全部") + .eq("is_deleted",0); + ReportConfigTransferEntity transferEntity = transferService.getOne(queryWrapper); + if(!Objects.isNull(transferEntity)){ + reportTimeDTO.setHoursTime(transferEntity.getHoursTime()); + } + + List list = reportTimeMapper.packageTransferTimeExport(reportTimeDTO); + + //导出ls + ExcelUtil.export(response, "订制品中转时效报表导出", "订制品中转时效报表导出", list, ReportPackgeTransferTimeVO.class); + } + + @Override + public R zeroTransferTimePage(ReportTimeDTO reportTimeDTO) { + IPage page = new Page<>(); + page.setCurrent(reportTimeDTO.getPageNum()); + page.setSize(reportTimeDTO.getPageSize()); + + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + IPage iPage = reportTimeMapper.zeroTransferTimePage(page,reportTimeDTO); + + + return R.data(iPage); + } + + @Override + public void zeroTransferTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + List list = reportTimeMapper.zeroTransferTimeExport(reportTimeDTO); + + //导出ls + ExcelUtil.export(response, "零担中转时效报表导出", "零担中转时效报表导出", list, ReportPackgeTransferTimeVO.class); + } + + @Override + public R packageAllTrunklineTimePage(ReportTimeDTO reportTimeDTO) { + IPage page = new Page<>(); + page.setCurrent(reportTimeDTO.getPageNum()); + page.setSize(reportTimeDTO.getPageSize()); + + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + IPage iPage = reportTimeMapper.packageAllTrunklineTimePage(page,reportTimeDTO); + + + return R.data(iPage); + } + + @Override + public void packageAllTrunklineTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + List list = reportTimeMapper.packageAllTrunklineTimeExport(reportTimeDTO); + + //导出ls + ExcelUtil.export(response, "订制品干线整体时效报表导出", "订制品干线整体时效报表导出", list, ReportPackgeAllTrunklineTimeVO.class); + } + + @Override + public R zeroAllTrunklineTimePage(ReportTimeDTO reportTimeDTO) { + IPage page = new Page<>(); + page.setCurrent(reportTimeDTO.getPageNum()); + page.setSize(reportTimeDTO.getPageSize()); + + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + IPage iPage = reportTimeMapper.zeroAllTrunklineTimePage(page,reportTimeDTO); + + + return R.data(iPage); + } + + @Override + public void zeroAllTrunklineTimeExport(ReportTimeDTO reportTimeDTO, HttpServletResponse response) { + reportTimeDTO.setStartTime(CommonUtil.getStartByDateStr(reportTimeDTO.getStartTimeStr())); + reportTimeDTO.setEndTime(CommonUtil.getEndByDateStr(reportTimeDTO.getEndTimeStr())); + + List list = reportTimeMapper.zeroAllTrunklineTimeExport(reportTimeDTO); + + //导出ls + ExcelUtil.export(response, "零担干线整体时效报表导出", "零担干线整体时效报表导出", list, ReportPackgeAllTrunklineTimeVO.class); } } diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportPackgeAllTrunklineTimeVO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportPackgeAllTrunklineTimeVO.java new file mode 100644 index 000000000..fb9897c63 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportPackgeAllTrunklineTimeVO.java @@ -0,0 +1,90 @@ +package com.logpm.report.vo; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class ReportPackgeAllTrunklineTimeVO implements Serializable { + + @ExcelProperty(value = "事业线") + private String businessLine; + @ExcelProperty(value = "始发仓") + private String departureWarehouseName; + @ExcelProperty(value = "目的仓") + private String destinationWarehouseName; + @ExcelProperty(value = "品牌") + private String brand; + + @ExcelProperty(value = "开单数") + private Integer waybillNum; + @ExcelProperty(value = "开单件数") + private Integer openNum; + + @ExcelProperty(value = "目的仓到仓件数") + private Integer arriveNum; + @ExcelProperty(value = "目的仓未到仓件数") + private Integer noArriveNum; + + @ExcelProperty(value = "目的仓到仓率") + private String arriveRate; + @ExcelProperty(value = "到仓平均干线时效(天)") + private String avgTime; + + @ExcelProperty(value = "准时到仓件数") + private Integer onTimeArriveNum; + @ExcelProperty(value = "准时到仓率") + private String onTimeArriveRate; + + @ExcelProperty(value = "1天到仓数") + private Integer oneArriveNum; + @ExcelProperty(value = "1天到仓占比") + private String oneArriveRate; + + @ExcelProperty(value = "2天到仓数") + private Integer twoArriveNum; + @ExcelProperty(value = "2天到仓占比") + private String twoArriveRate; + + + @ExcelProperty(value = "3天到仓数") + private Integer threeArriveNum; + @ExcelProperty(value = "3天到仓占比") + private String threeArriveRate; + + + @ExcelProperty(value = "4天到仓数") + private Integer fourArriveNum; + @ExcelProperty(value = "4天到仓占比") + private String fourArriveRate; + + @ExcelProperty(value = "5天到仓数") + private Integer fiveArriveNum; + @ExcelProperty(value = "5天到仓占比") + private String fiveArriveRate; + + @ExcelProperty(value = "6天到仓数") + private Integer sixArriveNum; + @ExcelProperty(value = "6天到仓占比") + private String sixArriveRate; + + @ExcelProperty(value = "7天到仓数") + private Integer sevenArriveNum; + @ExcelProperty(value = "7天到仓占比") + private String sevenArriveRate; + + @ExcelProperty(value = "7天至10天到仓数") + private Integer sevenToTenArriveNum; + @ExcelProperty(value = "7天至10天到仓占比") + private String sevenToTenArriveRate; + + @ExcelProperty(value = "10天以上到仓数") + private Integer moreTenArriveNum; + @ExcelProperty(value = "10天以上到仓占比") + private String moreTenArriveRate; + + + + +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportPackgeStartTimeVO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportPackgeStartTimeVO.java new file mode 100644 index 000000000..c951df671 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportPackgeStartTimeVO.java @@ -0,0 +1,38 @@ +package com.logpm.report.vo; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class ReportPackgeStartTimeVO implements Serializable { + + @ExcelProperty(value = "事业线") + private String businessLine; + @ExcelProperty(value = "始发仓") + private String departureWarehouseName; + @ExcelProperty(value = "目的仓") + private String destinationWarehouseName; + @ExcelProperty(value = "品牌") + private String brand; + + @ExcelProperty(value = "总件数") + private Integer totalNum; + @ExcelProperty(value = "开单件数") + private Integer openNum; + @ExcelProperty(value = "开单数") + private Integer waybillNum; + @ExcelProperty(value = "发运件数") + private Integer startNum; + + @ExcelProperty(value = "准时发运件数") + private Integer onTimeNum; + @ExcelProperty(value = "准时发运率") + private String onTimeRate; + + @ExcelProperty(value = "平均发运时效") + private String avgTime; + + +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportPackgeTransferTimeVO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportPackgeTransferTimeVO.java new file mode 100644 index 000000000..57fe77e91 --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportPackgeTransferTimeVO.java @@ -0,0 +1,37 @@ +package com.logpm.report.vo; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class ReportPackgeTransferTimeVO implements Serializable { + + @ExcelProperty(value = "事业线") + private String businessLine; + @ExcelProperty(value = "始发仓") + private String departureWarehouseName; + @ExcelProperty(value = "目的仓") + private String destinationWarehouseName; + @ExcelProperty(value = "中转仓") + private String warehouseName; + @ExcelProperty(value = "品牌") + private String brand; + + @ExcelProperty(value = "中转入库件数") + private Integer incomingNum; + + @ExcelProperty(value = "中转出库件数") + private Integer outNum; + + @ExcelProperty(value = "中转准时出库件数") + private Integer outOnTimeNum; + + @ExcelProperty(value = "中转准时出库率") + private String outOnTimeRate; + + @ExcelProperty(value = "平均中转时效") + private String avgTime; + +} diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportUpdateWaybillVO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportUpdateWaybillVO.java new file mode 100644 index 000000000..3f383493f --- /dev/null +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/vo/ReportUpdateWaybillVO.java @@ -0,0 +1,56 @@ +package com.logpm.report.vo; + +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class ReportUpdateWaybillVO implements Serializable { + + @ExcelProperty(value = "事业线") + private String businessLine; + @ExcelProperty(value = "始发仓") + private String departureWarehouseName; + @ExcelProperty(value = "目的仓") + private String destinationWarehouseName; + @ExcelProperty(value = "品牌") + private String brand; + @ExcelProperty(value = "总运单数") + private Integer totalNum;//总运单数 + @ExcelProperty(value = "改单单数") + private Integer editNum;//改单单数 + @ExcelProperty(value = "改单次数") + private Integer updateNum;//改单次数 + @ExcelProperty(value = "发车前修改数") + private Integer startBeforeNum; + @ExcelProperty(value = "发车前修改率") + private String startBeforeRate; + + @ExcelProperty(value = "人为操作错误数") + private Integer personProbleNum; + @ExcelProperty(value = "人为操作错误率") + private String personProbleRate; + + @ExcelProperty(value = "财务修改数") + private Integer financeUpdateNum; + @ExcelProperty(value = "财务修改率") + private String financeUpdateRate; + + @ExcelProperty(value = "商家要求数") + private Integer merchantUpdateNum; + @ExcelProperty(value = "商家要求率") + private String merchantUpdateRate; + + @ExcelProperty(value = "业务调整数") + private Integer businessUpdateNum; + @ExcelProperty(value = "业务调整率") + private String businessUpdateRate; + + @ExcelProperty(value = "改单率") + private String updateRate; + + + + +} diff --git a/blade-service/logpm-report/src/main/resources/application-dev.yml b/blade-service/logpm-report/src/main/resources/application-dev.yml index a03d28249..e75326109 100644 --- a/blade-service/logpm-report/src/main/resources/application-dev.yml +++ b/blade-service/logpm-report/src/main/resources/application-dev.yml @@ -21,6 +21,7 @@ spring: #启用sql日志拦截器 proxy-filters: - sqlLogInterceptor + query-timeout: 60000 #设置默认的数据源或者数据源组,默认值即为master primary: master datasource: diff --git a/blade-service/logpm-report/src/main/resources/application-prod.yml b/blade-service/logpm-report/src/main/resources/application-prod.yml index a03d28249..e75326109 100644 --- a/blade-service/logpm-report/src/main/resources/application-prod.yml +++ b/blade-service/logpm-report/src/main/resources/application-prod.yml @@ -21,6 +21,7 @@ spring: #启用sql日志拦截器 proxy-filters: - sqlLogInterceptor + query-timeout: 60000 #设置默认的数据源或者数据源组,默认值即为master primary: master datasource: diff --git a/blade-service/logpm-report/src/main/resources/application-test.yml b/blade-service/logpm-report/src/main/resources/application-test.yml index a03d28249..e75326109 100644 --- a/blade-service/logpm-report/src/main/resources/application-test.yml +++ b/blade-service/logpm-report/src/main/resources/application-test.yml @@ -21,6 +21,7 @@ spring: #启用sql日志拦截器 proxy-filters: - sqlLogInterceptor + query-timeout: 60000 #设置默认的数据源或者数据源组,默认值即为master primary: master datasource: diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/MerchantBalanceController.java b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/MerchantBalanceController.java index afed76cc7..4346b0566 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/MerchantBalanceController.java +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/MerchantBalanceController.java @@ -1,21 +1,28 @@ package com.logpm.statistics.controller; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.logpm.statistics.dto.MerchantStatisticsDTO; import com.logpm.statistics.dto.StatisticsBalanceAbnormalDTO; import com.logpm.statistics.dto.StatisticsBalanceRecordDTO; +import com.logpm.statistics.entity.TrunklineCarCostEntity; import com.logpm.statistics.service.IStatisticsBalanceOrderInfoService; +import com.logpm.statistics.vo.StatisticsBalanceOrderExcel; import com.logpm.statistics.vo.StatisticsBalanceOrderInfoVO; +import com.logpm.statistics.vo.TrunklineCarCostExcel; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.common.exception.CustomerException; +import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.tool.api.R; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletResponse; import java.util.List; +import java.util.Map; import java.util.Objects; @Slf4j @@ -207,5 +214,17 @@ public class MerchantBalanceController { } } + @PostMapping("/export") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "商家结算成本导出", notes = "传入merchantStatisticsDTO") + public void export(@RequestBody MerchantStatisticsDTO merchantStatisticsDTO, HttpServletResponse response) { + + + List statisticsBalanceOrderExcels = balanceOrderInfoService.pageListExport(merchantStatisticsDTO); + //导出ls + ExcelUtil.export(response, "商家结算成本", "商家结算成本", statisticsBalanceOrderExcels, StatisticsBalanceOrderExcel.class); + } + + } diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/TrunklineCarCostController.java b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/TrunklineCarCostController.java index 7f0585ac1..f581348c9 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/TrunklineCarCostController.java +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/controller/TrunklineCarCostController.java @@ -1,6 +1,7 @@ package com.logpm.statistics.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.logpm.statistics.dto.MerchantStatisticsDTO; @@ -46,7 +47,7 @@ public class TrunklineCarCostController extends BladeController { /** * 分页列表 */ - @PostMapping("/page") + @GetMapping("/page") @ApiOperationSupport(order = 1) @ApiOperation(value = "分页", notes = "传入expenseDispatchWarehouseMonth") public R> page(@ApiIgnore @RequestParam Map expenseDispatchPriceOverZone, Query query) { @@ -68,10 +69,7 @@ public class TrunklineCarCostController extends BladeController { public void export(@RequestBody Map args, HttpServletResponse response) { - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - if(args.get("carsNoType") != null){ - lambdaQueryWrapper.eq(TrunklineCarCostEntity::getCarsNoType, args.get("carsNoType")); - } + QueryWrapper lambdaQueryWrapper = Condition.getQueryWrapper(args, TrunklineCarCostEntity.class); List ls = trunklineCarCostService.list(lambdaQueryWrapper); List data = getTrunklineCarCostExcels(ls); @@ -79,6 +77,7 @@ public class TrunklineCarCostController extends BladeController { ExcelUtil.export(response, "干线车次费用", "干线车次费用", data, TrunklineCarCostExcel.class); } + @NotNull private static List getTrunklineCarCostExcels(List ls) { List data = new ArrayList<>(); diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsBalanceOrderInfoMapper.java b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsBalanceOrderInfoMapper.java index d2f2fcb86..7ac98a22f 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsBalanceOrderInfoMapper.java +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsBalanceOrderInfoMapper.java @@ -18,4 +18,6 @@ public interface StatisticsBalanceOrderInfoMapper extends BaseMapper balanceOrderIds); void deleteBanlanceOrderByIds(@Param("balanceOrderIds") List balanceOrderIds); + + List pageListExport(@Param("param") MerchantStatisticsDTO merchantStatisticsDTO); } diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsBalanceOrderInfoMapper.xml b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsBalanceOrderInfoMapper.xml index 8c4f227f8..4fd8739d8 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsBalanceOrderInfoMapper.xml +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsBalanceOrderInfoMapper.xml @@ -65,6 +65,58 @@ #{item} + delete from logpm_statistics_balance_order_info diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsOrderInfoMapper.java b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsOrderInfoMapper.java index a0ef71907..6a4a88978 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsOrderInfoMapper.java +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsOrderInfoMapper.java @@ -51,4 +51,5 @@ public interface StatisticsOrderInfoMapper extends BaseMapper selectAdvinceDetail(@Param("waybillIds") Set waybillIds, @Param("orderCodes") Set orderCodes); IPage pageList2B(IPage page, @Param("param") MerchantStatisticsDTO merchantStatisticsDTO); + List pageList2BNoPage( @Param("param") MerchantStatisticsDTO merchantStatisticsDTO); } diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsOrderInfoMapper.xml b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsOrderInfoMapper.xml index 974ad4aea..a98a45841 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsOrderInfoMapper.xml +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/mapper/StatisticsOrderInfoMapper.xml @@ -775,6 +775,156 @@ group by lsoi.waybill_id + + delete from logpm_statistics_order_info diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/IStatisticsBalanceOrderInfoService.java b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/IStatisticsBalanceOrderInfoService.java index 69c074eae..e680ae9be 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/IStatisticsBalanceOrderInfoService.java +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/IStatisticsBalanceOrderInfoService.java @@ -5,6 +5,7 @@ import com.logpm.statistics.dto.MerchantStatisticsDTO; import com.logpm.statistics.dto.StatisticsBalanceAbnormalDTO; import com.logpm.statistics.dto.StatisticsBalanceRecordDTO; import com.logpm.statistics.entity.StatisticsBalanceOrderInfoEntity; +import com.logpm.statistics.vo.StatisticsBalanceOrderExcel; import com.logpm.statistics.vo.StatisticsBalanceOrderInfoVO; import org.springblade.core.mp.base.BaseService; import org.springblade.core.tool.api.R; @@ -30,4 +31,7 @@ public interface IStatisticsBalanceOrderInfoService extends BaseService balanceOrderIds); R enterBalance(StatisticsBalanceRecordDTO balanceRecordDTO); + + List pageListExport(MerchantStatisticsDTO merchantStatisticsDTO); + } diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/impl/StatisticsBalanceOrderInfoServiceImpl.java b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/impl/StatisticsBalanceOrderInfoServiceImpl.java index ab50870b1..f3ab3b12f 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/impl/StatisticsBalanceOrderInfoServiceImpl.java +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/impl/StatisticsBalanceOrderInfoServiceImpl.java @@ -13,11 +13,13 @@ import com.logpm.statistics.entity.*; import com.logpm.statistics.mapper.StatisticsBalanceOrderInfoMapper; import com.logpm.statistics.service.*; import com.logpm.statistics.vo.StatisticsBalanceAbnormalVO; +import com.logpm.statistics.vo.StatisticsBalanceOrderExcel; import com.logpm.statistics.vo.StatisticsBalanceOrderInfoVO; import com.logpm.statistics.vo.StatisticsBalanceRecordVO; import com.logpm.warehouse.entity.WarehouseWaybillEntity; import com.logpm.warehouse.feign.IWarehouseWaybillClient; import lombok.extern.slf4j.Slf4j; +import org.springblade.common.constant.DistributionTypeConstant; import org.springblade.common.exception.CustomerException; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.secure.utils.AuthUtil; @@ -329,4 +331,37 @@ public R findBalanceDetail(Long balanceOrderId) { } + @Override + public List pageListExport(MerchantStatisticsDTO merchantStatisticsDTO) { + + + List result = new ArrayList<>(); + + List warehouseIds = warehouseClient.getWarehouseIds(); + if(!warehouseIds.isEmpty()){ + merchantStatisticsDTO.setWarehouseIds(warehouseIds); + } + + List dataList = baseMapper.pageListExport(merchantStatisticsDTO); + dataList.forEach(data ->{ + StatisticsBalanceOrderExcel statisticsBalanceOrderExcel = BeanUtil.copy(data, StatisticsBalanceOrderExcel.class); + assert statisticsBalanceOrderExcel != null; + statisticsBalanceOrderExcel.setTypeServiceName(DistributionTypeConstant.getName(String.valueOf(data.getTypeService()))); + + statisticsBalanceOrderExcel.setAbnormalBalanceStatusName(1==data.getAbnormalBalanceStatus()?"是":"否"); + statisticsBalanceOrderExcel.setAftersaleName(1==data.getIsAftersale()?"是":"否"); + + String balancesBalanceOName = "未结算"; + if(data.getBalanceStatus()==2){ + balancesBalanceOName = "已结算"; + }else if(data.getBalanceStatus()==1){ + balancesBalanceOName = "部分结算"; + } + statisticsBalanceOrderExcel.setBalanceStatusName(balancesBalanceOName); + result.add(statisticsBalanceOrderExcel); + + }); + + return result; + } } diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/impl/StatisticsOrderInfoServiceImpl.java b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/impl/StatisticsOrderInfoServiceImpl.java index 8663d088b..42d023405 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/impl/StatisticsOrderInfoServiceImpl.java +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/service/impl/StatisticsOrderInfoServiceImpl.java @@ -36,6 +36,8 @@ import com.logpm.warehouse.feign.IWarehouseWaybillClient; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.jetbrains.annotations.NotNull; +import org.springblade.common.constant.DictBizConstant; +import org.springblade.common.constant.DistributionTypeConstant; import org.springblade.common.enums.BooleanZeroOneEnums; import org.springblade.common.exception.CustomerException; import org.springblade.common.utils.CommonUtil; @@ -45,6 +47,7 @@ import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.BeanUtil; import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.tool.utils.StringUtil; +import org.springblade.system.cache.DictBizCache; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; @@ -1289,23 +1292,157 @@ public class StatisticsOrderInfoServiceImpl extends BaseServiceImpl orderInfoListExport(MerchantStatisticsDTO merchantStatisticsDTO) { - List records = baseMapper.orderInfoListExport(merchantStatisticsDTO); - //把records中所有的orderInfoId放入一个集合 - List orderInfoIdList = records.stream().map(StatisticsOrderInfoExportVO::getOrderInfoId).collect(Collectors.toList()); - List orderPackageInfoList = baseMapper.findPackageListByOrderIdsGroupById(orderInfoIdList); - //把orderPackageInfoList转化成以orderInfoId为key的Map - Map orderPackageInfoMap = orderPackageInfoList.stream() - .collect(Collectors.toMap(StatisticsPackageFeeInfoVO::getOrderInfoId, statisticsPackageFeeInfoVO -> statisticsPackageFeeInfoVO)); + List result = new ArrayList<>(); + List warehouseIds = warehouseClient.getWarehouseIds(); + if (!warehouseIds.isEmpty()) { + merchantStatisticsDTO.setWarehouseIds(warehouseIds); + } + List statisticsOrderInfoVOIPage = baseMapper.pageList2BNoPage(merchantStatisticsDTO); - records.forEach(statisticsOrderInfoVO -> { - Long orderInfoId = statisticsOrderInfoVO.getOrderInfoId(); - StatisticsPackageFeeInfoVO statisticsPackageFeeInfoVO = orderPackageInfoMap.get(orderInfoId); - BeanUtil.copy(statisticsPackageFeeInfoVO, statisticsOrderInfoVO); + + Set waybillIds = statisticsOrderInfoVOIPage.stream().map(StatisticsOrderInfoVO::getWaybillId).collect(Collectors.toSet()); + + // 查询运单明细集合 + List waybillDetailByWaybillId = baseMapper.findWaybillDetailByWaybillId(waybillIds); + + //得到运单号 + Set orderCodeSet = statisticsOrderInfoVOIPage.stream().map(StatisticsOrderInfoVO::getOrderCode).collect(Collectors.toSet()); + + + // 通过运单号进行分组 + Map> waybillDetailByWaybillIdMap = waybillDetailByWaybillId.stream().collect(Collectors.groupingBy(WaybillDetailByWaybillNoVo::getWaybillId)); + + Map orderPackageInfoMap; + if (CollUtil.isNotEmpty(waybillIds)) { + List orderPackageInfoList = baseMapper.findPackageListByOrderIdsGroupByWaybillId(waybillIds); + //把orderPackageInfoList转化成以orderInfoId为key的Map + if (CollUtil.isNotEmpty(orderPackageInfoList)) { + orderPackageInfoMap = orderPackageInfoList.stream() + .collect(Collectors.toMap(StatisticsPackageFeeInfoVO::getWaybillId, statisticsPackageFeeInfoVO -> statisticsPackageFeeInfoVO)); + } else { + orderPackageInfoMap = null; + } + } else { + orderPackageInfoMap = null; + } + + List advanceDetailDTOS = baseMapper.selectAdvinceDetail(waybillIds, orderCodeSet); + + statisticsOrderInfoVOIPage.forEach(statisticsOrderInfoVO -> { +// Long waybillId = statisticsOrderInfoVO.getWaybillId(); + + + Long waybillId = statisticsOrderInfoVO.getWaybillId(); + String orderCode = statisticsOrderInfoVO.getOrderCode(); + // 查询站存单上的 + + List advanceDetailDTOList = advanceDetailDTOS.stream(). + filter(advanceDetailDTO -> advanceDetailDTO.getWaybillId().equals(waybillId) && advanceDetailDTO.getOrderCode().equals(orderCode)).collect(Collectors.toList()); + + // 对advanceDetailDTOList 按照 incomeCategoryName 进分组 并统计数量 + Map> collect = advanceDetailDTOList.stream().filter(advanceDetailDTO -> !Objects.isNull(advanceDetailDTO.getIncomeCategoryName())).collect(Collectors.groupingBy(AdvanceDetailDTO::getIncomeCategoryName)); + + Long waybillId1 = statisticsOrderInfoVO.getWaybillId(); + if (orderPackageInfoMap != null) { + StatisticsPackageFeeInfoVO statisticsPackageFeeInfoVO = orderPackageInfoMap.get(waybillId1); + + if (statisticsPackageFeeInfoVO != null) { +// statisticsPackageFeeInfoVO.setGoodsName(statisticsOrderInfoVO.getGoodsName()); + BeanUtil.copy(statisticsPackageFeeInfoVO, statisticsOrderInfoVO); + + if (StringUtil.isNotBlank(statisticsOrderInfoVO.getGoodsName())) { +// String[] split = statisticsOrderInfoVO.getGoodsName().split(","); + List waybillDetailByWaybillNoVos = waybillDetailByWaybillIdMap.get(statisticsOrderInfoVO.getWaybillId()); + + StringBuffer sb = new StringBuffer(); + StringBuffer sb1 = new StringBuffer(); + StringBuffer sb3 = new StringBuffer(); + + if (collect.isEmpty()) { + + if (!waybillDetailByWaybillNoVos.isEmpty()) { + + for (WaybillDetailByWaybillNoVo waybillDetailByWaybillNoVo : waybillDetailByWaybillNoVos) { + + if (!sb3.toString().isEmpty()) { + sb3.append(","); + } + sb3.append(waybillDetailByWaybillNoVo.getProductName()); + + if (!sb.toString().isEmpty()) { + sb.append(","); + } + sb.append(waybillDetailByWaybillNoVo.getNum()); + + if (!sb1.toString().isEmpty()) { + sb1.append(","); + } + sb1.append(waybillDetailByWaybillNoVo.getPrice()); + + } + + } + + } else { + collect.keySet().forEach(s -> { + if (!sb3.toString().isEmpty()) { + sb3.append(","); + } + sb3.append(s); + List advanceDetailDTOS1 = collect.get(s); + Optional first = waybillDetailByWaybillNoVos.stream().filter(waybillDetailByWaybillNoVo -> waybillDetailByWaybillNoVo.getProductName().equals(s)).findFirst(); + + if (first.isPresent()) { + WaybillDetailByWaybillNoVo waybillDetailByWaybillNoVo = first.get(); + + if (!sb.toString().isEmpty()) { + sb.append(","); + } + + //统计 advanceDetailDTOS1 这个集合种 quantity 的和值 + int sum = advanceDetailDTOS1.stream().mapToInt(AdvanceDetailDTO::getQuantity).sum(); + sb.append(sum); + + if (!sb1.toString().isEmpty()) { + sb1.append(","); + } + sb1.append(waybillDetailByWaybillNoVo.getPrice()); + } + + }); + + } + + statisticsOrderInfoVO.setGoodsName(sb3.toString()); + statisticsOrderInfoVO.setGoodsNum(sb.toString()); + statisticsOrderInfoVO.setGoodsPrice(sb1.toString()); + } + + } + } + + StatisticsOrderInfoExportVO statisticsOrderInfoExportVO = new StatisticsOrderInfoExportVO(); + BeanUtil.copy(statisticsOrderInfoVO, statisticsOrderInfoExportVO); + statisticsOrderInfoExportVO.setTypeServiceName(DistributionTypeConstant.getName(statisticsOrderInfoVO.getTypeService())); + statisticsOrderInfoExportVO.setPayType(DictBizCache.getValue(DictBizConstant.OPEN_ORDER_PAY_TYPE, statisticsOrderInfoVO.getPayType())); + statisticsOrderInfoExportVO.setPayWay(DictBizCache.getValue(DictBizConstant.OPEN_ORDER_PAY_WAY, statisticsOrderInfoVO.getPayWay())); + + String signName = "未签收"; + if (90 == statisticsOrderInfoVO.getSignStatus()) { + signName = "部分签收"; + } else if (100 == statisticsOrderInfoVO.getSignStatus()) { + signName = "已签收"; + } +// statisticsOrderInfoExportVO.setSignStatus(); + statisticsOrderInfoExportVO.setSignStatusName(signName); + + result.add(statisticsOrderInfoExportVO); }); + return result; - return records; +// return records; } @Override diff --git a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/vo/StatisticsOrderInfoExportVO.java b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/vo/StatisticsOrderInfoExportVO.java index 168018aec..9a62e9111 100644 --- a/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/vo/StatisticsOrderInfoExportVO.java +++ b/blade-service/logpm-statisticsdata/src/main/java/com/logpm/statistics/vo/StatisticsOrderInfoExportVO.java @@ -2,6 +2,7 @@ package com.logpm.statistics.vo; import com.alibaba.excel.annotation.ExcelIgnore; import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.format.DateTimeFormat; import lombok.Data; import java.io.Serializable; @@ -23,7 +24,7 @@ public class StatisticsOrderInfoExportVO implements Serializable { private String orderCode;//订单号 @ExcelProperty(value = "商家服务类型") - private String typeService; // 商家服务类型 + private String typeServiceName; // 商家服务类型 @ExcelProperty(value = "发货单位") private String shipper; // 发货单位 @@ -49,13 +50,15 @@ public class StatisticsOrderInfoExportVO implements Serializable { @ExcelProperty(value = "收货地址") private String consigneeAddress; // 收货地址 - @ExcelProperty(value = "订单签收状态") - private String signStatus; // 订单签收状态 + @ExcelProperty(value = "签收状态") + private String signStatusName; // 订单签收状态 @ExcelProperty(value = "签收时间") - private Date signDate; // 签收时间 + @DateTimeFormat("yyyy-MM-dd HH:mm:ss") + private Date signTime; // 签收时间 @ExcelProperty(value = "开单时间") + @DateTimeFormat("yyyy-MM-dd HH:mm:ss") private Date openTime; // 开单时间 @ExcelProperty(value = "发站仓") @@ -73,11 +76,11 @@ public class StatisticsOrderInfoExportVO implements Serializable { @ExcelProperty(value = "客户车次号") private String customerTrain; // 客户车次号 - @ExcelProperty(value = "支付类型") - private String payType; // 支付类型 - @ExcelProperty(value = "支付方式") - private String payWay; // 支付方式 + private String payType; + + @ExcelProperty(value = "付款方式") + private String payWay; // @ExcelProperty(value = "品类名称") private String goodsName; // 物料品类 @@ -148,14 +151,14 @@ public class StatisticsOrderInfoExportVO implements Serializable { @ExcelProperty(value = "配送过路费") private BigDecimal deliveryCrossingFee; - @ExcelProperty(value = "在库周期") - private Integer cycle; // 在库周期 - - @ExcelProperty(value = "结算方类型") - private String cleanObjType; // 结算方 - - @ExcelProperty(value = "费用区间") - private String warehouseFeeInterval; // 费用区间 +// @ExcelProperty(value = "在库周期") +// private Integer cycle; // 在库周期 +// +// @ExcelProperty(value = "结算方类型") +// private String cleanObjType; // 结算方 +// +// @ExcelProperty(value = "费用区间") +// private String warehouseFeeInterval; // 费用区间 @ExcelProperty(value = "安装费") private BigDecimal installFee = BigDecimal.ZERO; // 安装费 @@ -163,24 +166,24 @@ public class StatisticsOrderInfoExportVO implements Serializable { @ExcelProperty(value = "其他费") private BigDecimal otherFee = BigDecimal.ZERO; // 其他费 - @ExcelProperty(value = "签收次数") + @ExcelProperty(value = "签收件数") private Integer signNum; - @ExcelProperty(value = "最后签收时间") - private Date signTime; // 最晚一条 - - @ExcelProperty(value = "同步费用状态") - private Integer syncFeeStatus; - - @ExcelProperty(value = "同步费用时间") - private Date syncFeeDate; - - @ExcelProperty(value = "生成对账单状态") - private Integer createReconciliationOrderStatus; // 0未生成 1已生成 - - @ExcelProperty(value = "生成对账单确认人") - private String createReconciliationUserName; // 生成对账单确认人 - - @ExcelProperty(value = "生成对账单时间") - private Date createReconciliationDate; // 生成对账单时间 +// @ExcelProperty(value = "最后签收时间") +// private Date signTime; // 最晚一条 + +// @ExcelProperty(value = "同步费用状态") +// private Integer syncFeeStatus; +// +// @ExcelProperty(value = "同步费用时间") +// private Date syncFeeDate; + +// @ExcelProperty(value = "生成对账单状态") +// private Integer createReconciliationOrderStatus; // 0未生成 1已生成 +// +// @ExcelProperty(value = "生成对账单确认人") +// private String createReconciliationUserName; // 生成对账单确认人 +// +// @ExcelProperty(value = "生成对账单时间") +// private Date createReconciliationDate; // 生成对账单时间 } diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java index 6e0cdd48b..805a58906 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java @@ -740,6 +740,8 @@ public class OpenOrderServiceImpl implements IOpenOrderService { waybillEntity.setReturnStatus(0); waybillEntity.setCheckStatus(0); waybillEntity.setUpdateStatus(0); + waybillEntity.setSettlementStatus("10"); + waybillEntity.setPayStatus("10"); Long waybillId = warehouseWaybillClient.addEnntity(waybillEntity); waybillEntity.setId(waybillId); @@ -1095,6 +1097,10 @@ public class OpenOrderServiceImpl implements IOpenOrderService { waybillEntity.setReturnStatus(0); waybillEntity.setCheckStatus(0); waybillEntity.setUpdateStatus(0); + waybillEntity.setPayStatus("10"); + waybillEntity.setSettlementStatus("10"); + + Long waybillId = warehouseWaybillClient.addEnntity(waybillEntity); waybillEntity.setId(waybillId); List details = new ArrayList<>();