记得上下班打卡 | git大法好,push需谨慎

Commit 4910e235 authored by jiangxiulong's avatar jiangxiulong

估算运费

parent 9ffdceec
......@@ -395,7 +395,15 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
String msg = (String) hashMap.get("msg");
return ResponseDto.failure(msg);
} else {
// TODO: 2021/6/30 储存金额
HashMap hashMapResult = (HashMap) hashMap.get("result");
KylinOrderExpress kylinOrderExpress = new KylinOrderExpress();
BigDecimal price = dataUtils.getBigDecimal(hashMapResult.get("price"));
kylinOrderExpress.setFreightPrice(price);
kylinOrderExpress.setUpdatedAt(DateUtil.getNowTime());
kylinOrderExpressMapper.update(
kylinOrderExpress
, new UpdateWrapper<KylinOrderExpress>().in("order_express_id", orderExpressInfo.getOrderExpressId())
);
// {"result":{"deliverTime":"2021-07-01 18:00:00,2021-07-01 18:00:00","price":"23元","businessTypeDesc":"顺丰特快","businessType":"1"},"succ":"ok","msg":null}
}
}
......@@ -481,6 +489,7 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
kylinOrderExpressRoute.setOpcode((String) routeInfo.get("opcode"));
kylinOrderExpressRoute.setCreatedAt(DateUtil.getNowTime());
kylinOrderExpressRouteMapper.insert(kylinOrderExpressRoute);
// 这里没清缓存 推送正常的话这个用不到
}
}
}
......
......@@ -16,6 +16,8 @@ import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Component;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
......@@ -291,4 +293,29 @@ public class DataUtils {
redisUtil.del(KylinRedisConst.ORDER_REFUND_BY_ORDER_ID.concat(id));
}
}
/**
* Object转BigDecimal类型
*
* @param value 要转的object类型
* @return 转成的BigDecimal类型数据
*/
public BigDecimal getBigDecimal(Object value) {
BigDecimal ret = null;
if (value != null) {
if (value instanceof BigDecimal) {
ret = (BigDecimal) value;
} else if (value instanceof String) {
String str = ((String) value).replace("元","");
ret = new BigDecimal(str);
} else if (value instanceof BigInteger) {
ret = new BigDecimal((BigInteger) value);
} else if (value instanceof Number) {
ret = new BigDecimal(((Number) value).doubleValue());
} else {
throw new ClassCastException("Not possible to coerce [" + value + "] from class " + value.getClass() + " into a BigDecimal.");
}
}
return ret;
}
}
......@@ -6,6 +6,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* <p>
......@@ -37,6 +38,7 @@ public class KylinOrderExpress implements Serializable {
private String printIcon;
private String twoDimensionCode;
private String printFlag;
private BigDecimal freightPrice;
private String return_tracking_no;
private String sourceTransferCode;
......
......@@ -799,54 +799,56 @@ CREATE TABLE `kylin_order_refund_entities`
drop TABLE if exists `kylin_order_express`;
CREATE TABLE `kylin_order_express`
(
`mid` int unsigned NOT NULL AUTO_INCREMENT,
`order_express_id` varchar(255) NOT NULL DEFAULT '' COMMENT 'order_express_id',
`order_tickets_id` varchar(255) NOT NULL DEFAULT '' COMMENT '订单id',
`order_express_code` varchar(255) NOT NULL DEFAULT '' COMMENT '订单快递编号',
`mailno` varchar(255) NOT NULL DEFAULT '' COMMENT '顺丰运单号',
`express_type` tinyint NOT NULL DEFAULT 0 COMMENT '快件产品类型 1顺丰特快...',
`filter_result` varchar(2) NOT NULL DEFAULT '0' COMMENT '1-人工确认;2-可收派;3-不可以收派',
`remark` varchar(255) NOT NULL DEFAULT '' COMMENT 'filter_result=3时返回不可以收派的原因代码',
`express_status` tinyint NOT NULL DEFAULT 0 COMMENT '快递状态',
`origincode` varchar(255) NOT NULL DEFAULT '' COMMENT '原寄地区域代码 可用于顺丰电子面单标签打印',
`destcode` varchar(255) NOT NULL DEFAULT '' COMMENT '目的地区域代码 可用于顺丰电子面单标签打印',
`return_tracking_no` varchar(30) NOT NULL DEFAULT '' COMMENT '顺丰签回单服务运单号',
`source_transfer_code` varchar(60) NOT NULL DEFAULT '' COMMENT '原寄地中转场',
`source_city_code` varchar(60) NOT NULL DEFAULT '' COMMENT '原寄地城市代码',
`source_dept_code` varchar(60) NOT NULL DEFAULT '' COMMENT '原寄地网点代码',
`source_team_code` varchar(60) NOT NULL DEFAULT '' COMMENT '原寄地单元区域',
`dest_city_code` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地城市代码 eg:755',
`dest_dept_code` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地网点代码 eg:755AQ',
`dest_dept_code_mapping` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地网点代码映射码',
`dest_team_code` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地单元区域 eg:001',
`dest_team_code_mapping` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地单元区域映射码',
`dest_transfer_code` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地中转场',
`dest_route_label` varchar(200) NOT NULL DEFAULT '' COMMENT '路由标签信息',
`pro_name` varchar(60) NOT NULL DEFAULT '' COMMENT '产品名称 对应RLS:pro_name',
`cargo_type_code` varchar(30) NOT NULL DEFAULT '' COMMENT '快件内容 如:C816、SP601',
`limit_type_code` varchar(30) NOT NULL DEFAULT '' COMMENT '时效代码 如:T4',
`express_type_code` varchar(30) NOT NULL DEFAULT '' COMMENT '产品类型 如:B1',
`coding_mapping` varchar(60) NOT NULL DEFAULT '' COMMENT '入港映射码 eg:S10',
`coding_mapping_out` varchar(60) NOT NULL DEFAULT '' COMMENT '出港映射码',
`xb_flag` varchar(30) NOT NULL DEFAULT '' COMMENT 'XB标志 0:不需要打印XB,1:需要打印XB',
`print_flag` varchar(60) NOT NULL DEFAULT '' COMMENT '打印标志',
`two_dimension_code` varchar(600) NOT NULL DEFAULT '' COMMENT '二维码',
`pro_code` varchar(30) NOT NULL DEFAULT '' COMMENT '时效类型 值为二维码中的K4',
`print_icon` varchar(100) NOT NULL DEFAULT '' COMMENT '打印图标',
`ab_flag` varchar(30) NOT NULL DEFAULT '' COMMENT 'AB标',
`dest_port_code` varchar(100) NOT NULL DEFAULT '' COMMENT '目的地口岸代码',
`dest_country` varchar(50) NOT NULL DEFAULT '' COMMENT '目的国别 国别代码如:JP',
`dest_post_code` varchar(100) NOT NULL DEFAULT '' COMMENT '目的地邮编',
`goods_value_total` varchar(30) NOT NULL DEFAULT '' COMMENT '总价值 保留两位小数,数字类型,可补位',
`currency_symbol` varchar(30) NOT NULL DEFAULT '' COMMENT '币种',
`goods_number` varchar(20) NOT NULL DEFAULT '' COMMENT '件数',
`two_dimension_code2` varchar(600) NOT NULL DEFAULT '' COMMENT '签回单二维码 下单时,当选择签回单增值服务时,会回传此字段,规则同“twoDimensionCode”',
`new_icon` varchar(100) NOT NULL DEFAULT '' COMMENT 'ab标扩展',
`new_abflag` varchar(30) NOT NULL DEFAULT '' COMMENT '打印图标扩展',
`created_at` timestamp NULL DEFAULT NULL,
`updated_at` timestamp NULL DEFAULT NULL,
`mid` int unsigned NOT NULL AUTO_INCREMENT,
`order_express_id` varchar(255) NOT NULL DEFAULT '' COMMENT 'order_express_id',
`order_tickets_id` varchar(255) NOT NULL DEFAULT '' COMMENT '订单id',
`order_express_code` varchar(255) NOT NULL DEFAULT '' COMMENT '订单快递编号',
`mailno` varchar(255) NOT NULL DEFAULT '' COMMENT '顺丰运单号',
`express_type` tinyint NOT NULL DEFAULT 0 COMMENT '快件产品类型 1顺丰特快...',
`filter_result` varchar(2) NOT NULL DEFAULT '0' COMMENT '1-人工确认;2-可收派;3-不可以收派',
`remark` varchar(255) NOT NULL DEFAULT '' COMMENT 'filter_result=3时返回不可以收派的原因代码',
`express_status` tinyint NOT NULL DEFAULT 0 COMMENT '快递状态',
`origincode` varchar(255) NOT NULL DEFAULT '' COMMENT '原寄地区域代码 可用于顺丰电子面单标签打印',
`destcode` varchar(255) NOT NULL DEFAULT '' COMMENT '目的地区域代码 可用于顺丰电子面单标签打印',
`freight_price` decimal(11, 2) NOT NULL DEFAULT '0.00' COMMENT '估算的运费',
`return_tracking_no` varchar(30) NOT NULL DEFAULT '' COMMENT '顺丰签回单服务运单号',
`source_transfer_code` varchar(60) NOT NULL DEFAULT '' COMMENT '原寄地中转场',
`source_city_code` varchar(60) NOT NULL DEFAULT '' COMMENT '原寄地城市代码',
`source_dept_code` varchar(60) NOT NULL DEFAULT '' COMMENT '原寄地网点代码',
`source_team_code` varchar(60) NOT NULL DEFAULT '' COMMENT '原寄地单元区域',
`dest_city_code` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地城市代码 eg:755',
`dest_dept_code` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地网点代码 eg:755AQ',
`dest_dept_code_mapping` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地网点代码映射码',
`dest_team_code` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地单元区域 eg:001',
`dest_team_code_mapping` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地单元区域映射码',
`dest_transfer_code` varchar(60) NOT NULL DEFAULT '' COMMENT '目的地中转场',
`dest_route_label` varchar(200) NOT NULL DEFAULT '' COMMENT '路由标签信息',
`pro_name` varchar(60) NOT NULL DEFAULT '' COMMENT '产品名称 对应RLS:pro_name',
`cargo_type_code` varchar(30) NOT NULL DEFAULT '' COMMENT '快件内容 如:C816、SP601',
`limit_type_code` varchar(30) NOT NULL DEFAULT '' COMMENT '时效代码 如:T4',
`express_type_code` varchar(30) NOT NULL DEFAULT '' COMMENT '产品类型 如:B1',
`coding_mapping` varchar(60) NOT NULL DEFAULT '' COMMENT '入港映射码 eg:S10',
`coding_mapping_out` varchar(60) NOT NULL DEFAULT '' COMMENT '出港映射码',
`xb_flag` varchar(30) NOT NULL DEFAULT '' COMMENT 'XB标志 0:不需要打印XB,1:需要打印XB',
`print_flag` varchar(60) NOT NULL DEFAULT '' COMMENT '打印标志',
`two_dimension_code` varchar(600) NOT NULL DEFAULT '' COMMENT '二维码',
`pro_code` varchar(30) NOT NULL DEFAULT '' COMMENT '时效类型 值为二维码中的K4',
`print_icon` varchar(100) NOT NULL DEFAULT '' COMMENT '打印图标',
`ab_flag` varchar(30) NOT NULL DEFAULT '' COMMENT 'AB标',
`dest_port_code` varchar(100) NOT NULL DEFAULT '' COMMENT '目的地口岸代码',
`dest_country` varchar(50) NOT NULL DEFAULT '' COMMENT '目的国别 国别代码如:JP',
`dest_post_code` varchar(100) NOT NULL DEFAULT '' COMMENT '目的地邮编',
`goods_value_total` varchar(30) NOT NULL DEFAULT '' COMMENT '总价值 保留两位小数,数字类型,可补位',
`currency_symbol` varchar(30) NOT NULL DEFAULT '' COMMENT '币种',
`goods_number` varchar(20) NOT NULL DEFAULT '' COMMENT '件数',
`two_dimension_code2` varchar(600) NOT NULL DEFAULT '' COMMENT '签回单二维码 下单时,当选择签回单增值服务时,会回传此字段,规则同“twoDimensionCode”',
`new_icon` varchar(100) NOT NULL DEFAULT '' COMMENT 'ab标扩展',
`new_abflag` varchar(30) NOT NULL DEFAULT '' COMMENT '打印图标扩展',
`created_at` timestamp NULL DEFAULT NULL,
`updated_at` timestamp NULL DEFAULT NULL,
KEY `order_express_id_index` (`order_express_id`),
PRIMARY KEY (`mid`)
) ENGINE = InnoDB
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment