ShipService.java 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. package com.caimei365.order.service;
  2. import com.caimei365.order.model.ResponseJson;
  3. import com.caimei365.order.model.dto.LogisticsBatchDto;
  4. import com.caimei365.order.model.dto.LogisticsDto;
  5. import com.caimei365.order.model.vo.CompanyVo;
  6. import com.caimei365.order.model.vo.ShopOrderVo;
  7. import com.github.pagehelper.PageInfo;
  8. import org.springframework.http.HttpHeaders;
  9. import java.util.List;
  10. import java.util.Map;
  11. /**
  12. * Description
  13. *
  14. * @author : Charles
  15. * @date : 2021/8/5
  16. */
  17. public interface ShipService {
  18. /**
  19. * 供应商订单列表
  20. * @param shopId 供应商Id
  21. * @param sendOutStatus 发货状态
  22. * @param payStatus 结算状态
  23. * @param shopOrderNo 订单编号
  24. * @param receiver 买家名称
  25. * @param pageNum 页码
  26. * @param pageSize 每页数量
  27. */
  28. ResponseJson<PageInfo<ShopOrderVo>> getShopOrderList(Integer shopId, Integer sendOutStatus, Integer payStatus, String shopOrderNo, String receiver, int pageNum, int pageSize);
  29. /**
  30. * 供应商子订单详情
  31. * @param shopOrderId 子订单Id
  32. */
  33. ResponseJson<Map<String, Object>> getShopOrderDetail(Integer shopOrderId);
  34. /**
  35. * 发货页面子订单数据
  36. * @param shopOrderId 子订单Id
  37. */
  38. ResponseJson<ShopOrderVo> getShopOrderInfo(Integer shopOrderId);
  39. /**
  40. * 物流公司
  41. * @param value 快递公司代码
  42. */
  43. ResponseJson<List<CompanyVo>> getLogisticsCompany(String value);
  44. /**
  45. * 发货
  46. * @param logisticsDto {
  47. * shopOrderId: 子订单Id,
  48. * note: 备注信息,
  49. * image: 图片备注以##隔开,
  50. * logistics:[ // 物流信息
  51. * {number:'45646464646',logisticsCompanyName:'顺丰物流',logisticsCompanyCode:'物流英文代码'},
  52. * {number:'45646464646',logisticsCompanyName:'顺丰物流',logisticsCompanyCode:'物流英文代码'}
  53. * ],
  54. * products:[ // 商品信息
  55. * {orderProductId:订单商品id,num:此次发货数量},
  56. * {orderProductId:订单商品id,num:此次发货数量}
  57. * ],
  58. * }
  59. */
  60. ResponseJson<Integer> addDelivery(LogisticsDto logisticsDto);
  61. /**
  62. * 供应商发货记录
  63. * @param shopOrderId 子订单Id
  64. * @param pageNum 页码
  65. * @param pageSize 每页数量
  66. */
  67. ResponseJson<Map<String, Object>> getDeliveryRecord(Integer shopOrderId, int pageNum, int pageSize);
  68. /**
  69. * 供应商撤销发货
  70. * @param logisticsBatchId 发货物流批次Id
  71. */
  72. ResponseJson<Void> cancelDelivery(Integer logisticsBatchId);
  73. /**
  74. * 发货记录-添加物流
  75. * @param logisticsBatchDto {
  76. * logisticsBatchId: 发货批次表Id,
  77. * remark: 备注,
  78. * remarkImage: 图片备注,
  79. * logistics:[ // 物流信息
  80. * {number:'45646464646',logisticsCompanyName:'顺丰物流',logisticsCompanyCode:'物流英文代码'},
  81. * {number:'45646464646',logisticsCompanyName:'顺丰物流',logisticsCompanyCode:'物流英文代码'}
  82. * ]
  83. * }
  84. */
  85. ResponseJson<Void> addLogisticsInfo(LogisticsBatchDto logisticsBatchDto);
  86. /**
  87. * 扫码添加物流
  88. * @param number 快递单号
  89. */
  90. ResponseJson<CompanyVo> scanGetLogisticsInfo(String number);
  91. /**
  92. * 供应商查看物流
  93. * @param shopOrderId 子订单Id
  94. * @param logisticsBatchId 发货物流批次Id
  95. */
  96. ResponseJson<Map<String, Object>> getLogisticsInfo(Integer shopOrderId, Integer logisticsBatchId);
  97. /**
  98. * 删除物流信息
  99. * @param logisticsInfoId 发货物流信息Id
  100. */
  101. ResponseJson<Void> deleteLogisticsInfo(Integer logisticsInfoId);
  102. /**
  103. * 小程序分享发货-获取分享码
  104. * @param shopOrderId 子订单Id
  105. */
  106. ResponseJson<String> getShipShareCode(Integer shopOrderId);
  107. /**
  108. * 小程序分享发货-分享权限控制
  109. * @param source 来源:1:客服扫码,2:供应商运营人员查看,3:分享码查看
  110. * @param shopOrderId 子订单Id
  111. * @param shareCode 分享码
  112. * @param code 微信code
  113. * @param encryptedData 微信加密数据
  114. * @param iv 微信加密算法的初始向量
  115. * @param headers HttpHeaders
  116. */
  117. ResponseJson<Map<String, Object>> checkShipShareCode(Integer source, Integer shopOrderId, String shareCode, String code, String encryptedData, String iv, HttpHeaders headers);
  118. }