diff --git a/docs/erp_ship_waybill.sql b/docs/erp_ship_waybill.sql deleted file mode 100644 index d6a6380a..00000000 --- a/docs/erp_ship_waybill.sql +++ /dev/null @@ -1,68 +0,0 @@ -/* - Navicat Premium Data Transfer - - Source Server : localhost - Source Server Type : MySQL - Source Server Version : 80200 - Source Host : localhost:3306 - Source Schema : qihang-erp - - Target Server Type : MySQL - Target Server Version : 80200 - File Encoding : 65001 - - Date: 16/06/2024 18:29:52 -*/ - -SET NAMES utf8mb4; -SET FOREIGN_KEY_CHECKS = 0; - --- ---------------------------- --- Table structure for erp_ship_waybill --- ---------------------------- -DROP TABLE IF EXISTS `erp_ship_waybill`; -CREATE TABLE `erp_ship_waybill` ( - `id` bigint NOT NULL AUTO_INCREMENT, - `order_id` varchar(35) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订单号', - `shop_id` bigint NOT NULL COMMENT '店铺id', - `shop_type` int NOT NULL COMMENT '店铺类型', - `waybill_code` varchar(35) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '快递单号', - `logistics_code` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '快递公司编码', - `print_data` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '打印数据', - `status` int NULL DEFAULT NULL COMMENT '状态(1已取号2已打印3已发货)', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人', - `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', - `update_by` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '发货电子面单记录表' ROW_FORMAT = Dynamic; - --- ---------------------------- --- Table structure for oms_tao_waybill_account --- ---------------------------- -DROP TABLE IF EXISTS `oms_tao_waybill_account`; -CREATE TABLE `oms_tao_waybill_account` ( - `id` bigint NOT NULL AUTO_INCREMENT, - `shop_id` bigint NOT NULL COMMENT '店铺id', - `seller_id` bigint NULL DEFAULT NULL COMMENT '商家ID', - `cp_code` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '物流服务商编码', - `cp_type` int NULL DEFAULT NULL COMMENT '1是直营,2是加盟', - `quantity` int NULL DEFAULT NULL COMMENT '可用单数', - `allocated_quantity` int NULL DEFAULT NULL COMMENT '已用单数', - `branch_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '网点ID', - `branch_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '网点名称', - `print_quantity` int NULL DEFAULT NULL COMMENT '已经打印的面单总数', - `cancel_quantity` int NULL DEFAULT NULL COMMENT '取消的面对总数', - `waybill_address_id` bigint NULL DEFAULT NULL COMMENT 'waybill 地址记录ID(非地址库ID)', - `province` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '省名称(一级地址)', - `city` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '市名称(二级地址)', - `area` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '区名称(三级地址)', - `address_detail` varchar(55) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '详细地址', - `name` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '发货人', - `mobile` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '发货手机号', - `phone` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '发货固定电话', - `is_show` int NULL DEFAULT NULL COMMENT '是否前台显示1显示0不显示', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '淘宝电子面单账户信息表' ROW_FORMAT = Dynamic; - -SET FOREIGN_KEY_CHECKS = 1; diff --git a/docs/qihang-erp.sql b/docs/qihang-erp.sql index bf8d424c..32663168 100644 --- a/docs/qihang-erp.sql +++ b/docs/qihang-erp.sql @@ -11,7 +11,7 @@ Target Server Version : 80032 File Encoding : 65001 - Date: 15/06/2024 10:14:13 + Date: 17/06/2024 10:57:02 */ 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 = 1801197273742716930 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '订单表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 1801809140794216449 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_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 = 1801197275089088515 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '订单明细表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 1801809144007053315 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '订单明细表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for erp_ship_logistics @@ -545,6 +545,26 @@ 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_waybill +-- ---------------------------- +DROP TABLE IF EXISTS `erp_ship_waybill`; +CREATE TABLE `erp_ship_waybill` ( + `id` bigint(0) NOT NULL AUTO_INCREMENT, + `order_id` varchar(35) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '订单号', + `shop_id` bigint(0) NOT NULL COMMENT '店铺id', + `shop_type` int(0) NOT NULL COMMENT '店铺类型', + `waybill_code` varchar(35) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '快递单号', + `logistics_code` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '快递公司编码', + `print_data` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT '打印数据', + `status` int(0) DEFAULT NULL COMMENT '状态(1已取号2已打印3已发货)', + `create_time` datetime(0) DEFAULT NULL COMMENT '创建时间', + `create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人', + `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; + -- ---------------------------- -- Table structure for oms_dou_goods -- ---------------------------- @@ -1146,6 +1166,9 @@ CREATE TABLE `oms_pdd_order` ( `audit_time` datetime(0) DEFAULT NULL COMMENT '发货时间(仓库真实发货时间)', `create_time` datetime(0) DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '系统创建时间', `update_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发货状态', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `order_sn_index`(`order_sn`) USING BTREE, INDEX `shopid_index`(`shop_id`) USING BTREE @@ -1221,6 +1244,34 @@ CREATE TABLE `oms_pdd_refund` ( PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '拼多多订单退款表' ROW_FORMAT = Dynamic; +-- ---------------------------- +-- Table structure for oms_pdd_waybill_account +-- ---------------------------- +DROP TABLE IF EXISTS `oms_pdd_waybill_account`; +CREATE TABLE `oms_pdd_waybill_account` ( + `id` bigint(0) NOT NULL AUTO_INCREMENT, + `shop_id` bigint(0) NOT NULL COMMENT '店铺id', + `seller_id` bigint(0) DEFAULT NULL COMMENT '商家ID', + `cp_code` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '物流服务商编码', + `cp_type` int(0) DEFAULT NULL COMMENT '1是直营,2是加盟', + `quantity` int(0) DEFAULT NULL COMMENT '可用单数', + `allocated_quantity` int(0) DEFAULT NULL COMMENT '已用单数', + `branch_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '网点ID', + `branch_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '网点名称', + `print_quantity` int(0) DEFAULT NULL COMMENT '已经打印的面单总数', + `cancel_quantity` int(0) DEFAULT NULL COMMENT '取消的面对总数', + `waybill_address_id` bigint(0) DEFAULT NULL COMMENT 'waybill 地址记录ID(非地址库ID)', + `province` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '省名称(一级地址)', + `city` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '市名称(二级地址)', + `area` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '区名称(三级地址)', + `address_detail` varchar(55) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '详细地址', + `name` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '发货人', + `mobile` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '发货手机号', + `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; + -- ---------------------------- -- Table structure for oms_tao_goods -- ---------------------------- @@ -1424,7 +1475,7 @@ CREATE TABLE `oms_tao_order_item` ( `refund_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '最近退款ID', `remark` varchar(500) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 1801155298620596227 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '淘宝订单明细表' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 1801155298620596226 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '淘宝订单明细表' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for oms_tao_order_promotion @@ -1497,6 +1548,34 @@ CREATE TABLE `oms_tao_refund` ( PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 1800733684028329986 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '淘宝退款表' ROW_FORMAT = Dynamic; +-- ---------------------------- +-- Table structure for oms_tao_waybill_account +-- ---------------------------- +DROP TABLE IF EXISTS `oms_tao_waybill_account`; +CREATE TABLE `oms_tao_waybill_account` ( + `id` bigint(0) NOT NULL AUTO_INCREMENT, + `shop_id` bigint(0) NOT NULL COMMENT '店铺id', + `seller_id` bigint(0) DEFAULT NULL COMMENT '商家ID', + `cp_code` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '物流服务商编码', + `cp_type` int(0) DEFAULT NULL COMMENT '1是直营,2是加盟', + `quantity` int(0) DEFAULT NULL COMMENT '可用单数', + `allocated_quantity` int(0) DEFAULT NULL COMMENT '已用单数', + `branch_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '网点ID', + `branch_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '网点名称', + `print_quantity` int(0) DEFAULT NULL COMMENT '已经打印的面单总数', + `cancel_quantity` int(0) DEFAULT NULL COMMENT '取消的面对总数', + `waybill_address_id` bigint(0) DEFAULT NULL COMMENT 'waybill 地址记录ID(非地址库ID)', + `province` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '省名称(一级地址)', + `city` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '市名称(二级地址)', + `area` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '区名称(三级地址)', + `address_detail` varchar(55) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '详细地址', + `name` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '发货人', + `mobile` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '发货手机号', + `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; + -- ---------------------------- -- Table structure for oms_wei_goods -- ---------------------------- @@ -2294,7 +2373,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 = 302 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统访问记录' ROW_FORMAT = Dynamic; +) ENGINE = InnoDB AUTO_INCREMENT = 304 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统访问记录' ROW_FORMAT = Dynamic; -- ---------------------------- -- Table structure for sys_menu diff --git a/open-api/pdd-api/libs/pdd-api-0.6.17.jar b/open-api/pdd-api/libs/pdd-api-0.6.17.jar index 058e0faa..4f432890 100644 Binary files a/open-api/pdd-api/libs/pdd-api-0.6.17.jar and b/open-api/pdd-api/libs/pdd-api-0.6.17.jar differ diff --git a/open-api/pdd-api/src/main/java/com/qihang/pdd/controller/EwaybillController.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/controller/EwaybillController.java new file mode 100644 index 00000000..a77a8c6e --- /dev/null +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/controller/EwaybillController.java @@ -0,0 +1,233 @@ +package com.qihang.pdd.controller; + + +import cn.qihangerp.open.pdd.WaybillAccountApiHelper; +import cn.qihangerp.open.pdd.common.ApiResultVo; +import cn.qihangerp.open.pdd.model.WaybillAccount; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qihang.common.common.AjaxResult; +import com.qihang.common.enums.HttpStatus; +import com.qihang.pdd.domain.OmsPddWaybillAccount; +import com.qihang.pdd.openapi.ApiCommon; +import com.qihang.pdd.openapi.PullRequest; +import com.qihang.pdd.service.ErpShipWaybillService; +import com.qihang.pdd.service.OmsPddWaybillAccountService; +import com.qihang.security.common.BaseController; +import lombok.AllArgsConstructor; +import lombok.extern.java.Log; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.List; + +@Log +@AllArgsConstructor +@RestController +@RequestMapping("/ewaybill") +public class EwaybillController extends BaseController { + private final ApiCommon apiCommon; + private final OmsPddWaybillAccountService waybillAccountService; +// private final OmsTaoOrderService orderService; + private final ErpShipWaybillService erpShipWaybillService; + + @GetMapping(value = "/get_waybill_account_list") + public AjaxResult getWaybillAccountList(@RequestParam Long shopId) throws Exception { +// if (params.getShopId() == null || params.getShopId() <= 0) { +// return AjaxResult.error(HttpStatus.PARAMS_ERROR, "参数错误,没有店铺Id"); +// } + List list = waybillAccountService.list( + new LambdaQueryWrapper().eq(OmsPddWaybillAccount::getShopId, shopId) + .eq(OmsPddWaybillAccount::getIsShow, 1)); + return AjaxResult.success(list); + } + + /** + * 拉取电子面单账号 + * @param params + * @return + * @throws Exception + */ + @RequestMapping(value = "/pull_waybill_account", method = RequestMethod.POST) + public AjaxResult pullWaybillAccount(@RequestBody PullRequest params) throws Exception { + if (params.getShopId() == null || params.getShopId() <= 0) { + return AjaxResult.error(HttpStatus.PARAMS_ERROR, "参数错误,没有店铺Id"); + } + + var checkResult = apiCommon.checkBefore(params.getShopId()); + if (checkResult.getCode() != HttpStatus.SUCCESS) { + return AjaxResult.error(checkResult.getCode(), checkResult.getMsg(), checkResult.getData()); + } + String accessToken = checkResult.getData().getAccessToken(); + String appKey = checkResult.getData().getAppKey(); + String appSecret = checkResult.getData().getAppSecret(); + Long sellId = checkResult.getData().getSellerShopId(); + + ApiResultVo apiResultVo = WaybillAccountApiHelper.pullWaybillBranchAccountList(appKey, appSecret, accessToken); + List list = new ArrayList<>(); + if(apiResultVo.getCode()==0){ + for (var item : apiResultVo.getList()){ + for(var acc:item.getBranchAccountCols()){ + OmsPddWaybillAccount vo = new OmsPddWaybillAccount(); + vo.setShopId(params.getShopId()); + vo.setSellerId(sellId); + vo.setIsShow(1); + vo.setCpCode(item.getWpCode()); + vo.setCpType(item.getWpType()); + vo.setAllocatedQuantity(acc.getAllocatedQuantity()); + vo.setBranchCode(acc.getBranchCode()); + vo.setBranchName(acc.getBranchName()); + vo.setCancelQuantity(acc.getCancelQuantity()); +// vo.setPrintQuantity(acc.getPrintQuantity()); + vo.setQuantity(acc.getQuantity()); + if(acc.getShippAddressCols().size()>0) { + vo.setAddressDetail(acc.getShippAddressCols().get(0).getDetail()); + vo.setArea(acc.getShippAddressCols().get(0).getDistrict()); + vo.setCity(acc.getShippAddressCols().get(0).getCity()); + vo.setProvince(acc.getShippAddressCols().get(0).getProvince()); +// vo.setWaybillAddressId(acc.getShippAddressCols().get(0).getWaybillAddressId().longValue()); + list.add(vo); + } + + waybillAccountService.save(vo); + log.info("========添加pdd电子面单账户信息=========="); + } + } + } + + + return AjaxResult.success(list); + } + +// @PostMapping("/get_waybill_code") +// @ResponseBody +// public AjaxResult getWaybillCode(@RequestBody TaoWaybillGetBo req) { +// if (req.getAccountId() == null || req.getAccountId() <= 0) { +// return AjaxResult.error(HttpStatus.PARAMS_ERROR, "参数错误,请选择电子面单账户"); +// } +// 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, "参数错误,没有选择订单"); +// } +// var checkResult = apiCommon.checkBefore(req.getShopId()); +// if (checkResult.getCode() != HttpStatus.SUCCESS) { +// return AjaxResult.error(checkResult.getCode(), checkResult.getMsg(), checkResult.getData()); +// } +// String accessToken = checkResult.getData().getAccessToken(); +// String appKey = checkResult.getData().getAppKey(); +// String appSecret = checkResult.getData().getAppSecret(); +// Long sellerShopId = checkResult.getData().getSellerShopId(); +// +// // 获取电子面单账户信息(包含了发货地址信息) +// OmsTaoWaybillAccount account = waybillAccountService.getById(req.getAccountId()); +// +// WaybillCloudPrintApplyNewRequest request = new WaybillCloudPrintApplyNewRequest(); +// request.setCp_code(account.getCpCode()); +// +// WaybillCloudPrintApplyNewRequestSender sender = new WaybillCloudPrintApplyNewRequestSender(); +// sender.setName(account.getName()); +// sender.setMobile(account.getMobile()); +// WaybillCloudPrintApplyNewRequestSender.AddressDTO addressDTO = new WaybillCloudPrintApplyNewRequestSender.AddressDTO(); +// addressDTO.setCity(account.getCity()); +// addressDTO.setProvince(account.getProvince()); +// addressDTO.setDistrict(account.getArea()); +// addressDTO.setTown(""); +// addressDTO.setDetail(account.getAddressDetail()); +// sender.setAddress(addressDTO); +// request.setSender(sender); +// +// // 组合取号的订单信息trade_order_info_dtos +// List orderList = new ArrayList<>(); +// +// for(String orderId:req.getIds()){ +// if(StringUtils.hasText(orderId)){ +// OmsTaoOrder omsTaoOrder = orderService.queryDetailByTid(orderId); +// if(omsTaoOrder!=null) { +// WaybillCloudPrintApplyNewRequestTradeOrderInfoDto dto = new WaybillCloudPrintApplyNewRequestTradeOrderInfoDto(); +// dto.setObjectId(omsTaoOrder.getTid()); +// dto.setTemplateUrl("http://cloudprint.cainiao.com/template/standard/101"); +// dto.setUserId(sellerShopId.intValue()); +// +// WaybillCloudPrintApplyNewRequestTradeOrderInfoDto.OrderInfoDTO orderInfoDTO = new WaybillCloudPrintApplyNewRequestTradeOrderInfoDto.OrderInfoDTO(); +// orderInfoDTO.setOrderChannelsType("TB"); +// orderInfoDTO.setTradeOrderList(omsTaoOrder.getTid()); +// dto.setOrderInfo(orderInfoDTO); +// +// WaybillCloudPrintApplyNewRequestTradeOrderInfoDto.PackageInfoDTO packageInfoDTO = new WaybillCloudPrintApplyNewRequestTradeOrderInfoDto.PackageInfoDTO(); +// List items = new ArrayList<>(); +// for (var orderItem : omsTaoOrder.getItems()) { +// WaybillCloudPrintApplyNewRequestTradeOrderInfoDto.PackageInfoDTO.ItemsDTO itemsDTO = new WaybillCloudPrintApplyNewRequestTradeOrderInfoDto.PackageInfoDTO.ItemsDTO(); +// itemsDTO.setCount(orderItem.getNum()); +// itemsDTO.setName(orderItem.getTitle()); +// items.add(itemsDTO); +// } +// packageInfoDTO.setItems(items); +// dto.setPackageInfo(packageInfoDTO); +// +// WaybillCloudPrintApplyNewRequestTradeOrderInfoDto.RecipientDTO recipientDTO = new WaybillCloudPrintApplyNewRequestTradeOrderInfoDto.RecipientDTO(); +// WaybillCloudPrintApplyNewRequestTradeOrderInfoDto.RecipientDTO.AddressDTO addressDTO1 = new WaybillCloudPrintApplyNewRequestTradeOrderInfoDto.RecipientDTO.AddressDTO(); +// addressDTO1.setCity(omsTaoOrder.getReceiverCity()); +// addressDTO1.setTown(omsTaoOrder.getReceiverTown()); +// addressDTO1.setProvince(omsTaoOrder.getReceiverState()); +// addressDTO1.setDistrict(omsTaoOrder.getReceiverDistrict()); +// addressDTO1.setDetail(omsTaoOrder.getReceiverAddress()); +// recipientDTO.setAddress(addressDTO1); +// recipientDTO.setName(omsTaoOrder.getReceiverName()); +// recipientDTO.setOaid(omsTaoOrder.getOaid()); +// recipientDTO.setTid(omsTaoOrder.getTid()); +// dto.setRecipient(recipientDTO); +// orderList.add(dto); +// } +// } +// } +// +// request.setTrade_order_info_dtos(orderList); +// +// ApiResultVo apiResultVo = WaybillApiHelper.waybillCloudPrintApplyNew(appKey, appSecret, accessToken, request); +// if(apiResultVo.getCode()==0){ +// // 保持数据 +// for(var result: apiResultVo.getList()){ +// ErpShipWaybill waybill = new ErpShipWaybill(); +// waybill.setShopId(req.getShopId()); +// waybill.setOrderId(result.getObjectId()); +// waybill.setWaybillCode(result.getWaybillCode()); +// waybill.setLogisticsCode(result.getCpCode()); +// waybill.setPrintData(result.getPrintData()); +// erpShipWaybillService.waybillUpdate(waybill); +// log.info("====保存電子面單信息========"+result.getObjectId()); +// } +// }else{ +// return AjaxResult.error(apiResultVo.getMsg()); +// } +// +// return success(); +// } +// +// @PostMapping("/get_print_data") +// @ResponseBody +// public AjaxResult getPrintData(@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, "参数错误,没有选择订单"); +// } +// List listByOrderIds = erpShipWaybillService.getListByOrderIds(req.getShopId(), req.getIds()); +// return AjaxResult.success(listByOrderIds); +// } +// +// @PostMapping("/push_print_success") +// @ResponseBody +// public AjaxResult pushPrintSuccess(@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.printSuccess(req.getShopId(), req.getIds()); +// return AjaxResult.success(); +// } +} diff --git a/open-api/pdd-api/src/main/java/com/qihang/pdd/domain/ErpShipWaybill.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/domain/ErpShipWaybill.java new file mode 100644 index 00000000..82ff97cb --- /dev/null +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/domain/ErpShipWaybill.java @@ -0,0 +1,74 @@ +package com.qihang.pdd.domain; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + +/** + * 发货电子面单记录表 + * @TableName erp_ship_waybill + */ +@Data +public class ErpShipWaybill implements Serializable { + /** + * + */ + private Long id; + + /** + * 订单号 + */ + private String orderId; + + /** + * 店铺id + */ + private Long shopId; + + /** + * 店铺类型 + */ + private Integer shopType; + + /** + * 快递单号 + */ + private String waybillCode; + + /** + * 快递公司编码 + */ + private String logisticsCode; + + /** + * 打印数据 + */ + private String printData; + + /** + * 状态(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/open-api/pdd-api/src/main/java/com/qihang/pdd/domain/OmsPddOrder.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/domain/OmsPddOrder.java index f4aa0ec8..a674f1b8 100644 --- a/open-api/pdd-api/src/main/java/com/qihang/pdd/domain/OmsPddOrder.java +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/domain/OmsPddOrder.java @@ -353,6 +353,21 @@ public class OmsPddOrder implements Serializable { */ private Date updateTime; + /** + * erp发货快递公司 + */ + private String erpSendCompany; + + /** + * erp发货快递单号 + */ + private String erpSendCode; + + /** + * erp发货状态 + */ + private Integer erpSendStatus; + @TableField(exist = false) private List itemList; diff --git a/open-api/pdd-api/src/main/java/com/qihang/pdd/domain/OmsPddWaybillAccount.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/domain/OmsPddWaybillAccount.java new file mode 100644 index 00000000..c8b4db76 --- /dev/null +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/domain/OmsPddWaybillAccount.java @@ -0,0 +1,113 @@ +package com.qihang.pdd.domain; + +import java.io.Serializable; +import lombok.Data; + +/** + * 拼多多电子面单账户信息表 + * @TableName oms_pdd_waybill_account + */ +@Data +public class OmsPddWaybillAccount implements Serializable { + /** + * + */ + private Long id; + + /** + * 店铺id + */ + private Long shopId; + + /** + * 商家ID + */ + private Long sellerId; + + /** + * 物流服务商编码 + */ + private String cpCode; + + /** + * 1是直营,2是加盟 + */ + private Integer cpType; + + /** + * 可用单数 + */ + private Integer quantity; + + /** + * 已用单数 + */ + private Integer allocatedQuantity; + + /** + * 网点ID + */ + private String branchCode; + + /** + * 网点名称 + */ + private String branchName; + + /** + * 已经打印的面单总数 + */ + private Integer printQuantity; + + /** + * 取消的面对总数 + */ + private Integer cancelQuantity; + + /** + * waybill 地址记录ID(非地址库ID) + */ + private Long waybillAddressId; + + /** + * 省名称(一级地址) + */ + private String province; + + /** + * 市名称(二级地址) + */ + private String city; + + /** + * 区名称(三级地址) + */ + private String area; + + /** + * 详细地址 + */ + private String addressDetail; + + /** + * 发货人 + */ + private String name; + + /** + * 发货手机号 + */ + private String mobile; + + /** + * 发货固定电话 + */ + private String phone; + + /** + * 是否前台显示1显示0不显示 + */ + private Integer isShow; + + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/open-api/pdd-api/src/main/java/com/qihang/pdd/mapper/ErpShipWaybillMapper.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/mapper/ErpShipWaybillMapper.java new file mode 100644 index 00000000..6f33d29e --- /dev/null +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/mapper/ErpShipWaybillMapper.java @@ -0,0 +1,18 @@ +package com.qihang.pdd.mapper; + +import com.qihang.pdd.domain.ErpShipWaybill; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author TW +* @description 针对表【erp_ship_waybill(发货电子面单记录表)】的数据库操作Mapper +* @createDate 2024-06-17 10:16:47 +* @Entity com.qihang.pdd.domain.ErpShipWaybill +*/ +public interface ErpShipWaybillMapper extends BaseMapper { + +} + + + + diff --git a/open-api/pdd-api/src/main/java/com/qihang/pdd/mapper/OmsPddWaybillAccountMapper.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/mapper/OmsPddWaybillAccountMapper.java new file mode 100644 index 00000000..51af5603 --- /dev/null +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/mapper/OmsPddWaybillAccountMapper.java @@ -0,0 +1,18 @@ +package com.qihang.pdd.mapper; + +import com.qihang.pdd.domain.OmsPddWaybillAccount; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author TW +* @description 针对表【oms_pdd_waybill_account(拼多多电子面单账户信息表)】的数据库操作Mapper +* @createDate 2024-06-17 10:09:25 +* @Entity com.qihang.pdd.domain.OmsPddWaybillAccount +*/ +public interface OmsPddWaybillAccountMapper extends BaseMapper { + +} + + + + diff --git a/open-api/pdd-api/src/main/java/com/qihang/pdd/service/ErpShipWaybillService.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/service/ErpShipWaybillService.java new file mode 100644 index 00000000..72eea9fa --- /dev/null +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/service/ErpShipWaybillService.java @@ -0,0 +1,13 @@ +package com.qihang.pdd.service; + +import com.qihang.pdd.domain.ErpShipWaybill; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author TW +* @description 针对表【erp_ship_waybill(发货电子面单记录表)】的数据库操作Service +* @createDate 2024-06-17 10:16:47 +*/ +public interface ErpShipWaybillService extends IService { + +} diff --git a/open-api/pdd-api/src/main/java/com/qihang/pdd/service/OmsPddWaybillAccountService.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/service/OmsPddWaybillAccountService.java new file mode 100644 index 00000000..df9a67aa --- /dev/null +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/service/OmsPddWaybillAccountService.java @@ -0,0 +1,13 @@ +package com.qihang.pdd.service; + +import com.qihang.pdd.domain.OmsPddWaybillAccount; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author TW +* @description 针对表【oms_pdd_waybill_account(拼多多电子面单账户信息表)】的数据库操作Service +* @createDate 2024-06-17 10:09:25 +*/ +public interface OmsPddWaybillAccountService extends IService { + +} diff --git a/open-api/pdd-api/src/main/java/com/qihang/pdd/service/impl/ErpShipWaybillServiceImpl.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/service/impl/ErpShipWaybillServiceImpl.java new file mode 100644 index 00000000..992800f6 --- /dev/null +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/service/impl/ErpShipWaybillServiceImpl.java @@ -0,0 +1,22 @@ +package com.qihang.pdd.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.qihang.pdd.domain.ErpShipWaybill; +import com.qihang.pdd.service.ErpShipWaybillService; +import com.qihang.pdd.mapper.ErpShipWaybillMapper; +import org.springframework.stereotype.Service; + +/** +* @author TW +* @description 针对表【erp_ship_waybill(发货电子面单记录表)】的数据库操作Service实现 +* @createDate 2024-06-17 10:16:47 +*/ +@Service +public class ErpShipWaybillServiceImpl extends ServiceImpl + implements ErpShipWaybillService{ + +} + + + + diff --git a/open-api/pdd-api/src/main/java/com/qihang/pdd/service/impl/OmsPddOrderServiceImpl.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/service/impl/OmsPddOrderServiceImpl.java index 88e9944a..f0582cbd 100644 --- a/open-api/pdd-api/src/main/java/com/qihang/pdd/service/impl/OmsPddOrderServiceImpl.java +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/service/impl/OmsPddOrderServiceImpl.java @@ -36,12 +36,16 @@ public class OmsPddOrderServiceImpl extends ServiceImpl queryPageList(OmsPddOrder bo, PageQuery pageQuery) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() - .eq(bo.getShopId()!=null,OmsPddOrder::getShopId,bo.getShopId()); + .eq(bo.getShopId() != null, OmsPddOrder::getShopId, bo.getShopId()) + .eq(StringUtils.hasText(bo.getOrderSn()), OmsPddOrder::getOrderSn, bo.getOrderSn()) + .eq(bo.getOrderStatus() != null, OmsPddOrder::getOrderStatus, bo.getOrderStatus()) + .eq(bo.getRefundStatus() != null, OmsPddOrder::getRefundStatus, bo.getRefundStatus()) + .eq(bo.getErpSendStatus() != null, OmsPddOrder::getErpSendStatus, bo.getErpSendStatus()); Page goodsPage = orderMapper.selectPage(pageQuery.build(), queryWrapper); - if(goodsPage.getRecords()!=null){ - for (var o: goodsPage.getRecords()) { - o.setItemList(orderItemMapper.selectList(new LambdaQueryWrapper().eq(OmsPddOrderItem::getOrderSn,o.getOrderSn()))); + if (goodsPage.getRecords() != null) { + for (var o : goodsPage.getRecords()) { + o.setItemList(orderItemMapper.selectList(new LambdaQueryWrapper().eq(OmsPddOrderItem::getOrderSn, o.getOrderSn()))); } } return PageResult.build(goodsPage); diff --git a/open-api/pdd-api/src/main/java/com/qihang/pdd/service/impl/OmsPddWaybillAccountServiceImpl.java b/open-api/pdd-api/src/main/java/com/qihang/pdd/service/impl/OmsPddWaybillAccountServiceImpl.java new file mode 100644 index 00000000..a6e8e12f --- /dev/null +++ b/open-api/pdd-api/src/main/java/com/qihang/pdd/service/impl/OmsPddWaybillAccountServiceImpl.java @@ -0,0 +1,22 @@ +package com.qihang.pdd.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.qihang.pdd.domain.OmsPddWaybillAccount; +import com.qihang.pdd.service.OmsPddWaybillAccountService; +import com.qihang.pdd.mapper.OmsPddWaybillAccountMapper; +import org.springframework.stereotype.Service; + +/** +* @author TW +* @description 针对表【oms_pdd_waybill_account(拼多多电子面单账户信息表)】的数据库操作Service实现 +* @createDate 2024-06-17 10:09:25 +*/ +@Service +public class OmsPddWaybillAccountServiceImpl extends ServiceImpl + implements OmsPddWaybillAccountService{ + +} + + + + diff --git a/open-api/pdd-api/src/main/resources/mapper/ErpShipWaybillMapper.xml b/open-api/pdd-api/src/main/resources/mapper/ErpShipWaybillMapper.xml new file mode 100644 index 00000000..49bfabc0 --- /dev/null +++ b/open-api/pdd-api/src/main/resources/mapper/ErpShipWaybillMapper.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + id,order_id,shop_id, + shop_type,waybill_code,logistics_code, + print_data,status,create_time, + create_by,update_time,update_by + + diff --git a/open-api/pdd-api/src/main/resources/mapper/OmsPddOrderMapper.xml b/open-api/pdd-api/src/main/resources/mapper/OmsPddOrderMapper.xml index bde212e9..ee410cef 100644 --- a/open-api/pdd-api/src/main/resources/mapper/OmsPddOrderMapper.xml +++ b/open-api/pdd-api/src/main/resources/mapper/OmsPddOrderMapper.xml @@ -73,11 +73,14 @@ + + + id,shop_id,order_sn, - trade_type,free_sf,is_lucky_flag, + trade_type,free_sf,is_lucky_flag,erp_send_company,erp_send_code,erp_send_status, group_status,confirm_status,order_status, refund_status,capital_free_discount,seller_discount, platform_discount,goods_amount,discount_amount, diff --git a/open-api/pdd-api/src/main/resources/mapper/OmsPddWaybillAccountMapper.xml b/open-api/pdd-api/src/main/resources/mapper/OmsPddWaybillAccountMapper.xml new file mode 100644 index 00000000..0bc9dc62 --- /dev/null +++ b/open-api/pdd-api/src/main/resources/mapper/OmsPddWaybillAccountMapper.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id,shop_id,seller_id, + cp_code,cp_type,quantity, + allocated_quantity,branch_code,branch_name, + print_quantity,cancel_quantity,waybill_address_id, + province,city,area, + address_detail,name,mobile, + phone,is_show + + diff --git a/vue/src/api/pdd/ewaybill.js b/vue/src/api/pdd/ewaybill.js new file mode 100644 index 00000000..5ef9a8f3 --- /dev/null +++ b/vue/src/api/pdd/ewaybill.js @@ -0,0 +1,46 @@ +import request from '@/utils/request' +// 获取电子面单账户list +export function getWaybillAccountList(query) { + return request({ + url: '/api/pdd-api/ewaybill/get_waybill_account_list', + method: 'get', + params: query + }) +} + + +// 更新电子面单账户 +export function pullWaybillAccount(data) { + return request({ + url: '/api/pdd-api/ewaybill/pull_waybill_account', + method: 'post', + data: data + }) +} + +// 取号 +export function getWaybillCode(data) { + return request({ + url: '/api/pdd-api/ewaybill/get_waybill_code', + method: 'post', + data: data + }) +} + +// 获取打印的数据 +export function getWaybillPrintData(data) { + return request({ + url: '/api/pdd-api/ewaybill/get_print_data', + method: 'post', + data: data + }) +} + +// 打印成功 +export function pushWaybillPrintSuccess(data) { + return request({ + url: '/api/pdd-api/ewaybill/push_print_success', + method: 'post', + data: data + }) +} diff --git a/vue/src/views/shipping/ewaybillPrint/index.vue b/vue/src/views/shipping/ewaybillPrint/index.vue index 97b0c584..59e401d5 100644 --- a/vue/src/views/shipping/ewaybillPrint/index.vue +++ b/vue/src/views/shipping/ewaybillPrint/index.vue @@ -5,10 +5,10 @@ - 京东POP电子面单打印暂不提供 + 京东POP电子面单打印暂不支持 - 拼多多电子面单打印正在开发中 + 抖店电子面单打印后续开放 @@ -25,11 +25,12 @@ diff --git a/vue/src/views/shop/tao/ewaybill/index.vue b/vue/src/views/shop/tao/ewaybill/index.vue index ce7e464f..5fbf7fec 100644 --- a/vue/src/views/shop/tao/ewaybill/index.vue +++ b/vue/src/views/shop/tao/ewaybill/index.vue @@ -41,34 +41,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - -