Browse Source

1.工单超时数据导出

2.自提页面的三个明细导出
3.售后的bug修复和优化
chenglong
Diss 1 year ago
parent
commit
44baf9a51e
  1. 16
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionParcelListVO.java
  2. 9
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesOvertimeFineController.java
  3. 12
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesWorkOrderController.java
  4. 1
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/dto/AftersalesWorkOrderDTO.java
  5. 53
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/excel/AftersalesOvertimeFineExcel.java
  6. 3
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesOvertimeFineMapper.java
  7. 25
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesOvertimeFineMapper.xml
  8. 4
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesWorkOrderMapper.java
  9. 34
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesWorkOrderMapper.xml
  10. 2
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesOvertimeFineService.java
  11. 4
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesWorkOrderService.java
  12. 15
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesOvertimeFineServiceImpl.java
  13. 12
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesWorkOrderServiceImpl.java
  14. 14
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryDetailsController.java
  15. 7
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionParcelListController.java
  16. 29
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistrilbutionBillStockController.java
  17. 60
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionBillInventoryExcel.java
  18. 72
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionBillOrderExcel.java
  19. 89
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionBillOrderPackExcel.java
  20. 3
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.java
  21. 18
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.xml
  22. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java
  23. 9
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml
  24. 7
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.java
  25. 84
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml
  26. 3
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryDetailsService.java
  27. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java
  28. 11
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistrilbutionBillStockService.java
  29. 11
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryDetailsServiceImpl.java
  30. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java
  31. 38
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillStockServiceImpl.java
  32. 73
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/wrapper/DistributionParcelListVOWrapper.java

16
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionParcelListVO.java

@ -166,6 +166,22 @@ public class DistributionParcelListVO extends DistributionParcelListEntity {
@ApiModelProperty(value = "配送单号")
@TableField(exist = false)
private String noteNumber;
/**
* 服务类型
*/
private String typeService;
/**
* 服务类型 名字
*/
private String typeServiceName;
/**
* 提货批次
*/
private String pickupBatch;
/**

9
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesOvertimeFineController.java

@ -161,17 +161,14 @@ public class AftersalesOvertimeFineController extends BladeController {
/**
* 导出数据
* http://localhost:8798/aftersalesOvertimeFine/export-aftersalesOvertimeFine
*/
@GetMapping("/export-aftersalesOvertimeFine")
@ApiOperationSupport(order = 9)
@ApiOperation(value = "导出数据", notes = "传入aftersalesOvertimeFine")
public void exportAftersalesOvertimeFine(@ApiIgnore @RequestParam Map<String, Object> aftersalesOvertimeFine, BladeUser bladeUser, HttpServletResponse response) {
QueryWrapper<AftersalesOvertimeFineEntity> queryWrapper = Condition.getQueryWrapper(aftersalesOvertimeFine, AftersalesOvertimeFineEntity.class);
//if (!AuthUtil.isAdministrator()) {
// queryWrapper.lambda().eq(AftersalesOvertimeFine::getTenantId, bladeUser.getTenantId());
//}
queryWrapper.lambda().eq(AftersalesOvertimeFineEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
List<AftersalesOvertimeFineExcel> list = aftersalesOvertimeFineService.exportAftersalesOvertimeFine(queryWrapper);
List<AftersalesOvertimeFineExcel> list = aftersalesOvertimeFineService.exportAftersalesOvertimeFine(aftersalesOvertimeFine);
ExcelUtil.export(response, "异常工单超时记录表数据" + DateUtil.time(), "异常工单超时记录表数据表", list, AftersalesOvertimeFineExcel.class);
}

12
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/controller/AftersalesWorkOrderController.java

@ -736,6 +736,14 @@ public class AftersalesWorkOrderController extends BladeController {
return R.success("操作成功");
}
/**
* 写入财务入账时间
*/
@PostMapping("/updateFinanceTime")
@ApiOperationSupport(order = 13)
@ApiOperation(value = "写入财务入账时间", notes = "传入aftersalesWorkOrder")
public R updateFinanceTime(@Valid @RequestBody String ids ,Date entryTime ) {
log.info("写入财务入账时间{}",entryTime);
return R.data(aftersalesWorkOrderService.updateFinanceTime(ids,entryTime));
}
}

1
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/dto/AftersalesWorkOrderDTO.java

@ -144,4 +144,5 @@ public class AftersalesWorkOrderDTO extends AftersalesWorkOrderEntity {
private String claimIdentification;
}

53
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/excel/AftersalesOvertimeFineExcel.java

@ -17,15 +17,16 @@
package com.logpm.aftersales.excel;
import lombok.Data;
import java.util.Date;
import java.math.BigDecimal;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
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 lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
@ -42,35 +43,41 @@ public class AftersalesOvertimeFineExcel implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 异常工单ID
*/
@ColumnWidth(20)
@ExcelProperty("异常工单ID")
private String workOrderId;
/**
* 金额
*/
@ColumnWidth(20)
@ExcelProperty("金额")
private BigDecimal money;
/**
* 超时时间
*/
@ColumnWidth(20)
@ExcelProperty("超时时间")
private String timeout;
/**
* 仓库ID
*/
@ExcelIgnore
private String workOrderNumber;
@ColumnWidth(20)
@ExcelProperty("仓库ID")
private String warehouseId;
/**
* 备注
*/
@ExcelProperty("工单异常类型")
private String workOrderType;
@ColumnWidth(20)
@ExcelProperty("处理方名称")
private String businessName;
//发现节点
@ExcelIgnore
private String discoveryNode;
@ColumnWidth(20)
@ExcelProperty("备注")
private String remarks;
@ExcelProperty("发现节点")
private String discoveryNodeName;
@ColumnWidth(20)
@ExcelProperty("超时次数")
private String timeoutRecordNumber;
@ColumnWidth(20)
@ExcelProperty("超时时间")
private Date createTime;
}

3
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesOvertimeFineMapper.java

