SelfCarServiceController.java 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. package com.jkcredit.invoice.controller.interserver;
  2. import cn.com.taiji.sdk.model.comm.protocol.tts.trade.service.CardTradeModel;
  3. import com.jkcredit.invoice.annotation.LoginRequired;
  4. import com.jkcredit.invoice.annotation.annotationdes.AuthenticationInterceptor;
  5. import com.jkcredit.invoice.model.entity.customer.CustomerCarRec;
  6. import com.jkcredit.invoice.model.entity.user.User;
  7. import com.jkcredit.invoice.service.lowerservice.CheckHasAuthRole;
  8. import com.jkcredit.invoice.service.lowerservice.SelfCarServiceL;
  9. import com.jkcredit.invoice.service.lowerservice.vo.*;
  10. import com.jkcredit.invoice.util.RespR;
  11. import io.swagger.annotations.Api;
  12. import io.swagger.annotations.ApiOperation;
  13. import org.apache.commons.lang3.StringUtils;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.web.bind.annotation.PostMapping;
  16. import org.springframework.web.bind.annotation.RequestBody;
  17. import org.springframework.web.bind.annotation.RequestMapping;
  18. import org.springframework.web.bind.annotation.RestController;
  19. import java.util.ArrayList;
  20. import java.util.List;
  21. @Api(tags = "自有车下游接口")
  22. @RestController
  23. @RequestMapping(value = {"/selfCarService"})
  24. public class SelfCarServiceController {
  25. @Autowired
  26. SelfCarServiceL selfCarService;
  27. @Autowired
  28. private CheckHasAuthRole checkHasAuthRole;
  29. /**
  30. * @param tradeRequestVo
  31. * @return
  32. */
  33. @PostMapping("/getTradeList")
  34. @ApiOperation(value="获取交易Id列表", notes="获取交易Id列表")
  35. @LoginRequired
  36. public RespR getTradeList(@RequestBody TradeRequestVo tradeRequestVo, User user){
  37. checkHasAuthRole.checkCustomerRole(user,tradeRequestVo.getCustomerName());
  38. if(tradeRequestVo.getTradeStatus() ==null){
  39. tradeRequestVo.setTradeStatus(1);
  40. RespR<List<CardTradeModel>> respRbefore = selfCarService.getTradeList(tradeRequestVo);
  41. tradeRequestVo.setTradeStatus(2);
  42. RespR<List<CardTradeModel>> tradeList = selfCarService.getTradeList(tradeRequestVo);
  43. tradeRequestVo.setTradeStatus(3);
  44. RespR<List<CardTradeModel>> listRespR = selfCarService.getTradeList(tradeRequestVo);
  45. //合并展示
  46. List<CardTradeModel> cardTradeModels = new ArrayList<>();
  47. if(respRbefore.getCode() == 0){
  48. cardTradeModels.addAll(respRbefore.getData());
  49. }
  50. if(tradeList.getCode() == 0){
  51. cardTradeModels.addAll(tradeList.getData());
  52. }
  53. if(listRespR.getCode() == 0){
  54. cardTradeModels.addAll(listRespR.getData());
  55. }
  56. return new RespR(cardTradeModels);
  57. }
  58. //合并展示
  59. return selfCarService.getTradeList(tradeRequestVo);
  60. }
  61. /**
  62. * @param invoiceApplVo
  63. * @return
  64. */
  65. @PostMapping("/applInvoice")
  66. @ApiOperation(value="开票申请", notes="开票申请")
  67. @LoginRequired
  68. public RespR applInvoice(@RequestBody InvoiceApplVo invoiceApplVo,User user){
  69. checkHasAuthRole.checkCompanyRole(user,invoiceApplVo.getCompanyName());
  70. return selfCarService.applInvoice(invoiceApplVo);
  71. }
  72. /**
  73. * @param selfCarDueQueryVo
  74. * @return
  75. */
  76. @PostMapping("/getSelfCarInvoicesByTime")
  77. @ApiOperation(value="已开发票查询", notes="已开发票查询")
  78. @LoginRequired
  79. public RespR getSelfCarInvoicesByTime(@RequestBody SelfCarDueQueryVo selfCarDueQueryVo,User user){
  80. checkHasAuthRole.checkCompanyRole(user,selfCarDueQueryVo.getCompanyName());
  81. return selfCarService.getSelfCarInvoicesByTime(selfCarDueQueryVo,null);
  82. }
  83. /**
  84. * @param invoicePackageVo
  85. * @return
  86. */
  87. @PostMapping("/getSelfCarInvoicePackage")
  88. @ApiOperation(value="发票打包下载", notes="发票打包下载")
  89. @LoginRequired
  90. public RespR getSelfCarInvoicePackage(@RequestBody InvoicePackageVo invoicePackageVo,User user){
  91. checkHasAuthRole.checkCustomerRole(user,invoicePackageVo.getCustomerName());
  92. return selfCarService.getInvoicePackge(invoicePackageVo);
  93. }
  94. /**
  95. * @param applQueryInvVo
  96. * @return
  97. */
  98. @PostMapping("/getSelfCarInvoicesByAppl")
  99. @ApiOperation(value="按申请id查询发票", notes="按申请id查询发票")
  100. @LoginRequired
  101. public RespR getSelfCarInvoicesByAppl(ApplQueryInvVo applQueryInvVo){
  102. if(StringUtils.isEmpty(applQueryInvVo.getApplId()) || StringUtils.isEmpty(applQueryInvVo.getCompanyNum()) || StringUtils.isEmpty(applQueryInvVo.getEtcNum())){
  103. return new RespR(false,"参数不能为空");
  104. }
  105. return selfCarService.getSelfCarInvoicesByApplyIds(applQueryInvVo);
  106. }
  107. /**
  108. * @param etcQueryVo
  109. * @return
  110. */
  111. @PostMapping("/customerETCQuery")
  112. @ApiOperation(value="", notes="ETC绑定列表查询")
  113. @LoginRequired
  114. public RespR customeretcquery(@RequestBody EtcQueryVo etcQueryVo, User user){
  115. checkHasAuthRole.checkCustomerRole(user,etcQueryVo.getCustomerName());
  116. return selfCarService.getEtcInfo(etcQueryVo);
  117. }
  118. /**
  119. * @param etcBindVo
  120. * @return
  121. */
  122. @PostMapping("/queryEtcInfo")
  123. @ApiOperation(value="", notes="备案ETC查询")
  124. @LoginRequired
  125. public RespR customerQueryEtcInfo(@RequestBody EtcBindVo etcBindVo,User user){
  126. checkHasAuthRole.checkCustomerRole(user,etcBindVo.getCustomerName());
  127. return selfCarService.queryEtcInfo(etcBindVo);
  128. }
  129. /**
  130. * @param etcBindVo
  131. * @return
  132. */
  133. @PostMapping("/customerETCRec")
  134. @ApiOperation(value="", notes="ETC备案")
  135. @LoginRequired
  136. public RespR customerEtcRec(@RequestBody EtcBindVo etcBindVo, User user){
  137. checkHasAuthRole.checkCompanyRole(user,etcBindVo.getCompanyName());
  138. return selfCarService.customerEtcRec(etcBindVo);
  139. }
  140. /**
  141. * @param etcValidVo
  142. * @return
  143. */
  144. @PostMapping("/customerETCRecValid")
  145. @ApiOperation(value="", notes="ETC备案验证")
  146. @LoginRequired
  147. public RespR customerEtcRecValid(@RequestBody EtcValidVo etcValidVo){
  148. return selfCarService.customerEtcRecValid(etcValidVo);
  149. }
  150. /**
  151. * @param customerCarRecs
  152. * @return
  153. */
  154. @PostMapping("/customerCarUnRec")
  155. @ApiOperation(value="", notes="etc解绑")
  156. @LoginRequired(role = AuthenticationInterceptor.AUTH_ADMIN)
  157. public RespR customerCarUnRec(@RequestBody List<CustomerCarRec> customerCarRecs){
  158. return selfCarService.customerCarUnRec(customerCarRecs);
  159. }
  160. /**
  161. * @param tradeApplyQueryInvVo
  162. * @return
  163. */
  164. @PostMapping("/getApplyQueryByTradeIds")
  165. @ApiOperation(value="按交易查申请", notes="按交易查申请")
  166. @LoginRequired
  167. public RespR getApplyQueryByTradeId(TradeApplyQueryInvVo tradeApplyQueryInvVo){
  168. try {
  169. if(StringUtils.isEmpty(tradeApplyQueryInvVo.getCompanyNum()) || StringUtils.isEmpty(tradeApplyQueryInvVo.getTradeId()) || StringUtils.isEmpty(tradeApplyQueryInvVo.getCardId())){
  170. return new RespR(false,"参数不能为空");
  171. }
  172. List<TradeApplyQueryInvVo> tradeApplyQueryInvVos = new ArrayList<>();
  173. if(!org.springframework.util.StringUtils.isEmpty(tradeApplyQueryInvVo.getCompanyNum()) &&
  174. !org.springframework.util.StringUtils.isEmpty(tradeApplyQueryInvVo.getCardId()) &&
  175. !org.springframework.util.StringUtils.isEmpty(tradeApplyQueryInvVo.getTradeId())){
  176. String [] companyNumArr = tradeApplyQueryInvVo.getCompanyNum().split(",");
  177. String [] cardIdArr = tradeApplyQueryInvVo.getCardId().split(",");
  178. String [] tradeIdArr= tradeApplyQueryInvVo.getTradeId().split(",");
  179. for (int i=0;i<cardIdArr.length;i++){
  180. TradeApplyQueryInvVo tradeApplyQueryInvVoTmp = new TradeApplyQueryInvVo();
  181. tradeApplyQueryInvVoTmp.setCardId(cardIdArr[i]);
  182. if(tradeIdArr!=null && tradeIdArr.length>=i+1){
  183. tradeApplyQueryInvVoTmp.setTradeId(tradeIdArr[i]);
  184. }else{
  185. tradeApplyQueryInvVoTmp.setTradeId("");
  186. }
  187. if(companyNumArr!=null && companyNumArr.length>=i+1){
  188. tradeApplyQueryInvVoTmp.setCompanyNum(companyNumArr[i]);
  189. }else{
  190. tradeApplyQueryInvVoTmp.setCompanyNum("");
  191. }
  192. tradeApplyQueryInvVos.add(tradeApplyQueryInvVoTmp);
  193. }
  194. }
  195. return selfCarService.getApplyQueryByTradeIds(tradeApplyQueryInvVos);
  196. } catch (Exception e){
  197. e.printStackTrace();
  198. return new RespR(false,"查询数据有误,请排查");
  199. }
  200. }
  201. }