CustomerService.java 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  1. package com.iamberry.rst.faces.cm;
  2. import com.iamberry.rst.core.cm.*;
  3. import com.iamberry.rst.core.fm.ComplaintDetectInfo;
  4. import com.iamberry.rst.core.fm.ComplaintSignclosedInfo;
  5. import com.iamberry.rst.core.order.ProductType;
  6. import com.iamberry.rst.core.page.PagedResult;
  7. import java.util.List;
  8. import java.util.Map;
  9. /**
  10. * 客诉基本信息
  11. */
  12. public interface CustomerService {
  13. /**
  14. * 添加客诉
  15. * @param customerInfo
  16. * @return
  17. */
  18. Integer saveCustomerInfo(CustomerInfo customerInfo,SalesOrder salesOrder);
  19. /**
  20. * 修改客诉
  21. * @param customerInfo
  22. * @return
  23. */
  24. Integer updateCustomerInfo(CustomerInfo customerInfo,SalesOrder salesOrder);
  25. /**
  26. * 添加订单到efast
  27. * @param salesOrder
  28. * @return
  29. */
  30. Map<String,Object> sendEfastOrder(SalesOrder salesOrder);
  31. /**
  32. * 根据id获取客诉信息
  33. * @param customerId
  34. * @return
  35. */
  36. CustomerInfo getCustomerInfo(Integer customerId);
  37. /**
  38. * 修改客诉信息
  39. * @param record
  40. * @return
  41. */
  42. Integer updateCustomerInfo(CustomerInfo record);
  43. /**
  44. * 查询客诉基本信息列表
  45. * @param customerInfo
  46. * @return
  47. */
  48. PagedResult<CustomerInfo> listCustomer(int pageNO, int pageSize, CustomerInfo customerInfo, boolean isTotalNum);
  49. /**
  50. * 查询客诉基本信息
  51. * @param customerInfo
  52. * @return
  53. */
  54. Map<String,Object> getCustomerInfo(CustomerInfo customerInfo);
  55. /**
  56. * 获取售后退货信息
  57. * @param backGoods
  58. * @return
  59. */
  60. BackGoods getBackGoods(BackGoods backGoods);
  61. /**
  62. * 获取无理由退货信息
  63. * @param noreasonBack
  64. * @return
  65. */
  66. NoreasonBack getNoreasonBack(NoreasonBack noreasonBack);
  67. /**
  68. * 获取售后补寄信息
  69. * @param reissue
  70. * @return
  71. */
  72. Reissue getReissue(Reissue reissue);
  73. /**
  74. * 获取换新详情和品质检测信息
  75. * @param renewed
  76. * @return
  77. */
  78. Renewed getRenewedInfo(Renewed renewed);
  79. /**
  80. * 获取维修详情和品质检测信息
  81. * @param repair
  82. * @return
  83. */
  84. Repair getRepairInfo(Repair repair);
  85. /**
  86. * 查询寄回和寄出的产品和配件信息
  87. * @param customerCommon
  88. * @param isSolve
  89. * @return
  90. */
  91. CustomerCommon selectProdcueAndFitting(CustomerCommon customerCommon, int isSolve);
  92. /**
  93. * 根据客诉id查询商品类型表
  94. * @return
  95. */
  96. ProductType getcompanyAffiliation(Integer customerId);
  97. /*设置产品,配件参数*/
  98. void setName(CmRelation cr);
  99. /*设置产品,配件参数*/
  100. @Deprecated
  101. void setName(CustomerCommon cc);
  102. /**
  103. * 将原订单生成退货单
  104. * @param customerCommon
  105. * @param salesOrder
  106. * @return
  107. * @throws Exception
  108. */
  109. void chargebackEfastOrder(CustomerCommon customerCommon, SalesOrder salesOrder,Integer status,Integer returnType);
  110. /**
  111. * 添加仓储
  112. * @param customerCommon
  113. * @return
  114. */
  115. void saveComplaintSignclosedInfo(ComplaintSignclosedInfo complaintSignclosedInfo, CustomerCommon customerCommon);
  116. /**
  117. * 添加品检
  118. * @param complaintDetectInfo
  119. * @param customerCommon
  120. * @return
  121. */
  122. void saveComplaintDetectInfo(ComplaintDetectInfo complaintDetectInfo, CustomerCommon customerCommon);
  123. /**
  124. * 向Efast推送订单 仅换新,维修 ,补发
  125. * @return
  126. */
  127. Map<String,Object> sendEfastOrder(CustomerCommon customerCommon,SalesOrder salesOrder);
  128. /*查询问题个数*/
  129. Integer getQuestionNumber(CustomerInfo customerInfo);
  130. /*删除旧的售后信息*/
  131. void deleteCustomerAfterSales(CustomerInfo customer);
  132. Integer selectNotSolvedCustomer(CustomerInfo customer);
  133. /**
  134. * 查询旧的客诉基本信息
  135. * @param customerInfo
  136. * @return
  137. */
  138. List<CustomerInfo> listOnCustomer(CustomerInfo customerInfo);
  139. /*添加订单*/
  140. Integer addOrder(SalesOrder salesOrder);
  141. /**
  142. * 导出客诉信息到excel
  143. * @return
  144. */
  145. List<CustomerStatisticalInfo> listStatisticalCustomer();
  146. /**
  147. * 总销量
  148. * @param salesOrder
  149. * @return
  150. */
  151. List<ReturnStatisticsInfo> salesTotalSales(SalesOrder salesOrder);
  152. /**
  153. * 总换货
  154. * @param salesOrder
  155. * @return
  156. */
  157. List<ReturnStatisticsInfo> salesTotalExchange(SalesOrder salesOrder);
  158. /**
  159. * 总退货
  160. * @param salesOrder
  161. * @return
  162. */
  163. List<ReturnStatisticsInfo> salesTotalReturn(SalesOrder salesOrder);
  164. /**
  165. * 二次换新
  166. * @param salesOrder
  167. * @return
  168. */
  169. List<ReturnStatisticsInfo> salesSecondaryChangeNew(SalesOrder salesOrder);
  170. /**
  171. * 二次换新退货
  172. * @param salesOrder
  173. * @return
  174. */
  175. List<ReturnStatisticsInfo> salesReturnForSecond(SalesOrder salesOrder);
  176. /**
  177. * 查询所有处理类型
  178. * @return
  179. */
  180. List<ProcType> listProcType();
  181. /**
  182. * 根据处理类型查询处理方式
  183. * @return
  184. */
  185. List<ProcMethod> listProcMethod(Integer procTypeId);
  186. /**
  187. * 根据id查询处理方式
  188. * @return
  189. */
  190. ProcMethod getProcMethod(Integer procMethodId);
  191. /**
  192. * 根据id修改处理信息
  193. * @return
  194. */
  195. Integer updateCmRelation(CmRelation cmRelation);
  196. /**
  197. * 查询客诉处理信息
  198. * @param cmRelation
  199. * @return
  200. */
  201. CmRelation getCmRelationInfo(CmRelation cmRelation);
  202. }