VideoMultiService.java 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. package com.tzld.piaoquan.api.service;
  2. import com.alibaba.fastjson.JSONArray;
  3. import com.alibaba.fastjson.JSONObject;
  4. import com.tzld.piaoquan.api.component.ManagerApiService;
  5. import lombok.extern.slf4j.Slf4j;
  6. import org.apache.commons.lang3.StringUtils;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.stereotype.Service;
  9. import org.springframework.util.CollectionUtils;
  10. import java.net.URLEncoder;
  11. import java.util.Objects;
  12. @Slf4j
  13. @Service
  14. public class VideoMultiService {
  15. @Autowired
  16. private ManagerApiService managerApiService;
  17. public String setVideoMultiTitleCoverPagePath(Long videoId, String pageUrl, String title, String coverUrl) {
  18. JSONArray multiTitleList = managerApiService.videoMultiTitleListV2(videoId);
  19. JSONArray multiCoverList = managerApiService.videoMultiCoverListV2(videoId);
  20. if (!CollectionUtils.isEmpty(multiTitleList)) {
  21. Integer titleId = null;
  22. for (int i = 0; i < multiTitleList.size(); i++) {
  23. JSONObject item = multiTitleList.getJSONObject(i);
  24. if (item.getInteger("source") == 0) {
  25. titleId = item.getInteger("id");
  26. break;
  27. }
  28. }
  29. if (Objects.isNull(titleId)) {
  30. for (int i = 0; i < multiTitleList.size(); i++) {
  31. JSONObject item = multiTitleList.getJSONObject(i);
  32. if (title.equals(item.getString("title"))) {
  33. titleId = item.getInteger("id");
  34. break;
  35. }
  36. }
  37. }
  38. try {
  39. if (Objects.nonNull(titleId) && !pageUrl.contains("shareTitleId")) {
  40. pageUrl += URLEncoder.encode("&shareTitleId=" + titleId, "UTF-8");
  41. }
  42. if (Objects.nonNull(title) && !pageUrl.contains("shareTitle")) {
  43. pageUrl += URLEncoder.encode("&shareTitle=" + title, "UTF-8");
  44. }
  45. } catch (Exception e) {
  46. log.error("ThirdPartyPushMessageStrategyV1 insertSmallData setCustomerCoverTitleId Error,data:", e);
  47. }
  48. }
  49. if (!CollectionUtils.isEmpty(multiCoverList)) {
  50. Integer coverId = null;
  51. for (int i = 0; i < multiCoverList.size(); i++) {
  52. JSONObject item = multiCoverList.getJSONObject(i);
  53. if (item.getInteger("source") == 0) {
  54. coverId = item.getInteger("id");
  55. break;
  56. }
  57. }
  58. if (Objects.isNull(coverId)) {
  59. for (int i = 0; i < multiCoverList.size(); i++) {
  60. JSONObject item = multiCoverList.getJSONObject(i);
  61. if (coverUrl.equals(item.getString("coverUrl"))) {
  62. coverId = item.getInteger("id");
  63. break;
  64. }
  65. }
  66. }
  67. try {
  68. if (Objects.nonNull(coverId) && !pageUrl.contains("shareImageId")) {
  69. pageUrl += URLEncoder.encode("&shareImageId=" + coverId, "UTF-8");
  70. }
  71. if (StringUtils.isNotEmpty(coverUrl) && !pageUrl.contains("shareImageUrl")) {
  72. pageUrl += URLEncoder.encode("&shareImageUrl=" + URLEncoder.encode(coverUrl, "UTF-8"), "UTF-8");
  73. }
  74. } catch (Exception e) {
  75. log.error("ThirdPartyPushMessageStrategyV1 insertSmallData setCustomerCoverTitleId Error,data:", e);
  76. }
  77. }
  78. return pageUrl;
  79. }
  80. }