SalesOrderService.java 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  1. package com.iamberry.rst.faces.cm;
  2. import com.iamberry.rst.core.cm.SalesOrder;
  3. import com.iamberry.rst.core.cm.SalesOrderItem;
  4. import com.iamberry.rst.core.order.DownsingleRuleInfo;
  5. import com.iamberry.rst.core.page.PagedResult;
  6. import com.iamberry.rst.core.tools.LogisticsInfo;
  7. import net.sf.json.JSONArray;
  8. import net.sf.json.JSONObject;
  9. import java.util.List;
  10. /**
  11. * Created by liuzhiwei on 2017/10/31.
  12. */
  13. public interface SalesOrderService {
  14. /**
  15. * 添加订单信息
  16. * @param salesOrder
  17. * @return
  18. */
  19. Integer addSalesOrder(SalesOrder salesOrder);
  20. /**
  21. * 添加订单信息
  22. * @param salesOrder
  23. * @return
  24. */
  25. Integer addSalesOrderManual(SalesOrder salesOrder);
  26. /**
  27. * 根据id查询订单信息
  28. * @param salesId
  29. * @return
  30. */
  31. SalesOrder getSalesOrderById(Integer salesId);
  32. SalesOrder addOrderAndIteminfo(SalesOrder salesOrder, List<SalesOrderItem> list) ;
  33. boolean addRstOrderAndIteminfo(SalesOrder salesOrder) ;
  34. /**
  35. * 修改订单信息
  36. * @param salesOrder
  37. * @return
  38. */
  39. Integer updateSalesOrder(SalesOrder salesOrder);
  40. /**
  41. * 修改订单信息
  42. * @param salesOrder
  43. * @return
  44. */
  45. Integer updateOrderInfo(SalesOrder salesOrder);
  46. /**
  47. * 批量添加订单信息
  48. * @param list
  49. * @return
  50. */
  51. Integer addSalesOrderList(List<SalesOrder> list);
  52. /**
  53. * 添加订单和订单项
  54. * @param list
  55. * @return
  56. */
  57. boolean addOrderAndItem(SalesOrder salesOrder, List<SalesOrderItem> list)throws Exception;
  58. /**
  59. * 获取订单集合
  60. * @param salesOrder
  61. * @return
  62. */
  63. List<SalesOrder> listSalesOrder (SalesOrder salesOrder);
  64. /**
  65. * 分页获取订单集合
  66. * @param pageNO
  67. * @param pageSize
  68. * @param salesOrder
  69. * @param isTotalNum
  70. * @return
  71. */
  72. PagedResult<SalesOrder> listSalesOrderPage(int pageNO, int pageSize, SalesOrder salesOrder, boolean isTotalNum);
  73. /**
  74. * 获取订单项集合
  75. * @param salesOrderItem
  76. * @return
  77. */
  78. List<SalesOrderItem> listSalesOrderItem(SalesOrderItem salesOrderItem);
  79. /**
  80. * 添加订单信息
  81. * @param obj
  82. */
  83. void addSalesOrderList(JSONObject obj) throws Exception;
  84. void parseOrder(SalesOrder oginerOrder, List<SalesOrder> listOrder);
  85. /**
  86. * 同步efast订单
  87. * @param obj
  88. * @return
  89. * @throws Exception
  90. */
  91. boolean syncEfastOrder(JSONObject orderInfo) throws Exception;
  92. /**
  93. * 批量修改订单信息
  94. * @param list
  95. * @return
  96. */
  97. Integer updateOrderList(JSONArray orderList, List<SalesOrder> list);
  98. /**
  99. * 批量修改退货订单状态
  100. * @param orderList
  101. * @param list
  102. * @return
  103. */
  104. Integer updateReturnOrderList(JSONArray orderList, List<SalesOrder> list);
  105. /**
  106. * 查询订单数量
  107. * @param salesOrder
  108. * @return
  109. */
  110. Integer getOrderInfoCount(SalesOrder salesOrder);
  111. /**
  112. * 查询需要导出的订单信息
  113. * @param salesOrder
  114. * @return
  115. */
  116. List<SalesOrder> listOrderExcel(SalesOrder salesOrder);
  117. /**
  118. * 查询需要导出的数量
  119. * @param salesOrder
  120. * @return
  121. */
  122. Integer listOrderExcelNum(SalesOrder salesOrder);
  123. /**
  124. * 删除订单根据Efast订单号
  125. */
  126. Integer delOrder(String orderId);
  127. /**
  128. * 修改订单项数量
  129. */
  130. Integer updateOrderItem(SalesOrderItem salesOrderItem);
  131. /**
  132. * 根据外部订单号查询订单信息
  133. * **/
  134. SalesOrder getSalesOrderByLogistics(SalesOrder salesOrder);
  135. /**
  136. * 批量修改订单是否已下载状态
  137. * @param list
  138. * @return
  139. */
  140. Integer updateOrderListIsDownload(List<SalesOrder> list);
  141. /**
  142. * 根据交易号修改订单信息
  143. * **/
  144. Integer updateSalesOrderByDealCode(SalesOrder salesOrder);
  145. /**
  146. * 查询物流公司信息
  147. * **/
  148. List<LogisticsInfo> getLogisticsInfo(LogisticsInfo logisticsInfo);
  149. /**
  150. * 查询所有拆单规则
  151. */
  152. List<DownsingleRuleInfo> listDownsingleRule();
  153. /**
  154. * 根据颜色sku/查询产品是否是水机
  155. */
  156. Integer getIsMachine(String colorBar);
  157. boolean addRstOrderinfo(SalesOrder mainOrder,List<SalesOrder> listSalesOrder);
  158. /**
  159. *查询拥有该交易号的数量
  160. * @param code
  161. * @return
  162. */
  163. Integer getOrderBySalesDealCodeNum(String code);
  164. /**
  165. * 按照批次查询订单项,并下载,订单列表主要按照订单项来排列
  166. * @param salesOrder
  167. * @return
  168. */
  169. List<SalesOrder> listSalesOrderAndItem(SalesOrder salesOrder);
  170. /**
  171. * 查询订单数量
  172. * @param salesOrder
  173. * @return
  174. */
  175. Integer getSalesOrderNum(SalesOrder salesOrder);
  176. /**
  177. * 批量确认订单 根据批次
  178. * @param salesBatchId
  179. * @return
  180. */
  181. Integer listConfirmSalesOrderByBatch(String salesBatchId);
  182. /**
  183. * 批量确认订单
  184. * @param salesId
  185. * @return
  186. */
  187. Integer noticeDistribution(Integer salesId);
  188. /**
  189. * 确认订单,需要传入完整的order
  190. * @param salesId
  191. * @return
  192. */
  193. Integer confirmSalesOrder(Integer salesId);
  194. }