From 68ce2785c5efbd60f3f5da388a538d482851310b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <280645618@qq.com> Date: Thu, 20 Jun 2024 10:49:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E8=A7=86=E9=A2=91=E5=8F=B7?= =?UTF-8?q?=E5=B0=8F=E5=BA=97=E7=94=B5=E5=AD=90=E9=9D=A2=E5=8D=95=E6=89=93?= =?UTF-8?q?=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{wei-api-1.6.3.jar => wei-api-1.6.20.jar} | Bin 81305 -> 93570 bytes open-api/wei-api/pom.xml | 4 +- .../wei/controller/WayBillController.java | 222 +++++++++++------- .../com/qihang/wei/domain/ErpShipWaybill.java | 79 +++++++ .../wei/domain/OmsWeiWaybillAccount.java | 15 ++ .../wei/mapper/ErpShipWaybillMapper.java | 18 ++ .../mapper/OmsWeiWaybillAccountMapper.java | 2 +- .../wei/service/ErpShipWaybillService.java | 20 ++ .../wei/service/OmsWeiOrderService.java | 2 +- .../service/OmsWeiWaybillAccountService.java | 2 +- .../impl/ErpShipWaybillServiceImpl.java | 161 +++++++++++++ .../service/impl/OmsWeiOrderServiceImpl.java | 9 +- .../impl/OmsWeiWaybillAccountServiceImpl.java | 2 +- .../resources/mapper/ErpShipWaybillMapper.xml | 29 +++ .../mapper/OmsWeiWaybillAccountMapper.xml | 14 +- vue/src/api/wei/ewaybill.js | 4 +- vue/src/views/shop/wei/ewaybill/index.vue | 123 +++++----- 17 files changed, 553 insertions(+), 153 deletions(-) rename open-api/wei-api/libs/{wei-api-1.6.3.jar => wei-api-1.6.20.jar} (75%) create mode 100644 open-api/wei-api/src/main/java/com/qihang/wei/domain/ErpShipWaybill.java create mode 100644 open-api/wei-api/src/main/java/com/qihang/wei/mapper/ErpShipWaybillMapper.java create mode 100644 open-api/wei-api/src/main/java/com/qihang/wei/service/ErpShipWaybillService.java create mode 100644 open-api/wei-api/src/main/java/com/qihang/wei/service/impl/ErpShipWaybillServiceImpl.java create mode 100644 open-api/wei-api/src/main/resources/mapper/ErpShipWaybillMapper.xml diff --git a/open-api/wei-api/libs/wei-api-1.6.3.jar b/open-api/wei-api/libs/wei-api-1.6.20.jar similarity index 75% rename from open-api/wei-api/libs/wei-api-1.6.3.jar rename to open-api/wei-api/libs/wei-api-1.6.20.jar index 315fd0f020457c33d8ffb3fcfdbc66af598bafaf..6d35f85edc6a374985911339bd257de7ce80f6d3 100644 GIT binary patch delta 17286 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 wei-api wei-api - 1.6.3 + 1.6.20 system - ${project.basedir}/libs/wei-api-1.6.3.jar + ${project.basedir}/libs/wei-api-1.6.20.jar diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/controller/WayBillController.java b/open-api/wei-api/src/main/java/com/qihang/wei/controller/WayBillController.java index e43a4623..55f1a038 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/controller/WayBillController.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/controller/WayBillController.java @@ -1,9 +1,15 @@ package com.qihang.wei.controller; +import cn.qihangerp.open.wei.EwaybillAccountApiHelper; import cn.qihangerp.open.wei.EwaybillApiHelper; +import cn.qihangerp.open.wei.bo.ewaybill.EcOrderInfo; +import cn.qihangerp.open.wei.bo.ewaybill.GoodsInfo; +import cn.qihangerp.open.wei.bo.ewaybill.SenderAddressBo; +import cn.qihangerp.open.wei.bo.ewaybill.WaybillRequest; import cn.qihangerp.open.wei.common.ApiResultVo; import cn.qihangerp.open.wei.vo.ewaybill.AccountVo; import cn.qihangerp.open.wei.vo.ewaybill.DeliveryVo; +import cn.qihangerp.open.wei.vo.ewaybill.EwaybillOrderCreateVo; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.qihang.common.common.AjaxResult; @@ -12,7 +18,11 @@ import com.qihang.common.enums.HttpStatus; import com.qihang.wei.bo.PullRequest; import com.qihang.wei.bo.WeiWaybillGetBo; +import com.qihang.wei.domain.ErpShipWaybill; +import com.qihang.wei.domain.OmsWeiOrder; import com.qihang.wei.domain.OmsWeiWaybillAccount; +import com.qihang.wei.service.ErpShipWaybillService; +import com.qihang.wei.service.OmsWeiOrderService; import com.qihang.wei.service.OmsWeiWaybillAccountService; import lombok.AllArgsConstructor; import lombok.extern.java.Log; @@ -30,6 +40,8 @@ import java.util.List; public class WayBillController { private final WeiApiCommon apiCommon; private final OmsWeiWaybillAccountService waybillAccountService; + private final OmsWeiOrderService orderService; + private final ErpShipWaybillService erpShipWaybillService; @RequestMapping(value = "/get_waybill_account_list", method = RequestMethod.POST) public AjaxResult getWaybillAccountList(@RequestBody PullRequest params) throws Exception { if (params.getShopId() == null || params.getShopId() <= 0) { @@ -57,7 +69,7 @@ public class WayBillController { String appSecret = checkResult.getData().getAppSecret(); // ApiResultVo apiResultVo = EwaybillApiHelper.getDeliveryList(appKey, appSecret, accessToken); - ApiResultVo apiResultVo = EwaybillApiHelper.getAccountList(appKey, appSecret, accessToken); + ApiResultVo apiResultVo = EwaybillAccountApiHelper.getAccountList(appKey, appSecret, accessToken); List list = new ArrayList<>(); if(apiResultVo.getCode()==0){ @@ -85,6 +97,11 @@ public class WayBillController { vo.setSenderCity(item.getSenderAddress().getCity()); vo.setSenderCounty(item.getSenderAddress().getCounty()); } + if(item.getSiteInfo()!=null){ + vo.setSiteCode(item.getSiteInfo().getSiteCode()); + vo.setSiteName(item.getSiteInfo().getSiteName()); + vo.setSenderStreet(item.getSiteInfo().getAddress().getStreetName()); + } list.add(vo); waybillAccountService.save(vo); log.info("========添加wei电子面单账户信息=========="); @@ -106,11 +123,11 @@ public class WayBillController { if (req.getShopId() == null || req.getShopId() <= 0) { return AjaxResult.error(HttpStatus.PARAMS_ERROR, "参数错误,没有店铺Id"); } - if(req.getIds()==null || req.getIds().length<=0) { + 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) { + if (checkResult.getCode() != 0) { return AjaxResult.error(checkResult.getCode(), checkResult.getMsg(), checkResult.getData()); } String accessToken = checkResult.getData().getAccessToken(); @@ -121,85 +138,126 @@ public class WayBillController { // 获取电子面单账户信息(包含了发货地址信息) OmsWeiWaybillAccount 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()); -// waybill.setStatus(1);//1已取号 -// erpShipWaybillService.waybillUpdate(waybill); -// log.info("====保存電子面單信息========"+result.getObjectId()); -// } -// }else{ -// return AjaxResult.error(apiResultVo.getMsg()); -// } + WaybillRequest apiBo = new WaybillRequest(); + + apiBo.setDelivery_id(account.getDeliveryId()); + apiBo.setEwaybill_acct_id(account.getAcctId()); + + SenderAddressBo sender = new SenderAddressBo(); + sender.setName(account.getName()); + sender.setMobile(account.getMobile()); + sender.setProvince(account.getSenderProvince()); + sender.setCity(account.getSenderCity()); + sender.setCounty(account.getSenderCounty()); + sender.setStreet(account.getSenderStreet()); + sender.setAddress(account.getSenderAddress()); + apiBo.setSender(sender); + + for (String orderId : req.getIds()) { + if (StringUtils.hasText(orderId)) { + OmsWeiOrder order = orderService.queryDetailByOrderId(orderId); + if (order != null) { + + SenderAddressBo receiver = new SenderAddressBo(); + receiver.setName(order.getUserName()); + receiver.setMobile(order.getTelNumber()); + receiver.setProvince(order.getProvinceName()); + receiver.setCity(order.getCityName()); + receiver.setCounty(order.getCountyName()); + receiver.setStreet(""); + receiver.setAddress("****"); + apiBo.setReceiver(receiver); + + List orderInfos = new ArrayList<>(); + // 订单信息 + EcOrderInfo orderInfo = new EcOrderInfo(); + orderInfo.setEc_order_id(Long.parseLong(order.getOrderId())); + + List goodsInfos = new ArrayList<>(); + if(order.getItems()!=null&&order.getItems().size()>0) { + for (var item:order.getItems()) { + GoodsInfo gi = new GoodsInfo(); + gi.setProduct_id(Long.parseLong(item.getProductId())); + gi.setSku_id(Long.parseLong(item.getSkuId())); + gi.setGood_name(item.getTitle()); + gi.setGood_count(item.getSkuCnt()); + goodsInfos.add(gi); + } + + } + + orderInfo.setGoods_list(goodsInfos); + orderInfos.add(orderInfo); + + apiBo.setEc_order_list(orderInfos); + + apiBo.setShop_id(account.getSellerShopId()); + + ApiResultVo apiResultVo = EwaybillApiHelper.getWaybillCode(appKey, appSecret, accessToken, apiBo); + if (apiResultVo.getCode() == 0) { + // 保持数据 + ErpShipWaybill waybill = new ErpShipWaybill(); + waybill.setShopId(req.getShopId()); + waybill.setOrderId(order.getOrderId()); + waybill.setWaybillOrderId(apiResultVo.getData().getEwaybill_order_id()); + waybill.setWaybillCode(apiResultVo.getData().getWaybill_id()); + waybill.setLogisticsCode(account.getDeliveryId()); + waybill.setPrintData(apiResultVo.getData().getPrint_info()); + waybill.setStatus(1);//1已取号 + erpShipWaybillService.waybillUpdate(waybill); + log.info("====保存wei電子面單信息========" + order.getOrderId()); + + } else { + return AjaxResult.error(apiResultVo.getMsg()); + } + } + } + } + return AjaxResult.success(); + } + + @PostMapping("/get_print_data") + @ResponseBody + public AjaxResult getPrintData(@RequestBody WeiWaybillGetBo 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 WeiWaybillGetBo 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(); + } + + /** + * 发货 + * @param req + * @return + */ + @PostMapping("/push_ship_send") + @ResponseBody + public AjaxResult pushShipSend(@RequestBody WeiWaybillGetBo 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/wei-api/src/main/java/com/qihang/wei/domain/ErpShipWaybill.java b/open-api/wei-api/src/main/java/com/qihang/wei/domain/ErpShipWaybill.java new file mode 100644 index 00000000..8f2beca8 --- /dev/null +++ b/open-api/wei-api/src/main/java/com/qihang/wei/domain/ErpShipWaybill.java @@ -0,0 +1,79 @@ +package com.qihang.wei.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_waybill + */ +@Data +public class ErpShipWaybill implements Serializable { + /** + * + */ + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + /** + * 订单号 + */ + private String orderId; + + /** + * 店铺id + */ + private Long shopId; + + /** + * 店铺类型 + */ + private Integer shopType; + + /** + * 快递单号 + */ + private String waybillCode; + private String waybillOrderId; + + /** + * 快递公司编码 + */ + 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/wei-api/src/main/java/com/qihang/wei/domain/OmsWeiWaybillAccount.java b/open-api/wei-api/src/main/java/com/qihang/wei/domain/OmsWeiWaybillAccount.java index 0d8e752e..3d03052d 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/domain/OmsWeiWaybillAccount.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/domain/OmsWeiWaybillAccount.java @@ -38,6 +38,16 @@ public class OmsWeiWaybillAccount implements Serializable { */ private Integer companyType; + /** + * 网点编码 + */ + private String siteCode; + + /** + * 网点名称 + */ + private String siteName; + /** * 电子面单账号id,每绑定一个网点分配一个acct_id */ @@ -98,6 +108,11 @@ public class OmsWeiWaybillAccount implements Serializable { */ private String senderCounty; + /** + * + */ + private String senderStreet; + /** * 详细地址 */ diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/mapper/ErpShipWaybillMapper.java b/open-api/wei-api/src/main/java/com/qihang/wei/mapper/ErpShipWaybillMapper.java new file mode 100644 index 00000000..3fd5f2b9 --- /dev/null +++ b/open-api/wei-api/src/main/java/com/qihang/wei/mapper/ErpShipWaybillMapper.java @@ -0,0 +1,18 @@ +package com.qihang.wei.mapper; + +import com.qihang.wei.domain.ErpShipWaybill; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author TW +* @description 针对表【erp_ship_waybill(发货电子面单记录表)】的数据库操作Mapper +* @createDate 2024-06-20 10:05:35 +* @Entity com.qihang.wei.domain.ErpShipWaybill +*/ +public interface ErpShipWaybillMapper extends BaseMapper { + +} + + + + diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/mapper/OmsWeiWaybillAccountMapper.java b/open-api/wei-api/src/main/java/com/qihang/wei/mapper/OmsWeiWaybillAccountMapper.java index 93de0b5b..c83da48e 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/mapper/OmsWeiWaybillAccountMapper.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/mapper/OmsWeiWaybillAccountMapper.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * @author TW * @description 针对表【oms_wei_waybill_account(视频号小店电子面单账户信息表)】的数据库操作Mapper -* @createDate 2024-06-19 17:08:54 +* @createDate 2024-06-20 09:18:48 * @Entity com.qihang.wei.domain.OmsWeiWaybillAccount */ public interface OmsWeiWaybillAccountMapper extends BaseMapper { diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/ErpShipWaybillService.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/ErpShipWaybillService.java new file mode 100644 index 00000000..cc5b8ead --- /dev/null +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/ErpShipWaybillService.java @@ -0,0 +1,20 @@ +package com.qihang.wei.service; + +import com.qihang.common.common.ResultVo; +import com.qihang.wei.domain.ErpShipWaybill; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** +* @author TW +* @description 针对表【erp_ship_waybill(发货电子面单记录表)】的数据库操作Service +* @createDate 2024-06-20 10:05:35 +*/ +public interface ErpShipWaybillService extends IService { + ResultVo waybillUpdate(ErpShipWaybill shipWaybill); + List getListByOrderIds(Long shopId, String[] orderIds); + + ResultVo printSuccess(Long shopId,String[] orderIds); + ResultVo pushShipSend(Long shopId,String[] orderIds); +} diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiOrderService.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiOrderService.java index 29b6d631..51cbc82d 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiOrderService.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiOrderService.java @@ -16,5 +16,5 @@ public interface OmsWeiOrderService extends IService { PageResult queryPageList(OmsWeiOrder bo, PageQuery pageQuery); ResultVo saveOrder(Long shopId, OmsWeiOrder order); OmsWeiOrder queryDetailById(Long id); - + OmsWeiOrder queryDetailByOrderId(String orderId); } diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiWaybillAccountService.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiWaybillAccountService.java index bdb9e45c..9b528c3f 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiWaybillAccountService.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiWaybillAccountService.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService; /** * @author TW * @description 针对表【oms_wei_waybill_account(视频号小店电子面单账户信息表)】的数据库操作Service -* @createDate 2024-06-19 17:08:54 +* @createDate 2024-06-20 09:18:48 */ public interface OmsWeiWaybillAccountService extends IService { diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/ErpShipWaybillServiceImpl.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/ErpShipWaybillServiceImpl.java new file mode 100644 index 00000000..d803831f --- /dev/null +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/ErpShipWaybillServiceImpl.java @@ -0,0 +1,161 @@ +package com.qihang.wei.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.wei.domain.ErpShipWaybill; +import com.qihang.wei.domain.OmsWeiOrder; +import com.qihang.wei.mapper.OmsWeiOrderMapper; +import com.qihang.wei.service.ErpShipWaybillService; +import com.qihang.wei.mapper.ErpShipWaybillMapper; +import lombok.AllArgsConstructor; +import org.springframework.kafka.core.KafkaTemplate; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Arrays; +import java.util.Date; +import java.util.List; + +/** +* @author TW +* @description 针对表【erp_ship_waybill(发货电子面单记录表)】的数据库操作Service实现 +* @createDate 2024-06-20 10:05:35 +*/ +@AllArgsConstructor +@Service +public class ErpShipWaybillServiceImpl extends ServiceImpl + implements ErpShipWaybillService{ + private final ErpShipWaybillMapper mapper; + private final OmsWeiOrderMapper orderMapper; + private final KafkaTemplate kafkaTemplate; + + /** + * 更新电子面单信息 + * @param shipWaybill + * @return + */ + @Transactional + @Override + public ResultVo waybillUpdate(ErpShipWaybill shipWaybill) { + String orderId= shipWaybill.getOrderId(); + if(shipWaybill.getId()!=null&&shipWaybill.getId()>0){ + // 存在,修改 + shipWaybill.setCreateBy(null); + shipWaybill.setCreateTime(null); + shipWaybill.setOrderId(null); + shipWaybill.setShopId(null); + shipWaybill.setShopType(null); + mapper.updateById(shipWaybill); + }else{ + // 新增 + List erpShipWaybills = mapper.selectList(new LambdaQueryWrapper().eq(ErpShipWaybill::getOrderId, orderId)); + if(erpShipWaybills==null|| erpShipWaybills.size()==0) { + shipWaybill.setStatus(1);//已取号 + shipWaybill.setShopType(EnumShopType.TAO.getIndex()); + shipWaybill.setCreateTime(new Date()); + mapper.insert(shipWaybill); + }else{ + ErpShipWaybill update = new ErpShipWaybill(); + update.setId(erpShipWaybills.get(0).getId()); + update.setWaybillCode(shipWaybill.getWaybillCode()); + update.setLogisticsCode(shipWaybill.getLogisticsCode()); + update.setPrintData(shipWaybill.getPrintData()); + update.setStatus(1); + update.setUpdateTime(new Date()); + update.setUpdateBy("重新取号"); + mapper.updateById(update); + } + } + // 更新关联订单erp_send_status状态 + OmsWeiOrder orderUpdate = new OmsWeiOrder(); + orderUpdate.setErpSendStatus(shipWaybill.getStatus()); + orderUpdate.setErpSendCode(shipWaybill.getWaybillCode()); + orderUpdate.setErpSendCompany(shipWaybill.getLogisticsCode()); + orderMapper.update(orderUpdate,new LambdaQueryWrapper().eq(OmsWeiOrder::getOrderId,orderId)); + + return ResultVo.success(); + } + + @Override + public List getListByOrderIds(Long shopId, String[] orderIds) { + List erpShipWaybills = mapper.selectList( + new LambdaQueryWrapper() + .eq(ErpShipWaybill::getShopId,shopId) + .in(ErpShipWaybill::getOrderId, Arrays.stream(orderIds).toList())); + return erpShipWaybills; + } + + @Transactional + @Override + public ResultVo printSuccess(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()==1) { + ErpShipWaybill update = new ErpShipWaybill(); + update.setId(erpShipWaybills.get(0).getId()); + update.setStatus(2); + update.setUpdateTime(new Date()); + update.setUpdateBy("打印面单"); + mapper.updateById(update); + + // 更新关联订单erp_send_status状态 + OmsWeiOrder orderUpdate = new OmsWeiOrder(); + orderUpdate.setErpSendStatus(update.getStatus()); + + orderMapper.update(orderUpdate, new LambdaQueryWrapper().eq(OmsWeiOrder::getOrderId, w.getOrderId())); + + //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状态 + OmsWeiOrder orderUpdate = new OmsWeiOrder(); + orderUpdate.setErpSendStatus(update.getStatus()); + + orderMapper.update(orderUpdate, new LambdaQueryWrapper().eq(OmsWeiOrder::getOrderId, 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/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiOrderServiceImpl.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiOrderServiceImpl.java index b90981fd..90bbc58a 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiOrderServiceImpl.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiOrderServiceImpl.java @@ -123,7 +123,14 @@ public class OmsWeiOrderServiceImpl extends ServiceImpl weiOrders = mapper.selectList(new LambdaQueryWrapper().eq(OmsWeiOrder::getOrderId,orderId)); + if(weiOrders!=null&&weiOrders.size()>0){ + weiOrders.get(0).setItems(itemMapper.selectList(new LambdaQueryWrapper().eq(OmsWeiOrderItem::getOrderId,orderId))); + return weiOrders.get(0); + }else return null; + } } diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiWaybillAccountServiceImpl.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiWaybillAccountServiceImpl.java index c088e55c..5031cc87 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiWaybillAccountServiceImpl.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiWaybillAccountServiceImpl.java @@ -9,7 +9,7 @@ import org.springframework.stereotype.Service; /** * @author TW * @description 针对表【oms_wei_waybill_account(视频号小店电子面单账户信息表)】的数据库操作Service实现 -* @createDate 2024-06-19 17:08:54 +* @createDate 2024-06-20 09:18:48 */ @Service public class OmsWeiWaybillAccountServiceImpl extends ServiceImpl diff --git a/open-api/wei-api/src/main/resources/mapper/ErpShipWaybillMapper.xml b/open-api/wei-api/src/main/resources/mapper/ErpShipWaybillMapper.xml new file mode 100644 index 00000000..e7d63f90 --- /dev/null +++ b/open-api/wei-api/src/main/resources/mapper/ErpShipWaybillMapper.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + id,order_id,shop_id, + shop_type,waybill_code,waybill_order_id,logistics_code, + print_data,status,create_time, + create_by,update_time,update_by + + diff --git a/open-api/wei-api/src/main/resources/mapper/OmsWeiWaybillAccountMapper.xml b/open-api/wei-api/src/main/resources/mapper/OmsWeiWaybillAccountMapper.xml index e8f00bdd..fe04c856 100644 --- a/open-api/wei-api/src/main/resources/mapper/OmsWeiWaybillAccountMapper.xml +++ b/open-api/wei-api/src/main/resources/mapper/OmsWeiWaybillAccountMapper.xml @@ -10,6 +10,8 @@ + + @@ -22,6 +24,7 @@ + @@ -31,11 +34,12 @@ id,shop_id,seller_shop_id, - delivery_id,company_type,acct_id, - acct_type,status,available, - allocated,cancel,recycled, - monthly_card,site_info,sender_province, - sender_city,sender_county,sender_address, + delivery_id,company_type,site_code, + site_name,acct_id,acct_type, + status,available,allocated, + cancel,recycled,monthly_card, + site_info,sender_province,sender_city, + sender_county,sender_street,sender_address, name,mobile,phone, is_show diff --git a/vue/src/api/wei/ewaybill.js b/vue/src/api/wei/ewaybill.js index 02b3d073..d3745410 100644 --- a/vue/src/api/wei/ewaybill.js +++ b/vue/src/api/wei/ewaybill.js @@ -39,7 +39,7 @@ export function getWaybillPrintData(data) { // 打印成功 export function pushWaybillPrintSuccess(data) { return request({ - url: '/api/tao-api/ewaybill/push_print_success', + url: '/api/wei-api/ewaybill/push_print_success', method: 'post', data: data }) @@ -48,7 +48,7 @@ export function pushWaybillPrintSuccess(data) { export function pushShipSend(data) { return request({ - url: '/api/tao-api/ewaybill/push_ship_send', + url: '/api/wei-api/ewaybill/push_ship_send', method: 'post', data: data }) diff --git a/vue/src/views/shop/wei/ewaybill/index.vue b/vue/src/views/shop/wei/ewaybill/index.vue index 3d7699e5..6d958f3e 100644 --- a/vue/src/views/shop/wei/ewaybill/index.vue +++ b/vue/src/views/shop/wei/ewaybill/index.vue @@ -151,7 +151,7 @@ :label="item.deliveryId" :value="item.id"> {{ item.deliveryId }} - {{item.senderProvince}}{{item.senderCity}}{{item.senderCounty}}{{item.senderAddress}}:{{item.available}} + {{item.siteName}}:{{item.available}} 更新电子面单账户信息 @@ -171,8 +171,10 @@ import '@riophae/vue-treeselect/dist/vue-treeselect.css' import {listShop} from "@/api/shop/shop"; -import {getWaybillAccountList,pullWaybillAccount,getWaybillCode} from "@/api/wei/ewaybill"; +import {getWaybillAccountList, pullWaybillAccount, getWaybillCode, pushWaybillPrintSuccess,pushShipSend} from "@/api/wei/ewaybill"; import {listOrder} from "@/api/wei/order"; +import {getWaybillPrintData} from "@/api/tao/ewaybill"; + export default { name: "printWei", @@ -218,7 +220,6 @@ export default { }; }, created() { - this.openWs() this.openWs() listShop({platform: 2}).then(response => { this.shopList = response.rows; @@ -357,66 +358,74 @@ export default { }; }, handlePrintEwaybill() { - // if (!this.ws) { - // this.$modal.msgError('打印组件连接失败!请安装并启动微信视频号小单打印组件!'); - // this.openWs() - // } - // if(!this.printParams.deliver){ - // this.$modal.msgError('请选择快递公司!'); - // return - // } - if(!this.printParams.printer){ + if (!this.printParams.printer) { this.$modal.msgError('请选择打印机!'); return } - const ws = new WebSocket('ws://127.0.0.1:12705'); - ws.onopen = () => { - console.log('开始打印: '); - // 打印 - this.ws.send(JSON.stringify({ - command: 'print', - version: '2.0', // 必传 - requestID: '1234', // String, 调用方保证唯一 - taskList: [{ - taskID: '1234', // String, 调用方保证唯一 - printInfo: 'JTdCJTIycHJpbnREYXRhJTIyJTNBJTdCJTIyd2F5YmlsbElkJTIyJTNBJTIyNzM2MTE0NjI1MzgzODUlMjIlMkMlMjJwcmludFRpbWUlMjIlM0ElMjIyMDI0JTJGMDYlMkYwMyUyMDE4JTNBNDUlMjIlMkMlMjJzZXJ2aWNlcyUyMiUzQSU1QiU1RCUyQyUyMnJlY2VpdmVyTmFtZSUyMiUzQSUyMiVFNSVBRSVBMyoqJTIyJTJDJTIycmVjZWl2ZXJQaG9uZSUyMiUzQSUyMjEzNyoqKiozODQwJTIyJTJDJTIycmVjZWl2ZXJBZGRyZXNzJTIyJTNBJTIyJUU0JUI4JThBJUU2JUI1JUI3JUU1JUI4JTgyJUU0JUI4JThBJUU2JUI1JUI3JUU1JUI4JTgyJUU2JUI1JUE2JUU0JUI4JTlDJUU2JTk2JUIwJUU1JThDJUJBJUU1JUJDJUEwJUU2JUIxJTlGJUU5JTk1JTg3JUU1JUFEJTk5JUU2JUExJUE1JUU4JUI3JUFGMjM4JUU1JUJDJTg0MzAlRTUlOEYlQjcyMDIlRTUlQUUlQTQlMjIlMkMlMjJzZW5kZXJOYW1lJTIyJTNBJTIyJUU0JUI4JTgzJUU5JTg3JThDJUU1JTlEJUFBJTIyJTJDJTIyc2VuZGVyUGhvbmUlMjIlM0ElMjIxNTgxODU5MDExOSUyMiUyQyUyMnNlbmRlckFkZHJlc3MlMjIlM0ElMjIlRTUlQjklQkYlRTQlQjglOUMlRTclOUMlODElRTYlQjclQjElRTUlOUMlQjMlRTUlQjglODIlRTUlQUUlOUQlRTUlQUUlODklRTUlOEMlQkF4eHh4eDElRTUlOEYlQjclRTUlOEMlOTclRTklOTclQTglMjIlMkMlMjJzaXRlQ29kZSUyMiUzQSUyMjU1ODMwJTIyJTJDJTIyZXdheWJpbGxPcmRlcklkJTIyJTNBJTIyMzQ4NjYxMzA5Mzg5ODE0MTY5OSUyMiUyQyUyMmJhZ0FkZHIlMjIlM0ElMjIlRTYlQjIlQUElRTQlQjglOUMlMjIlMkMlMjJtYXJrJTIyJTNBJTIyMzEwLSUyMFA2JTIwMDMxJTIwJTVCQjMxJTVEJTIyJTJDJTIyc3RvcmVOYW1lJTIyJTNBJTIyJUU5JUFBJTg0JUU5JUI5JUJGJUU2JTlDJTlCJUU1JUIxJUIxJUU0JUI4JTkzJUU1JThEJTk2JUU1JUJBJTk3JTIyJTJDJTIyY3VzdG9tZXJOb3RlcyUyMiUzQSUyMiUyMiUyQyUyMm1lcmNoYW50Tm90ZXMlMjIlM0ElMjIlMjIlMkMlMjJvcmRlcklkJTIyJTNBJTIyMzcyMDI5MzQxNTUwOTk1NDgxNiUyMiU3RCUyQyUyMnRlbXBsYXRlJTIyJTNBJTdCJTIydGVtcGxhdGVJZCUyMiUzQSUyMnNpbmdsZSUyMiUyQyUyMnRlbXBsYXRlTmFtZSUyMiUzQSUyMiVFOSVCQiU5OCVFOCVBRSVBNCVFNyVBOSVCQSVFNiVBOCVBMSVFNiU5RCVCRiUyMiUyQyUyMnRlbXBsYXRlRGVzYyUyMiUzQSUyMiVFNCVCOCU4MCVFOCU4MSU5NCVFNSU4RCU5NSVFNiVBMCU4NyVFNSU4NyU4NiVFNiVBOCVBMSVFNiU5RCVCRiUyMiUyQyUyMnRlbXBsYXRlVHlwZSUyMiUzQSUyMnNpbmdsZSUyMiUyQyUyMm9wdGlvbkxpc3QlMjIlM0ElN0IlN0QlMkMlMjJvcHRpb25zJTIyJTNBJTVCJTVEJTJDJTIyY29kZSUyMiUzQTAlMkMlMjJkZWxpdmVyeUlkJTIyJTNBJTIyWlRPJTIyJTJDJTIydGVtcGxhdGVVcmwlMjIlM0ElMjJodHRwcyUzQSUyRiUyRm1tZWMtc2hvcC0xMjU4MzQ0NzA3LmNvcy5hcC1zaGFuZ2hhaS5teXFjbG91ZC5jb20lMkZzaG9wJTJGcHVibGljJTJGMjAyMy0xMC0yNSUyRjNlY2JiM2FhLTViY2YtNDA0ZC05NzJhLThhMDhhODE2MjIzYy5odG1sJTIyJTJDJTIyY3VzdG9tQ29uZmlnJTIyJTNBJTdCJTIyd2lkdGglMjIlM0E2NTYlMkMlMjJoZWlnaHQlMjIlM0EzMDAlMkMlMjJsZWZ0JTIyJTNBNjAlMkMlMjJ0b3AlMjIlM0E5MzAlN0QlMkMlMjJ3aWR0aCUyMiUzQTc2JTJDJTIyaGVpZ2h0JTIyJTNBMTMwJTdEJTdE', // String, [获取打印报文]接口返回的print_info - printNum: { - curNum: 1, // 打印计数-当前张数 - sumNum: 2, // 打印计数-总张数 - }, - splitControl: 0 ,// 可不传, 默认为0, 根据自定义内容自动分页;1,禁止分页;2;强制分页, 内容打印在第二页 - showDeliveryLogo: 0, // 可不传, 默认为1, 传0时不展示快递公司logo - // 自定义模板信息,没有自定义模板需求可不传 + getWaybillPrintData({shopId: this.queryParams.shopId, ids: this.ids}).then(response => { + console.log("======打印======", response.data) + if (response.data) { + const ws = new WebSocket('ws://127.0.0.1:12705'); - // 面单补充信息,用来覆盖寄件人信息,没有这种需求可以不传 + ws.onopen = () => { + console.log('开始打印: '); + // 打印 + ws.send(JSON.stringify({ + command: 'print', + version: '2.0', // 必传 + requestID: '1234', // String, 调用方保证唯一 + taskList: [{ + taskID: '1234', // String, 调用方保证唯一 + printInfo: 'JTdCJTIycHJpbnREYXRhJTIyJTNBJTdCJTIyd2F5YmlsbElkJTIyJTNBJTIyNzM2MTE0NjI1MzgzODUlMjIlMkMlMjJwcmludFRpbWUlMjIlM0ElMjIyMDI0JTJGMDYlMkYwMyUyMDE4JTNBNDUlMjIlMkMlMjJzZXJ2aWNlcyUyMiUzQSU1QiU1RCUyQyUyMnJlY2VpdmVyTmFtZSUyMiUzQSUyMiVFNSVBRSVBMyoqJTIyJTJDJTIycmVjZWl2ZXJQaG9uZSUyMiUzQSUyMjEzNyoqKiozODQwJTIyJTJDJTIycmVjZWl2ZXJBZGRyZXNzJTIyJTNBJTIyJUU0JUI4JThBJUU2JUI1JUI3JUU1JUI4JTgyJUU0JUI4JThBJUU2JUI1JUI3JUU1JUI4JTgyJUU2JUI1JUE2JUU0JUI4JTlDJUU2JTk2JUIwJUU1JThDJUJBJUU1JUJDJUEwJUU2JUIxJTlGJUU5JTk1JTg3JUU1JUFEJTk5JUU2JUExJUE1JUU4JUI3JUFGMjM4JUU1JUJDJTg0MzAlRTUlOEYlQjcyMDIlRTUlQUUlQTQlMjIlMkMlMjJzZW5kZXJOYW1lJTIyJTNBJTIyJUU0JUI4JTgzJUU5JTg3JThDJUU1JTlEJUFBJTIyJTJDJTIyc2VuZGVyUGhvbmUlMjIlM0ElMjIxNTgxODU5MDExOSUyMiUyQyUyMnNlbmRlckFkZHJlc3MlMjIlM0ElMjIlRTUlQjklQkYlRTQlQjglOUMlRTclOUMlODElRTYlQjclQjElRTUlOUMlQjMlRTUlQjglODIlRTUlQUUlOUQlRTUlQUUlODklRTUlOEMlQkF4eHh4eDElRTUlOEYlQjclRTUlOEMlOTclRTklOTclQTglMjIlMkMlMjJzaXRlQ29kZSUyMiUzQSUyMjU1ODMwJTIyJTJDJTIyZXdheWJpbGxPcmRlcklkJTIyJTNBJTIyMzQ4NjYxMzA5Mzg5ODE0MTY5OSUyMiUyQyUyMmJhZ0FkZHIlMjIlM0ElMjIlRTYlQjIlQUElRTQlQjglOUMlMjIlMkMlMjJtYXJrJTIyJTNBJTIyMzEwLSUyMFA2JTIwMDMxJTIwJTVCQjMxJTVEJTIyJTJDJTIyc3RvcmVOYW1lJTIyJTNBJTIyJUU5JUFBJTg0JUU5JUI5JUJGJUU2JTlDJTlCJUU1JUIxJUIxJUU0JUI4JTkzJUU1JThEJTk2JUU1JUJBJTk3JTIyJTJDJTIyY3VzdG9tZXJOb3RlcyUyMiUzQSUyMiUyMiUyQyUyMm1lcmNoYW50Tm90ZXMlMjIlM0ElMjIlMjIlMkMlMjJvcmRlcklkJTIyJTNBJTIyMzcyMDI5MzQxNTUwOTk1NDgxNiUyMiU3RCUyQyUyMnRlbXBsYXRlJTIyJTNBJTdCJTIydGVtcGxhdGVJZCUyMiUzQSUyMnNpbmdsZSUyMiUyQyUyMnRlbXBsYXRlTmFtZSUyMiUzQSUyMiVFOSVCQiU5OCVFOCVBRSVBNCVFNyVBOSVCQSVFNiVBOCVBMSVFNiU5RCVCRiUyMiUyQyUyMnRlbXBsYXRlRGVzYyUyMiUzQSUyMiVFNCVCOCU4MCVFOCU4MSU5NCVFNSU4RCU5NSVFNiVBMCU4NyVFNSU4NyU4NiVFNiVBOCVBMSVFNiU5RCVCRiUyMiUyQyUyMnRlbXBsYXRlVHlwZSUyMiUzQSUyMnNpbmdsZSUyMiUyQyUyMm9wdGlvbkxpc3QlMjIlM0ElN0IlN0QlMkMlMjJvcHRpb25zJTIyJTNBJTVCJTVEJTJDJTIyY29kZSUyMiUzQTAlMkMlMjJkZWxpdmVyeUlkJTIyJTNBJTIyWlRPJTIyJTJDJTIydGVtcGxhdGVVcmwlMjIlM0ElMjJodHRwcyUzQSUyRiUyRm1tZWMtc2hvcC0xMjU4MzQ0NzA3LmNvcy5hcC1zaGFuZ2hhaS5teXFjbG91ZC5jb20lMkZzaG9wJTJGcHVibGljJTJGMjAyMy0xMC0yNSUyRjNlY2JiM2FhLTViY2YtNDA0ZC05NzJhLThhMDhhODE2MjIzYy5odG1sJTIyJTJDJTIyY3VzdG9tQ29uZmlnJTIyJTNBJTdCJTIyd2lkdGglMjIlM0E2NTYlMkMlMjJoZWlnaHQlMjIlM0EzMDAlMkMlMjJsZWZ0JTIyJTNBNjAlMkMlMjJ0b3AlMjIlM0E5MzAlN0QlMkMlMjJ3aWR0aCUyMiUzQTc2JTJDJTIyaGVpZ2h0JTIyJTNBMTMwJTdEJTdE', // String, [获取打印报文]接口返回的print_info + printNum: { + curNum: 1, // 打印计数-当前张数 + sumNum: 2, // 打印计数-总张数 + }, + splitControl: 0,// 可不传, 默认为0, 根据自定义内容自动分页;1,禁止分页;2;强制分页, 内容打印在第二页 + showDeliveryLogo: 0, // 可不传, 默认为1, 传0时不展示快递公司logo + // 自定义模板信息,没有自定义模板需求可不传 - }], - printType: 1, // Number 打印类型,默认为 1,打印固定高度的面单;如果为2,则打印任意自定义内容,需要传递 size 参数指定纸张尺寸,printInfo 改为传递 base64 格式的 html - size: { - width: 76, // 纸张尺寸,单位毫米,printType 为 2 时必传 - height: 130 - }, - printer: this.printParams.printer, // 选中的打印机,printer.name - })) - }; - let obj = this.$modal; - ws.onmessage = (e) => { - const resp = JSON.parse(e.data || '{}') - if (resp.command === 'print') { - console.log('打印结果: ', resp); - obj.msgError("打印结果!"+JSON.stringify(resp)); + // 面单补充信息,用来覆盖寄件人信息,没有这种需求可以不传 + + }], + printType: 1, // Number 打印类型,默认为 1,打印固定高度的面单;如果为2,则打印任意自定义内容,需要传递 size 参数指定纸张尺寸,printInfo 改为传递 base64 格式的 html + size: { + width: 76, // 纸张尺寸,单位毫米,printType 为 2 时必传 + height: 130 + }, + printer: this.printParams.printer, // 选中的打印机,printer.name + })) + }; + + + let obj = this.$modal; + ws.onmessage = (e) => { + const resp = JSON.parse(e.data || '{}') + if (resp.command === 'print') { + console.log('打印结果: ', resp); + // 请求回调 + return pushWaybillPrintSuccess({shopId: this.queryParams.shopId, ids: this.ids}) + // obj.msgError("打印结果!"+JSON.stringify(resp)); + } + }; + + + // 当发生错误时触发 + ws.onerror = function (error) { + obj.msgError("打印失败!"); + console.error('WebSocket error:', error); + // alert('WebSocket error occurred. Check the console for more details.'); + }; } - }; - - - // 当发生错误时触发 - ws.onerror = function(error) { - obj.msgError("打印失败!"); - console.error('WebSocket error:', error); - // alert('WebSocket error occurred. Check the console for more details.'); - }; - - } + }); + }, + handleShipSend(){ + // this.$modal.msgError("开源版本未实现平台发货!请自行对接发货"); + pushShipSend({shopId: this.queryParams.shopId, ids: this.ids}).then(response => { + this.$modal.msgSuccess("发货成功!"); + this.getList() + }) + }, } };