This commit is contained in:
luojiaquan
2026-09-21 11:18:43 +08:00
17 changed files with 1585 additions and 60 deletions
@@ -23,6 +23,12 @@ public class PrcOrderBill extends BaseEntity
private String trackingNo;
/** transfer order no */
private String transferNo;
/** 所属销售员 */
private String belongSaler;
/** 结算员 */
private String settlementMan;
/** 客服员 */
private String serviceMan;
private Long customerId;
private String customerCode;
private String customerName;
@@ -1,22 +1,216 @@
package com.ruoyi.price.domain;
import java.io.Serializable;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;
/** Extension of prc_order_bill: upstream sync payload snapshot. */
/** 计费订单扩展表:TAB_ORDER 剩余字段 + 同步请求快照 */
@Data
public class PrcOrderBillExt implements Serializable
{
private static final long serialVersionUID = 1L;
/** prc_order_bill.bill_id */
private String billId;
/** business order no */
private String orderNo;
/** upstream request JSON after prc_order_bill persist success */
private String syncJson;
private String upstreamId;
private String lineNo;
private Integer packageNum;
private BigDecimal actualVolume;
private Integer cpType;
private String consigneeMobile;
private String orderReturnsign;
private String tradeType;
private String dutyType;
private String batteryType;
private String consigneeCompanyname;
private String consigneeAddress;
private String consigneeTelephone;
private String consigneeState;
private String consigneeCity;
private String consigneeSuburb;
private String consigneePassportno;
private String consigneeEmail;
private String consigneeTaxno;
private String consigneeTaxnotype;
private String consigneeTaxnocountry;
private String consigneeStreetno;
private String consigneeDoorno;
private String shipperTaxnotype;
private String shipperTaxno;
private String shipperTaxnocountry;
private String customerId;
private String productImagepath;
private String orderTransactionurl;
private BigDecimal orderCargoamount;
private String cargoType;
private String shipperCompanyname;
private String shipperAddress1;
private String shipperAddress2;
private String shipperAddress3;
private String shipperCity;
private String shipperState;
private String shipperPostcode;
private String shipperCountry;
private String shipperTelephone;
private String shipperSuburb;
private String shipperEmail;
private String shipperPassportno;
private String importCode;
private String importName;
private String importCompanyname;
private String importAddress;
private String importAddress2;
private String importAddress3;
private String importTelephone;
private String importEmail;
private String importPostcode;
private String importCity;
private String importState;
private String importCountry;
private String buyerid;
private Integer orderStatus;
private String createAt;
private Integer payType;
private String lineCode;
private String lineName;
private String productType;
private String lineType;
private String cargoName;
private String productFloorCode;
private BigDecimal orderInsurance;
private BigDecimal productSumPrice;
private BigDecimal productSum;
private String shipperDoorno;
private String tariffPaymentAccount;
private BigDecimal topayment;
private String productFloor;
private String latestTrajectory;
private String wayBill;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date pickupDate;
private Integer blBaging;
private Integer blPickup;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date bagDate;
private Integer orgOrderStatus;
private String statusDescription;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date zzDate;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date shippingDate;
private BigDecimal orderType;
private String receivingPhoto;
private BigDecimal freight;
private Integer isReceivable;
private Integer isMeet;
private String billNoReceivable;
private String billNoMeet;
private String countryEingthName;
private Integer isReceivableFee;
private BigDecimal settlementFee;
private String productId;
private BigDecimal serviceFreight;
private Integer isPayFee;
private Integer hasAddedSurcharge;
private BigDecimal yfFee;
private BigDecimal yfTotailFee;
private Integer trajectoryStatus;
private String cargoTypeName;
private String serviceCode;
private String threeCode;
private BigDecimal volumeHeightOld;
private BigDecimal volumeLengthOld;
private BigDecimal volumeWidthOld;
private String registerManOld;
private String bagNoOld;
private String airNoOld;
private String boxSiziOld;
private String bagingManOld;
private String retrievalManOld;
private String invoiceAmountOld;
private String invoiceTitleOld;
private String invoiceWeightOld;
private String skuOld;
private String hsCodeOld;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date registerDateOld;
private String invoiceCurrencyOld;
private Integer trajectorySubState;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date signInTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date warehouseTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date declarationTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date releaseTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date stationTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date takeoffTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date landingTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date clearanceAndDeliveryTime;
private String supplierName;
private String creditCode;
private String otherId;
private String platformCode;
private Integer syncShipmentStatus;
private BigDecimal updateWeight;
private String otherBagNo;
private Integer bagFlag;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date onlineTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date outboundTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date airConfirmDate;
private String shipmentType;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date trackQueryTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date airConfirmTime;
private Integer packageType;
private BigDecimal dimensionalWeightFactor;
private String updateBy;
private String customerPickupSite;
private String barcodeNumber;
private String trackingReflectStatus;
private Integer remotePostcode;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date clearanceTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date arriveStockTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date departureTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date firstDeliverTime;
private BigDecimal hsCodeTaxCount;
private BigDecimal hsCodeTaxAmount;
private String hsCodeTaxCurrency;
private String invoiceUrl;
private String clearanceNo;
private BigDecimal pushWeight;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date internalCheckTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date airDelayTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date firstLandingTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date secondTakeoffTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date desPortCheckTime;
private String stayRemark;
private String missBoxRemark;
private String productChannelId;
private String customerTrackId;
private String registerSite;
private Integer packageTypeFinancial;
private String mrn;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@@ -2,6 +2,7 @@ package com.ruoyi.price.domain.vo;
import java.math.BigDecimal;
import java.util.Date;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.validation.constraints.AssertTrue;
@@ -22,6 +23,12 @@ public class TmsPriceBillRequest extends TmsPriceQuoteRequest
private String trackingNo;
/** transfer order no */
private String transferNo;
/** 所属销售员 */
private String belongSaler;
/** 结算员 */
private String settlementMan;
/** 客服员 */
private String serviceMan;
private String customerName;
private Integer pieces;
private BigDecimal actualWeight;
@@ -36,6 +43,8 @@ public class TmsPriceBillRequest extends TmsPriceQuoteRequest
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date orderTime;
private String orderRemark;
/** 上游 TAB_ORDER 整行,用于写入 prc_order_bill_ext 扩展字段 */
private Map<String, Object> upstreamRow;
@JsonIgnore
@AssertTrue(message = "bizDate is required")
@@ -75,6 +75,12 @@ public class TmsPriceQuoteResult implements Serializable
private String trackingNo;
/** transfer order no */
private String transferNo;
/** 所属销售员 */
private String belongSaler;
/** 结算员 */
private String settlementMan;
/** 客服员 */
private String serviceMan;
private String customerCode;
private String customerName;
/** ACTIVE / MISSING / DISABLED */
@@ -96,7 +102,7 @@ public class TmsPriceQuoteResult implements Serializable
private String orderRemark;
/** true=hit stored quote */
private Boolean fromCache;
/** original TMS sync request JSON from prc_order_bill_ext */
/** 计费请求 JSON(当次响应/日志用,不落库) */
private String requestJson;
/** original billing response JSON from Elasticsearch */
private String responseJson;
@@ -0,0 +1,253 @@
package com.ruoyi.price.oracle;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.Map;
import com.ruoyi.price.domain.PrcOrderBillExt;
/**
* 从 Oracle TAB_ORDER 行填充 prc_order_bill_ext(仅包含未落在 prc_order_bill 的字段)。
*/
public final class OracleOrderBillExtFiller
{
private OracleOrderBillExtFiller() {}
public static void fillFromRow(PrcOrderBillExt ext, Map<String, Object> row)
{
if (ext == null || row == null || row.isEmpty())
{
return;
}
ext.setUpstreamId(str(row, "ID"));
ext.setLineNo(str(row, "LINE_NO"));
ext.setPackageNum(integer(row, "PACKAGE_NUM"));
ext.setActualVolume(decimal(row, "ACTUAL_VOLUME"));
ext.setCpType(integer(row, "CP_TYPE"));
ext.setConsigneeMobile(str(row, "CONSIGNEE_MOBILE"));
ext.setOrderReturnsign(str(row, "ORDER_RETURNSIGN"));
ext.setTradeType(str(row, "TRADE_TYPE"));
ext.setDutyType(str(row, "DUTY_TYPE"));
ext.setBatteryType(str(row, "BATTERY_TYPE"));
ext.setConsigneeCompanyname(str(row, "CONSIGNEE_COMPANYNAME"));
ext.setConsigneeAddress(str(row, "CONSIGNEE_ADDRESS"));
ext.setConsigneeTelephone(str(row, "CONSIGNEE_TELEPHONE"));
ext.setConsigneeState(str(row, "CONSIGNEE_STATE"));
ext.setConsigneeCity(str(row, "CONSIGNEE_CITY"));
ext.setConsigneeSuburb(str(row, "CONSIGNEE_SUBURB"));
ext.setConsigneePassportno(str(row, "CONSIGNEE_PASSPORTNO"));
ext.setConsigneeEmail(str(row, "CONSIGNEE_EMAIL"));
ext.setConsigneeTaxno(str(row, "CONSIGNEE_TAXNO"));
ext.setConsigneeTaxnotype(str(row, "CONSIGNEE_TAXNOTYPE"));
ext.setConsigneeTaxnocountry(str(row, "CONSIGNEE_TAXNOCOUNTRY"));
ext.setConsigneeStreetno(str(row, "CONSIGNEE_STREETNO"));
ext.setConsigneeDoorno(str(row, "CONSIGNEE_DOORNO"));
ext.setShipperTaxnotype(str(row, "SHIPPER_TAXNOTYPE"));
ext.setShipperTaxno(str(row, "SHIPPER_TAXNO"));
ext.setShipperTaxnocountry(str(row, "SHIPPER_TAXNOCOUNTRY"));
ext.setCustomerId(str(row, "CUSTOMER_ID"));
ext.setProductImagepath(str(row, "PRODUCT_IMAGEPATH"));
ext.setOrderTransactionurl(str(row, "ORDER_TRANSACTIONURL"));
ext.setOrderCargoamount(decimal(row, "ORDER_CARGOAMOUNT"));
ext.setCargoType(str(row, "CARGO_TYPE"));
ext.setShipperCompanyname(str(row, "SHIPPER_COMPANYNAME"));
ext.setShipperAddress1(str(row, "SHIPPER_ADDRESS1"));
ext.setShipperAddress2(str(row, "SHIPPER_ADDRESS2"));
ext.setShipperAddress3(str(row, "SHIPPER_ADDRESS3"));
ext.setShipperCity(str(row, "SHIPPER_CITY"));
ext.setShipperState(str(row, "SHIPPER_STATE"));
ext.setShipperPostcode(str(row, "SHIPPER_POSTCODE"));
ext.setShipperCountry(str(row, "SHIPPER_COUNTRY"));
ext.setShipperTelephone(str(row, "SHIPPER_TELEPHONE"));
ext.setShipperSuburb(str(row, "SHIPPER_SUBURB"));
ext.setShipperEmail(str(row, "SHIPPER_EMAIL"));
ext.setShipperPassportno(str(row, "SHIPPER_PASSPORTNO"));
ext.setImportCode(str(row, "IMPORT_CODE"));
ext.setImportName(str(row, "IMPORT_NAME"));
ext.setImportCompanyname(str(row, "IMPORT_COMPANYNAME"));
ext.setImportAddress(str(row, "IMPORT_ADDRESS"));
ext.setImportAddress2(str(row, "IMPORT_ADDRESS2"));
ext.setImportAddress3(str(row, "IMPORT_ADDRESS3"));
ext.setImportTelephone(str(row, "IMPORT_TELEPHONE"));
ext.setImportEmail(str(row, "IMPORT_EMAIL"));
ext.setImportPostcode(str(row, "IMPORT_POSTCODE"));
ext.setImportCity(str(row, "IMPORT_CITY"));
ext.setImportState(str(row, "IMPORT_STATE"));
ext.setImportCountry(str(row, "IMPORT_COUNTRY"));
ext.setBuyerid(str(row, "BUYERID"));
ext.setOrderStatus(integer(row, "ORDER_STATUS"));
ext.setCreateAt(str(row, "CREATE_AT"));
ext.setPayType(integer(row, "PAY_TYPE"));
ext.setLineCode(str(row, "LINE_CODE"));
ext.setLineName(str(row, "LINE_NAME"));
ext.setProductType(str(row, "PRODUCT_TYPE"));
ext.setLineType(str(row, "LINE_TYPE"));
ext.setCargoName(str(row, "CARGO_NAME"));
ext.setProductFloorCode(str(row, "PRODUCT_FLOOR_CODE"));
ext.setOrderInsurance(decimal(row, "ORDER_INSURANCE"));
ext.setProductSumPrice(decimal(row, "PRODUCT_SUM_PRICE"));
ext.setProductSum(decimal(row, "PRODUCT_SUM"));
ext.setShipperDoorno(str(row, "SHIPPER_DOORNO"));
ext.setTariffPaymentAccount(str(row, "TARIFF_PAYMENT_ACCOUNT"));
ext.setTopayment(decimal(row, "TOPAYMENT"));
ext.setProductFloor(str(row, "PRODUCT_FLOOR"));
ext.setLatestTrajectory(str(row, "LATEST_TRAJECTORY"));
ext.setWayBill(str(row, "WAY_BILL"));
ext.setPickupDate(date(row, "PICKUP_DATE"));
ext.setBlBaging(integer(row, "BL_BAGING"));
ext.setBlPickup(integer(row, "BL_PICKUP"));
ext.setBagDate(date(row, "BAG_DATE"));
ext.setOrgOrderStatus(integer(row, "ORG_ORDER_STATUS"));
ext.setStatusDescription(str(row, "STATUS_DESCRIPTION"));
ext.setZzDate(date(row, "ZZ_DATE"));
ext.setShippingDate(date(row, "SHIPPING_DATE"));
ext.setOrderType(decimal(row, "ORDER_TYPE"));
ext.setReceivingPhoto(str(row, "RECEIVING_PHOTO"));
ext.setFreight(decimal(row, "FREIGHT"));
ext.setIsReceivable(integer(row, "IS_RECEIVABLE"));
ext.setIsMeet(integer(row, "IS_MEET"));
ext.setBillNoReceivable(str(row, "BILL_NO_RECEIVABLE"));
ext.setBillNoMeet(str(row, "BILL_NO_MEET"));
ext.setCountryEingthName(str(row, "COUNTRY_EINGTH_NAME"));
ext.setIsReceivableFee(integer(row, "IS_RECEIVABLE_FEE"));
ext.setSettlementFee(decimal(row, "SETTLEMENT_FEE"));
ext.setProductId(str(row, "PRODUCT_ID"));
ext.setServiceFreight(decimal(row, "SERVICE_FREIGHT"));
ext.setIsPayFee(integer(row, "IS_PAY_FEE"));
ext.setHasAddedSurcharge(integer(row, "HAS_ADDED_SURCHARGE"));
ext.setYfFee(decimal(row, "YF_FEE"));
ext.setYfTotailFee(decimal(row, "YF_TOTAIL_FEE"));
ext.setTrajectoryStatus(integer(row, "TRAJECTORY_STATUS"));
ext.setCargoTypeName(str(row, "CARGO_TYPE_NAME"));
ext.setServiceCode(str(row, "SERVICE_CODE"));
ext.setThreeCode(str(row, "THREE_CODE"));
ext.setVolumeHeightOld(decimal(row, "VOLUME_HEIGHT_OLD"));
ext.setVolumeLengthOld(decimal(row, "VOLUME_LENGTH_OLD"));
ext.setVolumeWidthOld(decimal(row, "VOLUME_WIDTH_OLD"));
ext.setRegisterManOld(str(row, "REGISTER_MAN_OLD"));
ext.setBagNoOld(str(row, "BAG_NO_OLD"));
ext.setAirNoOld(str(row, "AIR_NO_OLD"));
ext.setBoxSiziOld(str(row, "BOX_SIZI_OLD"));
ext.setBagingManOld(str(row, "BAGING_MAN_OLD"));
ext.setRetrievalManOld(str(row, "RETRIEVAL_MAN_OLD"));
ext.setInvoiceAmountOld(str(row, "INVOICE_AMOUNT_OLD"));
ext.setInvoiceTitleOld(str(row, "INVOICE_TITLE_OLD"));
ext.setInvoiceWeightOld(str(row, "INVOICE_WEIGHT_OLD"));
ext.setSkuOld(str(row, "SKU_OLD"));
ext.setHsCodeOld(str(row, "HS_CODE_OLD"));
ext.setRegisterDateOld(date(row, "REGISTER_DATE_OLD"));
ext.setInvoiceCurrencyOld(str(row, "INVOICE_CURRENCY_OLD"));
ext.setTrajectorySubState(integer(row, "TRAJECTORY_SUB_STATE"));
ext.setSignInTime(date(row, "SIGN_IN_TIME"));
ext.setWarehouseTime(date(row, "WAREHOUSE_TIME"));
ext.setDeclarationTime(date(row, "DECLARATION_TIME"));
ext.setReleaseTime(date(row, "RELEASE_TIME"));
ext.setStationTime(date(row, "STATION_TIME"));
ext.setTakeoffTime(date(row, "TAKEOFF_TIME"));
ext.setLandingTime(date(row, "LANDING_TIME"));
ext.setClearanceAndDeliveryTime(date(row, "CLEARANCE_AND_DELIVERY_TIME"));
ext.setSupplierName(str(row, "SUPPLIER_NAME"));
ext.setCreditCode(str(row, "CREDIT_CODE"));
ext.setOtherId(str(row, "OTHER_ID"));
ext.setPlatformCode(str(row, "PLATFORM_CODE"));
ext.setSyncShipmentStatus(integer(row, "SYNC_SHIPMENT_STATUS"));
ext.setUpdateWeight(decimal(row, "UPDATE_WEIGHT"));
ext.setOtherBagNo(str(row, "OTHER_BAG_NO"));
ext.setBagFlag(integer(row, "BAG_FLAG"));
ext.setOnlineTime(date(row, "ONLINE_TIME"));
ext.setOutboundTime(date(row, "OUTBOUND_TIME"));
ext.setAirConfirmDate(date(row, "AIR_CONFIRM_DATE"));
ext.setShipmentType(str(row, "SHIPMENT_TYPE"));
ext.setTrackQueryTime(date(row, "TRACK_QUERY_TIME"));
ext.setAirConfirmTime(date(row, "AIR_CONFIRM_TIME"));
ext.setPackageType(integer(row, "PACKAGE_TYPE"));
ext.setDimensionalWeightFactor(decimal(row, "DIMENSIONAL_WEIGHT_FACTOR"));
ext.setUpdateBy(str(row, "UPDATE_BY"));
ext.setCustomerPickupSite(str(row, "CUSTOMER_PICKUP_SITE"));
ext.setBarcodeNumber(str(row, "BARCODE_NUMBER"));
ext.setTrackingReflectStatus(str(row, "TRACKING_REFLECT_STATUS"));
ext.setRemotePostcode(integer(row, "REMOTE_POSTCODE"));
ext.setClearanceTime(date(row, "CLEARANCE_TIME"));
ext.setArriveStockTime(date(row, "ARRIVE_STOCK_TIME"));
ext.setDepartureTime(date(row, "DEPARTURE_TIME"));
ext.setFirstDeliverTime(date(row, "FIRST_DELIVER_TIME"));
ext.setHsCodeTaxCount(decimal(row, "HS_CODE_TAX_COUNT"));
ext.setHsCodeTaxAmount(decimal(row, "HS_CODE_TAX_AMOUNT"));
ext.setHsCodeTaxCurrency(str(row, "HS_CODE_TAX_CURRENCY"));
ext.setInvoiceUrl(str(row, "INVOICE_URL"));
ext.setClearanceNo(str(row, "CLEARANCE_NO"));
ext.setPushWeight(decimal(row, "PUSH_WEIGHT"));
ext.setInternalCheckTime(date(row, "INTERNAL_CHECK_TIME"));
ext.setAirDelayTime(date(row, "AIR_DELAY_TIME"));
ext.setFirstLandingTime(date(row, "FIRST_LANDING_TIME"));
ext.setSecondTakeoffTime(date(row, "SECOND_TAKEOFF_TIME"));
ext.setDesPortCheckTime(date(row, "DES_PORT_CHECK_TIME"));
ext.setStayRemark(str(row, "STAY_REMARK"));
ext.setMissBoxRemark(str(row, "MISS_BOX_REMARK"));
ext.setProductChannelId(str(row, "PRODUCT_CHANNEL_ID"));
ext.setCustomerTrackId(str(row, "CUSTOMER_TRACK_ID"));
ext.setRegisterSite(str(row, "REGISTER_SITE"));
ext.setPackageTypeFinancial(integer(row, "PACKAGE_TYPE_FINANCIAL"));
ext.setMrn(str(row, "MRN"));
}
private static String str(Map<String, Object> row, String key)
{
Object v = get(row, key);
if (v == null) return null;
String s = String.valueOf(v).trim();
return s.isEmpty() ? null : s;
}
private static BigDecimal decimal(Map<String, Object> row, String key)
{
Object v = get(row, key);
if (v == null || "".equals(String.valueOf(v).trim())) return null;
if (v instanceof BigDecimal) return (BigDecimal) v;
if (v instanceof Number) return BigDecimal.valueOf(((Number) v).doubleValue());
try { return new BigDecimal(String.valueOf(v).trim()); } catch (Exception e) { return null; }
}
private static Integer integer(Map<String, Object> row, String key)
{
BigDecimal d = decimal(row, key);
return d == null ? null : Integer.valueOf(d.intValue());
}
private static Long longVal(Map<String, Object> row, String key)
{
BigDecimal d = decimal(row, key);
return d == null ? null : Long.valueOf(d.longValue());
}
private static Date date(Map<String, Object> row, String key)
{
Object v = get(row, key);
if (v == null) return null;
if (v instanceof Date) return (Date) v;
String s = String.valueOf(v).trim();
String[] formats = {
"dd/MM/yyyy HH:mm:ss", "dd/MM/yyyy HH:mm", "yyyy-MM-dd HH:mm:ss",
"yyyy-MM-dd'T'HH:mm:ss", "yyyy-MM-dd"
};
for (String fmt : formats)
{
try { return new SimpleDateFormat(fmt, Locale.ENGLISH).parse(s); }
catch (Exception ignored) {}
}
return null;
}
private static Object get(Map<String, Object> row, String key)
{
if (row.containsKey(key)) return row.get(key);
String upper = key.toUpperCase(Locale.ROOT);
if (row.containsKey(upper)) return row.get(upper);
for (Map.Entry<String, Object> e : row.entrySet())
{
if (e.getKey() != null && e.getKey().equalsIgnoreCase(key)) return e.getValue();
}
return null;
}
}
@@ -22,9 +22,14 @@ public class OracleOrderBillMapper
return null;
}
TmsPriceBillRequest req = new TmsPriceBillRequest();
req.setOrderNo(firstStr(row, "ORG_ORDER_ID", "ORDER_ID", "TRANSFER_ORDER_ID"));
req.setTrackingNo(firstStr(row, "TRANSFER_ORDER_ID", "TRACK_ID", "BARCODE_NUMBER", "CUSTOMER_TRACK_ID"));
// TAB_ORDER: ORDER_ID=客户订单号, ORG_ORDER_ID=运单号, TRANSFER_ORDER_ID=转单号, TRACK_ID=轨迹ID
req.setOrderNo(firstStr(row, "ORDER_ID", "ORG_ORDER_ID", "TRANSFER_ORDER_ID"));
req.setTrackingNo(firstStr(row, "ORG_ORDER_ID", "TRACK_ID", "BARCODE_NUMBER", "CUSTOMER_TRACK_ID"));
req.setTransferNo(firstStr(row, "TRANSFER_ORDER_ID"));
req.setBelongSaler(firstStr(row, "BELONG_SALER_OLD"));
req.setSettlementMan(firstStr(row, "SETTLEMENT_MAN_OLD"));
req.setServiceMan(firstStr(row, "SERVICE_MAN_OLD"));
req.setUpstreamRow(row);
req.setCustomerCode(firstStr(row, "CUSTOMER_CODE"));
req.setCustomerName(firstStr(row, "CUSTOMER_NAME"));
String product = firstStr(row, "PRODUCT_CODE", "GOODS_CODE", "CHANNEL_CODE");
@@ -140,15 +140,19 @@ public class PrcBillingTaskServiceImpl implements IPrcBillingTaskService
{
throw new ServiceException("Oracle order mapped weight invalid");
}
// Prefer task keys when Oracle mapping missed them
if (StringUtils.isEmpty(billReq.getTransferNo()) && StringUtils.isNotEmpty(task.getTransferNo()))
// Identity keys from mobile inbound are source of truth; do not replace with Oracle remap.
if (StringUtils.isNotEmpty(task.getTransferNo()))
{
billReq.setTransferNo(task.getTransferNo());
}
if (StringUtils.isEmpty(billReq.getTrackingNo()) && StringUtils.isNotEmpty(task.getTrackingNo()))
if (StringUtils.isNotEmpty(task.getTrackingNo()))
{
billReq.setTrackingNo(task.getTrackingNo());
}
if (StringUtils.isNotEmpty(task.getOrderNo()))
{
billReq.setOrderNo(task.getOrderNo());
}
// Billing date from task.bill_time (mobile), not Oracle CREATE_DATE.
if (task.getBillTime() == null)
{
@@ -165,12 +169,12 @@ public class PrcBillingTaskServiceImpl implements IPrcBillingTaskService
TmsPriceQuoteResult result = prcOrderBillService.bill(billReq);
writeback(task, BillTaskSuccessStatus.SUCCESS, result == null ? null : result.getBillId(),
billReq, null);
null);
}
catch (RuntimeException e)
{
log.error("billing task failed taskId={}", taskId, e);
writeback(task, BillTaskSuccessStatus.FAILED, null, null, cut(e.getMessage(), 900));
writeback(task, BillTaskSuccessStatus.FAILED, null, cut(e.getMessage(), 900));
}
}
@@ -204,21 +208,15 @@ public class PrcBillingTaskServiceImpl implements IPrcBillingTaskService
return existed == null ? BillTaskType.PENDING : BillTaskType.REBILL;
}
/** Write back status/billId/error only; keep inbound transfer/tracking/order/billTime untouched. */
private void writeback(PrcBillingTask task, BillTaskSuccessStatus status, String billId,
TmsPriceBillRequest billReq, String errorMessage)
String errorMessage)
{
PrcBillingTask upd = new PrcBillingTask();
upd.setTaskId(task.getTaskId());
upd.setSuccessStatus(status.getCode());
// Keep bill_time as mobile billing time; do not overwrite on writeback.
upd.setBillId(billId);
upd.setErrorMessage(errorMessage);
if (billReq != null)
{
upd.setOrderNo(billReq.getOrderNo());
upd.setTrackingNo(billReq.getTrackingNo());
upd.setTransferNo(billReq.getTransferNo());
}
billingTaskMapper.updateBillingResult(upd);
}
@@ -33,6 +33,7 @@ import com.ruoyi.price.mapper.PrcIncomeBillFeeMapper;
import com.ruoyi.price.mapper.PrcOrderBillExtMapper;
import com.ruoyi.price.mapper.PrcOrderBillMapper;
import com.ruoyi.price.mapper.PrcPayBillFeeMapper;
import com.ruoyi.price.oracle.OracleOrderBillExtFiller;
import com.ruoyi.price.search.EsBizLogSupport;
import com.ruoyi.price.search.EsLogType;
import com.ruoyi.price.search.IBillSearchStore;
@@ -196,6 +197,9 @@ public class PrcOrderBillServiceImpl implements IPrcOrderBillService
bill.setCustomerName(request.getCustomerName());
bill.setTrackingNo(request.getTrackingNo());
bill.setTransferNo(request.getTransferNo());
bill.setBelongSaler(request.getBelongSaler());
bill.setSettlementMan(request.getSettlementMan());
bill.setServiceMan(request.getServiceMan());
String customerActiveStatus = result == null ? null : result.getCustomerActiveStatus();
if (StringUtils.isEmpty(customerActiveStatus))
{
@@ -277,7 +281,7 @@ public class PrcOrderBillServiceImpl implements IPrcOrderBillService
incomeBillFeeMapper.insertBatch(fees);
}
String syncJson = toRequestJson(request);
persistBillExt(bill, syncJson);
persistBillExt(bill, request.getUpstreamRow());
result.setRequestJson(syncJson);
billSearchStore.save(EsLogType.BILL, orderNo, syncJson, toResponseJson(result));
}
@@ -513,37 +517,27 @@ public class PrcOrderBillServiceImpl implements IPrcOrderBillService
r.setBizDate(bill.getBizDate());
r.setFeeDetails(toIncomeFeeLines(incomeFees));
r.setPayFeeDetails(toPayFeeLines(payFees));
fillSyncJson(r, bill.getBillId());
return r;
}
/** Persist upstream request JSON after prc_order_bill insert/update succeeds. */
private void persistBillExt(PrcOrderBill bill, String syncJson)
/** 仅在存在上游 TAB_ORDER 行时写入 prc_order_bill_ext。 */
private void persistBillExt(PrcOrderBill bill, java.util.Map<String, Object> upstreamRow)
{
if (bill == null || StringUtils.isEmpty(bill.getBillId()) || StringUtils.isEmpty(syncJson))
if (bill == null || StringUtils.isEmpty(bill.getBillId()))
{
return;
}
if (upstreamRow == null || upstreamRow.isEmpty())
{
return;
}
PrcOrderBillExt ext = new PrcOrderBillExt();
ext.setBillId(bill.getBillId());
ext.setOrderNo(bill.getOrderNo());
ext.setSyncJson(syncJson);
OracleOrderBillExtFiller.fillFromRow(ext, upstreamRow);
orderBillExtMapper.upsertPrcOrderBillExt(ext);
}
private void fillSyncJson(TmsPriceQuoteResult result, String billId)
{
if (result == null || StringUtils.isEmpty(billId))
{
return;
}
PrcOrderBillExt ext = orderBillExtMapper.selectByBillId(billId);
if (ext != null)
{
result.setRequestJson(ext.getSyncJson());
}
}
private List<TmsPriceQuoteFeeLine> toIncomeFeeLines(List<PrcIncomeBillFee> fees)
{
List<TmsPriceQuoteFeeLine> lines = new ArrayList<TmsPriceQuoteFeeLine>();
@@ -592,6 +586,9 @@ public class PrcOrderBillServiceImpl implements IPrcOrderBillService
{
r.setTrackingNo(bill.getTrackingNo());
r.setTransferNo(bill.getTransferNo());
r.setBelongSaler(bill.getBelongSaler());
r.setSettlementMan(bill.getSettlementMan());
r.setServiceMan(bill.getServiceMan());
r.setCustomerName(bill.getCustomerName());
r.setCustomerActiveStatus(bill.getCustomerActiveStatus());
r.setCreditArrearsStatus(bill.getCreditArrearsStatus());
@@ -618,6 +615,7 @@ public class PrcOrderBillServiceImpl implements IPrcOrderBillService
return null;
}
obj.remove("apiCode");
obj.remove("upstreamRow");
return obj.toJSONString();
}
@@ -80,15 +80,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where task_id = #{taskId}
</update>
<!-- Do not overwrite bill_time: it stores mobile billing time. -->
<!-- Keep inbound transfer/tracking/order/bill_time; only write status result. -->
<update id="updateBillingResult" parameterType="PrcBillingTask">
update prc_billing_task
set success_status = #{successStatus},
bill_id = #{billId},
error_message = #{errorMessage},
order_no = coalesce(#{orderNo}, order_no),
tracking_no = coalesce(#{trackingNo}, tracking_no),
transfer_no = coalesce(#{transferNo}, transfer_no),
update_time = sysdate()
where task_id = #{taskId}
</update>
@@ -5,15 +5,184 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<mapper namespace="com.ruoyi.price.mapper.PrcOrderBillExtMapper">
<resultMap type="PrcOrderBillExt" id="PrcOrderBillExtResult">
<id property="billId" column="bill_id" />
<result property="orderNo" column="order_no" />
<result property="syncJson" column="sync_json" />
<id property="billId" column="bill_id" />
<result property="orderNo" column="order_no" />
<result property="upstreamId" column="upstream_id" />
<result property="lineNo" column="line_no" />
<result property="packageNum" column="package_num" />
<result property="actualVolume" column="actual_volume" />
<result property="cpType" column="cp_type" />
<result property="consigneeMobile" column="consignee_mobile" />
<result property="orderReturnsign" column="order_returnsign" />
<result property="tradeType" column="trade_type" />
<result property="dutyType" column="duty_type" />
<result property="batteryType" column="battery_type" />
<result property="consigneeCompanyname" column="consignee_companyname" />
<result property="consigneeAddress" column="consignee_address" />
<result property="consigneeTelephone" column="consignee_telephone" />
<result property="consigneeState" column="consignee_state" />
<result property="consigneeCity" column="consignee_city" />
<result property="consigneeSuburb" column="consignee_suburb" />
<result property="consigneePassportno" column="consignee_passportno" />
<result property="consigneeEmail" column="consignee_email" />
<result property="consigneeTaxno" column="consignee_taxno" />
<result property="consigneeTaxnotype" column="consignee_taxnotype" />
<result property="consigneeTaxnocountry" column="consignee_taxnocountry" />
<result property="consigneeStreetno" column="consignee_streetno" />
<result property="consigneeDoorno" column="consignee_doorno" />
<result property="shipperTaxnotype" column="shipper_taxnotype" />
<result property="shipperTaxno" column="shipper_taxno" />
<result property="shipperTaxnocountry" column="shipper_taxnocountry" />
<result property="customerId" column="customer_id" />
<result property="productImagepath" column="product_imagepath" />
<result property="orderTransactionurl" column="order_transactionurl" />
<result property="orderCargoamount" column="order_cargoamount" />
<result property="cargoType" column="cargo_type" />
<result property="shipperCompanyname" column="shipper_companyname" />
<result property="shipperAddress1" column="shipper_address1" />
<result property="shipperAddress2" column="shipper_address2" />
<result property="shipperAddress3" column="shipper_address3" />
<result property="shipperCity" column="shipper_city" />
<result property="shipperState" column="shipper_state" />
<result property="shipperPostcode" column="shipper_postcode" />
<result property="shipperCountry" column="shipper_country" />
<result property="shipperTelephone" column="shipper_telephone" />
<result property="shipperSuburb" column="shipper_suburb" />
<result property="shipperEmail" column="shipper_email" />
<result property="shipperPassportno" column="shipper_passportno" />
<result property="importCode" column="import_code" />
<result property="importName" column="import_name" />
<result property="importCompanyname" column="import_companyname" />
<result property="importAddress" column="import_address" />
<result property="importAddress2" column="import_address2" />
<result property="importAddress3" column="import_address3" />
<result property="importTelephone" column="import_telephone" />
<result property="importEmail" column="import_email" />
<result property="importPostcode" column="import_postcode" />
<result property="importCity" column="import_city" />
<result property="importState" column="import_state" />
<result property="importCountry" column="import_country" />
<result property="buyerid" column="buyerid" />
<result property="orderStatus" column="order_status" />
<result property="createAt" column="create_at" />
<result property="payType" column="pay_type" />
<result property="lineCode" column="line_code" />
<result property="lineName" column="line_name" />
<result property="productType" column="product_type" />
<result property="lineType" column="line_type" />
<result property="cargoName" column="cargo_name" />
<result property="productFloorCode" column="product_floor_code" />
<result property="orderInsurance" column="order_insurance" />
<result property="productSumPrice" column="product_sum_price" />
<result property="productSum" column="product_sum" />
<result property="shipperDoorno" column="shipper_doorno" />
<result property="tariffPaymentAccount" column="tariff_payment_account" />
<result property="topayment" column="topayment" />
<result property="productFloor" column="product_floor" />
<result property="latestTrajectory" column="latest_trajectory" />
<result property="wayBill" column="way_bill" />
<result property="pickupDate" column="pickup_date" />
<result property="blBaging" column="bl_baging" />
<result property="blPickup" column="bl_pickup" />
<result property="bagDate" column="bag_date" />
<result property="orgOrderStatus" column="org_order_status" />
<result property="statusDescription" column="status_description" />
<result property="zzDate" column="zz_date" />
<result property="shippingDate" column="shipping_date" />
<result property="orderType" column="order_type" />
<result property="receivingPhoto" column="receiving_photo" />
<result property="freight" column="freight" />
<result property="isReceivable" column="is_receivable" />
<result property="isMeet" column="is_meet" />
<result property="billNoReceivable" column="bill_no_receivable" />
<result property="billNoMeet" column="bill_no_meet" />
<result property="countryEingthName" column="country_eingth_name" />
<result property="isReceivableFee" column="is_receivable_fee" />
<result property="settlementFee" column="settlement_fee" />
<result property="productId" column="product_id" />
<result property="serviceFreight" column="service_freight" />
<result property="isPayFee" column="is_pay_fee" />
<result property="hasAddedSurcharge" column="has_added_surcharge" />
<result property="yfFee" column="yf_fee" />
<result property="yfTotailFee" column="yf_totail_fee" />
<result property="trajectoryStatus" column="trajectory_status" />
<result property="cargoTypeName" column="cargo_type_name" />
<result property="serviceCode" column="service_code" />
<result property="threeCode" column="three_code" />
<result property="volumeHeightOld" column="volume_height_old" />
<result property="volumeLengthOld" column="volume_length_old" />
<result property="volumeWidthOld" column="volume_width_old" />
<result property="registerManOld" column="register_man_old" />
<result property="bagNoOld" column="bag_no_old" />
<result property="airNoOld" column="air_no_old" />
<result property="boxSiziOld" column="box_sizi_old" />
<result property="bagingManOld" column="baging_man_old" />
<result property="retrievalManOld" column="retrieval_man_old" />
<result property="invoiceAmountOld" column="invoice_amount_old" />
<result property="invoiceTitleOld" column="invoice_title_old" />
<result property="invoiceWeightOld" column="invoice_weight_old" />
<result property="skuOld" column="sku_old" />
<result property="hsCodeOld" column="hs_code_old" />
<result property="registerDateOld" column="register_date_old" />
<result property="invoiceCurrencyOld" column="invoice_currency_old" />
<result property="trajectorySubState" column="trajectory_sub_state" />
<result property="signInTime" column="sign_in_time" />
<result property="warehouseTime" column="warehouse_time" />
<result property="declarationTime" column="declaration_time" />
<result property="releaseTime" column="release_time" />
<result property="stationTime" column="station_time" />
<result property="takeoffTime" column="takeoff_time" />
<result property="landingTime" column="landing_time" />
<result property="clearanceAndDeliveryTime" column="clearance_and_delivery_time" />
<result property="supplierName" column="supplier_name" />
<result property="creditCode" column="credit_code" />
<result property="otherId" column="other_id" />
<result property="platformCode" column="platform_code" />
<result property="syncShipmentStatus" column="sync_shipment_status" />
<result property="updateWeight" column="update_weight" />
<result property="otherBagNo" column="other_bag_no" />
<result property="bagFlag" column="bag_flag" />
<result property="onlineTime" column="online_time" />
<result property="outboundTime" column="outbound_time" />
<result property="airConfirmDate" column="air_confirm_date" />
<result property="shipmentType" column="shipment_type" />
<result property="trackQueryTime" column="track_query_time" />
<result property="airConfirmTime" column="air_confirm_time" />
<result property="packageType" column="package_type" />
<result property="dimensionalWeightFactor" column="dimensional_weight_factor" />
<result property="updateBy" column="update_by" />
<result property="customerPickupSite" column="customer_pickup_site" />
<result property="barcodeNumber" column="barcode_number" />
<result property="trackingReflectStatus" column="tracking_reflect_status" />
<result property="remotePostcode" column="remote_postcode" />
<result property="clearanceTime" column="clearance_time" />
<result property="arriveStockTime" column="arrive_stock_time" />
<result property="departureTime" column="departure_time" />
<result property="firstDeliverTime" column="first_deliver_time" />
<result property="hsCodeTaxCount" column="hs_code_tax_count" />
<result property="hsCodeTaxAmount" column="hs_code_tax_amount" />
<result property="hsCodeTaxCurrency" column="hs_code_tax_currency" />
<result property="invoiceUrl" column="invoice_url" />
<result property="clearanceNo" column="clearance_no" />
<result property="pushWeight" column="push_weight" />
<result property="internalCheckTime" column="internal_check_time" />
<result property="airDelayTime" column="air_delay_time" />
<result property="firstLandingTime" column="first_landing_time" />
<result property="secondTakeoffTime" column="second_takeoff_time" />
<result property="desPortCheckTime" column="des_port_check_time" />
<result property="stayRemark" column="stay_remark" />
<result property="missBoxRemark" column="miss_box_remark" />
<result property="productChannelId" column="product_channel_id" />
<result property="customerTrackId" column="customer_track_id" />
<result property="registerSite" column="register_site" />
<result property="packageTypeFinancial" column="package_type_financial" />
<result property="mrn" column="mrn" />
<result property="createTime" column="create_time" />
<result property="updateTime" column="update_time" />
</resultMap>
<sql id="selectPrcOrderBillExtVo">
select bill_id, order_no, sync_json, create_time, update_time
select bill_id, order_no, upstream_id, line_no, package_num, actual_volume, cp_type, consignee_mobile, order_returnsign, trade_type, duty_type, battery_type, consignee_companyname, consignee_address, consignee_telephone, consignee_state, consignee_city, consignee_suburb, consignee_passportno, consignee_email, consignee_taxno, consignee_taxnotype, consignee_taxnocountry, consignee_streetno, consignee_doorno, shipper_taxnotype, shipper_taxno, shipper_taxnocountry, customer_id, product_imagepath, order_transactionurl, order_cargoamount, cargo_type, shipper_companyname, shipper_address1, shipper_address2, shipper_address3, shipper_city, shipper_state, shipper_postcode, shipper_country, shipper_telephone, shipper_suburb, shipper_email, shipper_passportno, import_code, import_name, import_companyname, import_address, import_address2, import_address3, import_telephone, import_email, import_postcode, import_city, import_state, import_country, buyerid, order_status, create_at, pay_type, line_code, line_name, product_type, line_type, cargo_name, product_floor_code, order_insurance, product_sum_price, product_sum, shipper_doorno, tariff_payment_account, topayment, product_floor, latest_trajectory, way_bill, pickup_date, bl_baging, bl_pickup, bag_date, org_order_status, status_description, zz_date, shipping_date, order_type, receiving_photo, freight, is_receivable, is_meet, bill_no_receivable, bill_no_meet, country_eingth_name, is_receivable_fee, settlement_fee, product_id, service_freight, is_pay_fee, has_added_surcharge, yf_fee, yf_totail_fee, trajectory_status, cargo_type_name, service_code, three_code, volume_height_old, volume_length_old, volume_width_old, register_man_old, bag_no_old, air_no_old, box_sizi_old, baging_man_old, retrieval_man_old, invoice_amount_old, invoice_title_old, invoice_weight_old, sku_old, hs_code_old, register_date_old, invoice_currency_old, trajectory_sub_state, sign_in_time, warehouse_time, declaration_time, release_time, station_time, takeoff_time, landing_time, clearance_and_delivery_time, supplier_name, credit_code, other_id, platform_code, sync_shipment_status, update_weight, other_bag_no, bag_flag, online_time, outbound_time, air_confirm_date, shipment_type, track_query_time, air_confirm_time, package_type, dimensional_weight_factor, update_by, customer_pickup_site, barcode_number, tracking_reflect_status, remote_postcode, clearance_time, arrive_stock_time, departure_time, first_deliver_time, hs_code_tax_count, hs_code_tax_amount, hs_code_tax_currency, invoice_url, clearance_no, push_weight, internal_check_time, air_delay_time, first_landing_time, second_takeoff_time, des_port_check_time, stay_remark, miss_box_remark, product_channel_id, customer_track_id, register_site, package_type_financial, mrn, create_time, update_time
from prc_order_bill_ext
</sql>
@@ -29,21 +198,534 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<insert id="insertPrcOrderBillExt" parameterType="PrcOrderBillExt">
insert into prc_order_bill_ext (
bill_id, order_no, sync_json, create_time, update_time
bill_id, order_no, upstream_id, line_no, package_num, actual_volume, cp_type, consignee_mobile, order_returnsign, trade_type, duty_type, battery_type, consignee_companyname, consignee_address, consignee_telephone, consignee_state, consignee_city, consignee_suburb, consignee_passportno, consignee_email, consignee_taxno, consignee_taxnotype, consignee_taxnocountry, consignee_streetno, consignee_doorno, shipper_taxnotype, shipper_taxno, shipper_taxnocountry, customer_id, product_imagepath, order_transactionurl, order_cargoamount, cargo_type, shipper_companyname, shipper_address1, shipper_address2, shipper_address3, shipper_city, shipper_state, shipper_postcode, shipper_country, shipper_telephone, shipper_suburb, shipper_email, shipper_passportno, import_code, import_name, import_companyname, import_address, import_address2, import_address3, import_telephone, import_email, import_postcode, import_city, import_state, import_country, buyerid, order_status, create_at, pay_type, line_code, line_name, product_type, line_type, cargo_name, product_floor_code, order_insurance, product_sum_price, product_sum, shipper_doorno, tariff_payment_account, topayment, product_floor, latest_trajectory, way_bill, pickup_date, bl_baging, bl_pickup, bag_date, org_order_status, status_description, zz_date, shipping_date, order_type, receiving_photo, freight, is_receivable, is_meet, bill_no_receivable, bill_no_meet, country_eingth_name, is_receivable_fee, settlement_fee, product_id, service_freight, is_pay_fee, has_added_surcharge, yf_fee, yf_totail_fee, trajectory_status, cargo_type_name, service_code, three_code, volume_height_old, volume_length_old, volume_width_old, register_man_old, bag_no_old, air_no_old, box_sizi_old, baging_man_old, retrieval_man_old, invoice_amount_old, invoice_title_old, invoice_weight_old, sku_old, hs_code_old, register_date_old, invoice_currency_old, trajectory_sub_state, sign_in_time, warehouse_time, declaration_time, release_time, station_time, takeoff_time, landing_time, clearance_and_delivery_time, supplier_name, credit_code, other_id, platform_code, sync_shipment_status, update_weight, other_bag_no, bag_flag, online_time, outbound_time, air_confirm_date, shipment_type, track_query_time, air_confirm_time, package_type, dimensional_weight_factor, update_by, customer_pickup_site, barcode_number, tracking_reflect_status, remote_postcode, clearance_time, arrive_stock_time, departure_time, first_deliver_time, hs_code_tax_count, hs_code_tax_amount, hs_code_tax_currency, invoice_url, clearance_no, push_weight, internal_check_time, air_delay_time, first_landing_time, second_takeoff_time, des_port_check_time, stay_remark, miss_box_remark, product_channel_id, customer_track_id, register_site, package_type_financial, mrn, create_time
) values (
#{billId}, #{orderNo}, #{syncJson}, sysdate(), sysdate()
#{billId},
#{orderNo},
#{upstreamId},
#{lineNo},
#{packageNum},
#{actualVolume},
#{cpType},
#{consigneeMobile},
#{orderReturnsign},
#{tradeType},
#{dutyType},
#{batteryType},
#{consigneeCompanyname},
#{consigneeAddress},
#{consigneeTelephone},
#{consigneeState},
#{consigneeCity},
#{consigneeSuburb},
#{consigneePassportno},
#{consigneeEmail},
#{consigneeTaxno},
#{consigneeTaxnotype},
#{consigneeTaxnocountry},
#{consigneeStreetno},
#{consigneeDoorno},
#{shipperTaxnotype},
#{shipperTaxno},
#{shipperTaxnocountry},
#{customerId},
#{productImagepath},
#{orderTransactionurl},
#{orderCargoamount},
#{cargoType},
#{shipperCompanyname},
#{shipperAddress1},
#{shipperAddress2},
#{shipperAddress3},
#{shipperCity},
#{shipperState},
#{shipperPostcode},
#{shipperCountry},
#{shipperTelephone},
#{shipperSuburb},
#{shipperEmail},
#{shipperPassportno},
#{importCode},
#{importName},
#{importCompanyname},
#{importAddress},
#{importAddress2},
#{importAddress3},
#{importTelephone},
#{importEmail},
#{importPostcode},
#{importCity},
#{importState},
#{importCountry},
#{buyerid},
#{orderStatus},
#{createAt},
#{payType},
#{lineCode},
#{lineName},
#{productType},
#{lineType},
#{cargoName},
#{productFloorCode},
#{orderInsurance},
#{productSumPrice},
#{productSum},
#{shipperDoorno},
#{tariffPaymentAccount},
#{topayment},
#{productFloor},
#{latestTrajectory},
#{wayBill},
#{pickupDate},
#{blBaging},
#{blPickup},
#{bagDate},
#{orgOrderStatus},
#{statusDescription},
#{zzDate},
#{shippingDate},
#{orderType},
#{receivingPhoto},
#{freight},
#{isReceivable},
#{isMeet},
#{billNoReceivable},
#{billNoMeet},
#{countryEingthName},
#{isReceivableFee},
#{settlementFee},
#{productId},
#{serviceFreight},
#{isPayFee},
#{hasAddedSurcharge},
#{yfFee},
#{yfTotailFee},
#{trajectoryStatus},
#{cargoTypeName},
#{serviceCode},
#{threeCode},
#{volumeHeightOld},
#{volumeLengthOld},
#{volumeWidthOld},
#{registerManOld},
#{bagNoOld},
#{airNoOld},
#{boxSiziOld},
#{bagingManOld},
#{retrievalManOld},
#{invoiceAmountOld},
#{invoiceTitleOld},
#{invoiceWeightOld},
#{skuOld},
#{hsCodeOld},
#{registerDateOld},
#{invoiceCurrencyOld},
#{trajectorySubState},
#{signInTime},
#{warehouseTime},
#{declarationTime},
#{releaseTime},
#{stationTime},
#{takeoffTime},
#{landingTime},
#{clearanceAndDeliveryTime},
#{supplierName},
#{creditCode},
#{otherId},
#{platformCode},
#{syncShipmentStatus},
#{updateWeight},
#{otherBagNo},
#{bagFlag},
#{onlineTime},
#{outboundTime},
#{airConfirmDate},
#{shipmentType},
#{trackQueryTime},
#{airConfirmTime},
#{packageType},
#{dimensionalWeightFactor},
#{updateBy},
#{customerPickupSite},
#{barcodeNumber},
#{trackingReflectStatus},
#{remotePostcode},
#{clearanceTime},
#{arriveStockTime},
#{departureTime},
#{firstDeliverTime},
#{hsCodeTaxCount},
#{hsCodeTaxAmount},
#{hsCodeTaxCurrency},
#{invoiceUrl},
#{clearanceNo},
#{pushWeight},
#{internalCheckTime},
#{airDelayTime},
#{firstLandingTime},
#{secondTakeoffTime},
#{desPortCheckTime},
#{stayRemark},
#{missBoxRemark},
#{productChannelId},
#{customerTrackId},
#{registerSite},
#{packageTypeFinancial},
#{mrn},
sysdate()
)
</insert>
<insert id="upsertPrcOrderBillExt" parameterType="PrcOrderBillExt">
insert into prc_order_bill_ext (
bill_id, order_no, sync_json, create_time, update_time
bill_id, order_no, upstream_id, line_no, package_num, actual_volume, cp_type, consignee_mobile, order_returnsign, trade_type, duty_type, battery_type, consignee_companyname, consignee_address, consignee_telephone, consignee_state, consignee_city, consignee_suburb, consignee_passportno, consignee_email, consignee_taxno, consignee_taxnotype, consignee_taxnocountry, consignee_streetno, consignee_doorno, shipper_taxnotype, shipper_taxno, shipper_taxnocountry, customer_id, product_imagepath, order_transactionurl, order_cargoamount, cargo_type, shipper_companyname, shipper_address1, shipper_address2, shipper_address3, shipper_city, shipper_state, shipper_postcode, shipper_country, shipper_telephone, shipper_suburb, shipper_email, shipper_passportno, import_code, import_name, import_companyname, import_address, import_address2, import_address3, import_telephone, import_email, import_postcode, import_city, import_state, import_country, buyerid, order_status, create_at, pay_type, line_code, line_name, product_type, line_type, cargo_name, product_floor_code, order_insurance, product_sum_price, product_sum, shipper_doorno, tariff_payment_account, topayment, product_floor, latest_trajectory, way_bill, pickup_date, bl_baging, bl_pickup, bag_date, org_order_status, status_description, zz_date, shipping_date, order_type, receiving_photo, freight, is_receivable, is_meet, bill_no_receivable, bill_no_meet, country_eingth_name, is_receivable_fee, settlement_fee, product_id, service_freight, is_pay_fee, has_added_surcharge, yf_fee, yf_totail_fee, trajectory_status, cargo_type_name, service_code, three_code, volume_height_old, volume_length_old, volume_width_old, register_man_old, bag_no_old, air_no_old, box_sizi_old, baging_man_old, retrieval_man_old, invoice_amount_old, invoice_title_old, invoice_weight_old, sku_old, hs_code_old, register_date_old, invoice_currency_old, trajectory_sub_state, sign_in_time, warehouse_time, declaration_time, release_time, station_time, takeoff_time, landing_time, clearance_and_delivery_time, supplier_name, credit_code, other_id, platform_code, sync_shipment_status, update_weight, other_bag_no, bag_flag, online_time, outbound_time, air_confirm_date, shipment_type, track_query_time, air_confirm_time, package_type, dimensional_weight_factor, update_by, customer_pickup_site, barcode_number, tracking_reflect_status, remote_postcode, clearance_time, arrive_stock_time, departure_time, first_deliver_time, hs_code_tax_count, hs_code_tax_amount, hs_code_tax_currency, invoice_url, clearance_no, push_weight, internal_check_time, air_delay_time, first_landing_time, second_takeoff_time, des_port_check_time, stay_remark, miss_box_remark, product_channel_id, customer_track_id, register_site, package_type_financial, mrn, create_time
) values (
#{billId}, #{orderNo}, #{syncJson}, sysdate(), sysdate()
#{billId},
#{orderNo},
#{upstreamId},
#{lineNo},
#{packageNum},
#{actualVolume},
#{cpType},
#{consigneeMobile},
#{orderReturnsign},
#{tradeType},
#{dutyType},
#{batteryType},
#{consigneeCompanyname},
#{consigneeAddress},
#{consigneeTelephone},
#{consigneeState},
#{consigneeCity},
#{consigneeSuburb},
#{consigneePassportno},
#{consigneeEmail},
#{consigneeTaxno},
#{consigneeTaxnotype},
#{consigneeTaxnocountry},
#{consigneeStreetno},
#{consigneeDoorno},
#{shipperTaxnotype},
#{shipperTaxno},
#{shipperTaxnocountry},
#{customerId},
#{productImagepath},
#{orderTransactionurl},
#{orderCargoamount},
#{cargoType},
#{shipperCompanyname},
#{shipperAddress1},
#{shipperAddress2},
#{shipperAddress3},
#{shipperCity},
#{shipperState},
#{shipperPostcode},
#{shipperCountry},
#{shipperTelephone},
#{shipperSuburb},
#{shipperEmail},
#{shipperPassportno},
#{importCode},
#{importName},
#{importCompanyname},
#{importAddress},
#{importAddress2},
#{importAddress3},
#{importTelephone},
#{importEmail},
#{importPostcode},
#{importCity},
#{importState},
#{importCountry},
#{buyerid},
#{orderStatus},
#{createAt},
#{payType},
#{lineCode},
#{lineName},
#{productType},
#{lineType},
#{cargoName},
#{productFloorCode},
#{orderInsurance},
#{productSumPrice},
#{productSum},
#{shipperDoorno},
#{tariffPaymentAccount},
#{topayment},
#{productFloor},
#{latestTrajectory},
#{wayBill},
#{pickupDate},
#{blBaging},
#{blPickup},
#{bagDate},
#{orgOrderStatus},
#{statusDescription},
#{zzDate},
#{shippingDate},
#{orderType},
#{receivingPhoto},
#{freight},
#{isReceivable},
#{isMeet},
#{billNoReceivable},
#{billNoMeet},
#{countryEingthName},
#{isReceivableFee},
#{settlementFee},
#{productId},
#{serviceFreight},
#{isPayFee},
#{hasAddedSurcharge},
#{yfFee},
#{yfTotailFee},
#{trajectoryStatus},
#{cargoTypeName},
#{serviceCode},
#{threeCode},
#{volumeHeightOld},
#{volumeLengthOld},
#{volumeWidthOld},
#{registerManOld},
#{bagNoOld},
#{airNoOld},
#{boxSiziOld},
#{bagingManOld},
#{retrievalManOld},
#{invoiceAmountOld},
#{invoiceTitleOld},
#{invoiceWeightOld},
#{skuOld},
#{hsCodeOld},
#{registerDateOld},
#{invoiceCurrencyOld},
#{trajectorySubState},
#{signInTime},
#{warehouseTime},
#{declarationTime},
#{releaseTime},
#{stationTime},
#{takeoffTime},
#{landingTime},
#{clearanceAndDeliveryTime},
#{supplierName},
#{creditCode},
#{otherId},
#{platformCode},
#{syncShipmentStatus},
#{updateWeight},
#{otherBagNo},
#{bagFlag},
#{onlineTime},
#{outboundTime},
#{airConfirmDate},
#{shipmentType},
#{trackQueryTime},
#{airConfirmTime},
#{packageType},
#{dimensionalWeightFactor},
#{updateBy},
#{customerPickupSite},
#{barcodeNumber},
#{trackingReflectStatus},
#{remotePostcode},
#{clearanceTime},
#{arriveStockTime},
#{departureTime},
#{firstDeliverTime},
#{hsCodeTaxCount},
#{hsCodeTaxAmount},
#{hsCodeTaxCurrency},
#{invoiceUrl},
#{clearanceNo},
#{pushWeight},
#{internalCheckTime},
#{airDelayTime},
#{firstLandingTime},
#{secondTakeoffTime},
#{desPortCheckTime},
#{stayRemark},
#{missBoxRemark},
#{productChannelId},
#{customerTrackId},
#{registerSite},
#{packageTypeFinancial},
#{mrn},
sysdate()
)
on duplicate key update
order_no = values(order_no),
sync_json = values(sync_json),
upstream_id = values(upstream_id),
line_no = values(line_no),
package_num = values(package_num),
actual_volume = values(actual_volume),
cp_type = values(cp_type),
consignee_mobile = values(consignee_mobile),
order_returnsign = values(order_returnsign),
trade_type = values(trade_type),
duty_type = values(duty_type),
battery_type = values(battery_type),
consignee_companyname = values(consignee_companyname),
consignee_address = values(consignee_address),
consignee_telephone = values(consignee_telephone),
consignee_state = values(consignee_state),
consignee_city = values(consignee_city),
consignee_suburb = values(consignee_suburb),
consignee_passportno = values(consignee_passportno),
consignee_email = values(consignee_email),
consignee_taxno = values(consignee_taxno),
consignee_taxnotype = values(consignee_taxnotype),
consignee_taxnocountry = values(consignee_taxnocountry),
consignee_streetno = values(consignee_streetno),
consignee_doorno = values(consignee_doorno),
shipper_taxnotype = values(shipper_taxnotype),
shipper_taxno = values(shipper_taxno),
shipper_taxnocountry = values(shipper_taxnocountry),
customer_id = values(customer_id),
product_imagepath = values(product_imagepath),
order_transactionurl = values(order_transactionurl),
order_cargoamount = values(order_cargoamount),
cargo_type = values(cargo_type),
shipper_companyname = values(shipper_companyname),
shipper_address1 = values(shipper_address1),
shipper_address2 = values(shipper_address2),
shipper_address3 = values(shipper_address3),
shipper_city = values(shipper_city),
shipper_state = values(shipper_state),
shipper_postcode = values(shipper_postcode),
shipper_country = values(shipper_country),
shipper_telephone = values(shipper_telephone),
shipper_suburb = values(shipper_suburb),
shipper_email = values(shipper_email),
shipper_passportno = values(shipper_passportno),
import_code = values(import_code),
import_name = values(import_name),
import_companyname = values(import_companyname),
import_address = values(import_address),
import_address2 = values(import_address2),
import_address3 = values(import_address3),
import_telephone = values(import_telephone),
import_email = values(import_email),
import_postcode = values(import_postcode),
import_city = values(import_city),
import_state = values(import_state),
import_country = values(import_country),
buyerid = values(buyerid),
order_status = values(order_status),
create_at = values(create_at),
pay_type = values(pay_type),
line_code = values(line_code),
line_name = values(line_name),
product_type = values(product_type),
line_type = values(line_type),
cargo_name = values(cargo_name),
product_floor_code = values(product_floor_code),
order_insurance = values(order_insurance),
product_sum_price = values(product_sum_price),
product_sum = values(product_sum),
shipper_doorno = values(shipper_doorno),
tariff_payment_account = values(tariff_payment_account),
topayment = values(topayment),
product_floor = values(product_floor),
latest_trajectory = values(latest_trajectory),
way_bill = values(way_bill),
pickup_date = values(pickup_date),
bl_baging = values(bl_baging),
bl_pickup = values(bl_pickup),
bag_date = values(bag_date),
org_order_status = values(org_order_status),
status_description = values(status_description),
zz_date = values(zz_date),
shipping_date = values(shipping_date),
order_type = values(order_type),
receiving_photo = values(receiving_photo),
freight = values(freight),
is_receivable = values(is_receivable),
is_meet = values(is_meet),
bill_no_receivable = values(bill_no_receivable),
bill_no_meet = values(bill_no_meet),
country_eingth_name = values(country_eingth_name),
is_receivable_fee = values(is_receivable_fee),
settlement_fee = values(settlement_fee),
product_id = values(product_id),
service_freight = values(service_freight),
is_pay_fee = values(is_pay_fee),
has_added_surcharge = values(has_added_surcharge),
yf_fee = values(yf_fee),
yf_totail_fee = values(yf_totail_fee),
trajectory_status = values(trajectory_status),
cargo_type_name = values(cargo_type_name),
service_code = values(service_code),
three_code = values(three_code),
volume_height_old = values(volume_height_old),
volume_length_old = values(volume_length_old),
volume_width_old = values(volume_width_old),
register_man_old = values(register_man_old),
bag_no_old = values(bag_no_old),
air_no_old = values(air_no_old),
box_sizi_old = values(box_sizi_old),
baging_man_old = values(baging_man_old),
retrieval_man_old = values(retrieval_man_old),
invoice_amount_old = values(invoice_amount_old),
invoice_title_old = values(invoice_title_old),
invoice_weight_old = values(invoice_weight_old),
sku_old = values(sku_old),
hs_code_old = values(hs_code_old),
register_date_old = values(register_date_old),
invoice_currency_old = values(invoice_currency_old),
trajectory_sub_state = values(trajectory_sub_state),
sign_in_time = values(sign_in_time),
warehouse_time = values(warehouse_time),
declaration_time = values(declaration_time),
release_time = values(release_time),
station_time = values(station_time),
takeoff_time = values(takeoff_time),
landing_time = values(landing_time),
clearance_and_delivery_time = values(clearance_and_delivery_time),
supplier_name = values(supplier_name),
credit_code = values(credit_code),
other_id = values(other_id),
platform_code = values(platform_code),
sync_shipment_status = values(sync_shipment_status),
update_weight = values(update_weight),
other_bag_no = values(other_bag_no),
bag_flag = values(bag_flag),
online_time = values(online_time),
outbound_time = values(outbound_time),
air_confirm_date = values(air_confirm_date),
shipment_type = values(shipment_type),
track_query_time = values(track_query_time),
air_confirm_time = values(air_confirm_time),
package_type = values(package_type),
dimensional_weight_factor = values(dimensional_weight_factor),
update_by = values(update_by),
customer_pickup_site = values(customer_pickup_site),
barcode_number = values(barcode_number),
tracking_reflect_status = values(tracking_reflect_status),
remote_postcode = values(remote_postcode),
clearance_time = values(clearance_time),
arrive_stock_time = values(arrive_stock_time),
departure_time = values(departure_time),
first_deliver_time = values(first_deliver_time),
hs_code_tax_count = values(hs_code_tax_count),
hs_code_tax_amount = values(hs_code_tax_amount),
hs_code_tax_currency = values(hs_code_tax_currency),
invoice_url = values(invoice_url),
clearance_no = values(clearance_no),
push_weight = values(push_weight),
internal_check_time = values(internal_check_time),
air_delay_time = values(air_delay_time),
first_landing_time = values(first_landing_time),
second_takeoff_time = values(second_takeoff_time),
des_port_check_time = values(des_port_check_time),
stay_remark = values(stay_remark),
miss_box_remark = values(miss_box_remark),
product_channel_id = values(product_channel_id),
customer_track_id = values(customer_track_id),
register_site = values(register_site),
package_type_financial = values(package_type_financial),
mrn = values(mrn),
update_time = sysdate()
</insert>
@@ -12,6 +12,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="orderNo" column="order_no" />
<result property="trackingNo" column="tracking_no" />
<result property="transferNo" column="transfer_no" />
<result property="belongSaler" column="belong_saler" />
<result property="settlementMan" column="settlement_man" />
<result property="serviceMan" column="service_man" />
<result property="customerId" column="customer_id" />
<result property="customerCode" column="customer_code" />
<result property="customerName" column="customer_name" />
@@ -69,7 +72,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectPrcOrderBillVo">
select bill_id, bill_key, order_no, tracking_no, transfer_no, customer_id, customer_code, customer_name,
select bill_id, bill_key, order_no, tracking_no, transfer_no, belong_saler, settlement_man, service_man,
customer_id, customer_code, customer_name,
pieces, actual_weight, volume, volume_weight, pkg_length, pkg_width, pkg_height,
shipper_name, consignee_name, dest_postcode, warehouse_code, order_time, order_remark,
product_code, product_name, country_code, country_name, weight, biz_date, tms_id,
@@ -302,7 +306,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<insert id="insertPrcOrderBill" parameterType="PrcOrderBill">
insert into prc_order_bill (
bill_id, bill_key, order_no, tracking_no, transfer_no, customer_id, customer_code, customer_name,
bill_id, bill_key, order_no, tracking_no, transfer_no, belong_saler, settlement_man, service_man,
customer_id, customer_code, customer_name,
pieces, actual_weight, volume, volume_weight, pkg_length, pkg_width, pkg_height,
shipper_name, consignee_name, dest_postcode, warehouse_code, order_time, order_remark,
product_code, product_name, country_code, country_name, weight, biz_date, tms_id,
@@ -314,7 +319,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
customer_active_status, credit_arrears_status, round_mode,
create_time
) values (
#{billId}, #{billKey}, #{orderNo}, #{trackingNo}, #{transferNo}, #{customerId}, #{customerCode}, #{customerName},
#{billId}, #{billKey}, #{orderNo}, #{trackingNo}, #{transferNo}, #{belongSaler}, #{settlementMan}, #{serviceMan},
#{customerId}, #{customerCode}, #{customerName},
#{pieces}, #{actualWeight}, #{volume}, #{volumeWeight}, #{pkgLength}, #{pkgWidth}, #{pkgHeight},
#{shipperName}, #{consigneeName}, #{destPostcode}, #{warehouseCode}, #{orderTime}, #{orderRemark},
#{productCode}, #{productName}, #{countryCode}, #{countryName}, #{weight}, #{bizDate}, #{tmsId},
@@ -333,6 +339,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
set bill_key = #{billKey},
tracking_no = #{trackingNo},
transfer_no = #{transferNo},
belong_saler = #{belongSaler},
settlement_man = #{settlementMan},
service_man = #{serviceMan},
customer_id = #{customerId},
customer_code = #{customerCode},
customer_name = #{customerName},
+1 -2
View File
@@ -1,10 +1,9 @@
-- prc_order_bill_ext: snapshot of upstream sync payload after prc_order_bill persist success
-- prc_order_bill_ext:计费订单扩展(TAB_ORDER 剩余字段)
SET NAMES utf8mb4;
CREATE TABLE IF NOT EXISTS prc_order_bill_ext (
bill_id VARCHAR(36) NOT NULL COMMENT '计费订单ID,对应 prc_order_bill.bill_id',
order_no VARCHAR(64) NOT NULL COMMENT '订单号',
sync_json LONGTEXT NOT NULL COMMENT '上游同步成功写入 prc_order_bill 时的请求JSON',
create_time DATETIME NOT NULL COMMENT '创建时间',
update_time DATETIME DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (bill_id),
@@ -0,0 +1,4 @@
-- 删除 prc_order_bill_ext.sync_json
SET NAMES utf8mb4;
ALTER TABLE prc_order_bill_ext DROP COLUMN sync_json;
@@ -0,0 +1,180 @@
-- prc_order_bill / prc_order_bill_ext:从 TAB_ORDER 补充字段
SET NAMES utf8mb4;
ALTER TABLE prc_order_bill
ADD COLUMN belong_saler VARCHAR(64) DEFAULT NULL COMMENT '所属销售员' AFTER transfer_no,
ADD COLUMN settlement_man VARCHAR(64) DEFAULT NULL COMMENT '结算员' AFTER belong_saler,
ADD COLUMN service_man VARCHAR(64) DEFAULT NULL COMMENT '客服员' AFTER settlement_man;
-- prc_order_bill_ext:TAB_ORDER 中尚未落在 prc_order_bill 的字段
ALTER TABLE prc_order_bill_ext
ADD COLUMN upstream_id VARCHAR(64) DEFAULT NULL COMMENT 'guid',
ADD COLUMN line_no VARCHAR(32) DEFAULT NULL COMMENT '线路',
ADD COLUMN package_num INT DEFAULT NULL COMMENT '包裹数量',
ADD COLUMN actual_volume DECIMAL(10,3) DEFAULT NULL COMMENT '实际体积重',
ADD COLUMN cp_type TINYINT DEFAULT NULL COMMENT '线路产品类型 1全程 2干线 3尾程',
ADD COLUMN consignee_mobile VARCHAR(32) DEFAULT NULL COMMENT '收件人手机',
ADD COLUMN order_returnsign CHAR(1) DEFAULT NULL COMMENT '退回标志,默认N表示不退回,Y标表示退回。中邮可以忽略该属性',
ADD COLUMN trade_type VARCHAR(10) DEFAULT NULL COMMENT '交易类型,值为ZYXT',
ADD COLUMN duty_type VARCHAR(10) DEFAULT NULL COMMENT '关税类型,值为DDU或DDP',
ADD COLUMN battery_type VARCHAR(20) DEFAULT NULL COMMENT '电池类型代码,联系货代提供',
ADD COLUMN consignee_companyname VARCHAR(255) DEFAULT NULL COMMENT '收件公司名,如有最好填写',
ADD COLUMN consignee_address VARCHAR(255) DEFAULT NULL COMMENT '收件地址街道,必填',
ADD COLUMN consignee_telephone VARCHAR(50) DEFAULT NULL COMMENT '收件电话,必填',
ADD COLUMN consignee_state VARCHAR(100) DEFAULT NULL COMMENT '州/省',
ADD COLUMN consignee_city VARCHAR(100) DEFAULT NULL COMMENT '城市',
ADD COLUMN consignee_suburb VARCHAR(100) DEFAULT NULL COMMENT '收件区,选填',
ADD COLUMN consignee_passportno VARCHAR(50) DEFAULT NULL COMMENT '收件护照号,选填',
ADD COLUMN consignee_email VARCHAR(255) DEFAULT NULL COMMENT '邮箱,选填',
ADD COLUMN consignee_taxno VARCHAR(50) DEFAULT NULL COMMENT '收件人税号',
ADD COLUMN consignee_taxnotype VARCHAR(50) DEFAULT NULL COMMENT '收件人税号类型',
ADD COLUMN consignee_taxnocountry VARCHAR(2) DEFAULT NULL COMMENT '收件人税号国家',
ADD COLUMN consignee_streetno VARCHAR(50) DEFAULT NULL COMMENT '街道号',
ADD COLUMN consignee_doorno VARCHAR(50) DEFAULT NULL COMMENT '门牌号',
ADD COLUMN shipper_taxnotype VARCHAR(20) DEFAULT NULL COMMENT '税号类型,邮政产品可选值:IOSS,NO - IOSS,OTHER;DHL可选值:SDT、VAT、FTZ、DAN、EOR、CNP、EIN等(类型说明参照文档底部“DHL发件人税号类型”)',
ADD COLUMN shipper_taxno VARCHAR(50) DEFAULT NULL COMMENT '发件人税号',
ADD COLUMN shipper_taxnocountry VARCHAR(2) DEFAULT NULL COMMENT '发件人税号国家,用国家二字码',
ADD COLUMN customer_id VARCHAR(50) DEFAULT NULL COMMENT '客户ID,必填',
ADD COLUMN product_imagepath TEXT DEFAULT NULL COMMENT '图片地址,多图片地址用分号隔开',
ADD COLUMN order_transactionurl TEXT DEFAULT NULL COMMENT '产品销售地址',
ADD COLUMN order_cargoamount DECIMAL(12,5) DEFAULT NULL COMMENT '选填;用于DHL/FEDEX运费;或用于白关申报(订单实际金额,特殊渠道使用);或其他用途',
ADD COLUMN cargo_type CHAR(1) DEFAULT NULL COMMENT '包裹类型,P代表包裹,D代表文件,B代表PAK袋',
ADD COLUMN shipper_companyname VARCHAR(255) DEFAULT NULL COMMENT '发件人公司名,选填',
ADD COLUMN shipper_address1 VARCHAR(255) DEFAULT NULL COMMENT '发件人地址1,选填',
ADD COLUMN shipper_address2 VARCHAR(255) DEFAULT NULL COMMENT '发件人地址2,选填',
ADD COLUMN shipper_address3 VARCHAR(255) DEFAULT NULL COMMENT '发件人地址3,选填',
ADD COLUMN shipper_city VARCHAR(100) DEFAULT NULL COMMENT '发件人城市,选填',
ADD COLUMN shipper_state VARCHAR(100) DEFAULT NULL COMMENT '发件人州,选填',
ADD COLUMN shipper_postcode VARCHAR(20) DEFAULT NULL COMMENT '发件人邮编,选填',
ADD COLUMN shipper_country VARCHAR(100) DEFAULT NULL COMMENT '发件人国家,选填',
ADD COLUMN shipper_telephone VARCHAR(20) DEFAULT NULL COMMENT '发件人电话,选填',
ADD COLUMN shipper_suburb VARCHAR(100) DEFAULT NULL COMMENT '发件人区,选填',
ADD COLUMN shipper_email VARCHAR(255) DEFAULT NULL COMMENT '发件人邮箱,选填',
ADD COLUMN shipper_passportno VARCHAR(50) DEFAULT NULL COMMENT '发件人护照号,选填',
ADD COLUMN import_code VARCHAR(50) DEFAULT NULL COMMENT '进口商代码',
ADD COLUMN import_name VARCHAR(255) DEFAULT NULL COMMENT '进口商名称',
ADD COLUMN import_companyname VARCHAR(255) DEFAULT NULL COMMENT '进口商公司名称',
ADD COLUMN import_address VARCHAR(255) DEFAULT NULL COMMENT '进口商地址',
ADD COLUMN import_address2 VARCHAR(255) DEFAULT NULL COMMENT '进口商地址2',
ADD COLUMN import_address3 VARCHAR(255) DEFAULT NULL COMMENT '进口商地址3',
ADD COLUMN import_telephone VARCHAR(20) DEFAULT NULL COMMENT '进口商电话',
ADD COLUMN import_email VARCHAR(255) DEFAULT NULL COMMENT '进口商邮箱',
ADD COLUMN import_postcode VARCHAR(20) DEFAULT NULL COMMENT '进口商邮编',
ADD COLUMN import_city VARCHAR(100) DEFAULT NULL COMMENT '进口商城市',
ADD COLUMN import_state VARCHAR(100) DEFAULT NULL COMMENT '进口商州省',
ADD COLUMN import_country VARCHAR(100) DEFAULT NULL COMMENT '进口商国家',
ADD COLUMN buyerid VARCHAR(100) DEFAULT NULL COMMENT '买家ID',
ADD COLUMN order_status TINYINT DEFAULT NULL COMMENT '0-预报订单 1:确认订单 2-已中转 3- 已收货 4-已装箱 5-已出库 6-转运中 7-已上网 8-已签收 9-已退件 10-已删除 已取消',
ADD COLUMN create_at VARCHAR(255) DEFAULT NULL COMMENT '创建人',
ADD COLUMN pay_type TINYINT DEFAULT NULL COMMENT '付款方式 0-预付 1-到付',
ADD COLUMN line_code VARCHAR(20) DEFAULT NULL COMMENT '线路产品编号',
ADD COLUMN line_name VARCHAR(100) DEFAULT NULL COMMENT '线路产品名称',
ADD COLUMN product_type VARCHAR(20) DEFAULT NULL COMMENT '产品类型(全称产品/全称B2B/尾程产品)',
ADD COLUMN line_type VARCHAR(20) DEFAULT NULL COMMENT '物流模式(国际快递/邮政小包)',
ADD COLUMN cargo_name VARCHAR(100) DEFAULT NULL COMMENT '货物类型(普货/敏感/特货)',
ADD COLUMN product_floor_code TEXT DEFAULT NULL COMMENT '渠道编码',
ADD COLUMN order_insurance DECIMAL(12,5) DEFAULT NULL COMMENT '保险金额',
ADD COLUMN product_sum_price DECIMAL(12,5) DEFAULT NULL COMMENT '商品总价值',
ADD COLUMN product_sum DECIMAL(18,6) DEFAULT NULL COMMENT '商品总件数',
ADD COLUMN shipper_doorno VARCHAR(20) DEFAULT NULL COMMENT '发件人门牌号',
ADD COLUMN tariff_payment_account VARCHAR(20) DEFAULT NULL COMMENT '关税支付账号',
ADD COLUMN topayment DECIMAL(12,5) DEFAULT NULL COMMENT '代收货款',
ADD COLUMN product_floor TEXT DEFAULT NULL COMMENT '渠道名称',
ADD COLUMN latest_trajectory TEXT DEFAULT NULL COMMENT '订单轨迹',
ADD COLUMN way_bill TEXT DEFAULT NULL COMMENT '电子面单',
ADD COLUMN pickup_date DATETIME DEFAULT NULL COMMENT '收件时间',
ADD COLUMN bl_baging TINYINT DEFAULT NULL COMMENT '是否装箱 0 未装箱 1 已装箱',
ADD COLUMN bl_pickup TINYINT DEFAULT NULL COMMENT '是否收件 0 未收件 1 已收件',
ADD COLUMN bag_date DATETIME DEFAULT NULL COMMENT '装箱时间',
ADD COLUMN org_order_status TINYINT DEFAULT NULL COMMENT '渠道状态 0-未下单 1-获取中 2-获取成功 3-获取失败',
ADD COLUMN status_description VARCHAR(255) DEFAULT NULL COMMENT '状态描述,对当前轨迹状态的详细说明',
ADD COLUMN zz_date DATETIME DEFAULT NULL COMMENT '中转时间',
ADD COLUMN shipping_date DATETIME DEFAULT NULL COMMENT '出货时间',
ADD COLUMN order_type DECIMAL(18,6) DEFAULT NULL COMMENT '0-中性面单 1-尾程面单',
ADD COLUMN receiving_photo TEXT DEFAULT NULL COMMENT '收货照片',
ADD COLUMN freight DECIMAL(10,3) DEFAULT NULL COMMENT '应收总运费',
ADD COLUMN is_receivable TINYINT DEFAULT NULL COMMENT '是否已经生成应收账单[0.未生成,1.已生成]',
ADD COLUMN is_meet TINYINT DEFAULT NULL COMMENT '是否已经生成应付账单[0.未生成,1.已生成]',
ADD COLUMN bill_no_receivable VARCHAR(255) DEFAULT NULL COMMENT '应收账单编号',
ADD COLUMN bill_no_meet VARCHAR(255) DEFAULT NULL COMMENT '应付账单编号',
ADD COLUMN country_eingth_name VARCHAR(200) DEFAULT NULL COMMENT '收件人英文国家名称',
ADD COLUMN is_receivable_fee TINYINT DEFAULT NULL COMMENT '是否已计算应收费用0-未计算 1-已计算',
ADD COLUMN settlement_fee DECIMAL(10,3) DEFAULT NULL COMMENT '应收运费',
ADD COLUMN product_id VARCHAR(100) DEFAULT NULL COMMENT '中转产品ID',
ADD COLUMN service_freight DECIMAL(10,3) DEFAULT NULL COMMENT '服务商运费',
ADD COLUMN is_pay_fee TINYINT DEFAULT NULL COMMENT '是否已计算应付费用0-未计算 1-已计算',
ADD COLUMN has_added_surcharge TINYINT DEFAULT NULL COMMENT '是否已经添加过附加费 0未添加 1 已添加',
ADD COLUMN yf_fee DECIMAL(10,3) DEFAULT NULL COMMENT '应付运费',
ADD COLUMN yf_totail_fee DECIMAL(10,3) DEFAULT NULL COMMENT '应付总运费',
ADD COLUMN trajectory_status TINYINT DEFAULT NULL COMMENT '轨迹状态:1.已收货、2.查询失败、3.转运中、4.派送中、5.投递失败、6.退仓、7.异常、8.已签收',
ADD COLUMN cargo_type_name VARCHAR(60) DEFAULT NULL COMMENT '货物类型中文',
ADD COLUMN service_code VARCHAR(20) DEFAULT NULL COMMENT '所属服务商编号',
ADD COLUMN three_code VARCHAR(30) DEFAULT NULL COMMENT '三字码',
ADD COLUMN volume_height_old DECIMAL(10,2) DEFAULT NULL COMMENT '高,单位 CM',
ADD COLUMN volume_length_old DECIMAL(10,2) DEFAULT NULL COMMENT '长,单位 CM',
ADD COLUMN volume_width_old DECIMAL(10,2) DEFAULT NULL COMMENT '宽,单位 CM',
ADD COLUMN register_man_old VARCHAR(60) DEFAULT NULL COMMENT '收货人',
ADD COLUMN bag_no_old VARCHAR(60) DEFAULT NULL COMMENT '箱号',
ADD COLUMN air_no_old VARCHAR(60) DEFAULT NULL COMMENT '航空主单号',
ADD COLUMN box_sizi_old VARCHAR(255) DEFAULT NULL COMMENT '箱子规格',
ADD COLUMN baging_man_old VARCHAR(60) DEFAULT NULL COMMENT '装箱人',
ADD COLUMN retrieval_man_old VARCHAR(60) DEFAULT NULL COMMENT '出货人',
ADD COLUMN invoice_amount_old TEXT DEFAULT NULL COMMENT '申报总价值,必填',
ADD COLUMN invoice_title_old TEXT DEFAULT NULL COMMENT '英文品名,必填',
ADD COLUMN invoice_weight_old TEXT DEFAULT NULL COMMENT '单件重',
ADD COLUMN sku_old TEXT DEFAULT NULL COMMENT '中文品名',
ADD COLUMN hs_code_old TEXT DEFAULT NULL COMMENT '海关编码',
ADD COLUMN register_date_old DATETIME DEFAULT NULL COMMENT '收件时间',
ADD COLUMN invoice_currency_old TEXT DEFAULT NULL COMMENT '申报币种',
ADD COLUMN trajectory_sub_state TINYINT DEFAULT NULL COMMENT '轨迹子状态',
ADD COLUMN sign_in_time DATETIME DEFAULT NULL COMMENT '签收时间',
ADD COLUMN warehouse_time DATETIME DEFAULT NULL COMMENT '仓库操作完成,已安排出库时间',
ADD COLUMN declaration_time DATETIME DEFAULT NULL COMMENT '送仓报关时间',
ADD COLUMN release_time DATETIME DEFAULT NULL COMMENT '报关放行时间',
ADD COLUMN station_time DATETIME DEFAULT NULL COMMENT '货站收货时间',
ADD COLUMN takeoff_time DATETIME DEFAULT NULL COMMENT '航班起飞时间',
ADD COLUMN landing_time DATETIME DEFAULT NULL COMMENT '航班落地时间',
ADD COLUMN clearance_and_delivery_time DATETIME DEFAULT NULL COMMENT '已通知清关行提货时间',
ADD COLUMN supplier_name VARCHAR(255) DEFAULT NULL COMMENT '生产销售供应商',
ADD COLUMN credit_code VARCHAR(255) DEFAULT NULL COMMENT '社会信用代码',
ADD COLUMN other_id VARCHAR(50) DEFAULT NULL COMMENT '其他ID',
ADD COLUMN platform_code VARCHAR(255) DEFAULT NULL COMMENT '平台代码',
ADD COLUMN sync_shipment_status TINYINT DEFAULT NULL COMMENT '物流同步状态, 0:未同步, 1: 已同步',
ADD COLUMN update_weight DECIMAL(10,3) DEFAULT NULL COMMENT '客户更新重量',
ADD COLUMN other_bag_no VARCHAR(60) DEFAULT NULL COMMENT '其它箱号',
ADD COLUMN bag_flag TINYINT DEFAULT NULL COMMENT '装箱标记,1: 已装箱 0:未装箱',
ADD COLUMN online_time DATETIME DEFAULT NULL COMMENT '上网时间',
ADD COLUMN outbound_time DATETIME DEFAULT NULL COMMENT '出库时间',
ADD COLUMN air_confirm_date DATETIME DEFAULT NULL COMMENT '主单号确认时间',
ADD COLUMN shipment_type VARCHAR(50) DEFAULT NULL COMMENT '订单配送类型',
ADD COLUMN track_query_time DATETIME DEFAULT NULL COMMENT '轨迹抓取时间',
ADD COLUMN air_confirm_time DATETIME DEFAULT NULL COMMENT '航班已配载时间',
ADD COLUMN package_type TINYINT DEFAULT NULL COMMENT '0:软包;1:硬包',
ADD COLUMN dimensional_weight_factor DECIMAL(10,3) DEFAULT NULL COMMENT '计费重',
ADD COLUMN update_by VARCHAR(255) DEFAULT NULL COMMENT '更新人',
ADD COLUMN customer_pickup_site VARCHAR(255) DEFAULT NULL COMMENT '取货地点',
ADD COLUMN barcode_number VARCHAR(255) DEFAULT NULL COMMENT '面单条形码',
ADD COLUMN tracking_reflect_status VARCHAR(128) DEFAULT NULL COMMENT '轨迹映射状态',
ADD COLUMN remote_postcode TINYINT DEFAULT NULL COMMENT '是否偏远邮编',
ADD COLUMN clearance_time DATETIME DEFAULT NULL COMMENT 'CLEARANCE_TIME',
ADD COLUMN arrive_stock_time DATETIME DEFAULT NULL COMMENT 'ARRIVE_STOCK_TIME',
ADD COLUMN departure_time DATETIME DEFAULT NULL COMMENT 'DEPARTURE_TIME',
ADD COLUMN first_deliver_time DATETIME DEFAULT NULL COMMENT 'FIRST_DELIVER_TIME',
ADD COLUMN hs_code_tax_count DECIMAL(10,2) DEFAULT NULL COMMENT 'HS_CODE_TAX_COUNT',
ADD COLUMN hs_code_tax_amount DECIMAL(10,4) DEFAULT NULL COMMENT 'HS_CODE_TAX_AMOUNT',
ADD COLUMN hs_code_tax_currency VARCHAR(8) DEFAULT NULL COMMENT 'HS_CODE_TAX_CURRENCY',
ADD COLUMN invoice_url TEXT DEFAULT NULL COMMENT 'INVOICE_URL',
ADD COLUMN clearance_no VARCHAR(32) DEFAULT NULL COMMENT 'CLEARANCE_NO',
ADD COLUMN push_weight DECIMAL(10,3) DEFAULT NULL COMMENT 'PUSH_WEIGHT',
ADD COLUMN internal_check_time DATETIME DEFAULT NULL COMMENT 'INTERNAL_CHECK_TIME',
ADD COLUMN air_delay_time DATETIME DEFAULT NULL COMMENT 'AIR_DELAY_TIME',
ADD COLUMN first_landing_time DATETIME DEFAULT NULL COMMENT 'FIRST_LANDING_TIME',
ADD COLUMN second_takeoff_time DATETIME DEFAULT NULL COMMENT 'SECOND_TAKEOFF_TIME',
ADD COLUMN des_port_check_time DATETIME DEFAULT NULL COMMENT 'DES_PORT_CHECK_TIME',
ADD COLUMN stay_remark TEXT DEFAULT NULL COMMENT 'STAY_REMARK',
ADD COLUMN miss_box_remark TEXT DEFAULT NULL COMMENT 'MISS_BOX_REMARK',
ADD COLUMN product_channel_id VARCHAR(32) DEFAULT NULL COMMENT 'PRODUCT_CHANNEL_ID',
ADD COLUMN customer_track_id VARCHAR(32) DEFAULT NULL COMMENT 'CUSTOMER_TRACK_ID',
ADD COLUMN register_site VARCHAR(255) DEFAULT NULL COMMENT 'REGISTER_SITE',
ADD COLUMN package_type_financial TINYINT DEFAULT NULL COMMENT '财务包裹类型,软硬包',
ADD COLUMN mrn VARCHAR(64) DEFAULT NULL COMMENT 'MRN';
@@ -0,0 +1,179 @@
-- 若已执行过 ADD,可用本脚本仅更新字段注释为中文
SET NAMES utf8mb4;
ALTER TABLE prc_order_bill
MODIFY COLUMN belong_saler VARCHAR(64) DEFAULT NULL COMMENT '所属销售员',
MODIFY COLUMN settlement_man VARCHAR(64) DEFAULT NULL COMMENT '结算员',
MODIFY COLUMN service_man VARCHAR(64) DEFAULT NULL COMMENT '客服员';
ALTER TABLE prc_order_bill_ext
MODIFY COLUMN upstream_id VARCHAR(64) DEFAULT NULL COMMENT 'guid',
MODIFY COLUMN line_no VARCHAR(32) DEFAULT NULL COMMENT '线路',
MODIFY COLUMN package_num INT DEFAULT NULL COMMENT '包裹数量',
MODIFY COLUMN actual_volume DECIMAL(10,3) DEFAULT NULL COMMENT '实际体积重',
MODIFY COLUMN cp_type TINYINT DEFAULT NULL COMMENT '线路产品类型 1全程 2干线 3尾程',
MODIFY COLUMN consignee_mobile VARCHAR(32) DEFAULT NULL COMMENT '收件人手机',
MODIFY COLUMN order_returnsign CHAR(1) DEFAULT NULL COMMENT '退回标志,默认N表示不退回,Y标表示退回。中邮可以忽略该属性',
MODIFY COLUMN trade_type VARCHAR(10) DEFAULT NULL COMMENT '交易类型,值为ZYXT',
MODIFY COLUMN duty_type VARCHAR(10) DEFAULT NULL COMMENT '关税类型,值为DDU或DDP',
MODIFY COLUMN battery_type VARCHAR(20) DEFAULT NULL COMMENT '电池类型代码,联系货代提供',
MODIFY COLUMN consignee_companyname VARCHAR(255) DEFAULT NULL COMMENT '收件公司名,如有最好填写',
MODIFY COLUMN consignee_address VARCHAR(255) DEFAULT NULL COMMENT '收件地址街道,必填',
MODIFY COLUMN consignee_telephone VARCHAR(50) DEFAULT NULL COMMENT '收件电话,必填',
MODIFY COLUMN consignee_state VARCHAR(100) DEFAULT NULL COMMENT '州/省',
MODIFY COLUMN consignee_city VARCHAR(100) DEFAULT NULL COMMENT '城市',
MODIFY COLUMN consignee_suburb VARCHAR(100) DEFAULT NULL COMMENT '收件区,选填',
MODIFY COLUMN consignee_passportno VARCHAR(50) DEFAULT NULL COMMENT '收件护照号,选填',
MODIFY COLUMN consignee_email VARCHAR(255) DEFAULT NULL COMMENT '邮箱,选填',
MODIFY COLUMN consignee_taxno VARCHAR(50) DEFAULT NULL COMMENT '收件人税号',
MODIFY COLUMN consignee_taxnotype VARCHAR(50) DEFAULT NULL COMMENT '收件人税号类型',
MODIFY COLUMN consignee_taxnocountry VARCHAR(2) DEFAULT NULL COMMENT '收件人税号国家',
MODIFY COLUMN consignee_streetno VARCHAR(50) DEFAULT NULL COMMENT '街道号',
MODIFY COLUMN consignee_doorno VARCHAR(50) DEFAULT NULL COMMENT '门牌号',
MODIFY COLUMN shipper_taxnotype VARCHAR(20) DEFAULT NULL COMMENT '税号类型,邮政产品可选值:IOSS,NO - IOSS,OTHER;DHL可选值:SDT、VAT、FTZ、DAN、EOR、CNP、EIN等(类型说明参照文档底部“DHL发件人税号类型”)',
MODIFY COLUMN shipper_taxno VARCHAR(50) DEFAULT NULL COMMENT '发件人税号',
MODIFY COLUMN shipper_taxnocountry VARCHAR(2) DEFAULT NULL COMMENT '发件人税号国家,用国家二字码',
MODIFY COLUMN customer_id VARCHAR(50) DEFAULT NULL COMMENT '客户ID,必填',
MODIFY COLUMN product_imagepath TEXT DEFAULT NULL COMMENT '图片地址,多图片地址用分号隔开',
MODIFY COLUMN order_transactionurl TEXT DEFAULT NULL COMMENT '产品销售地址',
MODIFY COLUMN order_cargoamount DECIMAL(12,5) DEFAULT NULL COMMENT '选填;用于DHL/FEDEX运费;或用于白关申报(订单实际金额,特殊渠道使用);或其他用途',
MODIFY COLUMN cargo_type CHAR(1) DEFAULT NULL COMMENT '包裹类型,P代表包裹,D代表文件,B代表PAK袋',
MODIFY COLUMN shipper_companyname VARCHAR(255) DEFAULT NULL COMMENT '发件人公司名,选填',
MODIFY COLUMN shipper_address1 VARCHAR(255) DEFAULT NULL COMMENT '发件人地址1,选填',
MODIFY COLUMN shipper_address2 VARCHAR(255) DEFAULT NULL COMMENT '发件人地址2,选填',
MODIFY COLUMN shipper_address3 VARCHAR(255) DEFAULT NULL COMMENT '发件人地址3,选填',
MODIFY COLUMN shipper_city VARCHAR(100) DEFAULT NULL COMMENT '发件人城市,选填',
MODIFY COLUMN shipper_state VARCHAR(100) DEFAULT NULL COMMENT '发件人州,选填',
MODIFY COLUMN shipper_postcode VARCHAR(20) DEFAULT NULL COMMENT '发件人邮编,选填',
MODIFY COLUMN shipper_country VARCHAR(100) DEFAULT NULL COMMENT '发件人国家,选填',
MODIFY COLUMN shipper_telephone VARCHAR(20) DEFAULT NULL COMMENT '发件人电话,选填',
MODIFY COLUMN shipper_suburb VARCHAR(100) DEFAULT NULL COMMENT '发件人区,选填',
MODIFY COLUMN shipper_email VARCHAR(255) DEFAULT NULL COMMENT '发件人邮箱,选填',
MODIFY COLUMN shipper_passportno VARCHAR(50) DEFAULT NULL COMMENT '发件人护照号,选填',
MODIFY COLUMN import_code VARCHAR(50) DEFAULT NULL COMMENT '进口商代码',
MODIFY COLUMN import_name VARCHAR(255) DEFAULT NULL COMMENT '进口商名称',
MODIFY COLUMN import_companyname VARCHAR(255) DEFAULT NULL COMMENT '进口商公司名称',
MODIFY COLUMN import_address VARCHAR(255) DEFAULT NULL COMMENT '进口商地址',
MODIFY COLUMN import_address2 VARCHAR(255) DEFAULT NULL COMMENT '进口商地址2',
MODIFY COLUMN import_address3 VARCHAR(255) DEFAULT NULL COMMENT '进口商地址3',
MODIFY COLUMN import_telephone VARCHAR(20) DEFAULT NULL COMMENT '进口商电话',
MODIFY COLUMN import_email VARCHAR(255) DEFAULT NULL COMMENT '进口商邮箱',
MODIFY COLUMN import_postcode VARCHAR(20) DEFAULT NULL COMMENT '进口商邮编',
MODIFY COLUMN import_city VARCHAR(100) DEFAULT NULL COMMENT '进口商城市',
MODIFY COLUMN import_state VARCHAR(100) DEFAULT NULL COMMENT '进口商州省',
MODIFY COLUMN import_country VARCHAR(100) DEFAULT NULL COMMENT '进口商国家',
MODIFY COLUMN buyerid VARCHAR(100) DEFAULT NULL COMMENT '买家ID',
MODIFY COLUMN order_status TINYINT DEFAULT NULL COMMENT '0-预报订单 1:确认订单 2-已中转 3- 已收货 4-已装箱 5-已出库 6-转运中 7-已上网 8-已签收 9-已退件 10-已删除 已取消',
MODIFY COLUMN create_at VARCHAR(255) DEFAULT NULL COMMENT '创建人',
MODIFY COLUMN pay_type TINYINT DEFAULT NULL COMMENT '付款方式 0-预付 1-到付',
MODIFY COLUMN line_code VARCHAR(20) DEFAULT NULL COMMENT '线路产品编号',
MODIFY COLUMN line_name VARCHAR(100) DEFAULT NULL COMMENT '线路产品名称',
MODIFY COLUMN product_type VARCHAR(20) DEFAULT NULL COMMENT '产品类型(全称产品/全称B2B/尾程产品)',
MODIFY COLUMN line_type VARCHAR(20) DEFAULT NULL COMMENT '物流模式(国际快递/邮政小包)',
MODIFY COLUMN cargo_name VARCHAR(100) DEFAULT NULL COMMENT '货物类型(普货/敏感/特货)',
MODIFY COLUMN product_floor_code TEXT DEFAULT NULL COMMENT '渠道编码',
MODIFY COLUMN order_insurance DECIMAL(12,5) DEFAULT NULL COMMENT '保险金额',
MODIFY COLUMN product_sum_price DECIMAL(12,5) DEFAULT NULL COMMENT '商品总价值',
MODIFY COLUMN product_sum DECIMAL(18,6) DEFAULT NULL COMMENT '商品总件数',
MODIFY COLUMN shipper_doorno VARCHAR(20) DEFAULT NULL COMMENT '发件人门牌号',
MODIFY COLUMN tariff_payment_account VARCHAR(20) DEFAULT NULL COMMENT '关税支付账号',
MODIFY COLUMN topayment DECIMAL(12,5) DEFAULT NULL COMMENT '代收货款',
MODIFY COLUMN product_floor TEXT DEFAULT NULL COMMENT '渠道名称',
MODIFY COLUMN latest_trajectory TEXT DEFAULT NULL COMMENT '订单轨迹',
MODIFY COLUMN way_bill TEXT DEFAULT NULL COMMENT '电子面单',
MODIFY COLUMN pickup_date DATETIME DEFAULT NULL COMMENT '收件时间',
MODIFY COLUMN bl_baging TINYINT DEFAULT NULL COMMENT '是否装箱 0 未装箱 1 已装箱',
MODIFY COLUMN bl_pickup TINYINT DEFAULT NULL COMMENT '是否收件 0 未收件 1 已收件',
MODIFY COLUMN bag_date DATETIME DEFAULT NULL COMMENT '装箱时间',
MODIFY COLUMN org_order_status TINYINT DEFAULT NULL COMMENT '渠道状态 0-未下单 1-获取中 2-获取成功 3-获取失败',
MODIFY COLUMN status_description VARCHAR(255) DEFAULT NULL COMMENT '状态描述,对当前轨迹状态的详细说明',
MODIFY COLUMN zz_date DATETIME DEFAULT NULL COMMENT '中转时间',
MODIFY COLUMN shipping_date DATETIME DEFAULT NULL COMMENT '出货时间',
MODIFY COLUMN order_type DECIMAL(18,6) DEFAULT NULL COMMENT '0-中性面单 1-尾程面单',
MODIFY COLUMN receiving_photo TEXT DEFAULT NULL COMMENT '收货照片',
MODIFY COLUMN freight DECIMAL(10,3) DEFAULT NULL COMMENT '应收总运费',
MODIFY COLUMN is_receivable TINYINT DEFAULT NULL COMMENT '是否已经生成应收账单[0.未生成,1.已生成]',
MODIFY COLUMN is_meet TINYINT DEFAULT NULL COMMENT '是否已经生成应付账单[0.未生成,1.已生成]',
MODIFY COLUMN bill_no_receivable VARCHAR(255) DEFAULT NULL COMMENT '应收账单编号',
MODIFY COLUMN bill_no_meet VARCHAR(255) DEFAULT NULL COMMENT '应付账单编号',
MODIFY COLUMN country_eingth_name VARCHAR(200) DEFAULT NULL COMMENT '收件人英文国家名称',
MODIFY COLUMN is_receivable_fee TINYINT DEFAULT NULL COMMENT '是否已计算应收费用0-未计算 1-已计算',
MODIFY COLUMN settlement_fee DECIMAL(10,3) DEFAULT NULL COMMENT '应收运费',
MODIFY COLUMN product_id VARCHAR(100) DEFAULT NULL COMMENT '中转产品ID',
MODIFY COLUMN service_freight DECIMAL(10,3) DEFAULT NULL COMMENT '服务商运费',
MODIFY COLUMN is_pay_fee TINYINT DEFAULT NULL COMMENT '是否已计算应付费用0-未计算 1-已计算',
MODIFY COLUMN has_added_surcharge TINYINT DEFAULT NULL COMMENT '是否已经添加过附加费 0未添加 1 已添加',
MODIFY COLUMN yf_fee DECIMAL(10,3) DEFAULT NULL COMMENT '应付运费',
MODIFY COLUMN yf_totail_fee DECIMAL(10,3) DEFAULT NULL COMMENT '应付总运费',
MODIFY COLUMN trajectory_status TINYINT DEFAULT NULL COMMENT '轨迹状态:1.已收货、2.查询失败、3.转运中、4.派送中、5.投递失败、6.退仓、7.异常、8.已签收',
MODIFY COLUMN cargo_type_name VARCHAR(60) DEFAULT NULL COMMENT '货物类型中文',
MODIFY COLUMN service_code VARCHAR(20) DEFAULT NULL COMMENT '所属服务商编号',
MODIFY COLUMN three_code VARCHAR(30) DEFAULT NULL COMMENT '三字码',
MODIFY COLUMN volume_height_old DECIMAL(10,2) DEFAULT NULL COMMENT '高,单位 CM',
MODIFY COLUMN volume_length_old DECIMAL(10,2) DEFAULT NULL COMMENT '长,单位 CM',
MODIFY COLUMN volume_width_old DECIMAL(10,2) DEFAULT NULL COMMENT '宽,单位 CM',
MODIFY COLUMN register_man_old VARCHAR(60) DEFAULT NULL COMMENT '收货人',
MODIFY COLUMN bag_no_old VARCHAR(60) DEFAULT NULL COMMENT '箱号',
MODIFY COLUMN air_no_old VARCHAR(60) DEFAULT NULL COMMENT '航空主单号',
MODIFY COLUMN box_sizi_old VARCHAR(255) DEFAULT NULL COMMENT '箱子规格',
MODIFY COLUMN baging_man_old VARCHAR(60) DEFAULT NULL COMMENT '装箱人',
MODIFY COLUMN retrieval_man_old VARCHAR(60) DEFAULT NULL COMMENT '出货人',
MODIFY COLUMN invoice_amount_old TEXT DEFAULT NULL COMMENT '申报总价值,必填',
MODIFY COLUMN invoice_title_old TEXT DEFAULT NULL COMMENT '英文品名,必填',
MODIFY COLUMN invoice_weight_old TEXT DEFAULT NULL COMMENT '单件重',
MODIFY COLUMN sku_old TEXT DEFAULT NULL COMMENT '中文品名',
MODIFY COLUMN hs_code_old TEXT DEFAULT NULL COMMENT '海关编码',
MODIFY COLUMN register_date_old DATETIME DEFAULT NULL COMMENT '收件时间',
MODIFY COLUMN invoice_currency_old TEXT DEFAULT NULL COMMENT '申报币种',
MODIFY COLUMN trajectory_sub_state TINYINT DEFAULT NULL COMMENT '轨迹子状态',
MODIFY COLUMN sign_in_time DATETIME DEFAULT NULL COMMENT '签收时间',
MODIFY COLUMN warehouse_time DATETIME DEFAULT NULL COMMENT '仓库操作完成,已安排出库时间',
MODIFY COLUMN declaration_time DATETIME DEFAULT NULL COMMENT '送仓报关时间',
MODIFY COLUMN release_time DATETIME DEFAULT NULL COMMENT '报关放行时间',
MODIFY COLUMN station_time DATETIME DEFAULT NULL COMMENT '货站收货时间',
MODIFY COLUMN takeoff_time DATETIME DEFAULT NULL COMMENT '航班起飞时间',
MODIFY COLUMN landing_time DATETIME DEFAULT NULL COMMENT '航班落地时间',
MODIFY COLUMN clearance_and_delivery_time DATETIME DEFAULT NULL COMMENT '已通知清关行提货时间',
MODIFY COLUMN supplier_name VARCHAR(255) DEFAULT NULL COMMENT '生产销售供应商',
MODIFY COLUMN credit_code VARCHAR(255) DEFAULT NULL COMMENT '社会信用代码',
MODIFY COLUMN other_id VARCHAR(50) DEFAULT NULL COMMENT '其他ID',
MODIFY COLUMN platform_code VARCHAR(255) DEFAULT NULL COMMENT '平台代码',
MODIFY COLUMN sync_shipment_status TINYINT DEFAULT NULL COMMENT '物流同步状态, 0:未同步, 1: 已同步',
MODIFY COLUMN update_weight DECIMAL(10,3) DEFAULT NULL COMMENT '客户更新重量',
MODIFY COLUMN other_bag_no VARCHAR(60) DEFAULT NULL COMMENT '其它箱号',
MODIFY COLUMN bag_flag TINYINT DEFAULT NULL COMMENT '装箱标记,1: 已装箱 0:未装箱',
MODIFY COLUMN online_time DATETIME DEFAULT NULL COMMENT '上网时间',
MODIFY COLUMN outbound_time DATETIME DEFAULT NULL COMMENT '出库时间',
MODIFY COLUMN air_confirm_date DATETIME DEFAULT NULL COMMENT '主单号确认时间',
MODIFY COLUMN shipment_type VARCHAR(50) DEFAULT NULL COMMENT '订单配送类型',
MODIFY COLUMN track_query_time DATETIME DEFAULT NULL COMMENT '轨迹抓取时间',
MODIFY COLUMN air_confirm_time DATETIME DEFAULT NULL COMMENT '航班已配载时间',
MODIFY COLUMN package_type TINYINT DEFAULT NULL COMMENT '0:软包;1:硬包',
MODIFY COLUMN dimensional_weight_factor DECIMAL(10,3) DEFAULT NULL COMMENT '计费重',
MODIFY COLUMN update_by VARCHAR(255) DEFAULT NULL COMMENT '更新人',
MODIFY COLUMN customer_pickup_site VARCHAR(255) DEFAULT NULL COMMENT '取货地点',
MODIFY COLUMN barcode_number VARCHAR(255) DEFAULT NULL COMMENT '面单条形码',
MODIFY COLUMN tracking_reflect_status VARCHAR(128) DEFAULT NULL COMMENT '轨迹映射状态',
MODIFY COLUMN remote_postcode TINYINT DEFAULT NULL COMMENT '是否偏远邮编',
MODIFY COLUMN clearance_time DATETIME DEFAULT NULL COMMENT 'CLEARANCE_TIME',
MODIFY COLUMN arrive_stock_time DATETIME DEFAULT NULL COMMENT 'ARRIVE_STOCK_TIME',
MODIFY COLUMN departure_time DATETIME DEFAULT NULL COMMENT 'DEPARTURE_TIME',
MODIFY COLUMN first_deliver_time DATETIME DEFAULT NULL COMMENT 'FIRST_DELIVER_TIME',
MODIFY COLUMN hs_code_tax_count DECIMAL(10,2) DEFAULT NULL COMMENT 'HS_CODE_TAX_COUNT',
MODIFY COLUMN hs_code_tax_amount DECIMAL(10,4) DEFAULT NULL COMMENT 'HS_CODE_TAX_AMOUNT',
MODIFY COLUMN hs_code_tax_currency VARCHAR(8) DEFAULT NULL COMMENT 'HS_CODE_TAX_CURRENCY',
MODIFY COLUMN invoice_url TEXT DEFAULT NULL COMMENT 'INVOICE_URL',
MODIFY COLUMN clearance_no VARCHAR(32) DEFAULT NULL COMMENT 'CLEARANCE_NO',
MODIFY COLUMN push_weight DECIMAL(10,3) DEFAULT NULL COMMENT 'PUSH_WEIGHT',
MODIFY COLUMN internal_check_time DATETIME DEFAULT NULL COMMENT 'INTERNAL_CHECK_TIME',
MODIFY COLUMN air_delay_time DATETIME DEFAULT NULL COMMENT 'AIR_DELAY_TIME',
MODIFY COLUMN first_landing_time DATETIME DEFAULT NULL COMMENT 'FIRST_LANDING_TIME',
MODIFY COLUMN second_takeoff_time DATETIME DEFAULT NULL COMMENT 'SECOND_TAKEOFF_TIME',
MODIFY COLUMN des_port_check_time DATETIME DEFAULT NULL COMMENT 'DES_PORT_CHECK_TIME',
MODIFY COLUMN stay_remark TEXT DEFAULT NULL COMMENT 'STAY_REMARK',
MODIFY COLUMN miss_box_remark TEXT DEFAULT NULL COMMENT 'MISS_BOX_REMARK',
MODIFY COLUMN product_channel_id VARCHAR(32) DEFAULT NULL COMMENT 'PRODUCT_CHANNEL_ID',
MODIFY COLUMN customer_track_id VARCHAR(32) DEFAULT NULL COMMENT 'CUSTOMER_TRACK_ID',
MODIFY COLUMN register_site VARCHAR(255) DEFAULT NULL COMMENT 'REGISTER_SITE',
MODIFY COLUMN package_type_financial TINYINT DEFAULT NULL COMMENT '财务包裹类型,软硬包',
MODIFY COLUMN mrn VARCHAR(64) DEFAULT NULL COMMENT 'MRN';
@@ -98,6 +98,9 @@ const columns = [
{ label: '订单号', prop: 'orderNo', minWidth: 140, showOverflowTooltip: true },
{ label: '运单号', prop: 'trackingNo', minWidth: 140, showOverflowTooltip: true },
{ label: '转单号', prop: 'transferNo', minWidth: 140, showOverflowTooltip: true },
{ label: '销售员', prop: 'belongSaler', minWidth: 100, showOverflowTooltip: true },
{ label: '结算员', prop: 'settlementMan', minWidth: 100, showOverflowTooltip: true },
{ label: '客服员', prop: 'serviceMan', minWidth: 100, showOverflowTooltip: true },
{ label: '客户', prop: 'customerName', minWidth: 140, showOverflowTooltip: true },
{ label: '客户代码', prop: 'customerCode', width: 120 },
{ label: '产品', prop: 'product', minWidth: 160, slot: 'product' },
@@ -17,6 +17,9 @@
<el-descriptions-item label="订单号">{{ detail.orderNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="运单号">{{ detail.trackingNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="转单号">{{ detail.transferNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="销售员">{{ detail.belongSaler || '-' }}</el-descriptions-item>
<el-descriptions-item label="结算员">{{ detail.settlementMan || '-' }}</el-descriptions-item>
<el-descriptions-item label="客服员">{{ detail.serviceMan || '-' }}</el-descriptions-item>
<el-descriptions-item label="客户">{{ displayCustomer(detail) }}</el-descriptions-item>
<el-descriptions-item label="客户生效">{{ customerActiveLabel(detail.customerActiveStatus) }}</el-descriptions-item>
<el-descriptions-item label="额度欠费">{{ creditArrearsLabel(detail.creditArrearsStatus) }}</el-descriptions-item>