SalesOrderService.java 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277
  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 salesOrder
  67. * @return
  68. */
  69. Integer listSalesOrderNum (SalesOrder salesOrder);
  70. /**
  71. * 分页获取订单集合
  72. * @param pageNO
  73. * @param pageSize
  74. * @param salesOrder
  75. * @param isTotalNum
  76. * @return
  77. */
  78. PagedResult<SalesOrder> listSalesOrderPage(int pageNO, int pageSize, SalesOrder salesOrder, boolean isTotalNum);
  79. /**
  80. * 获取订单项集合
  81. * @param salesOrderItem
  82. * @return
  83. */
  84. List<SalesOrderItem> listSalesOrderItem(SalesOrderItem salesOrderItem);
  85. /**
  86. * 添加订单信息
  87. * @param obj
  88. */
  89. void addSalesOrderList(JSONObject obj) throws Exception;
  90. void parseOrder(SalesOrder oginerOrder, List<SalesOrder> listOrder);
  91. /**
  92. * 同步efast订单
  93. * @param obj
  94. * @return
  95. * @throws Exception
  96. */
  97. boolean syncEfastOrder(JSONObject orderInfo) throws Exception;
  98. /**
  99. * 批量修改订单信息
  100. * @param list
  101. * @return
  102. */
  103. Integer updateOrderList(JSONArray orderList, List<SalesOrder> list);
  104. /**
  105. * 批量修改退货订单状态
  106. * @param orderList
  107. * @param list
  108. * @return
  109. */
  110. Integer updateReturnOrderList(JSONArray orderList, List<SalesOrder> list);
  111. /**
  112. * 查询订单数量
  113. * @param salesOrder
  114. * @return
  115. */
  116. Integer getOrderInfoCount(SalesOrder salesOrder);
  117. /**
  118. * 查询需要导出的订单信息
  119. * @param salesOrder
  120. * @return
  121. */
  122. List<SalesOrder> listOrderExcel(SalesOrder salesOrder);
  123. /**
  124. * 查询需要导出的数量
  125. * @param salesOrder
  126. * @return
  127. */
  128. Integer listOrderExcelNum(SalesOrder salesOrder);
  129. /**
  130. * 删除订单根据Efast订单号
  131. */
  132. Integer delOrder(String orderId);
  133. /**
  134. * 修改订单项数量
  135. */
  136. Integer updateOrderItem(SalesOrderItem salesOrderItem);
  137. /**
  138. * 根据外部订单号查询订单信息
  139. * **/
  140. SalesOrder getSalesOrderByLogistics(SalesOrder salesOrder);
  141. /**
  142. * 批量修改订单是否已下载状态
  143. * @param list
  144. * @return
  145. */
  146. Integer updateOrderListIsDownload(List<SalesOrder> list);
  147. /**
  148. * 根据交易号修改订单信息
  149. * **/
  150. Integer updateSalesOrderByDealCode(SalesOrder salesOrder);
  151. /**
  152. * 查询物流公司信息
  153. * **/
  154. List<LogisticsInfo> getLogisticsInfo(LogisticsInfo logisticsInfo);
  155. /**
  156. * 查询所有拆单规则
  157. */
  158. List<DownsingleRuleInfo> listDownsingleRule();
  159. /**
  160. * 根据颜色sku/查询产品是否是水机
  161. */
  162. Integer getIsMachine(String colorBar);
  163. boolean addRstOrderinfo(SalesOrder mainOrder,List<SalesOrder> listSalesOrder);
  164. /**
  165. *查询拥有该交易号的数量
  166. * @param code
  167. * @return
  168. */
  169. Integer getOrderBySalesDealCodeNum(String code);
  170. /**
  171. * 按照批次查询订单项,并下载,订单列表主要按照订单项来排列
  172. * @param salesOrder
  173. * @return
  174. */
  175. Integer listSalesOrderAndItemNum(SalesOrder salesOrder);
  176. /**
  177. * 按照批次查询订单项,并下载,订单列表主要按照订单项来排列
  178. * @param salesOrder
  179. * @return
  180. */
  181. List<SalesOrder> listSalesOrderAndItem(SalesOrder salesOrder);
  182. /**
  183. * 查询订单数量
  184. * @param salesOrder
  185. * @return
  186. */
  187. Integer getSalesOrderNum(SalesOrder salesOrder);
  188. /**
  189. * 批量确认订单 根据批次
  190. * @param salesBatchId
  191. * @return
  192. */
  193. Integer listConfirmSalesOrderByBatch(String salesBatchId);
  194. /**
  195. * 批量确认订单
  196. * @param salesOrder
  197. * @return
  198. */
  199. Integer noticeDistribution(SalesOrder salesOrder);
  200. /**
  201. * 确认订单,需要传入完整的order
  202. * @param salesId
  203. * @return
  204. */
  205. Integer confirmSalesOrder(Integer salesId);
  206. /**
  207. * 分配物流方式
  208. * @param salesOrder
  209. * @return
  210. */
  211. Integer distributionExpress(SalesOrder salesOrder);
  212. /**
  213. * 批量分配快递方式
  214. * @param salesOrder
  215. * @return
  216. */
  217. Integer listSalesPostFirm(SalesOrder salesOrder);
  218. /**
  219. * 查询订单
  220. * @param postNum
  221. * @return
  222. */
  223. SalesOrder getSalesOrderByPostNum(String postNum);
  224. /**
  225. * 出库
  226. * @param salesOrder
  227. * @return
  228. */
  229. Integer updateDeliver(SalesOrder salesOrder);
  230. }