@ -25,6 +25,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* 异常工单超时记录表 Mapper 接口
@ -50,7 +51,7 @@ public interface AftersalesOvertimeFineMapper extends BaseMapper<AftersalesOvert
* @param queryWrapper
* @return
*/
List<AftersalesOvertimeFineExcel> exportAftersalesOvertimeFine(@Param("ew") Wrapper<AftersalesOvertimeFineEntity> queryWrapper);
List<AftersalesOvertimeFineExcel> exportAftersalesOvertimeFine(@Param("param")AftersalesOvertimeFineDTO queryWrapper);
/**
* 查询

25
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesOvertimeFineMapper.xml

@ -47,7 +47,30 @@
<select id="exportAftersalesOvertimeFine" resultType="com.logpm.aftersales.excel.AftersalesOvertimeFineExcel">
SELECT * FROM logpm_aftersales_overtime_fine ${ew.customSqlSegment}
SELECT
laof.id,
lawo.work_order_number workOrderNumber,
lawo.work_order_type workOrderType,
lawo.discovery_node discoveryNode,
COUNT( laof.id ) AS timeoutRecordNumber,
laof.create_time createTime,
laof.timeout,
laof.money,
laof.business_name businessName,
lawo.id workOrderId
FROM
logpm_aftersales_overtime_fine laof
LEFT JOIN logpm_aftersales_work_order lawo ON lawo.id = laof.work_order_id
<where>
<if test=" param.id != null and param.id != ''">and laof.id = #{param.id }</if>
<if test="param.workOrderNumber != null and param.workOrderNumber != ''">and lawo.work_order_number LIKE '%${param.workOrderNumber}%'</if>
<if test="param.workOrderType != null and param.workOrderType != ''">and lawo.work_order_type LIKE '%${param.workOrderType}%'</if>
<if test="param.discoveryNode != null and param.discoveryNode != ''">and lawo.discovery_node LIKE '%${param.discoveryNode}%'</if>
<if test="param.timeout != null and param.timeout != ''">and laof.timeout LIKE '%${param.timeout}%'</if>
<if test="param.businessId != null and param.businessId != ''">and laof.business_id LIKE '%${param.businessId}%'</if>
<if test="param.businessName != null and param.businessName != ''">and laof.business_name LIKE '%${param.businessName}%'</if>
<if test=" param.createTime != null "> and date_format(from_unixtime(laof.create_time),'%Y-%m-%d') = date_format(#{param.createTime}),'%Y-%m-%d')</if>
</where>
</select>
</mapper>

4
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesWorkOrderMapper.java

@ -25,6 +25,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
/**
@ -84,4 +86,6 @@ public interface AftersalesWorkOrderMapper extends BaseMapper<AftersalesWorkOrde
* @return
*/
List<AftersalesSettlementEntity> getWholeListSettlement(@Param("param") AftersalesSettlementEntity aftersalesSettlementEntity);
void updateFinanceTime(@Param("id") String id, @Param("entryTime") Date entryTime);
}

34
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/mapper/AftersalesWorkOrderMapper.xml

