OrderNewService.java 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. package com.goafanti.order.service;
  2. import com.goafanti.common.bo.Result;
  3. import com.goafanti.common.model.*;
  4. import com.goafanti.core.mybatis.page.Pagination;
  5. import com.goafanti.order.bo.*;
  6. import javax.servlet.http.HttpServletResponse;
  7. import java.math.BigDecimal;
  8. import java.util.Date;
  9. import java.util.List;
  10. public interface OrderNewService {
  11. /**
  12. * 创建订单
  13. * @param uid
  14. * @param orderType
  15. * @return
  16. */
  17. int createServiceOrder(String uid,Integer userType, Integer orderType,Integer salesType,String channelId,String other);
  18. /**
  19. * 创建项目
  20. * @param t
  21. */
  22. InputAddTask addOrderTask(InputAddTask t);
  23. int addMemberProject(InputAddTask t);
  24. /**
  25. * 修改项目信息
  26. * @param t
  27. */
  28. int updateOrderTask(InputAddTask t);
  29. /**
  30. * 删除项目
  31. * @param id
  32. */
  33. int delectOrderTask(Integer id);
  34. /**
  35. * 项目详情
  36. * @param orderNo
  37. */
  38. List<TOrderTaskBo> selectOrderTask(String orderNo,Integer type);
  39. /**
  40. * 订单提交或保存
  41. * @param t
  42. * @param isSubmit
  43. */
  44. int updateServiceOrder(TOrderNewWithBLOBs t, Integer isSubmit);
  45. /**
  46. * 订单详情
  47. * @param orderNo
  48. */
  49. TOrderNewBo getOrderNewDetail(String orderNo);
  50. /**
  51. * 收款截点编辑
  52. * @param orderDun
  53. */
  54. int createOrderDun(String orderDun,String orderNo);
  55. /**
  56. * 订单列表
  57. */
  58. Pagination<TOrderNewBo> orderNewList(InputOrderNewListBo in);
  59. /**
  60. * 订单审核
  61. * @param orderNo
  62. * @param orderStatus
  63. * @param object
  64. */
  65. int updateOrderNew(String orderNo, Integer orderStatus,String reason,Integer outsource, TOrderOutsource object);
  66. /**
  67. * 催款订单列表
  68. * @param name
  69. * @param orderNo
  70. * @param starTime
  71. * @param endTime
  72. * @param pageNo
  73. * @param pageSize
  74. */
  75. Pagination<outOrderDunListBo> dunOrderNewList(String name, String orderNo,String contractNo, String starTime, String endTime,Integer specially, String aid,
  76. String adminName,String deps,
  77. Integer newStatus,Integer approval,Integer amountStatus,Integer memberType,Integer pageNo, Integer pageSize);
  78. Result exportOrderDunData(String name, String orderNo, String contractNo, String starTime, String endTime, Integer specially, String aid, String adminName,
  79. String depId, Integer newStatus, Integer approval, Integer amountStatus, Integer memberType,
  80. Integer pageNo, Integer pageSize);
  81. /**
  82. * 新增催款记录
  83. */
  84. int createDunLog( String dunId, String dumTime, String remarks, String attUrl);
  85. /**
  86. * 查询催款记录
  87. * @param dunId
  88. */
  89. List<TDunLogListBo> selectDunLogList(String dunId);
  90. /**
  91. * 新增退单
  92. * @param t
  93. */
  94. int addOrderRefund(TOrderRefundWithBLOBs t);
  95. /**
  96. * 特批审核
  97. * @param orderNo
  98. * @param confirm
  99. */
  100. int updateApprovalOrder(String orderNo,Integer confirm,String reason);
  101. /**
  102. * 查看收款截点
  103. * @param orderNo
  104. */
  105. List<TOrderDun> selectOrderDun(String orderNo);
  106. /**
  107. * 退单列表
  108. * @param name
  109. * @param orderNo
  110. * @param starTime
  111. * @param endTime
  112. * @param specially
  113. * @param pageNo
  114. * @param pageSize
  115. */
  116. Pagination<TOrderRefundBo> orderRefundList(String name, String orderNo, String starTime, String endTime, Integer specially,
  117. Integer pageNo, Integer pageSize);
  118. boolean checkOrderMain(TOrderTask t);
  119. boolean chekeOrderStatus(String orderNo);
  120. boolean chekeApprovalOrderStatus(String orderNo);
  121. int deleteOrderNew(String orderNo);
  122. boolean checkOderSettlementAmount(String orderNo);
  123. boolean checkORderTask(String orderNo);
  124. boolean chekeProcessStatus(String orderNo);
  125. int updateOrderOver(String orderNo);
  126. OrderRefundDetailBo orderRefundDetail(String id);
  127. int updateOrderRefund(TOrderRefundWithBLOBs t);
  128. int updatetechnicianBackOrder(String orderNo, String reason);
  129. void addNewDunNoticAndSendEmail(String orderNo, OutNewOrderDunBo o);
  130. /**
  131. *
  132. * @param o
  133. * @param type 0正常催款 1 会员提前2个月催款
  134. */
  135. void addTimingTaskNewDunNoticAndSendEmail( OutNewOrderDunBo o,Integer type);
  136. boolean checkOrderAmount(TOrderNewWithBLOBs t);
  137. int updateFinance(String orderNo, String newFinance);
  138. List<TOrderLogBo> selectOrderLog(String orderNo);
  139. /**
  140. * 发送站内信与邮件
  141. * @param alist 接受者
  142. * @param type 通知类型
  143. * @param o 订单
  144. * @param adminId 发送者
  145. * @param approval 特批
  146. * @param tid 项目编号
  147. */
  148. void pushGeneralSendNoticeAndEmail(List<String> alist, Integer type,TOrderNewBo o,String adminId,Integer approval,Integer tid);
  149. void pushGeneralSendNoticeAndEmail(List<String> alist, Integer type,TOrderNewBo o,String adminId,Integer approval);
  150. int pushOutsourceProjectAudit(TOrderOutsource o);
  151. Pagination<OutArrearsDunListBo> arrearsDunList(InputArrearsDunListBo in);
  152. /**
  153. * 非特批触发订单催款
  154. */
  155. void pushOrderDun(TOrderNew t);
  156. boolean checkOfficialType(TOrderOutsource o);
  157. void updateOrderCostAmount(Integer tid,Integer type);
  158. List<OutStatisticsList> statisticsList(InputStatistics in);
  159. List<OutProvinceStatisticsList> provinceStatisticsList(InputStatistics in);
  160. /**
  161. * 催款触发订单统计欠款与应收款
  162. * @param orderNo 订单编号
  163. * @param settlementAmount 已收金额
  164. * @param date 日期
  165. * @return
  166. */
  167. TOrderMid pushOrderMidDun(String orderNo, BigDecimal settlementAmount, Date date);
  168. TOrderMid pushOrderMidDun(TOrderNew t);
  169. /**
  170. * 发送邮件
  171. * @param type 消息类型
  172. * @param b 订单信息
  173. *
  174. */
  175. void addNotic(Integer type, TOrderNewBo b,String str);
  176. Pagination<TOrderNewBo> statisticsOrderList(InputStatisticsOrderList in);
  177. int updateSalesType(TOrderNew in);
  178. int addTaskMid(InputAddTask inputAddTask);
  179. int addTaskMid(Integer id, String commodityId, String orderNo);
  180. int addTaskMid(Integer id, String commodityId, String orderNo,Integer change);
  181. void pushExamineName(TOrderNew t);
  182. int updateOrderUrl(String orderNo, String contractPictureUrl, String agreementUrl, String serviceContent);
  183. OrderProcessName getProcessName(String orderNo);
  184. void addTTaskMember(Integer id, String serviceLife, String serviceYear, Integer yearSum, String contractTerm);
  185. int updateTag(String orderNo, Integer tag);
  186. void updateAdminUserCountOrder(String aid,Date transferTime);
  187. void financeCountOrderUnauditedSubtraction(TOrderNew use, Integer i);
  188. void orderNewListDownload(InputOrderNewListBo in, HttpServletResponse response);
  189. void pushOrderPublicReleaseCount(TOrderNew e);
  190. List<TOrderNew> selectGetAll();
  191. Object addOperationGuaranteeAudit(String orderNo, Integer type, String reason);
  192. }