InsFeeOrderNewService.java 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. package com.ydtech.modules.protocols.service;
  2. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  3. import com.baomidou.mybatisplus.extension.service.IService;
  4. import com.ydtech.modules.admin.model.dto.*;
  5. import com.ydtech.modules.order.entity.vo.CostSettlementExcelVo;
  6. import com.ydtech.modules.order.entity.vo.CostSettlementQueryVo;
  7. import com.ydtech.modules.order.entity.vo.FeeReceivableVo;
  8. import com.ydtech.modules.protocols.entity.po.InsFeeOrderNew;
  9. import java.math.BigDecimal;
  10. import java.util.HashMap;
  11. import java.util.List;
  12. /**
  13. * @author: tz
  14. * @description: 费用计算表 service
  15. * @create: 2024-2-22 15:44:29
  16. */
  17. public interface InsFeeOrderNewService extends IService<InsFeeOrderNew> {
  18. InsFeeOrderNew getInsFeeOrderNewByCompanyId(String companyId);
  19. List<InsFeeOrderNew> getInsFeeOrderNewListByCompanyId(List<String> companyIds);
  20. InsFeeOrderNew getInsFeeOrderEntity(String id);
  21. List<InsFeeOrderNew> getByUserId(String userId);
  22. /**
  23. * @version
  24. * @author: hxl
  25. * @Date: 2024/5/8 15:49
  26. * @Description: 通过用户id查询预收金额的数据 查询 承保状态订单且不在 审核表中的数据
  27. */
  28. List<InsFeeOrderNew> getByUserIdAndOrderStatusAndNoCheck(String userId);
  29. /**
  30. * 更新一级机构管理费用
  31. *
  32. * @param insOrderNo
  33. * @param jqPremium
  34. * @return
  35. */
  36. boolean updateLevelDeptManager(String insOrderNo, BigDecimal jqPremium, BigDecimal syPremium, BigDecimal noPremium);
  37. /**
  38. * @param params 用户id 时间过滤
  39. * @return
  40. */
  41. List<InsFeeOrderNew> getSumWillAmount(HashMap<String, Object> params);
  42. List<InsFeeOrderNew> getSumWillAmountGeneralization(HashMap<String, Object> params);
  43. /**
  44. * @version
  45. * @author: hxl
  46. * @Date: 2024/6/3 12:00
  47. * @Description: 通过类型查询数据
  48. */
  49. List<InsFeeOrderNew> getByUserIdAndOrderStatusAndNoCheckType(String userId, String number);
  50. /**
  51. * @version
  52. * @author: hxl
  53. * @Date: 2024/6/3 14:32
  54. * @Description: 查询跟单明细的数据
  55. */
  56. List<InsFeeOrderNew> getSumWillAmountGeneralizationNew(HashMap<String, Object> params);
  57. /**
  58. * @version
  59. * @author: hxl
  60. * @Date: 2024/6/3 14:41
  61. * @Description: 推广费
  62. */
  63. List<InsFeeOrderNew> getSumWillAmountNew(HashMap<String, Object> params);
  64. /**
  65. * @version
  66. * @author: hxl
  67. * @Date: 2024/6/19 14:21
  68. * @Description: 通过用户id查询推广费
  69. */
  70. Page<MyCollectInAdvanceDto> findMyCollectInAdvanceWillAmountByUserId(Page<MyCollectInAdvanceDto> page, MyCollectInAdvanceQueryDto myCollectInAdvanceQueryDto);
  71. /**
  72. * @version
  73. * @author: hxl
  74. * @Date: 2024/6/19 14:47
  75. * @Description: 通过用户id查询手续费+跟单费
  76. */
  77. Page<MyCollectInAdvanceDto> findMyCollectInAdvanceSumByUserId(Page<MyCollectInAdvanceDto> page, MyCollectInAdvanceQueryDto myCollectInAdvanceQueryDto);
  78. /**
  79. * @version
  80. * @author: hxl
  81. * @Date: 2024/6/19 15:07
  82. * @Description: 通过用户id查询推广费 总条数
  83. */
  84. Long findMyCollectInAdvanceWillAmountByUserIdCount(MyCollectInAdvanceQueryDto myCollectInAdvanceQueryDto);
  85. /**
  86. * @version
  87. * @author: hxl
  88. * @Date: 2024/6/19 15:17
  89. * @Description: 通过用户id查询手续费+跟单费 总条数
  90. */
  91. Long findMyCollectInAdvanceSumByUserIdCount(MyCollectInAdvanceQueryDto myCollectInAdvanceQueryDto);
  92. /**
  93. * @version
  94. * @author: hxl
  95. * @Date: 2024/6/19 17:29
  96. * @Description: 计算推广费总费用
  97. */
  98. BigDecimal findSumWillAmount(MyCollectInAdvanceQueryDto myCollectInAdvanceQueryDto);
  99. /**
  100. * @version
  101. * @author: hxl
  102. * @Date: 2024/6/19 17:30
  103. * @Description: 计算手续费+跟单费 总费用
  104. */
  105. BigDecimal findSumAmount(MyCollectInAdvanceQueryDto myCollectInAdvanceQueryDto);
  106. /**
  107. * @version
  108. * @author: hxl
  109. * @Date: 2024/6/30 15:56
  110. * @Description: 查询车险明细查询
  111. */
  112. Page<ExportExpenditureTypeDetalsDto> findMyInsuranceByUserId(Page<ExportExpenditureTypeDetalsDto> page, MyInsuranceQueryDto myInsuranceQueryDto, List<String> userList);
  113. /**
  114. * @version
  115. * @author: hxl
  116. * @Date: 2024/6/30 17:38
  117. * @Description: 查询推广费统计
  118. */
  119. Page<ExportExpenditureTypeDetalsTGDto> findMyInsuranceTGByUserId(Page<ExportExpenditureTypeDetalsTGDto> page, MyInsuranceTgQueryDto myInsuranceTgQueryDto);
  120. /**
  121. * @version
  122. * @author: hxl
  123. * @Date: 2024/6/30 18:01
  124. * @Description: 导出车险明细
  125. */
  126. List<ExportExpenditureTypeDetalsDto> exportMyInsuranceByUserId(MyInsuranceQueryDto myInsuranceQueryDto, List<String> userList);
  127. /**
  128. * @version
  129. * @author: hxl
  130. * @Date: 2024/6/30 18:02
  131. * @Description: 导出推广费明细
  132. */
  133. List<ExportExpenditureTypeDetalsTGDto> exportMyInsuranceTGByUserId(MyInsuranceTgQueryDto myInsuranceTgQueryDto);
  134. /**
  135. * @version
  136. * @author: hxl
  137. * @Date: 2024/6/30 19:48
  138. * @Description: 预收和实收手续+跟单的总金额
  139. */
  140. BigDecimal findMyAmountYSOrSSCXAmount(MySumAmountQueryDto mySumAmountQueryDto);
  141. /**
  142. * @version
  143. * @author: hxl
  144. * @Date: 2024/6/30 19:48
  145. * @Description: 预收和实收推广费的总金额
  146. */
  147. BigDecimal findMyAmountYSOrSSTGAmount(MySumAmountQueryDto mySumAmountQueryDto);
  148. /**
  149. * @version
  150. * @author: hxl
  151. * @Date: 2024/6/30 19:58
  152. * @Description: 查询用户已提现的金额
  153. */
  154. BigDecimal findMyAmountYTXmount(String userId, String status);
  155. /**
  156. * 获取费用结算导出表的数据
  157. *
  158. * @return
  159. */
  160. List<CostSettlementExcelVo> getCostSettlementExcel(CostSettlementQueryVo costSettlementQueryVo);
  161. /**
  162. * 获取应收费用
  163. *
  164. * @param costSettlementQueryVo
  165. * @return
  166. */
  167. List<FeeReceivableVo> getFeeReceivable(CostSettlementQueryVo costSettlementQueryVo);
  168. /**
  169. * 通过子订单获取费用信息
  170. */
  171. default InsFeeOrderNew getByInsOrderNo(String insOrderNo) {
  172. return lambdaQuery()
  173. .eq(InsFeeOrderNew::getInsOrderNo, insOrderNo)
  174. .one();
  175. }
  176. /**
  177. * @version
  178. * @author: hxl
  179. * @Date: 2024/9/2 11:15
  180. * @Description: 按时间检索
  181. */
  182. BigDecimal findMyAmountYTXmountByDate(String userId, String number, String beginDate, String endDate);
  183. }