@ -176,10 +176,10 @@ date_format(from_unixtime(create_time),'%Y-%m-%d') = date_format(now(),'%Y-%m-%d
WHERE `id` = #{ item.id }
</foreach>
</update>
<select id="selectAftersalesWorkOrderPage" resultMap="aftersalesWorkOrderResultMap">
select * from logpm_aftersales_work_order where is_deleted = 0
</select>
@ -337,9 +337,29 @@ date_format(from_unixtime(create_time),'%Y-%m-%d') = date_format(now(),'%Y-%m-%d
lap.conditions != '3' and lap.is_deleted = 0 and law.id is not null and lap.processing_status in ('1','3') and lap.types_of = '2' and law.work_order_status in ('10','20','30')
<if test="param.workOrderStatus != null and param.workOrderStatus != ''">and law.work_order_status = #{param.workOrderStatus}</if>
<if test="param.warehouseId != null and param.warehouseId != ''">and lap.business_id = #{param.warehouseId}</if>
<if test="param.workOrderTypeNameS != null and param.workOrderTypeNameS != ''">and law.work_order_type = #{param.workOrderTypeNameS}</if>
<if test="param.workOrderType != null and param.workOrderType != ''">and law.work_order_type = #{param.workOrderType}</if>
<if test="param.discoveryNode != null and param.discoveryNode != ''">and law.discovery_node = #{param.discoveryNode}</if>
<if test="param.workOrderNumber != null and param.workOrderNumber != ''">and law.work_order_number like concat('%',#{param.workOrderNumber},'%')</if>
<if test="param.waybillNumber != null and param.waybillNumber != ''">and law.waybill_number like concat('%',#{param.waybillNumber},'%')</if>
<if test="param.orderCode != null and param.orderCode != ''">and law.order_code like concat('%',#{param.orderCode},'%')</if>
<if test="param.first != null and param.first != ''">and law.first like concat('%',#{param.first},'%')</if>
<if test="param.secondary != null and param.secondary != ''">and law.secondary like concat('%',#{param.secondary},'%')</if>
<if test="param.waybillMall != null and param.waybillMall != ''">and law.waybill_mall like concat('%',#{param.waybillMall},'%')</if>
<if test="param.brandName != null and param.brandName != ''">and law.brand_name like concat('%',#{param.brandName},'%')</if>
<if test="param.customerServiceName != null and param.customerServiceName != ''">and law.customer_service_name like concat('%',#{param.customerServiceName},'%')</if>
<if test="param.deliveryDriver != null and param.deliveryDriver != '' ">and law.delivery_driver like concat('%',#{param.deliveryDriver},'%') </if>
<if test="param.trainNumber != null and param.trainNumber != '' ">and law.train_number like concat('%', #{param.trainNumber },'%') </if>
<if test="param.vehicleRoute != null and param.vehicleRoute != '' ">and law.vehicle_route like concat('%', #{param.vehicleRoute },'%') </if>
<if test="param.problemDescription != null and param.problemDescription != '' ">and law.problem_description like concat('%',#{param.problemDescription},'%') </if>
<if test="param.reviewedBy != null and param.reviewedBy != '' ">and law.reviewed_by like concat('%',#{param.reviewedBy},'%') </if>
<if test="param.remarks != null and param.remarks != '' ">and law.remarks like concat('%',#{param.remarks},'%') </if>
<if test="param.deliverGoodsTime != null and param.deliverGoodsTime != '' ">and date_format(from_unixtime( lawo.deliver_goods_time),'%Y-%m-%d') = date_format(#{param.deliverGoodsTime },'%Y-%m-%d') </if>
<if test="param.discoveryTime != null and param.discoveryTime != '' ">and date_format(from_unixtime(lawo.discovery_time),'%Y-%m-%d') = date_format( #{param.discoveryTime},'%Y-%m-%d') </if>
<if test="param.warehousingTime != null and param.warehousingTime != '' "> and date_format(from_unixtime(lawo.warehousing_time),'%Y-%m-%d') = date_format( #{param.warehousingTime},'%Y-%m-%d') </if>
<if test="param.deliveryTime != null and param.deliveryTime != '' ">and date_format(from_unixtime( lawo.delivery_time),'%Y-%m-%d') = date_format(#{param.deliveryTime} param.deliveryTime,'%Y-%m-%d') </if>
<if test="param.auditTime != null and param.auditTime != '' ">and date_format(from_unixtime(lawo.audit_time),'%Y-%m-%d') = date_format(#{param.auditTime},'%Y-%m-%d') </if>
<if test="param.entryTime != null and param.entryTime != '' ">and date_format(from_unixtime(lawo.entry_time),'%Y-%m-%d') = date_format(#{param.entryTime},'%Y-%m-%d') </if>
<if test="param.overTime != null and param.overTime != '' ">and date_format(from_unixtime(lawo.over_time),'%Y-%m-%d') = date_format(#{param.overTime}),'%Y-%m-%d') </if>
</where>
</select>
@ -382,4 +402,10 @@ date_format(from_unixtime(create_time),'%Y-%m-%d') = date_format(now(),'%Y-%m-%d
</select>
<update id="updateFinanceTime">
update logpm_aftersales_work_order set entry_time = #{entryTime} where id = #{id}
</update>
</mapper>

2
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesOvertimeFineService.java

@ -48,7 +48,7 @@ public interface IAftersalesOvertimeFineService extends BaseService<AftersalesOv
* @param queryWrapper
* @return
*/
List<AftersalesOvertimeFineExcel> exportAftersalesOvertimeFine(Wrapper<AftersalesOvertimeFineEntity> queryWrapper);
List<AftersalesOvertimeFineExcel> exportAftersalesOvertimeFine(Map<String, Object> queryWrapper);
/**
* 查询超时记录数据

4
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/IAftersalesWorkOrderService.java

@ -30,6 +30,7 @@ import org.springblade.core.secure.BladeUser;
import org.springblade.core.tool.api.R;
import org.springblade.system.entity.User;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -280,4 +281,7 @@ public interface IAftersalesWorkOrderService extends BaseService<AftersalesWorkO
* @return
*/
boolean updateArbitrateStatus(AftersalesWorkOrderDTO aftersalesWorkOrder);
R updateFinanceTime(String ids, Date entryTime);
}

15
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesOvertimeFineServiceImpl.java

@ -27,7 +27,9 @@ import com.logpm.aftersales.service.IAftersalesOvertimeFineService;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.basicdata.feign.IBasicdataWarehouseClient;
import lombok.AllArgsConstructor;
import org.hibernate.validator.internal.util.logging.Log;
import org.springblade.common.constant.DictBizConstant;
import org.springblade.common.constant.aftersales.WorkOrderTypeConstant;
import org.springblade.system.cache.DictBizCache;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
@ -55,11 +57,14 @@ public class AftersalesOvertimeFineServiceImpl extends BaseServiceImpl<Aftersale
@Override
public List<AftersalesOvertimeFineExcel> exportAftersalesOvertimeFine(Wrapper<AftersalesOvertimeFineEntity> queryWrapper) {
List<AftersalesOvertimeFineExcel> aftersalesOvertimeFineList = baseMapper.exportAftersalesOvertimeFine(queryWrapper);
//aftersalesOvertimeFineList.forEach(aftersalesOvertimeFine -> {
// aftersalesOvertimeFine.setTypeName(DictCache.getValue(DictEnum.YES_NO, AftersalesOvertimeFine.getType()));
//});
public List<AftersalesOvertimeFineExcel> exportAftersalesOvertimeFine(Map<String, Object> queryWrapper) {
AftersalesOvertimeFineDTO aftersalesOvertimeFineDTO = JSONObject.parseObject(JSONObject.toJSONString(queryWrapper), AftersalesOvertimeFineDTO.class);
List<AftersalesOvertimeFineExcel> aftersalesOvertimeFineList = baseMapper.exportAftersalesOvertimeFine(aftersalesOvertimeFineDTO);
for (AftersalesOvertimeFineExcel aftersalesOvertimeFineExcel : aftersalesOvertimeFineList) {
aftersalesOvertimeFineExcel.setWorkOrderType(DictBizCache.getValue(DictBizConstant.PC_WORK_ORDER,aftersalesOvertimeFineExcel.getWorkOrderType()));
aftersalesOvertimeFineExcel.setDiscoveryNodeName(DictBizCache.getValue(DictBizConstant.PC_DISCOVERY_NODE,aftersalesOvertimeFineExcel.getDiscoveryNode()));
}
System.out.println(aftersalesOvertimeFineList);
return aftersalesOvertimeFineList;
}

12
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesWorkOrderServiceImpl.java

@ -1985,7 +1985,7 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
List<AftersalesCustomerMallEntity> aftersalesCustomerMallList = aftersalesCustomerMallMapper.getByWarehouseCode(myCurrentWarehouse.getId().toString());
if (aftersalesCustomerMallList.isEmpty()){
log.info("没有客服信息!!!");
return;
return ;
}
AftersalesCustomerMallEntity finalChoice = null; //最终 确定的AftersalesCustomerMallEntity
for (AftersalesCustomerMallEntity aftersalesCustomerMallEntity : aftersalesCustomerMallList) {
@ -1994,7 +1994,7 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
break;
}
}
// 如果存在条件为1的项,则使用创建时 间最早的作为选择
// 如果存在条件为1的项,则使用创建时间最早的作为选择
if (finalChoice == null) {
AftersalesCustomerMallEntity lastCustomerMall = aftersalesCustomerMallList.get(0);
@ -2175,4 +2175,12 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
return aftersalesProcessorService.updateById(processor);
}
@Override
public R updateFinanceTime(String ids, Date entryTime) {
String[] split = ids.split(",");
for (String id : split) {
baseMapper.updateFinanceTime(id,entryTime);
}
return R.success("写入成功");
}
}

14
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryDetailsController.java

@ -20,6 +20,8 @@ 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.distribution.entity.DistributionDeliveryDetailsEntity;
import com.logpm.distribution.excel.DistributionBillInventoryExcel;
import com.logpm.distribution.excel.DistributionBillOrderPackExcel;
import com.logpm.distribution.excel.DistributionDeliveryDetailsExcel;
import com.logpm.distribution.service.IDistributionDeliveryDetailsService;
import com.logpm.distribution.vo.DistributionBillInventoryVO;
@ -89,6 +91,18 @@ public class DistributionDeliveryDetailsController extends BladeController {
IPage<DistributionBillInventoryVO> pages = distributionDeliveryDetailsService.getBillOrderInventory(Condition.getPage(query),distributionDeliveryDetails);
return R.data(pages);
}
/**
* 提货订单明细 库存品 导出
* http://localhost:8600//distributionDeliveryDetails/billOrderInventoryExcel?billLadingId=174211163815416217
*/
@GetMapping("/billOrderInventoryExcel")
@ApiOperationSupport(order = 2)
@ApiOperation(value = "库存品查询导出", notes = "传入distributionDeliveryDetails")
public void getBillOrderInventoryExcel(@ApiIgnore @RequestParam Map<String, Object> distributionDeliveryDetails, BladeUser bladeUser, HttpServletResponse response) {
List<DistributionBillInventoryExcel> list = distributionDeliveryDetailsService.getBillOrderInventoryExcel(distributionDeliveryDetails);
ExcelUtil.export(response, "自提库存品列表信息" + DateUtil.time(), "提货单订单信息关联数据表", list, DistributionBillInventoryExcel.class);
}
/**
* 提货订单明细 自定义分页

7
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionParcelListController.java

@ -29,6 +29,7 @@ import com.logpm.distribution.service.IDistributionParcelListService;
import com.logpm.distribution.vo.DistributionParcelListBaseVO;
import com.logpm.distribution.vo.DistributionParcelListVO;
import com.logpm.distribution.vo.DistributionParcelListZeroVO;
import com.logpm.distribution.wrapper.DistributionParcelListVOWrapper;
import com.logpm.distribution.wrapper.DistributionParcelListWrapper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -172,14 +173,14 @@ public class DistributionParcelListController extends BladeController {
}
/**
* 在库订单包件清单 自定义分页
* 在库订单包件清单 自定义分页 导出
*/
@GetMapping("/page")
@ApiOperationSupport(order = 3)
@ApiOperation(value = "分页", notes = "传入distributionParcelList")
public R<IPage<DistributionParcelListVO>> page(DistributionParcelListVO distributionParcelList, Query query) {
IPage<DistributionParcelListEntity> pages = distributionParcelListService.selectDistributionParcelListPage(Condition.getPage(query), distributionParcelList);
return R.data(DistributionParcelListWrapper.build().pageVO(pages));
IPage<DistributionParcelListVO> pages = distributionParcelListService.selectDistributionParcelListPage(Condition.getPage(query), distributionParcelList);
return R.data(DistributionParcelListVOWrapper.build().pageVO(pages));
}
/**

29
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistrilbutionBillStockController.java

@ -20,6 +20,8 @@ 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.distribution.entity.DistrilbutionBillStockEntity;
import com.logpm.distribution.excel.DistributionBillOrderExcel;
import com.logpm.distribution.excel.DistributionBillOrderPackExcel;
import com.logpm.distribution.excel.DistrilbutionBillStockExcel;
import com.logpm.distribution.service.IDistrilbutionBillStockService;
import com.logpm.distribution.vo.DistributionBillOrderPackVO;
@ -81,6 +83,22 @@ public class DistrilbutionBillStockController extends BladeController {
IPage<DistributionBillOrderVO> detail = distrilbutionBillStockService.getBillOrderDetail(distrilbutionBillStock,Condition.getPage(query));
return R.data(detail);
}
/**
* 提货单详情导出
* @param distrilbutionBillStock
* @param bladeUser
* @param response
* http://localhost:8600//distrilbutionBillStock/billOrderDetailExcel?billLadingId=1742111638154162178
*/
@GetMapping("/billOrderDetailExcel")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "订单列表详情Excel", notes = "传入distrilbutionBillLading")
public void getBillOrderDetailExcel(@ApiIgnore @RequestParam Map<String, Object> distrilbutionBillStock, BladeUser bladeUser, HttpServletResponse response) {
List<DistributionBillOrderExcel> list = distrilbutionBillStockService.distrilbutionBillStock(distrilbutionBillStock);
ExcelUtil.export(response, "自提订单信息" + DateUtil.time(), "提货单订单信息关联数据表", list, DistributionBillOrderExcel.class);
}
/**
* 提货单包件 详情
*/
@ -91,6 +109,17 @@ public class DistrilbutionBillStockController extends BladeController {
IPage<DistributionBillOrderPackVO> detail = distrilbutionBillStockService.getBillOrderPack(distrilbutionBillStock,Condition.getPage(query));
return R.data(detail);
}
/**
* 提货单包件 详情 导出
* http://localhost:8600//distrilbutionBillStock/billOrderPackExcel?billLadingId=1742111638154162178
*/
@GetMapping("/billOrderPackExcel")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "详情", notes = "传入distrilbutionBillLading")
public void billOrderPackExcel(@ApiIgnore @RequestParam Map<String, Object> distrilbutionBillStock, BladeUser bladeUser, HttpServletResponse response) {
List<DistributionBillOrderPackExcel> list = distrilbutionBillStockService.billOrderPackExcel(distrilbutionBillStock);
ExcelUtil.export(response, "自提包件列表信息" + DateUtil.time(), "提货单订单信息关联数据表", list, DistributionBillOrderPackExcel.class);
}
/**
* 提货单订单信息关联 分页

60
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionBillInventoryExcel.java

@ -0,0 +1,60 @@
package com.logpm.distribution.excel;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
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 lombok.Data;
/*
* logisticsplatform-service
* @Author Diss
* @Create 2024/1/26 13:56
*/
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class DistributionBillInventoryExcel {
@ColumnWidth(20)
@ExcelProperty("sku")
private String sku;
@ColumnWidth(20)
@ExcelProperty("物料名称")
private String descriptionGoods;
// @ColumnWidth(20)
// @ExcelProperty("备货数")
// private String quantity;
@ColumnWidth(20)
@ExcelProperty("已备数量")
private String preparedQuantity;
@ColumnWidth(20)
@ExcelProperty("物料编号")
private String cargoNumber;
@ColumnWidth(20)
@ExcelProperty("应提件数")
private String quantity; //数量
@ColumnWidth(20)
@ExcelProperty("备货状态")
private Integer stockStatus;
@ColumnWidth(20)
@ExcelProperty("提货件数")
private Integer pickUpQuantity;
@ColumnWidth(20)
@ExcelProperty("提货状态")
private Integer pickupStatus;
@ColumnWidth(20)
@ExcelProperty("单位")
private String cargoUnit; //单位
/**@ColumnWidth(20)
@ExcelProperty("托盘码")
*/
@ColumnWidth(20)
@ExcelProperty("库位信息")
private String allocation;
}

72
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionBillOrderExcel.java

@ -0,0 +1,72 @@
package com.logpm.distribution.excel;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
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 lombok.Data;
/*
* logisticsplatform-service
* @Author Diss
* @Create 2024/1/26 11:06
*/
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class DistributionBillOrderExcel {
@ColumnWidth(20)
@ExcelProperty("服务号")
private String serviceNumber;
@ExcelProperty("运单号")
private String waybillNumber; //运单号
@ColumnWidth(20)
@ExcelProperty("客户车次号")
private String trainNumber; //客户车次号
@ColumnWidth(20)
@ExcelProperty("始发仓")
private String sendWarehouseName; //始发仓
@ColumnWidth(20)
@ExcelProperty("订单总数")
private String totalNumber;
@ColumnWidth(20)
@ExcelProperty("应提货件数")
private String handQuantity;
@ColumnWidth(20)
@ExcelProperty("提货件数")
private String pickUpQuantity;
@ColumnWidth(20)
@ExcelProperty("提货状态")
private String conditions;
@ColumnWidth(20)
@ExcelProperty("提货状态")
private String conditionsName;
@ColumnWidth(20)
@ExcelProperty("货物名称")
private String descriptionGoods;
@ColumnWidth(20)
@ExcelProperty("物料名称")
private String materialName;
@ColumnWidth(20)
@ExcelProperty("备货件数") //TODO 和应提货件数 值一样后期可能要改
private String stockUpQuantity;
@ColumnWidth(20)
@ExcelProperty("已备数量")
private String preparedQuantity;
@ColumnWidth(20)
@ExcelProperty("备货状态")
private String stockupStatusName;
@ExcelIgnore
private String stockupStatus;
@ColumnWidth(20)
@ExcelProperty("托盘码")
private String pallet;
@ColumnWidth(20)
@ExcelProperty("货位信息")
private String goodsAllocation;
}

89
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionBillOrderPackExcel.java

@ -0,0 +1,89 @@
package com.logpm.distribution.excel;
/*
* logisticsplatform-service
* @Author Diss
* @Create 2024/1/26 11:52
*/
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
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 lombok.Data;
import java.util.Date;
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class DistributionBillOrderPackExcel {
@ColumnWidth(20)
@ExcelProperty("服务号")
private String serviceNumber; //服务号
@ColumnWidth(20)
@ExcelProperty("运单号")
private String waybillNumber; //运单号
@ColumnWidth(20)
@ExcelProperty("包件码")
private String orderPackageCode;
@ColumnWidth(20)
@ExcelProperty("客户车次号")
private String trainNumber; //客户车次号
@ColumnWidth(20)
@ExcelProperty("订单自编号")
private String orderCode;
@ColumnWidth(20)
@ExcelProperty("仓库")
private String sendWarehouseName;
@ColumnWidth(20)
@ExcelProperty("一级品类")
private String firsts;
@ColumnWidth(20)
@ExcelProperty("二级品类")
private String second;
@ColumnWidth(20)
@ExcelProperty("三级品类")
private String thirdProduct;
@ColumnWidth(20)
@ExcelProperty("物料编号")
private String materialCode;
@ColumnWidth(20)
@ExcelProperty("物料名称")
private String materialName;
@ColumnWidth(20)
@ExcelProperty("托盘码")
private String pallet;
@ColumnWidth(20)
@ExcelProperty("库位号")
private String goodsAllocation;
@ColumnWidth(20)
@ExcelProperty("扫描人")
private String stockupCreateUser; //提货扫描人
@ColumnWidth(20)
@ExcelProperty("扫描时间")
private String stockuppickUpTime; //提货时间
//************************************
@ExcelIgnore
private String orderPackageStatus;
@ExcelIgnore
private String warehouse;
@ExcelIgnore
private String stockupStatusName; //备货状态名称
@ExcelIgnore
private String stockupConsignee; //提货人员
@ExcelIgnore
private String stockupPickUpPlate; //提货车牌
@ExcelIgnore
private String stockupConditions; //提货状态
@ExcelIgnore
private String clerkCheck ; //文员复核人
@ExcelIgnore
private Date signForCreateTime; //签收时间
@ExcelIgnore
private Date clerkUpdateTime; //文员签收时间
@ExcelIgnore
private Date stockupCreateTime; //备货时间名称
@ExcelIgnore
private String outboundType; //服务类型
}

3
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.java

@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.distribution.entity.DistributionDeliveryDetailsEntity;
import com.logpm.distribution.excel.DistributionBillInventoryExcel;
import com.logpm.distribution.excel.DistributionDeliveryDetailsExcel;
import com.logpm.distribution.vo.DistributionBillInventoryVO;
import com.logpm.distribution.vo.DistributionDeliveryDetailsVO;
@ -78,4 +79,6 @@ public interface DistributionDeliveryDetailsMapper extends BaseMapper<Distributi
DistributionDeliveryDetailsVO selectCountStock(@Param("pageId") Long pageId);
DistributionDeliveryDetailsVO selectOrderCount(@Param("pageId") Long pageId);
List<DistributionBillInventoryExcel> getBillOrderInventoryExcel(@Param("param") DistributionDeliveryDetailsEntity deliveryDetails);
}

18
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.xml

@ -99,5 +99,23 @@
lddd.bill_lading_id = #{param.billLadingId} and lddd.inventory_status in (1,2)
</where>
</select>
<select id="getBillOrderInventoryExcel"
resultType="com.logpm.distribution.excel.DistributionBillInventoryExcel">
select DISTINCT ldsl.sku, ldsl.description_goods descriptionGoods, lddd.quantity, ldsl.cargo_number cargoNumber, ldsl.cargo_unit cargoUnit,
ldsl.tray_name trayName, lds.allocation_title allocation,
lddd.reality_quantity preparedQuantity,
lddd.stock_status,
(SELECT count(id) FROM logpm_distribution_bill_lading_scan ldbls WHERE ldbls.stock_list_id = lddd.stock_list_id and ldbls.material_type = 1) AS pick_up_quantity,
CASE
WHEN (lddd.quantity - (SELECT count(id) FROM logpm_distribution_bill_lading_scan ldbls WHERE ldbls.stock_list_id = lddd.stock_list_id and ldbls.material_type = 1)) > 0 THEN 20
WHEN (lddd.quantity - (SELECT count(id) FROM logpm_distribution_bill_lading_scan ldbls WHERE ldbls.stock_list_id = lddd.stock_list_id and ldbls.material_type = 1)) = 0 THEN 10
END AS pickup_status
from logpm_distribution_delivery_details lddd
LEFT JOIN logpm_distribution_stock_list ldsl on lddd.stock_list_id = ldsl.id
LEFT JOIN logpm_distribution_stock lds on lds.bill_lading_id = lddd.bill_lading_id and lddd.stock_list_id = lds.stock_list_id
<where>
lddd.bill_lading_id = #{param.billLadingId} and lddd.inventory_status in (1,2)
</where>
</select>
</mapper>

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java

@ -47,7 +47,7 @@ public interface DistributionParcelListMapper extends BaseMapper<DistributionPar
* @param distributionParcelList
* @return
*/
List<DistributionParcelListEntity> selectDistributionParcelListPage(IPage page,@Param("param") DistributionParcelListVO distributionParcelList);
List<DistributionParcelListVO> selectDistributionParcelListPage(IPage page,@Param("param") DistributionParcelListVO distributionParcelList);
int submitNumByOrderIdAndName(@Param("articleId") Long articleId,@Param("productName") String productName, @Param("num") Integer num);

9
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml

@ -106,7 +106,7 @@
</where>
</select>
<select id="selectDistributionParcelListPage" resultType="com.logpm.distribution.entity.DistributionParcelListEntity">
<select id="selectDistributionParcelListPage" resultType="com.logpm.distribution.vo.DistributionParcelListVO">
SELECT DISTINCT
ldpl.warehouse_id warehouseId,
ldpl.id id,
@ -144,7 +144,9 @@
ldl.signing_time signingTimes,
ldl.signing_user signingUser,
ldl.scan_user scanUser,
ldl.vehicle_name vehicleName
ldl.vehicle_name vehicleName,
ldsa.type_service typeService,
ldbl.pickup_batch pickupBatch
FROM
logpm_distribution_parcel_list ldpl
LEFT JOIN logpm_warehouse_updown_goods lwug ON ldpl.id = lwug.association_id
@ -155,6 +157,9 @@
LEFT JOIN logpm_distribution_signfor AS lds ON lds.reservation_id = ldr.id
LEFT JOIN logpm_distribution_loadscan ldl on ldl.package_id = ldpl.id and ldl.scan_status !=1
LEFT JOIN logpm_distribution_delivery_list lddl on lddl.id = lds.delivery_id
left join logpm_distribution_stock_article ldsa on ldsa.id = ldpl.stock_article_id
left join logpm_distrilbution_bill_lading ldbl on ldsa.id = ldpl.stock_article_id
<where>
ldpl.is_deleted = 0
<if test="param.warehouse !='' and param.warehouse != null">

7
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.java

@ -21,11 +21,14 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.distribution.dto.app.StockupDTO;
import com.logpm.distribution.entity.DistrilbutionBillStockEntity;
import com.logpm.distribution.excel.DistributionBillOrderExcel;
import com.logpm.distribution.excel.DistributionBillOrderPackExcel;
import com.logpm.distribution.excel.DistrilbutionBillStockExcel;
import com.logpm.distribution.vo.*;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* 提货单订单信息关联 Mapper 接口
@ -66,4 +69,8 @@ public interface DistrilbutionBillStockMapper extends BaseMapper<DistrilbutionBi
List<DistributionStockupSelfVO> selectDistrilbutionBillOverPackWuSelf(@Param("param")StockupDTO stockupDTO);
List<DistributionStockPackageVO> listPackageSelf(@Param("reservationId")Long reservationId);
List<DistributionBillOrderExcel> distrilbutionBillStock(@Param("param")DistrilbutionBillStockEntity distrilbutionBillStock);
List<DistributionBillOrderPackExcel> billOrderPackExcel(@Param("param")DistrilbutionBillStockEntity billStock);
}

84
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml

@ -240,5 +240,89 @@
where ldbp.bill_lading_id = #{reservationId} and ldsa.is_zero = #{isZero} and ldbp.packet_bar_status in (1,3)
</select>
<select id="distrilbutionBillStock" resultType="com.logpm.distribution.excel.DistributionBillOrderExcel">
select DISTINCT ldsa.order_code orderCode,ldsa.total_number,ldsa.description_goods descriptionGoods,ldsa.stockup_status stockupStatus,
(select COUNT(id) from logpm_distrilbution_bill_package
where stock_article_id = ldsa.id and packet_bar_status in (1,3) and bill_lading_id = #{param.billLadingId} ) handQuantity,
(select COUNT(id) from logpm_distribution_bill_lading_scan
where stock_article_id = ldsa.id ) pick_up_quantity,
CASE
WHEN (SELECT COUNT(id) FROM logpm_distribution_bill_lading_scan WHERE stock_article_id = ldsa.id) - (SELECT COUNT(id) FROM logpm_distrilbution_bill_package WHERE stock_article_id = ldsa.id AND packet_bar_status IN (1,3)) = 0 THEN 20
WHEN (SELECT COUNT(id) FROM logpm_distribution_bill_lading_scan WHERE stock_article_id = ldsa.id) - (SELECT COUNT(id) FROM logpm_distrilbution_bill_package WHERE stock_article_id = ldsa.id AND packet_bar_status IN (1,3)) > 0 THEN 10
WHEN (SELECT COUNT(id) FROM logpm_distribution_bill_lading_scan WHERE stock_article_id = ldsa.id) - (SELECT COUNT(id) FROM logpm_distrilbution_bill_package WHERE stock_article_id = ldsa.id AND packet_bar_status IN (1,3)) &lt; 0 THEN 30
END AS conditions,
(select GROUP_CONCAT(DISTINCT ldpl.material_name )
from logpm_distribution_parcel_list ldpl
where ldpl.material_name is not null and ldpl.stock_article_id = ldbs.stock_article_id) materialName,
(select count(lds.id)
from logpm_distribution_stock lds
where lds.stock_article = ldbs.stock_article_id ) preparedQuantity ,
(select COALESCE(GROUP_CONCAT(DISTINCT lwtg.tray_code SEPARATOR ','), '')
from logpm_distribution_parcel_list ldpl
LEFT JOIN logpm_warehouse_tray_goods lwtg on lwtg.association_id = ldpl.id and lwtg.association_type = '3'
where ldpl.stock_article_id = ldbs.stock_article_id) pallet ,
(select COALESCE(GROUP_CONCAT(DISTINCT lwug.allocation_title SEPARATOR ','), '')
from logpm_distribution_parcel_list ldpl
LEFT JOIN logpm_warehouse_updown_goods lwug on lwug.association_id = ldpl.id and lwug.association_type = '3'
where ldpl.stock_article_id = ldbs.stock_article_id) goodsAllocation,
ldsa.service_number serviceNumber,ldsa.waybill_number waybillNumber,ldsa.train_number trainNumber,ldsa.send_warehouse_name sendWarehouseName
from logpm_distrilbution_bill_stock ldbs
LEFT JOIN logpm_distribution_stock_article ldsa on ldbs.stock_article_id = ldsa.id
LEFT JOIN logpm_distribution_stock lds on lds.stock_article = ldbs.stock_article_id
LEFT JOIN logpm_distrilbution_bill_lading ldbl ON lds.stock_article = ldbl.stock_article_id
<where>
ldbs.is_deleted = 0 and ldbs.bill_lading_id = #{param.billLadingId} and ldbs.order_status in (1,2)
</where>
</select>
<select id="billOrderPackExcel" resultType="com.logpm.distribution.excel.DistributionBillOrderPackExcel">
SELECT
lds.outbound_type,
ldpl.order_package_code orderPackageCode,
ldpl.warehouse,
ldpl.firsts,
ldpl.SECOND,
ldpl.third_product thirdProduct,
ldpl.material_code materialCode,
ldpl.material_name materialName,
ldpl.waybill_number waybillNumber,
ldpl.send_warehouse_name sendWarehouseName,
ldpl.order_code orderCode,
ldpl.service_number serviceNumber,
lwtg.tray_code pallet,
lwug.allocation_title goodsAllocation,
ldpl.order_package_status orderPackageStatus ,
case
when lds.id is null then '未备货'
else '已备货'
end as stockupStatusName,
lds.create_time stockupCreateTime,
ldbl.consignee stockupConsignee,
ldbl.pick_up_plate stockupPickUpPlate,
ldbl.conditions stockupConditions,
ldbls.create_user stockupCreateUser,
ldbl.pick_up_time stockuppickUpTime,
ldbls.create_time signForCreateTime,
case
WHEN ldbl.conditions = 30 THEN ldbl.update_user
end as clerkCheck,
case
WHEN ldbl.conditions = 30 THEN ldbl.update_time
end as clerkUpdateTime
FROM logpm_distrilbution_bill_lading ldbl
LEFT JOIN logpm_distrilbution_bill_package ldbp on ldbl.id = ldbp.bill_lading_id
LEFT JOIN logpm_distribution_parcel_list ldpl ON ldbp.parce_list_id = ldpl.id
LEFT JOIN logpm_distribution_stock lds on lds.parcel_list_id = ldpl.id
LEFT JOIN logpm_distribution_bill_lading_scan ldbls on ldbls.packet_bar_code = ldpl.order_package_code
LEFT JOIN logpm_warehouse_tray_goods lwtg ON lwtg.association_id = ldpl.id AND lwtg.association_type = '3'
LEFT JOIN logpm_warehouse_updown_goods lwug ON lwug.association_id = ldpl.id AND lwug.association_type = '3'
<where>
ldbp.bill_lading_id = #{param.billLadingId} and ldbp.packet_bar_status in (1,3) and ldbp.bill_type = '1'
</where>
</select>
</mapper>

3
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryDetailsService.java

@ -19,6 +19,7 @@ package com.logpm.distribution.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.distribution.entity.DistributionDeliveryDetailsEntity;
import com.logpm.distribution.excel.DistributionBillInventoryExcel;
import com.logpm.distribution.excel.DistributionDeliveryDetailsExcel;
import com.logpm.distribution.vo.DistributionBillInventoryVO;
import com.logpm.distribution.vo.DistributionDeliveryDetailsVO;
@ -82,4 +83,6 @@ public interface IDistributionDeliveryDetailsService extends BaseService<Distrib
* @return
*/
DistributionDeliveryDetailsVO selectOrderCount(Long pageId);
List<DistributionBillInventoryExcel> getBillOrderInventoryExcel(Map<String, Object> distributionDeliveryDetails);
}

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java

@ -45,7 +45,7 @@ public interface IDistributionParcelListService extends BaseService<Distribution
* @param distributionParcelList
* @return
*/
IPage<DistributionParcelListEntity> selectDistributionParcelListPage(IPage<DistributionParcelListEntity> page, DistributionParcelListVO distributionParcelList);
IPage<DistributionParcelListVO> selectDistributionParcelListPage(IPage<DistributionParcelListVO> page, DistributionParcelListVO distributionParcelList);
boolean submitNumByOrderIdAndName(Long articleId, String productName, Integer num);

11
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistrilbutionBillStockService.java

@ -20,6 +20,8 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.distribution.dto.app.StockupDTO;
import com.logpm.distribution.entity.DistrilbutionBillStockEntity;
import com.logpm.distribution.excel.DistributionBillOrderExcel;
import com.logpm.distribution.excel.DistributionBillOrderPackExcel;
import com.logpm.distribution.excel.DistrilbutionBillStockExcel;
import com.logpm.distribution.vo.*;
import org.springblade.core.mp.base.BaseService;
@ -88,4 +90,13 @@ public interface IDistrilbutionBillStockService extends BaseService<Distrilbutio
* @return
*/
List<DistributionStockPackageVO> listPackageSelf(Long reservationId);
/**
* 导出详情
* @param distrilbutionBillStock
* @return
*/
List<DistributionBillOrderExcel> distrilbutionBillStock(Map<String, Object> distrilbutionBillStock);
List<DistributionBillOrderPackExcel> billOrderPackExcel(Map<String, Object> distrilbutionBillStock);
}

11
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryDetailsServiceImpl.java

@ -19,7 +19,11 @@ package com.logpm.distribution.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.logpm.distribution.entity.DistributionDeliveryDetailsEntity;
import com.logpm.distribution.entity.DistrilbutionBillStockEntity;
import com.logpm.distribution.excel.DistributionBillInventoryExcel;
import com.logpm.distribution.excel.DistributionBillOrderPackExcel;
import com.logpm.distribution.excel.DistributionDeliveryDetailsExcel;
import com.logpm.distribution.mapper.DistributionDeliveryDetailsMapper;
import com.logpm.distribution.service.IDistributionDeliveryDetailsService;
@ -27,6 +31,8 @@ import com.logpm.distribution.vo.DistributionBillInventoryVO;
import com.logpm.distribution.vo.DistributionDeliveryDetailsVO;
import com.logpm.distribution.vo.app.DistrilbutionBillLadingInventoryAppVO;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.tool.api.R;
import org.springblade.system.entity.User;
import org.springframework.stereotype.Service;
import java.util.List;
@ -87,4 +93,9 @@ public class DistributionDeliveryDetailsServiceImpl extends BaseServiceImpl<Dist
return baseMapper.selectOrderCount(pageId);
}
@Override
public List<DistributionBillInventoryExcel> getBillOrderInventoryExcel(Map<String, Object> distributionDeliveryDetails) {
DistributionDeliveryDetailsEntity deliveryDetails = JSON.parseObject(JSON.toJSONString(distributionDeliveryDetails), DistributionDeliveryDetailsEntity.class);
return baseMapper.getBillOrderInventoryExcel(deliveryDetails);
}
}

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java

@ -106,13 +106,13 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl<Distribut
// private final IDistributionStockArticleService distributionStockArticleService;
@Override
public IPage<DistributionParcelListEntity> selectDistributionParcelListPage(IPage<DistributionParcelListEntity> page, DistributionParcelListVO distributionParcelList) {
public IPage<DistributionParcelListVO> selectDistributionParcelListPage(IPage<DistributionParcelListVO> page, DistributionParcelListVO distributionParcelList) {
List<BasicdataWarehouseEntity> myWatchWarehouse = basicdataWarehouseClient.getMyWatchWarehouse();
List<Long> collect = myWatchWarehouse.stream()
.map(BasicdataWarehouseEntity::getId)
.collect(Collectors.toList());
distributionParcelList.setWarehouseIdList(collect);
List<DistributionParcelListEntity> distributionParcelListEntities = baseMapper.selectDistributionParcelListPage(page, distributionParcelList);
List<DistributionParcelListVO> distributionParcelListEntities = baseMapper.selectDistributionParcelListPage(page, distributionParcelList);
return page.setRecords(distributionParcelListEntities);
}

38
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillStockServiceImpl.java

@ -23,6 +23,8 @@ import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.logpm.distribution.dto.app.StockupDTO;
import com.logpm.distribution.entity.DistrilbutionBillStockEntity;
import com.logpm.distribution.excel.DistributionBillOrderExcel;
import com.logpm.distribution.excel.DistributionBillOrderPackExcel;
import com.logpm.distribution.excel.DistrilbutionBillStockExcel;
import com.logpm.distribution.mapper.DistrilbutionBillStockMapper;
import com.logpm.distribution.service.IDistrilbutionBillStockService;
@ -132,4 +134,40 @@ public class DistrilbutionBillStockServiceImpl extends BaseServiceImpl<Distrilbu
return baseMapper.listPackageSelf(reservationId);
}
@Override
public List<DistributionBillOrderExcel> distrilbutionBillStock(Map<String, Object> distrilbutionBillStock) {
DistrilbutionBillStockEntity billStock = JSON.parseObject(JSON.toJSONString(distrilbutionBillStock), DistrilbutionBillStockEntity.class);
List<DistributionBillOrderExcel> distributionBillOrderExcels = baseMapper.distrilbutionBillStock(billStock);
distributionBillOrderExcels.forEach( i ->{
if(StringUtils.isNotBlank(i.getStockupStatus())){
i.setStockupStatusName(DictBizCache.getValue(DictBizConstant.STOCKUP_STATUS,i.getStockupStatus()));
}
if(ObjectUtils.isNotNull(i.getConditions())){
i.setConditionsName(DictBizCache.getValue(DictBizConstant.BILL_CONDITIONS_STATUS,i.getConditions()));
}
if (StringUtils.isNotBlank(i.getHandQuantity())){
i.setStockUpQuantity(i.getHandQuantity()); //TODO 和应提货件数 值一样后期可能要改
}
});
return distributionBillOrderExcels;
}
@Override
public List<DistributionBillOrderPackExcel> billOrderPackExcel(Map<String, Object> distrilbutionBillStock) {
DistrilbutionBillStockEntity billStock = JSON.parseObject(JSON.toJSONString(distrilbutionBillStock), DistrilbutionBillStockEntity.class);
List<DistributionBillOrderPackExcel> distributionBillOrderPackExcels = baseMapper.billOrderPackExcel(billStock);
distributionBillOrderPackExcels.forEach(i -> {
if(ObjectUtils.isNotNull(i.getStockupCreateUser())){
R<User> userR = userClient.userInfoById(Long.valueOf(i.getStockupCreateUser()));
if(userR.isSuccess() && ObjectUtils.isNotNull(userR.getData())){
i.setStockupCreateUser(userR.getData().getRealName());
}
}
});
return distributionBillOrderPackExcels;
}
}

73
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/wrapper/DistributionParcelListVOWrapper.java

@ -0,0 +1,73 @@
package com.logpm.distribution.wrapper;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.logpm.distribution.entity.DistributionParcelListEntity;
import com.logpm.distribution.vo.DistributionParcelListVO;
import org.springblade.common.constant.DictBizConstant;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.system.cache.DictBizCache;
import java.text.SimpleDateFormat;
import java.util.Objects;
/**
* @program: LogisticsPlatform-Service
* @description: 包件包装类
* @author: cyz
* @create: 2023-08-02 14:35
**/
public class DistributionParcelListVOWrapper extends BaseEntityWrapper<DistributionParcelListVO, DistributionParcelListVO> {
// @Autowired
// private IWarehouseUpdownGoodsClient warehouseUpdownGoodsClient;
public static DistributionParcelListVOWrapper build(){
return new DistributionParcelListVOWrapper();
}
@Override
public DistributionParcelListVO entityVO(DistributionParcelListVO entity) {
// IWarehouseUpdownGoodsClient warehouseUpdownGoodsClient = SpringUtil.getBean(IWarehouseUpdownGoodsClient.class);
// IWarehouseTrayGoodsClient warehouseTrayGoodsClient = SpringUtil.getBean(IWarehouseTrayGoodsClient.class);
DistributionParcelListVO parcelListVO = Objects.requireNonNull(BeanUtil.copy(entity,DistributionParcelListVO.class));
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
if(ObjectUtils.isNotNull(entity.getScanTimes())){
parcelListVO.setScanTime(format.format(entity.getScanTimes()));
}
if(ObjectUtils.isNotNull(entity.getSigningTimes())){
parcelListVO.setSigningTime(format.format(entity.getSigningTimes()));
}
parcelListVO.setOrderPackageStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_STATUS, entity.getOrderPackageStatus()));
parcelListVO.setOrderPackageFreezeStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_FREEZE_STATUS, entity.getOrderPackageFreezeStatus()));
parcelListVO.setOrderPackageGroundingStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_GROUNDING_STATUS, entity.getOrderPackageGroundingStatus()));
parcelListVO.setOrderPackageStockupStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_STOCKUP_STATUS, entity.getOrderPackageStockupStatus()));
parcelListVO.setOrderPackageReservationStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_RESERVATION_STATUS, entity.getOrderPackageReservationStatus()));
parcelListVO.setOrderPackageLoadingStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_LOADING_STATUS, entity.getOrderPackageLoadingStatus()));
parcelListVO.setTypeServiceName(DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, entity.getTypeService()));
//如果有上架选择填充货位信息
// if (Func.isNotBlank(parcelListVO.getOrderPackageGroundingStatus())){
// if (parcelListVO.getOrderPackageGroundingStatus().equals("20")){
// if (Func.isNotEmpty(warehouseUpdownGoodsClient)){
// String s = warehouseUpdownGoodsClient.selectMsgBywrap(parcelListVO.getId());
// if (Func.isNotEmpty(s)){
// parcelListVO.setAllocationMsg(s);
// }
// }
// }
// }
// if(Func.isNotEmpty(warehouseTrayGoodsClient)){
// String s = warehouseUpdownGoodsClient.selectMsgBywrap(parcelListVO.getId());
// if (Func.isNotEmpty(s)){
// parcelListVO.setTrayMsg(s);
// }
// }
// parcelListVO.setOrderPackageReservationStatusName(DictBizCache.getValue(DictBizConstant.ORDER_PACKAGE_FREEZE_STATUS, entity.getOrderPackageReservationStatus()));
return parcelListVO;
}
}
Loading…
Cancel
Save