CustomerService.java 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376
  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.order.ProductType;
  5. import com.iamberry.rst.core.page.PagedResult;
  6. import java.util.List;
  7. import java.util.Map;
  8. /**
  9. * 客诉基本信息
  10. */
  11. public interface CustomerService {
  12. /**
  13. * 添加客诉
  14. * @param customerInfo
  15. * @return
  16. */
  17. Integer saveCustomerInfo(CustomerInfo customerInfo, SalesOrder salesOrder);
  18. /**
  19. * 修改客诉
  20. * @param customerInfo
  21. * @return
  22. */
  23. Integer updateCustomerInfo(CustomerInfo customerInfo, SalesOrder salesOrder);
  24. /**
  25. * 添加订单到efast
  26. * @param salesOrder
  27. * @return
  28. */
  29. Map<String,Object> sendEfastOrder(SalesOrder salesOrder);
  30. /**
  31. * 根据id获取客诉信息
  32. * @param customerId
  33. * @return
  34. */
  35. CustomerInfo getCustomerInfo(Integer customerId);
  36. /**
  37. * 修改客诉信息
  38. * @param record
  39. * @return
  40. */
  41. Integer updateCustomerInfo(CustomerInfo record);
  42. /**
  43. * 查询客诉基本信息列表
  44. * @param customerInfo
  45. * @return
  46. */
  47. PagedResult<CustomerInfo> listCustomer(int pageNO, int pageSize, CustomerInfo customerInfo, boolean isTotalNum);
  48. /**
  49. * 查询客诉列表
  50. * @param customerInfo
  51. * @return
  52. */
  53. List<CustomerInfo> listCustomer(CustomerInfo customerInfo);
  54. /**
  55. * 查询客诉基本信息
  56. * @param customerInfo
  57. * @return
  58. */
  59. Map<String,Object> getCustomerInfo(CustomerInfo customerInfo);
  60. /**
  61. * 获取无理由退货信息
  62. * @param noreasonBack
  63. * @return
  64. */
  65. // NoreasonBack getNoreasonBack(NoreasonBack noreasonBack);
  66. /**
  67. * 查询寄回和寄出的产品和配件信息
  68. * @param customerCommon
  69. * @param isSolve
  70. * @return
  71. */
  72. // CustomerCommon selectProdcueAndFitting(CustomerCommon customerCommon, int isSolve);
  73. /**
  74. * 根据客诉id查询商品类型表
  75. * @return
  76. */
  77. ProductType getcompanyAffiliation(Integer customerId);
  78. /*设置产品,配件参数*/
  79. void setName(CmRelation cr);
  80. /*设置产品,配件参数*/
  81. @Deprecated
  82. void setName(CustomerCommon cc);
  83. /**
  84. * 将原订单生成退货单
  85. * @param customerCommon
  86. * @param salesOrder
  87. * @return
  88. * @throws Exception
  89. */
  90. void chargebackEfastOrder(CustomerCommon customerCommon, SalesOrder salesOrder, Integer status, Integer returnType);
  91. /**
  92. * 添加仓储
  93. * @param customerCommon
  94. * @return
  95. */
  96. // void saveComplaintSignclosedInfo(ComplaintSignclosedInfo complaintSignclosedInfo, CustomerCommon customerCommon);
  97. /**
  98. * 添加品检
  99. * @param complaintDetectInfo
  100. * @param customerCommon
  101. * @return
  102. */
  103. void saveComplaintDetectInfo(ComplaintDetectInfo complaintDetectInfo, CustomerCommon customerCommon);
  104. /**
  105. * 向Efast推送订单 仅换新,维修 ,补发
  106. * @return
  107. */
  108. Map<String,Object> sendEfastOrder(CustomerCommon customerCommon, SalesOrder salesOrder);
  109. /*查询问题个数*/
  110. Integer getQuestionNumber(CustomerInfo customerInfo);
  111. /*删除旧的售后信息*/
  112. void deleteCustomerAfterSales(CustomerInfo customer, CmRelation cmRelation);
  113. Integer selectNotSolvedCustomer(CustomerInfo customer);
  114. /**
  115. * 查询旧的客诉基本信息
  116. * @param customerInfo
  117. * @return
  118. */
  119. List<CustomerInfo> listOnCustomer(CustomerInfo customerInfo);
  120. /*添加订单*/
  121. Integer addOrder(SalesOrder salesOrder);
  122. /**
  123. * 导出客诉信息到excel
  124. * @return
  125. */
  126. List<CustomerStatisticalInfo> listStatisticalCustomer(CustomerInfo customerInfo);
  127. /**
  128. * 总销量
  129. * @param salesOrder
  130. * @return
  131. */
  132. List<ReturnStatisticsInfo> salesTotalSales(SalesOrder salesOrder);
  133. /**
  134. * 总换货
  135. * @param salesOrder
  136. * @return
  137. */
  138. List<ReturnStatisticsInfo> salesTotalExchange(SalesOrder salesOrder);
  139. /**
  140. * 总退货
  141. * @param salesOrder
  142. * @return
  143. */
  144. List<ReturnStatisticsInfo> salesTotalReturn(SalesOrder salesOrder);
  145. /**
  146. * 二次换新
  147. * @param salesOrder
  148. * @return
  149. */
  150. List<ReturnStatisticsInfo> salesSecondaryChangeNew(SalesOrder salesOrder);
  151. /**
  152. * 二次换新退货
  153. * @param salesOrder
  154. * @return
  155. */
  156. List<ReturnStatisticsInfo> salesReturnForSecond(SalesOrder salesOrder);
  157. /**
  158. * 查询所有处理类型
  159. * @return
  160. */
  161. List<ProcType> listProcType();
  162. /**
  163. * 根据处理类型查询处理方式
  164. * @return
  165. */
  166. List<ProcMethod> listProcMethod(Integer procTypeId);
  167. /**
  168. * 根据id查询处理方式
  169. * @return
  170. */
  171. ProcMethod getProcMethod(Integer procMethodId);
  172. /**
  173. * 根据id修改处理信息
  174. * @return
  175. */
  176. Integer updateCmRelation(CmRelation cmRelation);
  177. /**
  178. * 查询客诉处理信息
  179. * @param cmRelation
  180. * @return
  181. */
  182. CmRelation getCmRelationInfo(CmRelation cmRelation);
  183. Integer updateRelation(CustomerInfo cm);
  184. List<CustomerCommon> listCustomerCommons(CustomerCommon customerCommon);
  185. /**
  186. * 查询邮费信息
  187. * @return
  188. */
  189. PostageInfo getPostageInfo(Integer postageId);
  190. /**
  191. * 查询邮费信息集合
  192. * @return
  193. */
  194. List<PostageInfo> listPostageInfo(Integer relationId);
  195. /**
  196. * 添加邮费信息
  197. * @return
  198. */
  199. Integer addPostageInfo(PostageInfo postageInfo);
  200. /**
  201. * 修改邮费信息
  202. * @return
  203. */
  204. Integer updatePostageInfo(PostageInfo postageInfo);
  205. /**
  206. * 修改邮费信息
  207. * @return
  208. */
  209. Integer deletePostageInfo(Integer postageId);
  210. /**
  211. * 同步邮费信息
  212. * @return
  213. */
  214. String synchronizePostageInfo();
  215. /**
  216. * 同步寄回信息
  217. * @return
  218. */
  219. String synchronizeSendbackInfo();
  220. /**
  221. * 添加寄回信息
  222. */
  223. SendbackInfo addSendbackInfo(SendbackInfo sendbackInfo);
  224. /**
  225. * 添加寄回信息项集合
  226. */
  227. Integer addSendbackItemList(List<SendbackItem> list);
  228. /**
  229. * 查询单个寄回信息
  230. */
  231. SendbackInfo getSendbackInfo(Integer sendbackId);
  232. /**
  233. * 查询寄回信息集合
  234. */
  235. List<SendbackInfo> listSendbackInfo(Integer relationId);
  236. /**
  237. * 查询寄回信息项集合
  238. */
  239. List<SendbackItem> sendbackItemList(Integer sendbackId);
  240. /**
  241. * 修改寄回信息
  242. */
  243. SendbackInfo updateSendbackInfo(SendbackInfo sendbackInfo);
  244. /**
  245. * 修改寄回状态
  246. */
  247. Integer updateSendbackStatus(SendbackInfo sendbackInfo) ;
  248. /**
  249. * 修改寄回信息项
  250. */
  251. Integer updateSendbackItem(SendbackItem sendbackItem);
  252. /**
  253. * 删除寄回信息
  254. */
  255. Integer deleteSendbackInfo(Integer sendbackId);
  256. /**
  257. * 根据主键删除寄回信息项
  258. */
  259. Integer deleteSendbackItemById(Integer sendbackItemId);
  260. /**
  261. * 根据寄回信息主键删除所有寄回信息项
  262. */
  263. Integer deleteSendbackItemBySendbackId(Integer sendbackId);
  264. /**
  265. * 查询寄回产品集合
  266. */
  267. List<ClosedProdcue> listclosedProdcue(ClosedProdcue closedProdcue);
  268. /**
  269. * 根据收费信息id查询收费信息
  270. */
  271. InformationInfo getInformationInfo(Integer feeId);
  272. /**
  273. * 根据处理id查询收费信息
  274. */
  275. List<InformationInfo> listInformationInfo(Integer relationId);
  276. /**
  277. * 添加收费信息
  278. */
  279. Integer addInformationInfo(InformationInfo informationInfo);
  280. /**
  281. * 修改收费信息
  282. */
  283. Integer updateInformationInfo(InformationInfo informationInfo);
  284. /**
  285. * 删除收费信息
  286. */
  287. Integer delInformationInfo(Integer feeId);
  288. /**
  289. * 修改订单项所有退货数量为0
  290. */
  291. Integer updateItemreturnNumByorderid(Integer itemOrderId);
  292. /**
  293. * 查询下载进度列表
  294. * @param downloadProgressInfo
  295. * @return
  296. */
  297. List<DownloadProgressInfo> listDownloadProgressInfo(DownloadProgressInfo downloadProgressInfo);
  298. /**
  299. * 修改下载进度列表
  300. * @param downloadProgressInfo
  301. * @return
  302. */
  303. Integer updateDownloadProgressInfo(DownloadProgressInfo downloadProgressInfo);
  304. /**
  305. * 添加下载进度列表
  306. * @param downloadProgressInfo
  307. * @return
  308. */
  309. Integer addDownloadProgressInfo(DownloadProgressInfo downloadProgressInfo);
  310. /**
  311. * 查询客诉统计
  312. * @return
  313. */
  314. List<CustomerStatistics> selectCustomerStatistics(String month);
  315. }