提交 0b834f60 authored 作者: 李瑞鑫's avatar 李瑞鑫

Merge branch 'v18.5_pound_list_ocr_20240701'

...@@ -156,7 +156,19 @@ public enum PerformanceResultEnum implements ResultEnum { ...@@ -156,7 +156,19 @@ public enum PerformanceResultEnum implements ResultEnum {
OWNER_LOAN_RECORD_PAY_WAIT_ERROR(1853,"当前借款单状态不是待付款"), OWNER_LOAN_RECORD_PAY_WAIT_ERROR(1853,"当前借款单状态不是待付款"),
OWNER_LOAN_PAYMENT_STATUS_ERROR(1854, "执行借款审批失败,请稍后重试"), OWNER_LOAN_PAYMENT_STATUS_ERROR(1854, "执行借款审批失败,请稍后重试"),
OWNER_LOAN_PAY_STATUS_ERROR(1855, "付款失败"), OWNER_LOAN_PAY_STATUS_ERROR(1855, "付款失败"),
DATA_STATUS_ERROR(1856, "当前状态有误") DATA_STATUS_ERROR(1856, "当前状态有误"),
/**
* 磅单OCR识别
*/
OCR_RECOGNITION_ERROR(2101, "OCR识别错误"),
OCR_RECOGNITION_REPEAT(2102, "同一个运单只能识别一次"),
LOAD_TIME_BEFORE_ARRIVE_SEND_TIME(2103, "装货时间不可早于到达货源地时间"),
LOAD_TIME_AFTER_NOW(2104, "装货时间不可晚于当前时间"),
LOAD_TIME_AFTER_FIRST_LOAD_TIME(2105, "装货时间不可晚于首次提交时间"),
UNLOAD_TIME_BEFORE_ARRIVE_RECEIVE_TIME(2106, "交货时间不可早于到达目的地时间"),
UNLOAD_TIME_AFTER_NOW(2107, "交货时间不可晚于当前时间"),
UNLOAD_TIME_AFTER_FIRST_UNLOAD_TIME(2108, "交货时间不可晚于首次提交时间"),
; ;
private final int code; private final int code;
private final String msg; private final String msg;
......
package com.clx.performance.param.app;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* @author yangqifa
*/
@Getter
@Setter
@NoArgsConstructor
public class OcrRecognitionParam {
@ApiModelProperty(value = "运单编号", example = "100000000")
@NotBlank(message = "运单编号不能为空")
private String childNo;
@ApiModelProperty(value = "图片类型,1:装车磅单,2:卸车磅单")
@NotNull(message = "图片类型不能为空")
private Integer imageType;
@ApiModelProperty(value = "磅单图片url")
@NotBlank(message = "磅单图片url不能为空")
private String imageUrl;
}
...@@ -21,10 +21,6 @@ public class OrderChildLoadAndUnloadAgainParam extends PositionParam { ...@@ -21,10 +21,6 @@ public class OrderChildLoadAndUnloadAgainParam extends PositionParam {
@NotBlank(message = "运单编号不能为空") @NotBlank(message = "运单编号不能为空")
private String childNo; private String childNo;
@ApiModelProperty(value = "卸货磅单编号", example = "url")
@NotBlank(message = "交货磅单号不能为空")
private String unloadPoundNo;
@ApiModelProperty(value = "装货毛重(单位吨)", example = "2.46") @ApiModelProperty(value = "装货毛重(单位吨)", example = "2.46")
@NotNull @NotNull
private BigDecimal loadRough; private BigDecimal loadRough;
...@@ -50,4 +46,10 @@ public class OrderChildLoadAndUnloadAgainParam extends PositionParam { ...@@ -50,4 +46,10 @@ public class OrderChildLoadAndUnloadAgainParam extends PositionParam {
@NotEmpty(message = "请上传磅单照片") @NotEmpty(message = "请上传磅单照片")
private List<String> unloadImageList; private List<String> unloadImageList;
@ApiModelProperty(value = "装货时间")
private String loadTime;
@ApiModelProperty(value = "交货时间")
private String unloadTime;
} }
...@@ -5,7 +5,6 @@ import lombok.Getter; ...@@ -5,7 +5,6 @@ import lombok.Getter;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import lombok.Setter; import lombok.Setter;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
...@@ -33,4 +32,6 @@ public class OrderChildLoadParam extends PositionParam { ...@@ -33,4 +32,6 @@ public class OrderChildLoadParam extends PositionParam {
@NotEmpty(message = "请上传磅单照片") @NotEmpty(message = "请上传磅单照片")
private List<String> loadImageList; private List<String> loadImageList;
@ApiModelProperty(value = "装货时间")
private String loadTime;
} }
...@@ -5,10 +5,8 @@ import lombok.Getter; ...@@ -5,10 +5,8 @@ import lombok.Getter;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import lombok.Setter; import lombok.Setter;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List; import java.util.List;
...@@ -21,10 +19,6 @@ public class OrderChildUnloadParam extends PositionParam { ...@@ -21,10 +19,6 @@ public class OrderChildUnloadParam extends PositionParam {
@NotBlank(message = "运单编号不能为空") @NotBlank(message = "运单编号不能为空")
private String childNo; private String childNo;
@ApiModelProperty(value = "卸货磅单编号", example = "url")
@NotBlank(message = "交货磅单号不能为空")
private String unloadPoundNo;
@ApiModelProperty(value = "卸货毛重(单位吨)", example = "2.46") @ApiModelProperty(value = "卸货毛重(单位吨)", example = "2.46")
private BigDecimal unloadRough; private BigDecimal unloadRough;
...@@ -35,4 +29,7 @@ public class OrderChildUnloadParam extends PositionParam { ...@@ -35,4 +29,7 @@ public class OrderChildUnloadParam extends PositionParam {
@NotEmpty(message = "请上传磅单照片") @NotEmpty(message = "请上传磅单照片")
private List<String> unloadImageList; private List<String> unloadImageList;
@ApiModelProperty(value = "交货时间")
private String unloadTime;
} }
package com.clx.performance.vo.app;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import java.math.BigDecimal;
/**
* @author yangqifa
*/
@Getter
@Setter
@ToString
@NoArgsConstructor
public class OcrRecognitionResultVO {
@ApiModelProperty(value = "毛重", example = "48.36")
private BigDecimal grossWeight;
@ApiModelProperty(value = "皮重", example = "16.32")
private BigDecimal tareWeight;
}
package com.clx.performance.vo.app; package com.clx.performance.vo.app;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.msl.common.convertor.type.MoneyOutConvert; import com.msl.common.convertor.type.MoneyOutConvert;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Getter; import lombok.Getter;
...@@ -54,4 +53,21 @@ public class OrderChildPoundInfoVO { ...@@ -54,4 +53,21 @@ public class OrderChildPoundInfoVO {
@ApiModelProperty(value = "卸车磅单图片列表") @ApiModelProperty(value = "卸车磅单图片列表")
private List<String> unloadImageList; private List<String> unloadImageList;
@ApiModelProperty(value = "到达货源地时间")
private String arriveSendTime;
@ApiModelProperty(value = "首次装货时间")
private String firstLoadTime;
@ApiModelProperty(value = "到达目的地时间")
private String arriveReceiveTime;
@ApiModelProperty(value = "首次交货时间")
private String firstUnloadTime;
@ApiModelProperty(value = "装货时间")
private String loadTime;
@ApiModelProperty(value = "交货时间")
private String unloadTime;
} }
\ No newline at end of file
...@@ -56,6 +56,30 @@ public class OrderChildPoundAuditDetailVO { ...@@ -56,6 +56,30 @@ public class OrderChildPoundAuditDetailVO {
@ApiModelProperty(value="创建时间",example = "2012-01-01 01:10:10") @ApiModelProperty(value="创建时间",example = "2012-01-01 01:10:10")
private String createTime; private String createTime;
@ApiModelProperty("车牌号")
private String truckNo;
@ApiModelProperty(value = "装车时间")
private String loadTime;
@ApiModelProperty(value = "卸车时间")
private String unloadTime;
@ApiModelProperty(value = "发货地址")
private String sendAddress;
@ApiModelProperty(value = "收货地址")
private String receiveAddress;
@ApiModelProperty(value = "装车识别毛重参考")
private BigDecimal loadGrossWeight;
@ApiModelProperty(value = "装车识别皮重参考")
private BigDecimal loadTareWeight;
@ApiModelProperty(value = "卸车识别毛重参考")
private BigDecimal unloadGrossWeight;
@ApiModelProperty(value = "卸车识别皮重参考")
private BigDecimal unloadTareWeight;
} }
\ No newline at end of file
...@@ -67,6 +67,8 @@ public class PageOrderChildPoundAuditVO { ...@@ -67,6 +67,8 @@ public class PageOrderChildPoundAuditVO {
@ApiModelProperty(value="卸车时间",example = "2020-01-01 10:10:10") @ApiModelProperty(value="卸车时间",example = "2020-01-01 10:10:10")
private String unloadTime; private String unloadTime;
@ApiModelProperty("车牌号")
private String truckNo;
......
...@@ -319,7 +319,16 @@ ...@@ -319,7 +319,16 @@
<version>2.0.0-beta7</version> <version>2.0.0-beta7</version>
</dependency> </dependency>
<dependency>
<groupId>com.tencentcloudapi</groupId>
<artifactId>tencentcloud-sdk-java-common</artifactId>
<version>LATEST</version>
</dependency>
<dependency>
<groupId>com.tencentcloudapi</groupId>
<artifactId>tencentcloud-sdk-java-ocr</artifactId>
<version>LATEST</version>
</dependency>
</dependencies> </dependencies>
......
package com.clx.performance.config;
import lombok.Getter;
import lombok.Setter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
/**
* @author yangqifa
*/
@Configuration
@Getter
@Setter
@ConfigurationProperties(prefix = "tencentcloudapi.credential")
public class TencentCloudApiOcrConfig {
private String secretId;
private String secretKey;
}
...@@ -189,4 +189,10 @@ public class AppDriverOrderChildController { ...@@ -189,4 +189,10 @@ public class AppDriverOrderChildController {
return Result.page(page.getRecords(), page.getTotal(), page.getPages()); return Result.page(page.getRecords(), page.getTotal(), page.getPages());
} }
@ApiOperation(value = "磅单OCR识别", notes = "<br>By:杨启发")
@PostMapping("/ocrRecognition")
public Result<OcrRecognitionResultVO> ocrRecognition(@RequestBody @Validated OcrRecognitionParam param) {
return Result.ok(orderChildService.ocrRecognition(param));
}
} }
package com.clx.performance.dao;
import com.clx.performance.mapper.OcrRecognitionMapper;
import com.clx.performance.model.OcrRecognition;
import com.clx.performance.param.app.OcrRecognitionParam;
import com.msl.common.dao.BaseDao;
/**
* @author yangqifa
*/
public interface OcrRecognitionDao extends BaseDao<OcrRecognitionMapper, OcrRecognition, Integer> {
boolean exists(OcrRecognitionParam param);
}
package com.clx.performance.dao.impl;
import com.clx.performance.dao.OcrRecognitionDao;
import com.clx.performance.mapper.OcrRecognitionMapper;
import com.clx.performance.model.OcrRecognition;
import com.clx.performance.param.app.OcrRecognitionParam;
import com.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository;
/**
* @author yangqifa
*/
@Repository
public class OcrRecognitionDaoImpl extends BaseDaoImpl<OcrRecognitionMapper, OcrRecognition, Integer> implements OcrRecognitionDao {
@Override
public boolean exists(OcrRecognitionParam param) {
return baseMapper.exists(lQrWrapper()
.eq(OcrRecognition::getChildNo, param.getChildNo())
.eq(OcrRecognition::getImageType, param.getImageType()));
}
}
...@@ -63,7 +63,7 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild, ...@@ -63,7 +63,7 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
.set(OrderChild::getLoadRough, item.getLoadRough()) .set(OrderChild::getLoadRough, item.getLoadRough())
.set(OrderChild::getLoadTare, item.getLoadTare()) .set(OrderChild::getLoadTare, item.getLoadTare())
.set(OrderChild::getLoadNet, item.getLoadNet()) .set(OrderChild::getLoadNet, item.getLoadNet())
.set(OrderChild::getFirstLoadTime,item.getFirstLoadTime())
.set(OrderChild::getLoadTime, item.getLoadTime()) .set(OrderChild::getLoadTime, item.getLoadTime())
.set(OrderChild::getWeight, item.getWeight()) .set(OrderChild::getWeight, item.getWeight())
.set(OrderChild::getFreight, item.getFreight()) .set(OrderChild::getFreight, item.getFreight())
...@@ -81,7 +81,7 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild, ...@@ -81,7 +81,7 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
.set(OrderChild::getUnloadRough, item.getUnloadRough()) .set(OrderChild::getUnloadRough, item.getUnloadRough())
.set(OrderChild::getUnloadTare, item.getUnloadTare()) .set(OrderChild::getUnloadTare, item.getUnloadTare())
.set(OrderChild::getUnloadNet, item.getUnloadNet()) .set(OrderChild::getUnloadNet, item.getUnloadNet())
.set(OrderChild::getFirstUnloadTime,item.getFirstUnloadTime())
.set(OrderChild::getUnloadTime, item.getUnloadTime()) .set(OrderChild::getUnloadTime, item.getUnloadTime())
.set(OrderChild::getPoundStatus, item.getPoundStatus()) .set(OrderChild::getPoundStatus, item.getPoundStatus())
.set(OrderChild::getWeight, item.getWeight()) .set(OrderChild::getWeight, item.getWeight())
...@@ -96,16 +96,15 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild, ...@@ -96,16 +96,15 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
public boolean updateLoadAndUnload(OrderChild item) { public boolean updateLoadAndUnload(OrderChild item) {
return update(lUdWrapper() return update(lUdWrapper()
.eq(OrderChild::getId, item.getId()) .eq(OrderChild::getId, item.getId())
.set(OrderChild::getUnloadPoundNo, item.getUnloadPoundNo()) .set(OrderChild::getUnloadPoundNo, item.getUnloadPoundNo())
.set(OrderChild::getLoadRough, item.getLoadRough()) .set(OrderChild::getLoadRough, item.getLoadRough())
.set(OrderChild::getLoadTare, item.getLoadTare()) .set(OrderChild::getLoadTare, item.getLoadTare())
.set(OrderChild::getLoadNet, item.getLoadNet()) .set(OrderChild::getLoadNet, item.getLoadNet())
.set(OrderChild::getLoadTime,item.getLoadTime())
.set(OrderChild::getUnloadRough, item.getUnloadRough()) .set(OrderChild::getUnloadRough, item.getUnloadRough())
.set(OrderChild::getUnloadTare, item.getUnloadTare()) .set(OrderChild::getUnloadTare, item.getUnloadTare())
.set(OrderChild::getUnloadNet, item.getUnloadNet()) .set(OrderChild::getUnloadNet, item.getUnloadNet())
.set(OrderChild::getUnloadTime,item.getUnloadTime())
.set(OrderChild::getWeight, item.getWeight()) .set(OrderChild::getWeight, item.getWeight())
.set(OrderChild::getFreight, item.getFreight()) .set(OrderChild::getFreight, item.getFreight())
.set(OrderChild::getPoundStatus, item.getPoundStatus()) .set(OrderChild::getPoundStatus, item.getPoundStatus())
......
package com.clx.performance.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.clx.performance.model.OcrRecognition;
/**
* @author yangqifa
*/
public interface OcrRecognitionMapper extends BaseMapper<OcrRecognition> {
}
package com.clx.performance.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.msl.common.config.KeyColumn;
import com.msl.common.model.HasKey;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;
/**
* @author yangqifa
*/
@Data
public class OcrRecognition implements HasKey<Integer> {
/**
* 主键ID
*/
@TableId(value = "id", type = IdType.AUTO)
@ApiModelProperty(value = "主键ID")
private Integer id;
/**
* 运单编号
*/
@ApiModelProperty(value = "运单编号")
private String childNo;
/**
* 图片类型,1:装车磅单,2:卸车磅单
*/
@ApiModelProperty(value = "图片类型,1:装车磅单,2:卸车磅单")
private Integer imageType;
/**
* 磅单图片url
*/
@ApiModelProperty(value = "磅单图片url")
private String imageUrl;
/**
* 毛重
*/
@ApiModelProperty(value = "毛重")
private BigDecimal grossWeight;
/**
* 皮重
*/
@ApiModelProperty(value = "皮重")
private BigDecimal tareWeight;
/**
* OCR识别的原始结果
*/
@ApiModelProperty(value = "OCR识别的原始结果")
private String originalResult;
/**
* 创建时间
*/
@ApiModelProperty(value = "创建时间")
private Date createdTime;
/**
* 更新时间
*/
@ApiModelProperty(value = "更新时间")
private Date modifiedTime;
@KeyColumn("id")
@Override
public Integer gainKey() {
return id;
}
}
\ No newline at end of file
...@@ -80,8 +80,10 @@ public class OrderChild implements HasKey<Integer> { ...@@ -80,8 +80,10 @@ public class OrderChild implements HasKey<Integer> {
private LocalDateTime payTime; //支付时间(抢单时间) private LocalDateTime payTime; //支付时间(抢单时间)
private LocalDateTime arriveSendTime; //到达货源地时间 private LocalDateTime arriveSendTime; //到达货源地时间
private LocalDateTime firstLoadTime; //装货时间
private LocalDateTime loadTime; //装车时间 private LocalDateTime loadTime; //装车时间
private LocalDateTime arriveReceiveTime; //到达目的地时间 private LocalDateTime arriveReceiveTime; //到达目的地时间
private LocalDateTime firstUnloadTime; //交货时间
private LocalDateTime unloadTime; //卸车时间 private LocalDateTime unloadTime; //卸车时间
private LocalDateTime confirmTime; //司机确认交货时间 private LocalDateTime confirmTime; //司机确认交货时间
private LocalDateTime settleTime; //结算时间 private LocalDateTime settleTime; //结算时间
......
...@@ -99,4 +99,6 @@ public interface OrderChildService { ...@@ -99,4 +99,6 @@ public interface OrderChildService {
Integer getOrderChildCheck(OrderChildCheckParam param); Integer getOrderChildCheck(OrderChildCheckParam param);
void cancelOrderChilds(CancelOrderGoodsParam param); void cancelOrderChilds(CancelOrderGoodsParam param);
OcrRecognitionResultVO ocrRecognition(OcrRecognitionParam param);
} }
...@@ -22,9 +22,12 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -22,9 +22,12 @@ import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.Objects; import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.msl.common.utils.LocalDateTimeUtils.convertLocalDateTimeToDefaultString;
/** /**
* @author liruixin * @author liruixin
* Date 2023-09-19 * Date 2023-09-19
...@@ -51,12 +54,16 @@ public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditSer ...@@ -51,12 +54,16 @@ public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditSer
private final OrderChildLogService orderChildLogService; private final OrderChildLogService orderChildLogService;
private final OrderChildService orderChildService; private final OrderChildService orderChildService;
private final PaymentService paymentService; private final PaymentService paymentService;
private final OcrRecognitionDao ocrRecognitionDao;
@Override @Override
public OrderChildPoundAuditDetailVO getPoundAuditDetail(String childNo) { public OrderChildPoundAuditDetailVO getPoundAuditDetail(String childNo) {
OrderChildPoundAudit poundAuditDetail = orderChildPoundAuditDao.getPoundAuditDetail(childNo).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND); OrderChildPoundAudit poundAuditDetail = orderChildPoundAuditDao.getPoundAuditDetail(childNo).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
List<OrderChildImage> loadImages = orderChildImageDao.getImages(childNo, OrderChildImage.Type.LOAD.getCode()); List<OrderChildImage> loadImages = orderChildImageDao.getImages(childNo, OrderChildImage.Type.LOAD.getCode());
List<OrderChildImage> unloadImages = orderChildImageDao.getImages(childNo, OrderChildImage.Type.UNLOAD.getCode()); List<OrderChildImage> unloadImages = orderChildImageDao.getImages(childNo, OrderChildImage.Type.UNLOAD.getCode());
OrderChild orderChild = orderChildDao.getByChildNo(childNo).get();
List<OcrRecognition> ocrRecognitionList = ocrRecognitionDao.listByField(OcrRecognition::getChildNo, childNo);
Map<Integer, OcrRecognition> imageTypeOcrRecognitionMap = ocrRecognitionList.stream().collect(Collectors.toMap(OcrRecognition::getImageType, v -> v,(k1,k2)->k1));
OrderChildPoundAuditDetailVO vo = new OrderChildPoundAuditDetailVO(); OrderChildPoundAuditDetailVO vo = new OrderChildPoundAuditDetailVO();
vo.setChildNo(childNo); vo.setChildNo(childNo);
vo.setLoadImages(loadImages.stream().map(OrderChildImage::getImage).collect(Collectors.toList())); vo.setLoadImages(loadImages.stream().map(OrderChildImage::getImage).collect(Collectors.toList()));
...@@ -71,6 +78,16 @@ public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditSer ...@@ -71,6 +78,16 @@ public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditSer
vo.setStatus(poundAuditDetail.getStatus()); vo.setStatus(poundAuditDetail.getStatus());
vo.setRemark(poundAuditDetail.getRemark()); vo.setRemark(poundAuditDetail.getRemark());
vo.setRejectType(poundAuditDetail.getRejectType()); vo.setRejectType(poundAuditDetail.getRejectType());
vo.setTruckNo(orderChild.getTruckNo());
vo.setLoadTime(orderChild.getLoadTime()==null?null:convertLocalDateTimeToDefaultString(orderChild.getLoadTime()));
vo.setUnloadTime(orderChild.getUnloadTime()==null?null:convertLocalDateTimeToDefaultString(orderChild.getUnloadTime()));
vo.setSendAddress(orderChild.getSendAddress());
vo.setReceiveAddress(orderChild.getReceiveAddress());
vo.setLoadGrossWeight(imageTypeOcrRecognitionMap.getOrDefault(OrderChildImage.Type.LOAD.getCode(),new OcrRecognition()).getGrossWeight());
vo.setLoadTareWeight(imageTypeOcrRecognitionMap.getOrDefault(OrderChildImage.Type.LOAD.getCode(),new OcrRecognition()).getTareWeight());
vo.setUnloadGrossWeight(imageTypeOcrRecognitionMap.getOrDefault(OrderChildImage.Type.UNLOAD.getCode(),new OcrRecognition()).getGrossWeight());
vo.setUnloadTareWeight(imageTypeOcrRecognitionMap.getOrDefault(OrderChildImage.Type.UNLOAD.getCode(),new OcrRecognition()).getTareWeight());
return vo; return vo;
} }
...@@ -235,6 +252,9 @@ public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditSer ...@@ -235,6 +252,9 @@ public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditSer
//本次调整金额 //本次调整金额
BigDecimal platformServiceFeeNew = BigDecimal.ZERO; BigDecimal platformServiceFeeNew = BigDecimal.ZERO;
log.info("运单号 {} ,原始冻结金额 {} ",orderChild.getChildNo(),platformServiceFee); log.info("运单号 {} ,原始冻结金额 {} ",orderChild.getChildNo(),platformServiceFee);
if(Objects.isNull(platformServiceFee)){
return PaymentDTO.builder().changeDeposit(null).platformServiceFeeNew(null).build();
}
if(freight.compareTo(BigDecimal.ZERO)<=0){ if(freight.compareTo(BigDecimal.ZERO)<=0){
return PaymentDTO.builder().changeDeposit(platformServiceFee.multiply(new BigDecimal("-1"))).platformServiceFeeNew(platformServiceFeeNew).build(); return PaymentDTO.builder().changeDeposit(platformServiceFee.multiply(new BigDecimal("-1"))).platformServiceFeeNew(platformServiceFeeNew).build();
} }
......
...@@ -383,7 +383,7 @@ public class PaymentServiceImpl implements PaymentService { ...@@ -383,7 +383,7 @@ public class PaymentServiceImpl implements PaymentService {
orderPaymentDao.selectByRelationNo(orderNo,operation,paymentItem).orNull(); orderPaymentDao.selectByRelationNo(orderNo,operation,paymentItem).orNull();
if (null == orderPaymentOptional){ if (null == orderPaymentOptional){
log.error("数据不存在 {}, {}" ,orderNo,msg); log.error("数据不存在 {}, {}" ,orderNo,msg);
return; throw new ServiceSystemException(PerformanceResultEnum.DATA_NOT_FIND,"数据不存在") ;
} }
orderPaymentOptional.setStatus(PaymentStatusEnum.FAIL.getValue()); orderPaymentOptional.setStatus(PaymentStatusEnum.FAIL.getValue());
orderPaymentOptional.setReason(msg); orderPaymentOptional.setReason(msg);
...@@ -396,8 +396,7 @@ public class PaymentServiceImpl implements PaymentService { ...@@ -396,8 +396,7 @@ public class PaymentServiceImpl implements PaymentService {
OrderPayment orderPaymentOptional = OrderPayment orderPaymentOptional =
orderPaymentDao.selectByRelationNo(orderNo,operation,paymentItem).orNull(); orderPaymentDao.selectByRelationNo(orderNo,operation,paymentItem).orNull();
if (null == orderPaymentOptional){ if (null == orderPaymentOptional){
log.error("数据不存在 {}, {}" ,orderNo); throw new ServiceSystemException(PerformanceResultEnum.DATA_NOT_FIND,"数据不存在") ;
return;
} }
orderPaymentOptional.setStatus(PaymentStatusEnum.SUCCESS.getValue()); orderPaymentOptional.setStatus(PaymentStatusEnum.SUCCESS.getValue());
orderPaymentDao.updateEntityByKey(orderPaymentOptional); orderPaymentDao.updateEntityByKey(orderPaymentOptional);
......
...@@ -85,7 +85,7 @@ public class OrderChildSqlProvider { ...@@ -85,7 +85,7 @@ public class OrderChildSqlProvider {
public String pagePoundAuditList(@Param("page") Page<PageOrderChildPoundAuditVO> page, @Param("param") PagePoundAuditParam param) { public String pagePoundAuditList(@Param("page") Page<PageOrderChildPoundAuditVO> page, @Param("param") PagePoundAuditParam param) {
return new SQL(){{ return new SQL(){{
SELECT("child_no,pound_status as status,goods_name,send_address,receive_address,driver_name," + SELECT("child_no,pound_status as status,goods_name,send_address,receive_address,driver_name," +
"driver_mobile,load_net,unload_net,load_rough,load_tare,unload_rough,unload_tare," + "driver_mobile,load_net,unload_net,load_rough,load_tare,unload_rough,unload_tare,truck_no," +
"date_format(pay_time, '%Y-%m-%d %H:%i:%s') as payTime," + "date_format(pay_time, '%Y-%m-%d %H:%i:%s') as payTime," +
"date_format(load_time, '%Y-%m-%d %H:%i:%s') as loadTime," + "date_format(load_time, '%Y-%m-%d %H:%i:%s') as loadTime," +
"date_format(unload_time, '%Y-%m-%d %H:%i:%s') as unloadTime "); "date_format(unload_time, '%Y-%m-%d %H:%i:%s') as unloadTime ");
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论