MachineService.java 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. package com.iamberry.rent.face.machine;
  2. import java.util.List;
  3. import com.iamberry.exception.ServiceException;
  4. import com.iamberry.wechat.core.entity.ResultMsg;
  5. import com.iamberry.wechat.core.entity.rent.*;
  6. import com.iamberry.wechat.tools.ResponseJson;
  7. /**
  8. * 机器业务暴露接口
  9. * @company 深圳爱贝源科技有限公司
  10. * @website www.iamberry.com
  11. * @author 献
  12. * @tel 18271840547
  13. * @date 2017年3月9日
  14. */
  15. public interface MachineService {
  16. /**
  17. * 激活机器 - 扫描二维码激活, 必须有openid 以及其deviceid参数, 整个过程不包含返利
  18. * @param machineInfo
  19. * @return
  20. * @author 献
  21. * @throws ServiceException
  22. * @Time 2017年3月10日
  23. */
  24. int initBefore(MachineInfo machineInfo) throws ServiceException;
  25. /**
  26. * 激活返利,在接受到机器上报的数据以后,开始激活返利的操作
  27. * @param openid
  28. * @param deviceId
  29. * @return
  30. * @author 献
  31. * @throws ServiceException
  32. * @Time 2017年4月5日
  33. */
  34. int init(String openid, String deviceId) throws ServiceException;
  35. /**
  36. * 查询机器信息,如果deviceid不能为空,那么查询为单条数据
  37. * @param info
  38. * @return
  39. * @author 献
  40. * @Time 2017年3月10日
  41. */
  42. List<MachineInfo> list(MachineInfo info);
  43. /**
  44. * 同步机器信息(TDS、剩余水量)
  45. * @param info
  46. * @return
  47. * @author 献
  48. * @Time 2017年3月10日
  49. */
  50. Integer syncMachine(MachineInfo info);
  51. /**
  52. * 获取当前用户服务费抵扣券列表
  53. * @Date 2017年3月22日
  54. * @author muzx
  55. * @return
  56. */
  57. ResponseJson listServiceCoupon(String openId, String machineId);
  58. /**
  59. * 为机器续费 - 请求支付
  60. * @param machineRecharge
  61. * @return
  62. * @author 献
  63. * @Time 2017年3月13日
  64. */
  65. ResponseJson requestPay(MachineRecharge machineRecharge, Integer couponId);
  66. /**
  67. * 根据续费记录的订单id - 请求支付
  68. */
  69. ResponseJson rechargeOrderIdPay(String orderId);
  70. /**
  71. * 续费支付回调
  72. * @param orderId
  73. * @return 0 : 失败;其他表示成功
  74. * @author 献
  75. * @Time 2017年3月13日
  76. */
  77. Integer rechargeOrderPayCallback(String orderId, String transactionId);
  78. /**
  79. * 查询续费记录
  80. */
  81. List<MachineRecharge> listRecharge(Integer machineId);
  82. /**
  83. * 后台机器信息列表
  84. * @param machineInfo
  85. * @return
  86. */
  87. List<MachineInfo> selectEquipmentList(MachineInfo machineInfo);
  88. /**
  89. * 后台机器信息总数
  90. * @param machineInfo
  91. * @return
  92. */
  93. Integer selectEquipmentCount(MachineInfo machineInfo);
  94. /**
  95. * 添加机器,注意:只能初始化机器信息
  96. * @param info
  97. * @return
  98. * @author LJK
  99. * @Time 2017年3月16日10:58:27
  100. */
  101. Integer add(MachineInfo info);
  102. /**
  103. * 根据 id 或 orderid 查询单个充值记录
  104. * @date 2017年3月22日
  105. * @author muzx
  106. * @param recharge
  107. * @return
  108. */
  109. MachineRecharge getRechargeByIdOrOrderId(MachineRecharge recharge);
  110. /**
  111. * 订单详情页面送人 将机器分享出去,添加分享记录
  112. * 2017年3月29日
  113. * @author muzx
  114. * @param orderItemId
  115. * @param openId
  116. * @return
  117. */
  118. ResultMsg presentMachine(String orderItemId, String openId);
  119. /**
  120. * 领取他人分享的机器
  121. * 2017年3月29日
  122. * @author muzx
  123. */
  124. ResultMsg receiveMachine(String shareId, String openId);
  125. /**
  126. * 绑定用户和机器的关系
  127. * @param machineId
  128. * @param openId
  129. * @return
  130. * @author 献
  131. * @Time 2017年3月20日
  132. */
  133. int bindMachineToOpenId(String machineId, String openId);
  134. /**
  135. * 根据设备id查询单个设备
  136. * @param machineInfo
  137. * @return
  138. */
  139. MachineInfo selectMachineById(MachineInfo machineInfo);
  140. /**
  141. * 分页查询所有分享机器记录<后台>
  142. * 2017年3月20日
  143. * @author muzx
  144. * @param machineShare
  145. * @return
  146. */
  147. List<MachineShare> listMachineShareAdmin(MachineShare machineShare);
  148. /**
  149. * 查询所有分享机器记录总数<后台>
  150. * 2017年3月20日
  151. * @author muzx
  152. * @return
  153. */
  154. int countMachineShare(MachineShare machineShare);
  155. /**
  156. * 处理存在下一条指令的机器,注意:此方法只下发指令,不参与具体的业务逻辑
  157. * @author 献
  158. * @Time 2017年4月8日
  159. */
  160. void handlerNextCommand();
  161. /**
  162. * 修改机器,根据machineId或deviceid修改,其他不能为空的机器信息
  163. * @param info
  164. * @return
  165. * @author LJK
  166. * @Time 2017年4月7日16:23:53
  167. */
  168. Integer update(MachineInfo info);
  169. /**
  170. * 根据条件查询滤芯更换记录
  171. * @param rentChangeLogs
  172. * @return
  173. */
  174. List<RentChangeLogs> listSelectChangeLogs(RentChangeLogs rentChangeLogs);
  175. /**
  176. * 批量添加滤芯更换记录
  177. * @param list
  178. * @return
  179. */
  180. Integer saveChangeLogs(List<RentChangeLogs> list, RentOrder rentOrder) throws Exception;
  181. /**
  182. * 查询更换滤芯集合
  183. * @param rentChangeLogs
  184. * @return
  185. */
  186. List<RentChangeLogs> listChangeFilterLogs(RentChangeLogs rentChangeLogs);
  187. /**
  188. * 根据条件查询更换滤芯数量
  189. * @param rentChangeLogs
  190. * @return
  191. */
  192. Integer getChangeFilterCount(RentChangeLogs rentChangeLogs);
  193. /**
  194. * 新增比拼水质记录
  195. * @param competeWaterInfo
  196. * @return
  197. */
  198. Integer addCompeteWater(CompeteWaterInfo competeWaterInfo);
  199. /**
  200. * 查询比拼水质记录
  201. * @param shareId
  202. * @return
  203. */
  204. CompeteWaterInfo selectCompeteWater(String shareId);
  205. /**
  206. * 修改滤芯更换记录表
  207. * @param rentChangeLogs
  208. * @return
  209. */
  210. boolean updateChangeLogsById(RentChangeLogs rentChangeLogs);
  211. }