Browse Source

配送详情增加订单搜索

single_db
汤建军 1 year ago
parent
commit
c920f5543b
  1. 6
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionDeliveryInfoVO.java
  2. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java
  3. 3
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryInfoMapper.java
  4. 62
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryInfoMapper.xml
  5. 3
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryInfoService.java
  6. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryInfoServiceImpl.java
  7. 10
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java

6
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionDeliveryInfoVO.java

@ -42,6 +42,12 @@ public class DistributionDeliveryInfoVO extends DistributionDeliveryInfoEntity {
*/ */
@ApiModelProperty(value = "仓库") @ApiModelProperty(value = "仓库")
private String warehouse; private String warehouse;
/**
* 运单号
*/
@ApiModelProperty(value = "运单号")
private String waybillNo;
/** /**
* 签收类型;1-签收2-代签收 * 签收类型;1-签收2-代签收
*/ */

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java

@ -133,8 +133,8 @@ public class DistributionDeliveryListController extends BladeController {
@GetMapping("/order") @GetMapping("/order")
@ApiOperationSupport(order = 1) @ApiOperationSupport(order = 1)
@ApiOperation(value = "查看订单", notes = "传入distributionDeliveryList") @ApiOperation(value = "查看订单", notes = "传入distributionDeliveryList")
public R<IPage<DistributionStockArticleVO>> order(DistributionDeliveryInfoDTO distributionDeliveryInfoDTO, Query query) { public R<IPage<DistributionStockArticleVO>> order(@RequestParam Map<String, Object> distributionStockArticle , Query query) {
IPage<DistributionStockArticleVO> pages = distributionDeliveryInfoService.selectDistributionDeliveryorder(Condition.getPage(query), distributionDeliveryInfoDTO); IPage<DistributionStockArticleVO> pages = distributionDeliveryInfoService.selectDistributionDeliveryorder(Condition.getPage(query), distributionStockArticle);
return R.data(pages); return R.data(pages);
} }

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

@ -32,6 +32,7 @@ import com.logpm.distribution.vo.app.DistributionAppStockArticleVO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 配送装车中间表 Mapper 接口 * 配送装车中间表 Mapper 接口
@ -112,7 +113,7 @@ public interface DistributionDeliveryInfoMapper extends BaseMapper<DistributionD
* *
* @return * @return
*/ */
List<DistributionStockArticleVO> selectDistributionDeliveryOrderPage(IPage<DistributionStockArticleVO> page,@Param("param") DistributionDeliveryInfoDTO distributionDeliveryInfoDTO); List<DistributionStockArticleVO> selectDistributionDeliveryOrderPage(IPage<DistributionStockArticleVO> page,@Param("param") Map<String,Object> distributionStockArticle);
/** /**
* App-通过配送查询客户信息 * App-通过配送查询客户信息
* *

62
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryInfoMapper.xml

@ -81,6 +81,7 @@
ldr.delivery_address deliveryAddress, ldr.delivery_address deliveryAddress,
ldr.delivery_phone deliveryPhone, ldr.delivery_phone deliveryPhone,
ldr.stock_article_id orderIds, ldr.stock_article_id orderIds,
ldr.waybill_no waybillNo,
lds.delivery_sign_pictures deliverySignPictures, lds.delivery_sign_pictures deliverySignPictures,
lds.clerk_sign_pictures clerkSignPictures, lds.clerk_sign_pictures clerkSignPictures,
ldr.reservation_num packageNub, ldr.reservation_num packageNub,
@ -233,18 +234,10 @@
ldsa.customer_address, ldsa.customer_address,
ldsa.total_number, ldsa.total_number,
ldsa.hand_quantity, ldsa.hand_quantity,
ldsa.waybill_number,
ldsa.service_number,
ldrs.reservation_num AS deliveryNumber, ldrs.reservation_num AS deliveryNumber,
ldsa.description_goods descriptionGoods, t.materialName,
(
SELECT
GROUP_CONCAT( ldpl.material_name SEPARATOR ',' )
FROM
logpm_distribution_parcel_list ldpl
JOIN logpm_distribution_reservation_package ldrp ON ldrp.parce_list_id = ldpl.id
WHERE
ldrp.reservation_id = lds.reservation_id
) materialName,
-- (SELECT COUNT(*) from logpm_distribution_reservation_package ldrp WHERE ldrp.stock_article_id = ldsa.id ) deliveryNumber, -- (SELECT COUNT(*) from logpm_distribution_reservation_package ldrp WHERE ldrp.stock_article_id = ldsa.id ) deliveryNumber,
( (
SELECT SELECT
@ -282,11 +275,56 @@
WHERE lstock.stock_article=ldrs.stock_article_id WHERE lstock.stock_article=ldrs.stock_article_id
) AS stockupNumber ) AS stockupNumber
FROM FROM
logpm_distribution_signfor lds logpm_distribution_signfor lds
JOIN logpm_distribution_reservation_stockarticle ldrs ON lds.reservation_id = ldrs.reservation_id JOIN logpm_distribution_reservation_stockarticle ldrs ON lds.reservation_id = ldrs.reservation_id
JOIN logpm_distribution_delivery_list lddl ON lddl.id = lds.delivery_id JOIN logpm_distribution_delivery_list lddl ON lddl.id = lds.delivery_id
JOIN logpm_distribution_stock_article ldsa ON ldrs.stock_article_id = ldsa.id JOIN logpm_distribution_stock_article ldsa ON ldrs.stock_article_id = ldsa.id
JOIN
(SELECT
DISTINCT ldpl.stock_article_id,GROUP_CONCAT(ldpl.material_name) AS materialName
FROM
logpm_distribution_parcel_list ldpl
JOIN logpm_distribution_reservation_package ldrp ON ldrp.parce_list_id = ldpl.id
GROUP BY ldpl.stock_article_id
) AS t ON t.stock_article_id = ldsa.id
where lddl.id = #{param.deliveryId} AND ldrs.stock_article_status != 2 where lddl.id = #{param.deliveryId} AND ldrs.stock_article_status != 2
<if test="param.orderCode != '' and param.orderCode != null">
and ldsa.order_code like concat('%',#{param.orderCode},'%')
</if>
<if test="param.consigneeUnit != '' and param.consigneeUnit != null">
and ldsa.consignee_unit like concat('%',#{param.consigneeUnit},'%')
</if>
<if test="param.consigneePerson != '' and param.consigneePerson != null">
and ldsa.consignee_person like concat('%',#{param.consigneePerson},'%')
</if>
<if test="param.consigneePerson != '' and param.consigneePerson != null">
and ldsa.consignee_person like concat('%',#{param.consigneePerson},'%')
</if>
<if test="param.consigneeAddress != '' and param.consigneeAddress != null">
and ldsa.consignee_address like concat('%',#{param.consigneeAddress},'%')
</if>
<if test="param.consigneeMobile != '' and param.consigneeMobile != null">
and ldsa.consignee_mobile like concat('%',#{param.consigneeMobile},'%')
</if>
<if test="param.customerName != '' and param.customerName != null">
and ldsa.customer_name like concat('%',#{param.customerName},'%')
</if>
<if test="param.customerTelephone != '' and param.customerTelephone != null">
and ldsa.customer_telephone like concat('%',#{param.customerTelephone},'%')
</if>
<if test="param.customerAddress != '' and param.customerAddress != null">
and ldsa.customer_address like concat('%',#{param.customerAddress},'%')
</if>
<if test="param.waybillNumber != '' and param.waybillNumber != null">
and ldsa.waybill_number like concat('%',#{param.waybillNumber},'%')
</if>
<if test="param.serviceNumber != '' and param.serviceNumber != null">
and ldsa.service_number like concat('%',#{param.serviceNumber},'%')
</if>
<if test="param.materialName != '' and param.materialName != null">
and t.materialName like concat('%',#{param.materialName},'%')
</if>
</select> </select>
<select id="selectAppcustomList" resultType="com.logpm.distribution.vo.app.DistributionAppReservationVO"> <select id="selectAppcustomList" resultType="com.logpm.distribution.vo.app.DistributionAppReservationVO">
SELECT SELECT

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

@ -28,6 +28,7 @@ import org.springblade.core.mp.base.BaseService;
import org.springblade.core.tool.api.R; import org.springblade.core.tool.api.R;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 配送装车中间表 服务类 * 配送装车中间表 服务类
@ -84,7 +85,7 @@ public interface IDistributionDeliveryInfoService extends BaseService<Distributi
* @param distributionDeliveryInfoDTO * @param distributionDeliveryInfoDTO
* @return * @return
*/ */
IPage<DistributionStockArticleVO> selectDistributionDeliveryorder(IPage<DistributionStockArticleVO> page, DistributionDeliveryInfoDTO distributionDeliveryInfoDTO); IPage<DistributionStockArticleVO> selectDistributionDeliveryorder(IPage<DistributionStockArticleVO> page, Map<String, Object> distributionStockArticle);
/** /**
* 从客户查看订单 * 从客户查看订单
* *

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

@ -146,8 +146,8 @@ public class DistributionDeliveryInfoServiceImpl extends BaseServiceImpl<Distrib
} }
@Override @Override
public IPage<DistributionStockArticleVO> selectDistributionDeliveryorder(IPage<DistributionStockArticleVO> page, DistributionDeliveryInfoDTO distributionDeliveryInfoDTO) { public IPage<DistributionStockArticleVO> selectDistributionDeliveryorder(IPage<DistributionStockArticleVO> page, Map<String, Object> distributionStockArticle) {
List<DistributionStockArticleVO> distributionDeliveryInfoVOS = baseMapper.selectDistributionDeliveryOrderPage(page, distributionDeliveryInfoDTO); List<DistributionStockArticleVO> distributionDeliveryInfoVOS = baseMapper.selectDistributionDeliveryOrderPage(page, distributionStockArticle);
// for (DistributionStockArticleVO distributionDeliveryInfoVO : distributionDeliveryInfoVOS) { // for (DistributionStockArticleVO distributionDeliveryInfoVO : distributionDeliveryInfoVOS) {
// //查询签收数量 // //查询签收数量

10
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java

@ -610,9 +610,14 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
} }
DistributionStockArticleEntity stockArticleEntity = distributionStockArticleMapper.selectById(parcelListEntity.getStockArticleId()); DistributionStockArticleEntity stockArticleEntity = distributionStockArticleMapper.selectById(parcelListEntity.getStockArticleId());
if (shangpeiFlag) { if (shangpeiFlag) {
List<DistributionReservationEntity> reservationEntities = reservationEntityList.stream().filter(r -> Func.isNotEmpty(r.getConsignee()) && r.getConsignee().equals(stockArticleEntity.getCustomerName()) && r.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) && r.getDeliveryPhone().equals(stockArticleEntity.getCustomerTelephone()) && r.getMallName().equals(stockArticleEntity.getMallName())).collect(Collectors.toList()); List<DistributionReservationEntity> reservationEntities = reservationEntityList.stream().filter(r -> Func.isNotEmpty(r.getConsignee()) && r.getConsignee().equals(stockArticleEntity.getCustomerName()) && r.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) && r.getDeliveryPhone().equals(stockArticleEntity.getCustomerTelephone()) && r.getMallName().equals(stockArticleEntity.getMallName())).collect(Collectors.toList());
//查看是否存在满足条件的预约单 //查看是否存在满足条件的预约单
if (reservationEntities.size() == 1) { if (reservationEntities.size() == 1) {
if (Func.isEmpty(distrilbutionloadingscanDTO.getReservationId())){
log.info("异常装车未指定客户");
return Resp.scanFail("请指定客户进行异常装车","请指定客户进行异常装车");
}
return R.fail(5000, "异常装车"); return R.fail(5000, "异常装车");
// return Resp.scanFail("装车失败","程序出错,请联系彪桑"); // return Resp.scanFail("装车失败","程序出错,请联系彪桑");
} else { } else {
@ -624,12 +629,17 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
} }
} }
} else { } else {
shangpeiFlag = reservationEntityList.stream().allMatch(r -> r.getDeliveryType().equals(DistributionTypeConstant.shangpei.getValue())); shangpeiFlag = reservationEntityList.stream().allMatch(r -> r.getDeliveryType().equals(DistributionTypeConstant.shangpei.getValue()));
if (shangpeiFlag) { if (shangpeiFlag) {
List<DistributionReservationEntity> reservationEntities = reservationEntityList.stream().filter(r -> r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && r.getMallName().equals(stockArticleEntity.getMallName())).collect(Collectors.toList()); List<DistributionReservationEntity> reservationEntities = reservationEntityList.stream().filter(r -> r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && r.getMallName().equals(stockArticleEntity.getMallName())).collect(Collectors.toList());
//查询是否满足商配异常装车 //查询是否满足商配异常装车
boolean flag = reservationEntityList.stream().anyMatch(r -> r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && r.getMallName().equals(stockArticleEntity.getMallName())); boolean flag = reservationEntityList.stream().anyMatch(r -> r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && r.getMallName().equals(stockArticleEntity.getMallName()));
if (reservationEntities.size() == 1) { if (reservationEntities.size() == 1) {
if (Func.isEmpty(distrilbutionloadingscanDTO.getReservationId())){
log.info("异常装车未指定客户");
return Resp.scanFail("请指定客户进行异常装车","请指定客户进行异常装车");
}
return R.fail(5000, "异常装车"); return R.fail(5000, "异常装车");
} else { } else {
return Resp.scanFail("装车失败", "窜货"); return Resp.scanFail("装车失败", "窜货");

Loading…
Cancel
Save