From ea192bade34194ebd59dc4d1a81fd8a183f7af77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <280645618@qq.com> Date: Tue, 18 Jun 2024 16:01:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84tao=E7=94=B5=E5=AD=90?= =?UTF-8?q?=E9=9D=A2=E5=8D=95=E6=89=93=E5=8D=B0=EF=BC=9B=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E9=9D=A2=E5=8D=95=E6=89=93=E5=8D=B0=E5=8A=A0=E5=85=A5=E5=A4=87?= =?UTF-8?q?=E8=B4=A7=E5=BA=93=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + .../java/com/qihang/common/mq/MqMessage.java | 21 ++++ .../java/com/qihang/common/mq/MqType.java | 14 +++ docs/qihang-erp.sql | 46 ++++++-- .../com/qihang/oms/domain/ErpShipStockUp.java | 108 ++++++++++++++++++ .../oms/mapper/ErpShipStockUpMapper.java | 18 +++ .../com/qihang/oms/mq/KafkaMQConsumer.java | 22 ++++ .../oms/service/ErpSaleOrderService.java | 12 ++ .../oms/service/ErpShipStockUpService.java | 13 +++ .../service/impl/ErpSaleOrderServiceImpl.java | 77 +++++++++++++ .../impl/ErpShipStockUpServiceImpl.java | 22 ++++ .../resources/mapper/ErpShipStockUpMapper.xml | 36 ++++++ open-api/jd-api/libs/jd-api-1.5.4.jar | Bin 57986 -> 0 bytes open-api/jd-api/libs/jd-api-1.6.17.jar | Bin 0 -> 121349 bytes .../com/qihang/jd/task/CronTaskLoader.java | 90 +++++++-------- .../java/com/qihang/jd/task/OrderTask.java | 60 +++++----- .../tao/controller/EwaybillController.java | 23 ++++ .../tao/service/ErpShipWaybillService.java | 1 + .../impl/ErpShipWaybillServiceImpl.java | 60 ++++++++-- vue/src/api/tao/ewaybill.js | 9 ++ .../views/shipping/ewaybillPrint/index.vue | 5 +- vue/src/views/shop/jd/ewaybill/index.vue | 98 +++++++++------- vue/src/views/shop/tao/ewaybill/index.vue | 50 +++++--- 23 files changed, 633 insertions(+), 153 deletions(-) create mode 100644 oms-api/src/main/java/com/qihang/oms/domain/ErpShipStockUp.java create mode 100644 oms-api/src/main/java/com/qihang/oms/mapper/ErpShipStockUpMapper.java create mode 100644 oms-api/src/main/java/com/qihang/oms/service/ErpShipStockUpService.java create mode 100644 oms-api/src/main/java/com/qihang/oms/service/impl/ErpShipStockUpServiceImpl.java create mode 100644 oms-api/src/main/resources/mapper/ErpShipStockUpMapper.xml delete mode 100644 open-api/jd-api/libs/jd-api-1.5.4.jar create mode 100644 open-api/jd-api/libs/jd-api-1.6.17.jar diff --git a/README.md b/README.md index 109694ea..844af343 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,7 @@ + [ ] 视频号小店 + [ ] 接入电子面单打印 + [x] 淘宝 + + [ ] 京东 + [x] 视频号小店 + [ ] 拼多多 + [ ] 抖店 diff --git a/core/common/src/main/java/com/qihang/common/mq/MqMessage.java b/core/common/src/main/java/com/qihang/common/mq/MqMessage.java index 76c411cc..8316df3e 100644 --- a/core/common/src/main/java/com/qihang/common/mq/MqMessage.java +++ b/core/common/src/main/java/com/qihang/common/mq/MqMessage.java @@ -10,6 +10,11 @@ public class MqMessage { private int mqType;// 消息类型(1:订单消息;2:退款消息) private EnumShopType shopType; private String keyId; + private String[] orderIds; + private Long shopId; + private String logisticsCompanyCode;//快递公司编码 + private String waybillCode;//运单号 + public static MqMessage build(EnumShopType shopType,int mqType , String keyId){ MqMessage result = new MqMessage(); @@ -18,4 +23,20 @@ public class MqMessage { result.setKeyId(keyId); return result; } + + public static MqMessage build(Long shopId,String orderId){ + MqMessage result = new MqMessage(); + result.setShopId(shopId); + result.setKeyId(orderId); + return result; + } + + public static MqMessage build(Long shopId,String orderId,String logisticsCompanyCode,String waybillCode){ + MqMessage result = new MqMessage(); + result.setShopId(shopId); + result.setKeyId(orderId); + result.setLogisticsCompanyCode(logisticsCompanyCode); + result.setWaybillCode(waybillCode); + return result; + } } diff --git a/core/common/src/main/java/com/qihang/common/mq/MqType.java b/core/common/src/main/java/com/qihang/common/mq/MqType.java index 31e4283e..f035b687 100644 --- a/core/common/src/main/java/com/qihang/common/mq/MqType.java +++ b/core/common/src/main/java/com/qihang/common/mq/MqType.java @@ -10,6 +10,20 @@ public class MqType { */ public static final int REFUND_MESSAGE = 2; + /** + * 新订单消息 + */ public static final String ORDER_MQ = "ORDER_MQ"; + /** + * 新退款消息 + */ public static final String REFUND_MQ = "REFUND_MQ"; + /** + * 新备货消息 + */ + public static final String SHIP_STOCK_UP_MQ = "SHIP_STOCK_UP_MQ"; + /** + * 发货通知 + */ + public static final String SHIP_SEND_MQ = "SHIP_SEND_MQ"; } diff --git a/docs/qihang-erp.sql b/docs/qihang-erp.sql index 32663168..201f47af 100644 --- a/docs/qihang-erp.sql +++ b/docs/qihang-erp.sql @@ -11,7 +11,7 @@ Target Server Version : 80032 File Encoding : 65001 - Date: 17/06/2024 10:57:02 + Date: 18/06/2024 16:00:44 */ SET NAMES utf8mb4; @@ -383,7 +383,7 @@ CREATE TABLE `erp_sale_order` ( PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `order_sn_index`(`order_num`) USING BTREE, INDEX `shopid_index`(`shop_id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1801809140794216449 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '订单表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 1801809140794216449 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '订单表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for erp_sale_order_item @@ -425,7 +425,7 @@ CREATE TABLE `erp_sale_order_item` ( PRIMARY KEY (`id`) USING BTREE, INDEX `goodId_index`(`goods_id`) USING BTREE, INDEX `order_id`(`order_id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1801809144007053315 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '订单明细表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 1801809144007053314 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '订单明细表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for erp_ship_logistics @@ -545,6 +545,32 @@ CREATE TABLE `erp_ship_order_fee` ( PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 1786238985318604802 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '订单发货物流费用' ROW_FORMAT = Dynamic; +-- ---------------------------- +-- Table structure for erp_ship_stock_up +-- ---------------------------- +DROP TABLE IF EXISTS `erp_ship_stock_up`; +CREATE TABLE `erp_ship_stock_up` ( + `id` bigint(0) NOT NULL AUTO_INCREMENT, + `sale_order_id` bigint(0) DEFAULT NULL COMMENT 'erp订单id', + `sale_order_item_id` bigint(0) DEFAULT NULL COMMENT 'erp订单itemid', + `order_num` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '订单编号', + `original_sku_id` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '原始订单skuid', + `goods_id` bigint(0) DEFAULT 0 COMMENT 'erp系统商品id', + `spec_id` bigint(0) DEFAULT 0 COMMENT 'erp系统商品规格id', + `goods_title` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '商品标题', + `goods_img` varchar(300) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '商品图片', + `goods_spec` varchar(2550) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '商品规格', + `goods_num` varchar(35) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '商品编码', + `spec_num` varchar(35) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '商品规格编码', + `quantity` int(0) NOT NULL COMMENT '商品数量', + `status` int(0) NOT NULL COMMENT '状态0待备货1备货中2已出库3已发货', + `create_time` datetime(0) DEFAULT NULL COMMENT '创建时间', + `create_by` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人', + `update_time` datetime(0) DEFAULT NULL COMMENT '更新时间', + `update_by` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '更新人', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '备货表' ROW_FORMAT = Dynamic; + -- ---------------------------- -- Table structure for erp_ship_waybill -- ---------------------------- @@ -563,7 +589,7 @@ CREATE TABLE `erp_ship_waybill` ( `update_time` datetime(0) DEFAULT NULL COMMENT '更新时间', `update_by` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '更新人', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '发货电子面单记录表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 1802644906957025282 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '发货电子面单记录表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for oms_dou_goods @@ -1270,7 +1296,7 @@ CREATE TABLE `oms_pdd_waybill_account` ( `phone` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '发货固定电话', `is_show` int(0) DEFAULT NULL COMMENT '是否前台显示1显示0不显示', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '拼多多电子面单账户信息表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '拼多多电子面单账户信息表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for oms_tao_goods @@ -1389,9 +1415,6 @@ CREATE TABLE `oms_tao_order` ( `receiving_time` datetime(0) DEFAULT NULL COMMENT '收货时间,这里返回的是完全收货时间', `status` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT '' COMMENT '交易状态。可选值: * TRADE_NO_CREATE_PAY(没有创建支付宝交易) * WAIT_BUYER_PAY(等待买家付款) * SELLER_CONSIGNED_PART(卖家部分发货) * WAIT_SELLER_SEND_GOODS(等待卖家发货,即:买家已付款) * WAIT_BUYER_CONFIRM_GOODS(等待买家确认收货,即:卖家已发货) * TRADE_BUYER_SIGNED(买家已签收,货到付款专用) * TRADE_FINISHED(交易成功) * TRADE_CLOSED(付款以后用户退款成功,交易自动关闭) * TRADE_CLOSED_BY_TAOBAO(付款以前,卖家或买家主动关闭交易) * PAY_PENDING(国际信用卡支付付款确认中) * WAIT_PRE_AUTH_CONFIRM(0元购合约中) * PAID_FORBID_CONSIGN(拼团中订单或者发货强管控的订单,已付款但禁止发货)', `trade_memo` varchar(2000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '交易备注。', - `erp_send_company` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT 'erp发货快递公司', - `erp_send_code` varchar(30) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT 'erp发货快递单号', - `erp_send_status` int(0) DEFAULT 0 COMMENT 'erp发货状态', `create_time` datetime(0) DEFAULT NULL COMMENT '数据库创建时间', `update_time` datetime(0) DEFAULT NULL COMMENT '数据库更新时间', `update_by` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '数据库更新人', @@ -1427,6 +1450,9 @@ CREATE TABLE `oms_tao_order` ( `tmall_coupon_fee` bigint(0) DEFAULT NULL COMMENT '天猫商家使用,订单使用的红包信息', `audit_status` int(0) DEFAULT NULL COMMENT '订单审核状态(0待审核1已审核)', `audit_time` datetime(0) DEFAULT NULL COMMENT '订单审核时间', + `erp_send_company` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT 'erp发货快递公司', + `erp_send_code` varchar(30) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT 'erp发货快递单号', + `erp_send_status` int(0) DEFAULT 0 COMMENT 'erp发货状态(1已取号2已打印3已发货10手动发货)', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 1801155298566070275 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '淘宝订单表' ROW_FORMAT = Dynamic; @@ -1574,7 +1600,7 @@ CREATE TABLE `oms_tao_waybill_account` ( `phone` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '发货固定电话', `is_show` int(0) DEFAULT NULL COMMENT '是否前台显示1显示0不显示', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '淘宝电子面单账户信息表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '淘宝电子面单账户信息表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for oms_wei_goods @@ -2373,7 +2399,7 @@ CREATE TABLE `sys_logininfor` ( PRIMARY KEY (`info_id`) USING BTREE, INDEX `idx_sys_logininfor_s`(`status`) USING BTREE, INDEX `idx_sys_logininfor_lt`(`login_time`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 304 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统访问记录' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 303 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统访问记录' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for sys_menu diff --git a/oms-api/src/main/java/com/qihang/oms/domain/ErpShipStockUp.java b/oms-api/src/main/java/com/qihang/oms/domain/ErpShipStockUp.java new file mode 100644 index 00000000..a2e6b488 --- /dev/null +++ b/oms-api/src/main/java/com/qihang/oms/domain/ErpShipStockUp.java @@ -0,0 +1,108 @@ +package com.qihang.oms.domain; + +import java.io.Serializable; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +/** + * 备货表 + * @TableName erp_ship_stock_up + */ +@Data +public class ErpShipStockUp implements Serializable { + /** + * + */ + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + /** + * erp订单id + */ + private Long saleOrderId; + + /** + * erp订单itemid + */ + private Long saleOrderItemId; + + /** + * 订单编号 + */ + private String orderNum; + + /** + * 原始订单skuid + */ + private String originalSkuId; + + /** + * erp系统商品id + */ + private Long goodsId; + + /** + * erp系统商品规格id + */ + private Long specId; + + /** + * 商品标题 + */ + private String goodsTitle; + + /** + * 商品图片 + */ + private String goodsImg; + + /** + * 商品规格 + */ + private String goodsSpec; + + /** + * 商品编码 + */ + private String goodsNum; + + /** + * 商品规格编码 + */ + private String specNum; + + /** + * 商品数量 + */ + private Integer quantity; + + /** + * 状态0待备货1备货中2已出库3已发货 + */ + private Integer status; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 创建人 + */ + private String createBy; + + /** + * 更新时间 + */ + private Date updateTime; + + /** + * 更新人 + */ + private String updateBy; + + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/oms-api/src/main/java/com/qihang/oms/mapper/ErpShipStockUpMapper.java b/oms-api/src/main/java/com/qihang/oms/mapper/ErpShipStockUpMapper.java new file mode 100644 index 00000000..e0678422 --- /dev/null +++ b/oms-api/src/main/java/com/qihang/oms/mapper/ErpShipStockUpMapper.java @@ -0,0 +1,18 @@ +package com.qihang.oms.mapper; + +import com.qihang.oms.domain.ErpShipStockUp; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author TW +* @description 针对表【erp_ship_stock_up(备货表)】的数据库操作Mapper +* @createDate 2024-06-18 15:25:18 +* @Entity com.qihang.oms.domain.ErpShipStockUp +*/ +public interface ErpShipStockUpMapper extends BaseMapper { + +} + + + + diff --git a/oms-api/src/main/java/com/qihang/oms/mq/KafkaMQConsumer.java b/oms-api/src/main/java/com/qihang/oms/mq/KafkaMQConsumer.java index 8e0b7768..f6c20162 100644 --- a/oms-api/src/main/java/com/qihang/oms/mq/KafkaMQConsumer.java +++ b/oms-api/src/main/java/com/qihang/oms/mq/KafkaMQConsumer.java @@ -57,4 +57,26 @@ public class KafkaMQConsumer { public void onRefundMessage(ConsumerRecord message) { logger.info("收到kafka消息REFUND============"+message.topic()+"====="+message.partition()+"======"+message.value()); } + + /** + * 监听备货消息 + * @param message + */ + @KafkaListener(topics = {MqType.SHIP_STOCK_UP_MQ}) + public void onSHIP_STOCK_UP_MQ(ConsumerRecord message) { + logger.info("收到kafka消息 SHIP_STOCK_UP_MQ ============"+message.topic()+"====="+message.partition()+"======"+message.value()); + MqMessage vo = JSON.parseObject(message.value().toString(), MqMessage.class); + orderService.orderShipStockUp(vo.getShopId(),vo.getKeyId()); + } + + /** + * 监听发货完成消息 + * @param message + */ + @KafkaListener(topics = {MqType.SHIP_SEND_MQ}) + public void onSHIP_SEND_MQ(ConsumerRecord message) { + logger.info("收到kafka消息 SHIP_SEND_MQ ============"+message.topic()+"====="+message.partition()+"======"+message.value()); + MqMessage vo = JSON.parseObject(message.value().toString(), MqMessage.class); + orderService.orderSendConfirm(vo.getShopId(),vo.getKeyId(),vo.getLogisticsCompanyCode(),vo.getWaybillCode()); + } } diff --git a/oms-api/src/main/java/com/qihang/oms/service/ErpSaleOrderService.java b/oms-api/src/main/java/com/qihang/oms/service/ErpSaleOrderService.java index 54c3eefe..5681a55d 100644 --- a/oms-api/src/main/java/com/qihang/oms/service/ErpSaleOrderService.java +++ b/oms-api/src/main/java/com/qihang/oms/service/ErpSaleOrderService.java @@ -24,4 +24,16 @@ public interface ErpSaleOrderService extends IService { PageResult queryPageList(ErpSaleOrder bo, PageQuery pageQuery); ErpSaleOrder queryDetailById(Long id); + + ResultVo orderSendConfirm(Long shopId,String orderId,String logisticsCompanyCode,String waybillCode); + + /** + * 订单备货 + * @param shopId + * @param orderId + * @param + * @param + * @return + */ + ResultVo orderShipStockUp(Long shopId,String orderId); } diff --git a/oms-api/src/main/java/com/qihang/oms/service/ErpShipStockUpService.java b/oms-api/src/main/java/com/qihang/oms/service/ErpShipStockUpService.java new file mode 100644 index 00000000..03e742d8 --- /dev/null +++ b/oms-api/src/main/java/com/qihang/oms/service/ErpShipStockUpService.java @@ -0,0 +1,13 @@ +package com.qihang.oms.service; + +import com.qihang.oms.domain.ErpShipStockUp; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author TW +* @description 针对表【erp_ship_stock_up(备货表)】的数据库操作Service +* @createDate 2024-06-18 15:25:18 +*/ +public interface ErpShipStockUpService extends IService { + +} diff --git a/oms-api/src/main/java/com/qihang/oms/service/impl/ErpSaleOrderServiceImpl.java b/oms-api/src/main/java/com/qihang/oms/service/impl/ErpSaleOrderServiceImpl.java index dbd5960f..0e3eed38 100644 --- a/oms-api/src/main/java/com/qihang/oms/service/impl/ErpSaleOrderServiceImpl.java +++ b/oms-api/src/main/java/com/qihang/oms/service/impl/ErpSaleOrderServiceImpl.java @@ -54,6 +54,8 @@ public class ErpSaleOrderServiceImpl extends ServiceImpl orderSendConfirm(Long shopId, String orderId,String logisticsCompanyCode,String waybillCode) { + List erpSaleOrders = orderMapper.selectList(new LambdaQueryWrapper().eq(ErpSaleOrder::getShopId, shopId).eq(ErpSaleOrder::getOrderNum, orderId)); + if(erpSaleOrders!=null && erpSaleOrders.size()>0){ + // 更新erp sale order 订单表发货状态 + if(erpSaleOrders.get(0).getShipStatus()!=3){ + //2是已发货 + ErpSaleOrder update = new ErpSaleOrder(); + update.setId(erpSaleOrders.get(0).getId()); + update.setOrderStatus(2); + update.setShippingCompany(logisticsCompanyCode); + update.setShippingNumber(waybillCode); + update.setShippingCost(BigDecimal.ZERO); + update.setShippingMan("消息通知发货完成"); + update.setShippingTime(new Date()); + update.setShipStatus(3); + + update.setUpdateTime(new Date()); + update.setUpdateBy("消息通知发货完成"); + orderMapper.updateById(update); + } + // 更新备货表相关订单状态erp_ship_stock_up + ErpShipStockUp shipStockUp = new ErpShipStockUp(); + shipStockUp.setUpdateBy("消息通知发货完成"); + shipStockUp.setUpdateTime(new Date()); + shipStockUp.setStatus(3);//状态0待备货1备货中2已出库3已发货 + shipStockUpMapper.update(shipStockUp,new LambdaQueryWrapper().eq(ErpShipStockUp::getSaleOrderId,erpSaleOrders.get(0).getId())); + + } + + return ResultVo.success(); + } + + /** + * 订单备货 + * + * @param shopId + * @param orderId + * @return + */ + @Override + public ResultVo orderShipStockUp(Long shopId, String orderId) { + List erpSaleOrders = orderMapper.selectList(new LambdaQueryWrapper().eq(ErpSaleOrder::getShopId, shopId).eq(ErpSaleOrder::getOrderNum, orderId)); + if(erpSaleOrders!=null && erpSaleOrders.size()>0){ + // 查处item + List items = orderItemMapper.selectList(new LambdaQueryWrapper().eq(ErpSaleOrderItem::getOrderId, erpSaleOrders.get(0).getId())); + if(items!=null&& items.size()>0){ + for (var item:items) { + List erpShipStockUps = shipStockUpMapper.selectList(new LambdaQueryWrapper().eq(ErpShipStockUp::getSaleOrderItemId, item.getId())); + if(erpShipStockUps==null || erpShipStockUps.size()==0) { + ErpShipStockUp shipStockUp = new ErpShipStockUp(); + shipStockUp.setSaleOrderId(item.getOrderId()); + shipStockUp.setSaleOrderItemId(item.getId()); + shipStockUp.setOrderNum(erpSaleOrders.get(0).getOrderNum()); + shipStockUp.setOriginalSkuId(item.getOriginalSkuId()); + shipStockUp.setGoodsId(item.getGoodsId()); + shipStockUp.setSpecId(item.getSpecId()); + shipStockUp.setGoodsTitle(item.getGoodsTitle()); + shipStockUp.setGoodsImg(item.getGoodsImg()); + shipStockUp.setGoodsSpec(item.getGoodsSpec()); + shipStockUp.setGoodsNum(item.getGoodsNum()); + shipStockUp.setSpecNum(item.getSpecNum()); + shipStockUp.setQuantity(item.getQuantity()); + shipStockUp.setStatus(0);//状态0待备货1备货中2已出库3已发货 + shipStockUp.setCreateBy("消息通知备货"); + shipStockUp.setCreateTime(new Date()); + shipStockUpMapper.insert(shipStockUp); + } + } + } + } + return ResultVo.success(); + } } diff --git a/oms-api/src/main/java/com/qihang/oms/service/impl/ErpShipStockUpServiceImpl.java b/oms-api/src/main/java/com/qihang/oms/service/impl/ErpShipStockUpServiceImpl.java new file mode 100644 index 00000000..4d426907 --- /dev/null +++ b/oms-api/src/main/java/com/qihang/oms/service/impl/ErpShipStockUpServiceImpl.java @@ -0,0 +1,22 @@ +package com.qihang.oms.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.qihang.oms.domain.ErpShipStockUp; +import com.qihang.oms.service.ErpShipStockUpService; +import com.qihang.oms.mapper.ErpShipStockUpMapper; +import org.springframework.stereotype.Service; + +/** +* @author TW +* @description 针对表【erp_ship_stock_up(备货表)】的数据库操作Service实现 +* @createDate 2024-06-18 15:25:18 +*/ +@Service +public class ErpShipStockUpServiceImpl extends ServiceImpl + implements ErpShipStockUpService{ + +} + + + + diff --git a/oms-api/src/main/resources/mapper/ErpShipStockUpMapper.xml b/oms-api/src/main/resources/mapper/ErpShipStockUpMapper.xml new file mode 100644 index 00000000..c7a60f96 --- /dev/null +++ b/oms-api/src/main/resources/mapper/ErpShipStockUpMapper.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + id,sale_order_id,sale_order_item_id, + order_num,original_sku_id,goods_id, + spec_id,goods_title,goods_img, + goods_spec,goods_num,spec_num, + quantity,status,create_time, + create_by,update_time,update_by + + diff --git a/open-api/jd-api/libs/jd-api-1.5.4.jar b/open-api/jd-api/libs/jd-api-1.5.4.jar deleted file mode 100644 index 22c2a4856d8949089c56c41c6d6170c5415fe735..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57986 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 GU;hWZqZ=3i diff --git a/open-api/jd-api/libs/jd-api-1.6.17.jar b/open-api/jd-api/libs/jd-api-1.6.17.jar new file mode 100644 index 0000000000000000000000000000000000000000..0b756285c7c2836b4d47b448283a38a9cadeb6aa GIT binary patch literal 121349 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

O1-(%Ooq-1_P3~thxeGG1{|0!sGPyf2 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%0AsWqu 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 xUy=TAjQ<&(`7xmT4ZorD|Hb${{>>JD>>>"); - try { - schedulingConfiguration.refresh(); - } finally { - initializing.set(false); - } -// log.info("定时调度任务动态加载结束<<<<<<"); - } - } - - @Override - public void run(ApplicationArguments args) { - if (appStarted.compareAndSet(false, true)) { - cronTaskConfigRefresh(); - } - } -} \ No newline at end of file +//package com.qihang.jd.task; +// +//import com.qihang.common.task.SchedulingConfiguration; +//import lombok.extern.java.Log; +//import org.springframework.boot.ApplicationArguments; +//import org.springframework.boot.ApplicationRunner; +//import org.springframework.scheduling.annotation.Scheduled; +//import org.springframework.stereotype.Component; +// +//import java.util.concurrent.atomic.AtomicBoolean; +//@Log +//@Component +//public class CronTaskLoader implements ApplicationRunner { +//// private static final Logger log = LoggerFactory.getLogger(CronTaskLoader.class); +// private final SchedulingConfiguration schedulingConfiguration; +// private final AtomicBoolean appStarted = new AtomicBoolean(false); +// private final AtomicBoolean initializing = new AtomicBoolean(false); +// +// public CronTaskLoader(SchedulingConfiguration schedulingConfiguration) { +// this.schedulingConfiguration = schedulingConfiguration; +// } +// +// /** +// * 定时任务配置刷新(10分钟刷新一次) +// */ +// @Scheduled(fixedDelay = 600000) +// public void cronTaskConfigRefresh() { +// if (appStarted.get() && initializing.compareAndSet(false, true)) { +// log.info("定时调度任务动态加载开始>>>JD>>>"); +// try { +// schedulingConfiguration.refresh(); +// } finally { +// initializing.set(false); +// } +//// log.info("定时调度任务动态加载结束<<<<<<"); +// } +// } +// +// @Override +// public void run(ApplicationArguments args) { +// if (appStarted.compareAndSet(false, true)) { +// cronTaskConfigRefresh(); +// } +// } +//} \ No newline at end of file diff --git a/open-api/jd-api/src/main/java/com/qihang/jd/task/OrderTask.java b/open-api/jd-api/src/main/java/com/qihang/jd/task/OrderTask.java index 31e637e2..765df70a 100644 --- a/open-api/jd-api/src/main/java/com/qihang/jd/task/OrderTask.java +++ b/open-api/jd-api/src/main/java/com/qihang/jd/task/OrderTask.java @@ -1,30 +1,30 @@ -package com.qihang.jd.task; - -import com.qihang.common.task.IPollableService; -import com.qihang.jd.domain.SysTask; -import com.qihang.jd.service.SysTaskService; - -import lombok.AllArgsConstructor; -import lombok.extern.java.Log; -import org.springframework.stereotype.Service; - -import java.time.LocalDateTime; -@Log -@AllArgsConstructor -@Service -public class OrderTask implements IPollableService { - - private final SysTaskService taskService; - @Override - public void poll() { - log.info("=======自动任务==JD===拉取订单========="+ LocalDateTime.now()); -// System.out.printf("更新JD订单%s","echo"); - } - - @Override - public String getCronExpression() { - SysTask task = taskService.getById(2); -// return "0/1 * * * * ?"; - return task.getCron(); - } -} \ No newline at end of file +//package com.qihang.jd.task; +// +//import com.qihang.common.task.IPollableService; +//import com.qihang.jd.domain.SysTask; +//import com.qihang.jd.service.SysTaskService; +// +//import lombok.AllArgsConstructor; +//import lombok.extern.java.Log; +//import org.springframework.stereotype.Service; +// +//import java.time.LocalDateTime; +//@Log +//@AllArgsConstructor +//@Service +//public class OrderTask implements IPollableService { +// +// private final SysTaskService taskService; +// @Override +// public void poll() { +// log.info("=======自动任务==JD===拉取订单========="+ LocalDateTime.now()); +//// System.out.printf("更新JD订单%s","echo"); +// } +// +// @Override +// public String getCronExpression() { +// SysTask task = taskService.getById(2); +//// return "0/1 * * * * ?"; +// return task.getCron(); +// } +//} \ No newline at end of file diff --git a/open-api/tao-api/src/main/java/com/qihang/tao/controller/EwaybillController.java b/open-api/tao-api/src/main/java/com/qihang/tao/controller/EwaybillController.java index 1c98c729..0cc0ddb5 100644 --- a/open-api/tao-api/src/main/java/com/qihang/tao/controller/EwaybillController.java +++ b/open-api/tao-api/src/main/java/com/qihang/tao/controller/EwaybillController.java @@ -29,6 +29,7 @@ import com.qihang.tao.service.OmsTaoOrderService; import com.qihang.tao.service.OmsTaoWaybillAccountService; import lombok.AllArgsConstructor; import lombok.extern.java.Log; +import org.springframework.kafka.core.KafkaTemplate; import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; @@ -45,6 +46,7 @@ public class EwaybillController extends BaseController { private final OmsTaoWaybillAccountService waybillAccountService; private final OmsTaoOrderService orderService; private final ErpShipWaybillService erpShipWaybillService; + private final KafkaTemplate kafkaTemplate; @RequestMapping(value = "/get_waybill_account_list", method = RequestMethod.POST) public AjaxResult getWaybillAccountList(@RequestBody TaoRequest params) throws Exception { @@ -208,6 +210,7 @@ public class EwaybillController extends BaseController { waybill.setWaybillCode(result.getWaybillCode()); waybill.setLogisticsCode(result.getCpCode()); waybill.setPrintData(result.getPrintData()); + waybill.setStatus(1);//1已取号 erpShipWaybillService.waybillUpdate(waybill); log.info("====保存電子面單信息========"+result.getObjectId()); } @@ -241,6 +244,26 @@ public class EwaybillController extends BaseController { return AjaxResult.error(HttpStatus.PARAMS_ERROR, "参数错误,没有选择订单"); } erpShipWaybillService.printSuccess(req.getShopId(), req.getIds()); + + return AjaxResult.success(); + } + + /** + * 发货 + * @param req + * @return + */ + @PostMapping("/push_ship_send") + @ResponseBody + public AjaxResult pushShipSend(@RequestBody TaoWaybillGetBo req) { + if (req.getShopId() == null || req.getShopId() <= 0) { + return AjaxResult.error(HttpStatus.PARAMS_ERROR, "参数错误,没有店铺Id"); + } + if (req.getIds() == null || req.getIds().length <= 0) { + return AjaxResult.error(HttpStatus.PARAMS_ERROR, "参数错误,没有选择订单"); + } + erpShipWaybillService.pushShipSend(req.getShopId(), req.getIds()); + return AjaxResult.success(); } } diff --git a/open-api/tao-api/src/main/java/com/qihang/tao/service/ErpShipWaybillService.java b/open-api/tao-api/src/main/java/com/qihang/tao/service/ErpShipWaybillService.java index 528838a4..c9a32f6f 100644 --- a/open-api/tao-api/src/main/java/com/qihang/tao/service/ErpShipWaybillService.java +++ b/open-api/tao-api/src/main/java/com/qihang/tao/service/ErpShipWaybillService.java @@ -16,4 +16,5 @@ public interface ErpShipWaybillService extends IService { List getListByOrderIds(Long shopId,String[] orderIds); ResultVo printSuccess(Long shopId,String[] orderIds); + ResultVo pushShipSend(Long shopId,String[] orderIds); } diff --git a/open-api/tao-api/src/main/java/com/qihang/tao/service/impl/ErpShipWaybillServiceImpl.java b/open-api/tao-api/src/main/java/com/qihang/tao/service/impl/ErpShipWaybillServiceImpl.java index a23a2dc0..f535b1a8 100644 --- a/open-api/tao-api/src/main/java/com/qihang/tao/service/impl/ErpShipWaybillServiceImpl.java +++ b/open-api/tao-api/src/main/java/com/qihang/tao/service/impl/ErpShipWaybillServiceImpl.java @@ -1,15 +1,19 @@ package com.qihang.tao.service.impl; +import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.qihang.common.common.ResultVo; import com.qihang.common.enums.EnumShopType; +import com.qihang.common.mq.MqMessage; +import com.qihang.common.mq.MqType; import com.qihang.tao.domain.ErpShipWaybill; import com.qihang.tao.domain.OmsTaoOrder; import com.qihang.tao.mapper.OmsTaoOrderMapper; import com.qihang.tao.service.ErpShipWaybillService; import com.qihang.tao.mapper.ErpShipWaybillMapper; import lombok.AllArgsConstructor; +import org.springframework.kafka.core.KafkaTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -28,6 +32,7 @@ public class ErpShipWaybillServiceImpl extends ServiceImpl kafkaTemplate; /** * 更新电子面单信息 @@ -94,24 +99,57 @@ public class ErpShipWaybillServiceImpl extends ServiceImpl().eq(OmsTaoOrder::getTid,w.getOrderId())); + orderMapper.update(orderUpdate, new LambdaQueryWrapper().eq(OmsTaoOrder::getTid, w.getOrderId())); - //TODO: 打印成功之后 加入备货清单 + //TODO: 打印成功之后 加入备货清单 采用kafka推送消息处理 + // 打印完成,通知备货 + kafkaTemplate.send(MqType.SHIP_STOCK_UP_MQ, JSONObject.toJSONString(MqMessage.build(w.getShopId(), w.getOrderId()))); + } + } + } + return ResultVo.success(); + } + @Transactional + @Override + public ResultVo pushShipSend(Long shopId, String[] orderIds) { + List erpShipWaybills = mapper.selectList( + new LambdaQueryWrapper() + .eq(ErpShipWaybill::getShopId,shopId) + .in(ErpShipWaybill::getOrderId, Arrays.stream(orderIds).toList())); + if(erpShipWaybills!=null){ + for (var w : erpShipWaybills){ + if(w.getStatus() > 0 && w.getStatus()<3) { + ErpShipWaybill update = new ErpShipWaybill(); + update.setId(erpShipWaybills.get(0).getId()); + update.setStatus(3);// 已发货 + update.setUpdateTime(new Date()); + update.setUpdateBy("电子面单发货"); + mapper.updateById(update); + // 更新关联订单erp_send_status状态 + OmsTaoOrder orderUpdate = new OmsTaoOrder(); + orderUpdate.setErpSendStatus(update.getStatus()); + orderMapper.update(orderUpdate, new LambdaQueryWrapper().eq(OmsTaoOrder::getTid, w.getOrderId())); + + // 更新erp_sale_order发货状态(controller层采用kafka推送消息处理) + // 发货完成,通知发货出库 + kafkaTemplate.send(MqType.SHIP_SEND_MQ, JSONObject.toJSONString(MqMessage.build(w.getShopId(),w.getOrderId(),w.getLogisticsCode(),w.getWaybillCode()))); + } } } return ResultVo.success(); diff --git a/vue/src/api/tao/ewaybill.js b/vue/src/api/tao/ewaybill.js index 3ad38515..3f245702 100644 --- a/vue/src/api/tao/ewaybill.js +++ b/vue/src/api/tao/ewaybill.js @@ -44,3 +44,12 @@ export function pushWaybillPrintSuccess(data) { data: data }) } + + +export function pushShipSend(data) { + return request({ + url: '/api/tao-api/ewaybill/push_ship_send', + method: 'post', + data: data + }) +} diff --git a/vue/src/views/shipping/ewaybillPrint/index.vue b/vue/src/views/shipping/ewaybillPrint/index.vue index 4cca6fb9..33e5d0bd 100644 --- a/vue/src/views/shipping/ewaybillPrint/index.vue +++ b/vue/src/views/shipping/ewaybillPrint/index.vue @@ -5,7 +5,7 @@ - 京东POP电子面单打印暂不支持 + @@ -27,11 +27,12 @@ import printWei from "@/views/shop/wei/ewaybill/index.vue"; import printTao from "@/views/shop/tao/ewaybill/index.vue"; import printPdd from "@/views/shop/pdd/ewaybill/index.vue"; import printDou from "@/views/shop/dou/ewaybill/index.vue"; +import PrintJd from "@/views/shop/jd/ewaybill/index.vue"; export default { name: "print", - components:{printWei,printTao,printPdd,printDou}, + components:{PrintJd, printWei,printTao,printPdd,printDou}, data() { return { activeName: 'printTao' diff --git a/vue/src/views/shop/jd/ewaybill/index.vue b/vue/src/views/shop/jd/ewaybill/index.vue index fe13e1bf..a90a3516 100644 --- a/vue/src/views/shop/jd/ewaybill/index.vue +++ b/vue/src/views/shop/jd/ewaybill/index.vue @@ -2,9 +2,9 @@

- + - 取号 + >电子面单取号 @@ -62,7 +61,7 @@ icon="el-icon-printer" size="mini" @click="handlePrintEwaybill" - >打印电子面单 + >电子面单打印 发货 + >电子面单发货 @@ -80,20 +79,20 @@ - + - +