提交 5eea29cc authored 作者: 刘海泉's avatar 刘海泉

Merge remote-tracking branch 'origin/dev' into dev

# Conflicts: # performance-api/src/main/java/com/clx/performance/feign/PerformanceFeign.java # performance-api/src/main/java/com/clx/performance/vo/pc/OrderGoodsVO.java # performance-web/src/main/java/com/clx/performance/service/OrderGoodsService.java
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 {
@NotBlank(message = "运单编号不能为空")
private String childNo;
@ApiModelProperty(value = "卸货磅单编号", example = "url")
@NotBlank(message = "交货磅单号不能为空")
private String unloadPoundNo;
@ApiModelProperty(value = "装货毛重(单位吨)", example = "2.46")
@NotNull
private BigDecimal loadRough;
......@@ -50,4 +46,12 @@ public class OrderChildLoadAndUnloadAgainParam extends PositionParam {
@NotEmpty(message = "请上传磅单照片")
private List<String> unloadImageList;
@ApiModelProperty(value = "装货时间")
@NotBlank(message = "装货时间不能为空")
private String loadTime;
@ApiModelProperty(value = "交货时间")
@NotBlank(message = "交货时间不能为空")
private String unloadTime;
}
......@@ -33,4 +33,7 @@ public class OrderChildLoadParam extends PositionParam {
@NotEmpty(message = "请上传磅单照片")
private List<String> loadImageList;
@ApiModelProperty(value = "装货时间")
@NotBlank(message = "装货时间不能为空")
private String loadTime;
}
......@@ -21,10 +21,6 @@ public class OrderChildUnloadParam extends PositionParam {
@NotBlank(message = "运单编号不能为空")
private String childNo;
@ApiModelProperty(value = "卸货磅单编号", example = "url")
@NotBlank(message = "交货磅单号不能为空")
private String unloadPoundNo;
@ApiModelProperty(value = "卸货毛重(单位吨)", example = "2.46")
private BigDecimal unloadRough;
......@@ -35,4 +31,8 @@ public class OrderChildUnloadParam extends PositionParam {
@NotEmpty(message = "请上传磅单照片")
private List<String> unloadImageList;
@ApiModelProperty(value = "交货时间")
@NotBlank(message = "交货时间不能为空")
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;
/**
* @author yangqifa
*/
@Getter
@Setter
@ToString
@NoArgsConstructor
public class OcrRecognitionResultVO {
@ApiModelProperty(value = "毛重", example = "48.36")
private Double grossWeight;
@ApiModelProperty(value = "皮重", example = "16.32")
private Double tareWeight;
}
......@@ -9,6 +9,7 @@ import lombok.Setter;
import lombok.ToString;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
@Getter
......@@ -54,4 +55,15 @@ public class OrderChildPoundInfoVO {
@ApiModelProperty(value = "卸车磅单图片列表")
private List<String> unloadImageList;
@ApiModelProperty(value = "到达货源地时间")
private LocalDateTime arriveSendTime;
@ApiModelProperty(value = "首次装货时间")
private LocalDateTime firstLoadTime;
@ApiModelProperty(value = "到达目的地时间")
private LocalDateTime arriveReceiveTime;
@ApiModelProperty(value = "首次交货时间")
private LocalDateTime firstUnloadTime;
}
\ No newline at end of file
......@@ -56,6 +56,30 @@ public class OrderChildPoundAuditDetailVO {
@ApiModelProperty(value="创建时间",example = "2012-01-01 01:10:10")
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 Double loadGrossWeight;
@ApiModelProperty(value = "装车识别皮重参考")
private Double loadTareWeight;
@ApiModelProperty(value = "卸车识别毛重参考")
private Double unloadGrossWeight;
@ApiModelProperty(value = "卸车识别皮重参考")
private Double unloadTareWeight;
}
\ No newline at end of file
......@@ -67,6 +67,8 @@ public class PageOrderChildPoundAuditVO {
@ApiModelProperty(value="卸车时间",example = "2020-01-01 10:10:10")
private String unloadTime;
@ApiModelProperty("车牌号")
private String truckNo;
......
......@@ -318,8 +318,16 @@
<version>2.0.0-beta7</version>
</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>
......
......@@ -111,8 +111,9 @@ public class OrderChildLoanComponent {
OwnerQuotationDetailVO quotationDetailVO = orderFeign.getQuotationByOrderNo(orderInfoVO.getOrderNo()).getData();
BigDecimal freightFreezeRate = quotationDetailVO.getFreightFreezeRate();
if (freightFreezeRate.compareTo(new BigDecimal(100)) == 0) {
//百分百预付不需要考虑借款账户
if (freightFreezeRate.compareTo(new BigDecimal(100)) == 0
|| !Objects.equals(orderGoods.getPlatformFreightQuotationTaxType(),QuotationEnum.PlatformFreightQuotationTaxType.YES.getCode())) {
//百分百预付不需要考虑借款账户或者平台运费报价税类型为未税
log.info("2.百分百预付不需要考虑借款账户");
return;
}
......
......@@ -30,10 +30,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.util.Date;
import java.util.LinkedList;
import java.util.List;
import java.util.Set;
import java.util.*;
/**
* 货单最晚接单时间、最晚到达货源地时间处理
......@@ -121,6 +118,9 @@ public class OrderGoodsStatusLazyComponent implements InitializingBean {
continue;
}
OrderGoods orderGoods = optional.get();
// if(Objects.equals(orderGoods.getOrderGoodsStatus(),OrderGoodsStatusEnum.Status.CANCEL.getCode())){
// continue;
// }
if (orderGoods.getResidueTransportWeight().compareTo(BigDecimal.ZERO) == 0) {
List<OrderChild> orderChildren = orderChildDao.selectInTransitOrderChildByOrderGoodsNo(orderGoodsNo);
......
......@@ -189,4 +189,10 @@ public class AppDriverOrderChildController {
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.msl.common.dao.BaseDao;
/**
* @author yangqifa
*/
public interface OcrRecognitionDao extends BaseDao<OcrRecognitionMapper, OcrRecognition, Integer> {
}
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.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository;
/**
* @author yangqifa
*/
@Repository
public class OcrRecognitionDaoImpl extends BaseDaoImpl<OcrRecognitionMapper, OcrRecognition, Integer> implements OcrRecognitionDao {
}
......@@ -63,7 +63,7 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
.set(OrderChild::getLoadRough, item.getLoadRough())
.set(OrderChild::getLoadTare, item.getLoadTare())
.set(OrderChild::getLoadNet, item.getLoadNet())
.set(OrderChild::getFirstLoadTime,item.getFirstLoadTime())
.set(OrderChild::getLoadTime, item.getLoadTime())
.set(OrderChild::getWeight, item.getWeight())
.set(OrderChild::getFreight, item.getFreight())
......@@ -81,7 +81,7 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
.set(OrderChild::getUnloadRough, item.getUnloadRough())
.set(OrderChild::getUnloadTare, item.getUnloadTare())
.set(OrderChild::getUnloadNet, item.getUnloadNet())
.set(OrderChild::getFirstUnloadTime,item.getFirstUnloadTime())
.set(OrderChild::getUnloadTime, item.getUnloadTime())
.set(OrderChild::getPoundStatus, item.getPoundStatus())
.set(OrderChild::getWeight, item.getWeight())
......@@ -96,16 +96,15 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
public boolean updateLoadAndUnload(OrderChild item) {
return update(lUdWrapper()
.eq(OrderChild::getId, item.getId())
.set(OrderChild::getUnloadPoundNo, item.getUnloadPoundNo())
.set(OrderChild::getLoadRough, item.getLoadRough())
.set(OrderChild::getLoadTare, item.getLoadTare())
.set(OrderChild::getLoadNet, item.getLoadNet())
.set(OrderChild::getLoadTime,item.getLoadTime())
.set(OrderChild::getUnloadRough, item.getUnloadRough())
.set(OrderChild::getUnloadTare, item.getUnloadTare())
.set(OrderChild::getUnloadNet, item.getUnloadNet())
.set(OrderChild::getUnloadTime,item.getUnloadTime())
.set(OrderChild::getWeight, item.getWeight())
.set(OrderChild::getFreight, item.getFreight())
.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.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 Double grossWeight;
/**
* 皮重
*/
@ApiModelProperty(value = "皮重")
private Double tareWeight;
/**
* 创建时间
*/
@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> {
private LocalDateTime payTime; //支付时间(抢单时间)
private LocalDateTime arriveSendTime; //到达货源地时间
private LocalDateTime firstLoadTime; //装货时间
private LocalDateTime loadTime; //装车时间
private LocalDateTime arriveReceiveTime; //到达目的地时间
private LocalDateTime firstUnloadTime; //交货时间
private LocalDateTime unloadTime; //卸车时间
private LocalDateTime confirmTime; //司机确认交货时间
private LocalDateTime settleTime; //结算时间
......
......@@ -99,4 +99,6 @@ public interface OrderChildService {
Integer getOrderChildCheck(OrderChildCheckParam param);
void cancelOrderChilds(CancelOrderGoodsParam param);
OcrRecognitionResultVO ocrRecognition(OcrRecognitionParam param);
}
......@@ -104,6 +104,7 @@ public interface OrderGoodsService {
void saveBindTruck(DistributionTruckParam param);
void updateFrightPrice(String orderGoodsNo,BigDecimal pendingOrderFreight);
BigDecimal cancelOrderGoods(CancelOrderGoodsParam param);
......
......@@ -22,9 +22,12 @@ import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
import static com.msl.common.utils.LocalDateTimeUtils.convertLocalDateTimeToDefaultString;
/**
* @author liruixin
* Date 2023-09-19
......@@ -51,12 +54,16 @@ public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditSer
private final OrderChildLogService orderChildLogService;
private final OrderChildService orderChildService;
private final PaymentService paymentService;
private final OcrRecognitionDao ocrRecognitionDao;
@Override
public OrderChildPoundAuditDetailVO getPoundAuditDetail(String childNo) {
OrderChildPoundAudit poundAuditDetail = orderChildPoundAuditDao.getPoundAuditDetail(childNo).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
List<OrderChildImage> loadImages = orderChildImageDao.getImages(childNo, OrderChildImage.Type.LOAD.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, item -> item));
OrderChildPoundAuditDetailVO vo = new OrderChildPoundAuditDetailVO();
vo.setChildNo(childNo);
vo.setLoadImages(loadImages.stream().map(OrderChildImage::getImage).collect(Collectors.toList()));
......@@ -71,6 +78,16 @@ public class OrderChildPoundAuditServiceImpl implements OrderChildPoundAuditSer
vo.setStatus(poundAuditDetail.getStatus());
vo.setRemark(poundAuditDetail.getRemark());
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;
}
......
......@@ -72,15 +72,24 @@ import com.msl.common.utils.LocalDateTimeUtils;
import com.msl.common.utils.gps.GpsUtil;
import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil;
import com.tencentcloudapi.common.Credential;
import com.tencentcloudapi.common.exception.TencentCloudSDKException;
import com.tencentcloudapi.ocr.v20181119.OcrClient;
import com.tencentcloudapi.ocr.v20181119.models.GroupInfo;
import com.tencentcloudapi.ocr.v20181119.models.ItemInfo;
import com.tencentcloudapi.ocr.v20181119.models.SmartStructuralOCRV2Request;
import com.tencentcloudapi.ocr.v20181119.models.SmartStructuralOCRV2Response;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.exception.ExceptionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.math.NumberUtils;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
......@@ -94,6 +103,8 @@ import java.util.concurrent.TimeUnit;
import java.util.function.Supplier;
import java.util.stream.Collectors;
import static com.msl.common.utils.LocalDateTimeUtils.covertStringToDefaultLocalDateTime;
/**
* @Author: aiqinguo
* @Description: 运单表
......@@ -103,6 +114,14 @@ import java.util.stream.Collectors;
@Slf4j
@Service
public class OrderChildServiceImpl implements OrderChildService {
@Value("${tencentcloudapi.credential.secretId}")
private String secretId;
@Value("${tencentcloudapi.credential.secretKey}")
private String secretKey;
@Value("${oss.domain}")
private String ossDomain;
@Autowired
private AmqpTemplate rabbitTemplate;
@Autowired
......@@ -195,6 +214,10 @@ public class OrderChildServiceImpl implements OrderChildService {
@Autowired
private QuotationService quotationService;
@Autowired
private OcrRecognitionDao ocrRecognitionDao;
@Override
public SaveOrderChildVO saveOrderChild(OrderChildSaveParam param) {
......@@ -910,11 +933,11 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChild.setLoadRough(param.getLoadRough());
orderChild.setLoadTare(param.getLoadTare());
orderChild.setLoadNet(loadNet);
orderChild.setLoadTime(LocalDateTime.now());
orderChild.setLoadTime(covertStringToDefaultLocalDateTime(param.getLoadTime()));
orderChild.setWeight(orderChildWeightCalc(orderChild));
orderChild.setFreight(orderChildFreightCalc(orderChild));
orderChild.setStatus(OrderChildEnum.Status.LOAD.getCode());
orderChild.setFirstLoadTime(LocalDateTime.now());
orderChildDao.updateLoad(orderChild);
orderChildImageDao.batchSaveEntity(imageList);
......@@ -948,10 +971,9 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChild.setLoadRough(param.getLoadRough());
orderChild.setLoadTare(param.getLoadTare());
orderChild.setLoadNet(loadNet);
orderChild.setLoadTime(LocalDateTime.now());
orderChild.setLoadTime(covertStringToDefaultLocalDateTime(param.getLoadTime()));
orderChild.setWeight(orderChildWeightCalc(orderChild));
orderChild.setFreight(orderChildFreightCalc(orderChild));
//更新货单吨数
updateOrderGoodsAmountLoad(orderGoods,childNo, dif,OrderGoodsStatusEnum.Status.GO_TO_SEND.getCode());
......@@ -1079,15 +1101,15 @@ public class OrderChildServiceImpl implements OrderChildService {
imageList.add(image);
}
orderChild.setUnloadPoundNo(param.getUnloadPoundNo());
orderChild.setUnloadRough(param.getUnloadRough());
orderChild.setUnloadTare(param.getUnloadTare());
orderChild.setUnloadNet(loadNet);
orderChild.setUnloadTime(LocalDateTime.now());
orderChild.setUnloadTime(covertStringToDefaultLocalDateTime(param.getUnloadTime()));
orderChild.setWeight(orderChildWeightCalc(orderChild));
orderChild.setStatus(OrderChildEnum.Status.UNLOAD.getCode());
orderChild.setPoundStatus(OrderChildPoundAuditEnum.Status.AUDIT.getCode());
orderChild.setFreight(orderChildFreightCalc(orderChild));
orderChild.setFirstUnloadTime(LocalDateTime.now());
OrderChildPoundAudit audit = new OrderChildPoundAudit();
audit.setChildNo(childNo);
......@@ -1141,11 +1163,10 @@ public class OrderChildServiceImpl implements OrderChildService {
imageList.add(image);
}
orderChild.setUnloadPoundNo(param.getUnloadPoundNo());
orderChild.setUnloadRough(param.getUnloadRough());
orderChild.setUnloadTare(param.getUnloadTare());
orderChild.setUnloadNet(loadNet);
orderChild.setUnloadTime(LocalDateTime.now());
orderChild.setUnloadTime(covertStringToDefaultLocalDateTime(param.getUnloadTime()));
orderChild.setWeight(orderChildWeightCalc(orderChild));
orderChild.setPoundStatus(OrderChildPoundAuditEnum.Status.AUDIT.getCode());
orderChild.setFreight(orderChildFreightCalc(orderChild));
......@@ -1247,8 +1268,9 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChild.setUnloadNet(unLoadNet);
orderChild.setWeight(orderChildWeightCalc(orderChild));
orderChild.setFreight(orderChildFreightCalc(orderChild));
orderChild.setPoundStatus(OrderChildPoundAuditEnum.Status.AUDIT.getCode());
orderChild.setLoadTime(covertStringToDefaultLocalDateTime(param.getLoadTime()));
orderChild.setUnloadTime(covertStringToDefaultLocalDateTime(param.getUnloadTime()));
OrderChildPoundAudit audit = new OrderChildPoundAudit();
audit.setChildNo(childNo);
......@@ -2723,6 +2745,44 @@ public class OrderChildServiceImpl implements OrderChildService {
}
}
@Override
public OcrRecognitionResultVO ocrRecognition(OcrRecognitionParam param) {
OcrRecognitionResultVO vo = new OcrRecognitionResultVO();
try{
Credential cred = new Credential(secretId, secretKey);
OcrClient client = new OcrClient(cred, "ap-beijing");
String[] itemNames = {"毛重", "皮重"};
SmartStructuralOCRV2Request req = new SmartStructuralOCRV2Request();
req.setImageUrl(ossDomain+param.getImageUrl());
req.setItemNames(itemNames);
SmartStructuralOCRV2Response resp = client.SmartStructuralOCRV2(req);
for (GroupInfo groupInfo : resp.getStructuralList()) {
ItemInfo itemInfo = groupInfo.getGroups()[0].getLines()[0];
String autoName = itemInfo.getKey().getAutoName();
String autoContent = itemInfo.getValue().getAutoContent();
if (NumberUtils.isCreatable(autoContent)) {
if ("毛重".equals(autoName)) {
vo.setGrossWeight(Double.valueOf(autoContent));
}else if ("皮重".equals(autoName)) {
vo.setTareWeight(Double.valueOf(autoContent));
}
}
}
//保存识别结果
OcrRecognition ocrRecognition = new OcrRecognition();
ocrRecognition.setChildNo(param.getChildNo());
ocrRecognition.setImageType(param.getImageType());
ocrRecognition.setImageUrl(param.getImageUrl());
ocrRecognition.setGrossWeight(vo.getGrossWeight());
ocrRecognition.setTareWeight(vo.getTareWeight());
ocrRecognitionDao.saveEntity(ocrRecognition);
} catch (TencentCloudSDKException e) {
log.error(e.getMessage(),e);
}
return vo;
}
private String generateChildTruckInfo(OrderChild child){
return child.getTruckNo() + "_" + child.getTruckId() + "_" + child.getDriverUserNo();
......
......@@ -85,7 +85,7 @@ public class OrderChildSqlProvider {
public String pagePoundAuditList(@Param("page") Page<PageOrderChildPoundAuditVO> page, @Param("param") PagePoundAuditParam param) {
return new SQL(){{
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(load_time, '%Y-%m-%d %H:%i:%s') as loadTime," +
"date_format(unload_time, '%Y-%m-%d %H:%i:%s') as unloadTime ");
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论