PublicInquiryService.java 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. package com.uas.ps.inquiry.service;
  2. import com.uas.ps.inquiry.domain.IPage;
  3. import com.uas.ps.inquiry.entity.BatchInquiry;
  4. import com.uas.ps.inquiry.entity.Inquiry;
  5. import com.uas.ps.inquiry.entity.InquiryDecide;
  6. import com.uas.ps.inquiry.entity.InquiryDetail;
  7. import com.uas.ps.inquiry.entity.InquiryMessage;
  8. import com.uas.ps.inquiry.model.PublicInquiryItem;
  9. import com.uas.ps.inquiry.model.PublicInquiryItemInfo;
  10. import com.uas.ps.inquiry.model.PurcInquiry;
  11. import com.uas.ps.inquiry.model.PurcInquiryItem;
  12. import com.uas.ps.inquiry.model.PurcInquiryItemInfo;
  13. import com.uas.ps.inquiry.page.PageInfo;
  14. import com.uas.ps.inquiry.page.SearchFilter;
  15. import java.util.List;
  16. import java.util.Map;
  17. import javassist.NotFoundException;
  18. import org.springframework.data.domain.Page;
  19. import org.springframework.ui.ModelMap;
  20. /**
  21. * 公共询价接口
  22. *
  23. * Created by hejq on 2018-01-13.
  24. */
  25. public interface PublicInquiryService {
  26. /**
  27. * 保存公共询价信息
  28. *
  29. * @author hejq
  30. * @date 2018-01-14 11:45
  31. * @param inquiries erp传入公共询价的信息
  32. * @param enuu 询价企业UU号
  33. * @param address 询价企业地址
  34. */
  35. void save(List<BatchInquiry> inquiries, Long enuu, String address) throws NotFoundException;
  36. /**
  37. * 将ERP传入的inquiry信息转成公共询价服务中心需要的信息
  38. *
  39. * @author hejq
  40. * @date 2018-01-14 11:45
  41. * @param inquiries 将ERP传入的inquiry信息
  42. * @param enuu 询价企业UU号
  43. * @return
  44. */
  45. List<PurcInquiry> covert(List<BatchInquiry> inquiries, Long enuu, String address) throws NotFoundException;
  46. /**
  47. * erp提交审核时,公共询价服务中心单据禁用报价功能
  48. *
  49. * @author hejq
  50. * @date 2018-01-14 11:45
  51. * @param inquiries erp询价信息
  52. * @param enuu 询价企业UU号
  53. */
  54. void updateStatus(List<BatchInquiry> inquiries, Long enuu);
  55. /**
  56. * 查询供应商的报价信息
  57. *
  58. * @param enuu 企业uu
  59. * @author hejq
  60. * @date 2018-01-14 11:45
  61. * @return
  62. */
  63. List<InquiryDetail> findNotUploadReply(Long enuu);
  64. /**
  65. * 将平台的公共询价转成ERP的对应的字段
  66. *
  67. * @param notUploadReply 未下载的供应商报价信息
  68. * @author hejq
  69. * @date 2018-01-14 11:51
  70. * @return
  71. */
  72. List<InquiryDetail> convertPublicInquiryReply(List<PublicInquiryItem> notUploadReply);
  73. /**
  74. * 下载完成后更新公共询价服务中心询价单明细的下载状态
  75. *
  76. * @param idArray 询价单明细id
  77. * @author hejq
  78. * @date 2018-01-14 12:12
  79. */
  80. void onReplyUploadSuccess(String[] idArray);
  81. /**
  82. * ERP提交公共询价单之后,更新平台状态,让公共询价服务中心询价单不能进行报价操作
  83. *
  84. * @author hejq
  85. * @date 2018-01-14 12:20
  86. * @param inquiries 询价信息
  87. */
  88. void updateInquiryStatus(List<Inquiry> inquiries);
  89. /**
  90. * ERP对报价信息的采纳状态上传到公共询价服务中心
  91. *
  92. * @author hejq
  93. * @date 2018-01-14 12:24
  94. * @param decides 采纳信息
  95. */
  96. void onReplyDecide(List<InquiryDecide> decides, Long enuu);
  97. /**
  98. * 将ERP的报价采纳信息转为公共询价服务中心需要的信息
  99. *
  100. * @author hejq
  101. * @date 2018-01-14 12:26
  102. * @param decides erp报价采纳信息
  103. */
  104. List<PublicInquiryItem> convertInquiryDecide(List<InquiryDecide> decides);
  105. /**
  106. * 买家ERP作废询价单后,修改公共询价服务中心里面的状态
  107. *
  108. * @author hejq
  109. * @date 2018-01-14 12:28
  110. * @param inquiries 询价信息
  111. * @param enuu 企业UU
  112. */
  113. void onReplyInvalid(List<Inquiry> inquiries, Long enuu);
  114. /**
  115. * 将公共询价列表转成需要报价的询价单,类型是公共询价
  116. *
  117. * @author hejq
  118. * @date 2018-01-14 14:46
  119. * @param id 询价明细id
  120. * @param enuu 报价企业UU
  121. * @param useruu 报价人uu
  122. * @return
  123. */
  124. ModelMap transtoInquiry(Long id, Long enuu, Long useruu);
  125. /**
  126. * 通过分页参数和过滤条件查询报价信息
  127. *
  128. * @author hejq
  129. * @date 2018-01-17 10:30
  130. * @param info 分页参数
  131. * @param filter 过滤条件
  132. * @return
  133. */
  134. Page<PublicInquiryItemInfo> findByPageInfo(PageInfo info, SearchFilter filter);
  135. /**
  136. * 商城获取采纳列表
  137. * @param info
  138. * @param filter
  139. * @return
  140. */
  141. Page<PublicInquiryItemInfo> findListByPageInfo(PageInfo info, SearchFilter filter);
  142. /**
  143. * 通过分页参数和过滤条件查询公共询价价信息
  144. * @author hejq
  145. * @date 2018-01-18 15:32
  146. * @param info
  147. * @param filter
  148. * @return
  149. */
  150. IPage<PurcInquiryItemInfo> findTodoByPageInfo(PageInfo info, SearchFilter filter);
  151. /**
  152. * 根据传入条件封装查询条件
  153. *
  154. * @param pageInfo 分页参数
  155. * @param state 过滤条件
  156. * @return
  157. */
  158. PageInfo covert(PageInfo pageInfo, String state);
  159. /**
  160. * 获取公共询价列表信息
  161. *
  162. * @param enuu 当前企业UU
  163. * @param size 大小
  164. * @return
  165. */
  166. List<InquiryMessage> getMessageList(Long enuu, Integer size);
  167. /**
  168. * 消息推送
  169. *
  170. * @param inquiryItems 询价明细
  171. * @param sourceApp 应用来源
  172. * @throws Exception
  173. */
  174. void notify(List<PurcInquiryItem> inquiryItems, String sourceApp) throws Exception;
  175. /**
  176. * 通过id查询询价信息
  177. *
  178. * @param id 公共询价主表id
  179. * @return
  180. */
  181. PurcInquiry findInquiryById(Long id);
  182. /**
  183. * 商城-采购排行榜
  184. * @return
  185. */
  186. List<Map<String, Object>> findCodeRankingList();
  187. /**
  188. * 通过明细id查询询价详情
  189. *
  190. * @param itemId 明细id
  191. * @return
  192. */
  193. PurcInquiryItemInfo findItemByItemId(Long itemId);
  194. }