소스 검색

统一状态枚举并新增日志上传能力

wangyunpeng 2 주 전
부모
커밋
e46baf2750
25개의 변경된 파일528개의 추가작업 그리고 25개의 파일을 삭제
  1. 3 0
      api-module/src/main/java/com/tzld/piaoquan/api/common/enums/ExceptionEnum.java
  2. 31 0
      api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/DeletedStatusEnum.java
  3. 31 0
      api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/PlanStatusEnum.java
  4. 33 0
      api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/VideoRecentNotUsedEnum.java
  5. 29 0
      api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/VideoSourceEnum.java
  6. 31 0
      api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/VideoStatusEnum.java
  7. 45 0
      api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/VideoTagEnum.java
  8. 23 0
      api-module/src/main/java/com/tzld/piaoquan/api/controller/contentplatform/LoghubController.java
  9. 15 0
      api-module/src/main/java/com/tzld/piaoquan/api/feign/LogCenterFeign.java
  10. 3 2
      api-module/src/main/java/com/tzld/piaoquan/api/job/contentplatform/ContentPlatformDatastatJob.java
  11. 2 2
      api-module/src/main/java/com/tzld/piaoquan/api/job/wecom/thirdpart/WeComCreateRoomJob.java
  12. 9 0
      api-module/src/main/java/com/tzld/piaoquan/api/model/param/contentplatform/LogUploadParam.java
  13. 15 0
      api-module/src/main/java/com/tzld/piaoquan/api/service/LoghubService.java
  14. 8 5
      api-module/src/main/java/com/tzld/piaoquan/api/service/contentplatform/impl/ContentPlatformCooperateAccountServiceImpl.java
  15. 3 2
      api-module/src/main/java/com/tzld/piaoquan/api/service/contentplatform/impl/ContentPlatformNoticeServiceImpl.java
  16. 5 7
      api-module/src/main/java/com/tzld/piaoquan/api/service/contentplatform/impl/ContentPlatformPlanServiceImpl.java
  17. 2 1
      api-module/src/main/java/com/tzld/piaoquan/api/service/contentplatform/impl/ContentPlatformSettingServiceImpl.java
  18. 4 3
      api-module/src/main/java/com/tzld/piaoquan/api/service/contentplatform/impl/ContentPlatformUploadContentServiceImpl.java
  19. 84 0
      api-module/src/main/java/com/tzld/piaoquan/api/service/impl/LoghubServiceImpl.java
  20. 3 1
      api-module/src/main/resources/application-dev.properties
  21. 3 1
      api-module/src/main/resources/application-prod.properties
  22. 3 1
      api-module/src/main/resources/application-test.properties
  23. 80 0
      common-module/src/main/java/com/tzld/piaoquan/growth/common/common/base/BaseLogInfoDTO.java
  24. 37 0
      common-module/src/main/java/com/tzld/piaoquan/growth/common/common/base/CommonLogRequest.java
  25. 26 0
      common-module/src/main/java/com/tzld/piaoquan/growth/common/common/base/LogDetailInfo.java

+ 3 - 0
api-module/src/main/java/com/tzld/piaoquan/api/common/enums/ExceptionEnum.java

@@ -67,6 +67,9 @@ public enum ExceptionEnum {
     VIDEO_MULTI_COVER_LIST_FAILED(6011, "视频多封面列表获取失败"),
     VIDEO_MULTI_TITLE_LIST_FAILED(6012, "视频多标题列表获取失败"),
 
+    // 用户收藏视频
+    VIDEO_NOT_EXIST(7001, "视频不存在"),
+
     // 自动回复
     CGI_REPLY_BUCKET_DATA_NOT_FOUND(10000, "自动回复数据不存在"),
     CGI_REPLY_BUCKET_DATA_NOT_AUTO_REPLY(10001, "非自动回复数据"),

+ 31 - 0
api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/DeletedStatusEnum.java

@@ -0,0 +1,31 @@
+package com.tzld.piaoquan.api.common.enums.contentplatform;
+
+import lombok.Getter;
+
+@Getter
+public enum DeletedStatusEnum {
+    NOT_DELETED(0, "未删除"),
+    DELETED(1, "已删除"),
+
+    other(999, "其他");
+
+    private final int val;
+    private final String description;
+
+    DeletedStatusEnum(int val, String description) {
+        this.val = val;
+        this.description = description;
+    }
+
+    public static DeletedStatusEnum from(int val) {
+        for (DeletedStatusEnum statusEnum : DeletedStatusEnum.values()) {
+            if (statusEnum.getVal() == val) {
+                return statusEnum;
+            }
+        }
+
+        return other;
+    }
+
+
+}

+ 31 - 0
api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/PlanStatusEnum.java

@@ -0,0 +1,31 @@
+package com.tzld.piaoquan.api.common.enums.contentplatform;
+
+import lombok.Getter;
+
+@Getter
+public enum PlanStatusEnum {
+    DELETED(0, "已删除"),
+    NORMAL(1, "正常"),
+
+    other(999, "其他");
+
+    private final int val;
+    private final String description;
+
+    PlanStatusEnum(int val, String description) {
+        this.val = val;
+        this.description = description;
+    }
+
+    public static PlanStatusEnum from(int val) {
+        for (PlanStatusEnum statusEnum : PlanStatusEnum.values()) {
+            if (statusEnum.getVal() == val) {
+                return statusEnum;
+            }
+        }
+
+        return other;
+    }
+
+
+}

+ 33 - 0
api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/VideoRecentNotUsedEnum.java

@@ -0,0 +1,33 @@
+package com.tzld.piaoquan.api.common.enums.contentplatform;
+
+import lombok.Getter;
+
+@Getter
+public enum VideoRecentNotUsedEnum {
+
+    // 近期未使用 0-历史 1-近30天 2-近14天 3-近7天 4-近3天
+    HISTORY(0, "历史", 0),
+    THIRTY_DAYS(1, "近30天", 30),
+    FOURTEEN_DAYS(2, "近14天", 14),
+    SEVEN_DAYS(3, "近7天", 7),
+    THREE_DAYS(4, "近3天", 3);
+
+    private final Integer val;
+    private final String desc;
+    private final Integer days;
+
+    VideoRecentNotUsedEnum(Integer val, String desc, Integer days) {
+        this.val = val;
+        this.desc = desc;
+        this.days = days;
+    }
+
+    public static VideoRecentNotUsedEnum getByVal(Integer val) {
+        for (VideoRecentNotUsedEnum e : values()) {
+            if (e.getVal().equals(val)) {
+                return e;
+            }
+        }
+        return null;
+    }
+}

+ 29 - 0
api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/VideoSourceEnum.java

@@ -0,0 +1,29 @@
+package com.tzld.piaoquan.api.common.enums.contentplatform;
+
+import lombok.Getter;
+
+@Getter
+public enum VideoSourceEnum {
+    RANK_HOT(0, "大数据热榜"),
+    ACCOUNT_RECOMMEND(1, "猜你喜欢账号视频"),
+
+    other(999, "其他");
+
+    private final int val;
+    private final String description;
+
+
+    VideoSourceEnum(int val, String description) {
+        this.val = val;
+        this.description = description;
+    }
+
+    public static VideoSourceEnum from(int val) {
+        for (VideoSourceEnum sourceEnum : VideoSourceEnum.values()) {
+            if (sourceEnum.getVal() == val) {
+                return sourceEnum;
+            }
+        }
+        return other;
+    }
+}

+ 31 - 0
api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/VideoStatusEnum.java

@@ -0,0 +1,31 @@
+package com.tzld.piaoquan.api.common.enums.contentplatform;
+
+import lombok.Getter;
+
+@Getter
+public enum VideoStatusEnum {
+    DELETED(0, "已删除"),
+    NORMAL(1, "正常"),
+
+    other(999, "其他");
+
+    private final int val;
+    private final String description;
+
+    VideoStatusEnum(int val, String description) {
+        this.val = val;
+        this.description = description;
+    }
+
+    public static VideoStatusEnum from(int val) {
+        for (VideoStatusEnum statusEnum : VideoStatusEnum.values()) {
+            if (statusEnum.getVal() == val) {
+                return statusEnum;
+            }
+        }
+
+        return other;
+    }
+
+
+}

+ 45 - 0
api-module/src/main/java/com/tzld/piaoquan/api/common/enums/contentplatform/VideoTagEnum.java

@@ -0,0 +1,45 @@
+package com.tzld.piaoquan.api.common.enums.contentplatform;
+
+import lombok.Getter;
+
+@Getter
+public enum VideoTagEnum {
+    /**
+     * 票圈受欢迎
+     */
+    PLATFORM(1, "票圈受欢迎"),
+    /**
+     * 同类用户喜欢
+     */
+    TYPE(2, "同类用户喜欢"),
+    /**
+     * 你的用户爱看
+     */
+    CHANNEL(3, "你的用户爱看"),
+    /**
+     * 猜TA想看
+     */
+    ACCOUNT(4, "猜TA想看"),
+
+
+    other(999, "其他");
+
+    // 1:票圈受欢迎, 2:同类用户喜欢, 3:你的用户爱看, 4:猜TA想看
+    private final int val;
+    private final String tag;
+
+    VideoTagEnum(int val, String tag) {
+        this.val = val;
+        this.tag = tag;
+    }
+
+    public static VideoTagEnum from(int val) {
+        for (VideoTagEnum tagEnum : VideoTagEnum.values()) {
+            if (tagEnum.getVal() == val) {
+                return tagEnum;
+            }
+        }
+
+        return other;
+    }
+}

+ 23 - 0
api-module/src/main/java/com/tzld/piaoquan/api/controller/contentplatform/LoghubController.java

@@ -0,0 +1,23 @@
+package com.tzld.piaoquan.api.controller.contentplatform;
+
+
+import com.tzld.piaoquan.api.model.param.contentplatform.LogUploadParam;
+import com.tzld.piaoquan.api.service.LoghubService;
+import com.tzld.piaoquan.growth.common.common.base.CommonResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+@RestController
+@RequestMapping("/contentPlatform/logHub")
+@CrossOrigin(origins = "*")
+public class LoghubController {
+
+    @Autowired
+    LoghubService loghubService;
+
+    @PostMapping("/upload")
+    public CommonResponse<Void> logUpload(@RequestBody LogUploadParam param) {
+        loghubService.logUploadByKey(param.getData(), param.getKey());
+        return CommonResponse.success();
+    }
+}

+ 15 - 0
api-module/src/main/java/com/tzld/piaoquan/api/feign/LogCenterFeign.java

@@ -0,0 +1,15 @@
+package com.tzld.piaoquan.api.feign;
+
+import com.tzld.piaoquan.growth.common.common.base.CommonResponse;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+
+@FeignClient(value = "log-center", url = "${api-gateway.feign.url:}", path = "/log-center")
+public interface LogCenterFeign {
+
+    @RequestMapping(value = "/log/logUpload", method = RequestMethod.POST)
+    CommonResponse logUpload(@RequestBody String request);
+
+}

+ 3 - 2
api-module/src/main/java/com/tzld/piaoquan/api/job/contentplatform/ContentPlatformDatastatJob.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.aliyun.odps.data.Record;
 import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
 import com.google.common.collect.Lists;
+import com.tzld.piaoquan.api.common.enums.contentplatform.AccountStatusEnum;
 import com.tzld.piaoquan.api.common.enums.contentplatform.BussinessTypeEnum;
 import com.tzld.piaoquan.api.component.AigcApiService;
 import com.tzld.piaoquan.api.dao.mapper.contentplatform.*;
@@ -620,13 +621,13 @@ public class ContentPlatformDatastatJob {
 
     private List<ContentPlatformAccount> getAllAccount() {
         ContentPlatformAccountExample example = new ContentPlatformAccountExample();
-        example.createCriteria().andStatusEqualTo(1);
+        example.createCriteria().andStatusEqualTo(AccountStatusEnum.NORMAL.getVal());
         return accountMapper.selectByExample(example);
     }
 
     private List<ContentPlatformGzhAccount> getAllGzhAccount() {
         ContentPlatformGzhAccountExample example = new ContentPlatformGzhAccountExample();
-        example.createCriteria().andStatusEqualTo(1);
+        example.createCriteria().andStatusEqualTo(AccountStatusEnum.NORMAL.getVal());
         return gzhAccountMapper.selectByExample(example);
     }
 

+ 2 - 2
api-module/src/main/java/com/tzld/piaoquan/api/job/wecom/thirdpart/WeComCreateRoomJob.java

@@ -149,7 +149,7 @@ public class WeComCreateRoomJob {
                                List<ThirdPartWeComStaffUser> staffUserList,
                                Integer roomNum) {
         Iterator<ThirdPartWeComStaffUser> iterator = staffUserList.iterator();
-        // todo createRoom 暂时每次任务仅创建一个群
+        // createRoom 暂时每次任务仅创建一个群
         //while (iterator.hasNext()) {
         List<Long> vids = new ArrayList<>();
         List<ThirdPartWeComStaffUser> addUserList = new ArrayList<>();
@@ -206,7 +206,7 @@ public class WeComCreateRoomJob {
             setRoomAntiRequest.setAntiIds(antiSpamRuleList.stream().map(AntiSpamRuleResponse.AntiSpamRule::getId).collect(Collectors.toList()));
             apiClient.setRoomAnti(setRoomAntiRequest);
         }
-        // todo createRoom 设置管理员
+        // createRoom 设置管理员
         //apiClient.addRoomAdmins();
     }
 

+ 9 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/param/contentplatform/LogUploadParam.java

@@ -0,0 +1,9 @@
+package com.tzld.piaoquan.api.model.param.contentplatform;
+
+import lombok.Data;
+
+@Data
+public class LogUploadParam {
+    private String key;
+    private Object data;
+}

+ 15 - 0
api-module/src/main/java/com/tzld/piaoquan/api/service/LoghubService.java

@@ -0,0 +1,15 @@
+package com.tzld.piaoquan.api.service;
+
+
+/**
+ * 日志中心接口
+ *
+ * @author liuzhiheng
+ * @version 1.0
+ * @date 2018年11月2日 下午4:58:02
+ */
+public interface LoghubService {
+
+    void logUploadByKey(Object data,String key);
+
+}

+ 8 - 5
api-module/src/main/java/com/tzld/piaoquan/api/service/contentplatform/impl/ContentPlatformCooperateAccountServiceImpl.java

@@ -2,6 +2,8 @@ package com.tzld.piaoquan.api.service.contentplatform.impl;
 
 import com.alibaba.fastjson.JSONObject;
 import com.tzld.piaoquan.api.common.enums.ExceptionEnum;
+import com.tzld.piaoquan.api.common.enums.contentplatform.AccountStatusEnum;
+import com.tzld.piaoquan.api.common.enums.contentplatform.PlanStatusEnum;
 import com.tzld.piaoquan.api.common.exception.CommonException;
 import com.tzld.piaoquan.api.component.AigcApiService;
 import com.tzld.piaoquan.api.dao.mapper.contentplatform.ContentPlatformGzhAccountMapper;
@@ -115,7 +117,7 @@ public class ContentPlatformCooperateAccountServiceImpl implements ContentPlatfo
             gzhAccountMapper.insertSelective(account);
         } else {
             account.setId(param.getId());
-            account.setStatus(1);
+            account.setStatus(AccountStatusEnum.NORMAL.getVal());
             gzhAccountMapper.updateByPrimaryKeySelective(account);
         }
     }
@@ -168,7 +170,7 @@ public class ContentPlatformCooperateAccountServiceImpl implements ContentPlatfo
         }
         ContentPlatformGzhAccount gzhAccount = new ContentPlatformGzhAccount();
         gzhAccount.setId(id);
-        gzhAccount.setStatus(0);
+        gzhAccount.setStatus(AccountStatusEnum.FORBIDDEN.getVal());
         gzhAccount.setUpdateTimestamp(System.currentTimeMillis());
         gzhAccountMapper.updateByPrimaryKeySelective(gzhAccount);
     }
@@ -195,7 +197,8 @@ public class ContentPlatformCooperateAccountServiceImpl implements ContentPlatfo
     @Override
     public List<ContentPlatformGzhAccount> getCooperateAccountListByGhIds(Long loginAccountId, List<String> ghIds) {
         ContentPlatformGzhAccountExample gzhAccountExample = new ContentPlatformGzhAccountExample();
-        gzhAccountExample.createCriteria().andCreateAccountIdEqualTo(loginAccountId).andGhIdIn(ghIds).andStatusEqualTo(1);
+        gzhAccountExample.createCriteria().andCreateAccountIdEqualTo(loginAccountId).andGhIdIn(ghIds)
+                .andStatusEqualTo(AccountStatusEnum.NORMAL.getVal());
         return gzhAccountMapper.selectByExample(gzhAccountExample);
     }
 
@@ -248,7 +251,7 @@ public class ContentPlatformCooperateAccountServiceImpl implements ContentPlatfo
     @Override
     public ContentPlatformGzhAccount getGzhAccount(String ghId) {
         ContentPlatformGzhAccountExample example = new ContentPlatformGzhAccountExample();
-        example.createCriteria().andGhIdEqualTo(ghId).andStatusEqualTo(1);
+        example.createCriteria().andGhIdEqualTo(ghId).andStatusEqualTo(PlanStatusEnum.NORMAL.getVal());
         List<ContentPlatformGzhAccount> accountList = gzhAccountMapper.selectByExample(example);
         if (CollectionUtils.isNotEmpty(accountList)) {
             return accountList.get(0);
@@ -259,7 +262,7 @@ public class ContentPlatformCooperateAccountServiceImpl implements ContentPlatfo
     @Override
     public List<ContentPlatformGzhAccount> getAccountListByCreatorId(Long creatorId) {
         ContentPlatformGzhAccountExample example = new ContentPlatformGzhAccountExample();
-        example.createCriteria().andCreateAccountIdEqualTo(creatorId).andStatusEqualTo(1);
+        example.createCriteria().andCreateAccountIdEqualTo(creatorId).andStatusEqualTo(PlanStatusEnum.NORMAL.getVal());
         return gzhAccountMapper.selectByExample(example);
     }
 }

+ 3 - 2
api-module/src/main/java/com/tzld/piaoquan/api/service/contentplatform/impl/ContentPlatformNoticeServiceImpl.java

@@ -1,5 +1,6 @@
 package com.tzld.piaoquan.api.service.contentplatform.impl;
 
+import com.tzld.piaoquan.api.common.enums.contentplatform.PlanStatusEnum;
 import com.tzld.piaoquan.api.dao.mapper.contentplatform.ContentPlatformIllegalMsgMapper;
 import com.tzld.piaoquan.api.model.config.LoginUserContext;
 import com.tzld.piaoquan.api.model.param.contentplatform.NoticeListParam;
@@ -53,7 +54,7 @@ public class ContentPlatformNoticeServiceImpl implements ContentPlatformNoticeSe
     public Long getNotReadCount() {
         ContentPlatformAccount loginAccount = LoginUserContext.getUser();
         ContentPlatformIllegalMsgExample example = new ContentPlatformIllegalMsgExample();
-        example.createCriteria().andAccountIdEqualTo(loginAccount.getId()).andStatusEqualTo(0);
+        example.createCriteria().andAccountIdEqualTo(loginAccount.getId()).andStatusEqualTo(PlanStatusEnum.DELETED.getVal());
         return msgMapper.countByExample(example);
     }
 
@@ -70,7 +71,7 @@ public class ContentPlatformNoticeServiceImpl implements ContentPlatformNoticeSe
     public void noticeReadAll() {
         ContentPlatformAccount loginAccount = LoginUserContext.getUser();
         ContentPlatformIllegalMsgExample example = new ContentPlatformIllegalMsgExample();
-        example.createCriteria().andAccountIdEqualTo(loginAccount.getId()).andStatusEqualTo(0);
+        example.createCriteria().andAccountIdEqualTo(loginAccount.getId()).andStatusEqualTo(PlanStatusEnum.DELETED.getVal());
         ContentPlatformIllegalMsg record = new ContentPlatformIllegalMsg();
         record.setStatus(1);
         record.setUpdateTimestamp(System.currentTimeMillis());

+ 5 - 7
api-module/src/main/java/com/tzld/piaoquan/api/service/contentplatform/impl/ContentPlatformPlanServiceImpl.java

@@ -4,9 +4,7 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.google.common.collect.Lists;
 import com.tzld.piaoquan.api.common.enums.ExceptionEnum;
-import com.tzld.piaoquan.api.common.enums.contentplatform.ContentPlatformGzhPlanTypeEnum;
-import com.tzld.piaoquan.api.common.enums.contentplatform.PublishStageEnum;
-import com.tzld.piaoquan.api.common.enums.contentplatform.QwPlanTypeEnum;
+import com.tzld.piaoquan.api.common.enums.contentplatform.*;
 import com.tzld.piaoquan.api.common.exception.CommonException;
 import com.tzld.piaoquan.api.component.*;
 import com.tzld.piaoquan.api.dao.mapper.contentplatform.*;
@@ -259,7 +257,7 @@ public class ContentPlatformPlanServiceImpl implements ContentPlatformPlanServic
         if (Objects.isNull(plan)) {
             throw new CommonException(ExceptionEnum.QW_PLAN_NOT_EXISTS);
         }
-        plan.setStatus(0);
+        plan.setStatus(PlanStatusEnum.DELETED.getVal());
         plan.setUpdateTimestamp(System.currentTimeMillis());
         qwPlanMapper.updateByPrimaryKeySelective(plan);
     }
@@ -573,14 +571,14 @@ public class ContentPlatformPlanServiceImpl implements ContentPlatformPlanServic
     @Override
     public List<ContentPlatformGzhPlan> getGzhPlanListByCooperateAccountId(Long accountId) {
         ContentPlatformGzhPlanExample example = new ContentPlatformGzhPlanExample();
-        example.createCriteria().andAccountIdEqualTo(accountId).andStatusEqualTo(1);
+        example.createCriteria().andAccountIdEqualTo(accountId).andStatusEqualTo(PlanStatusEnum.NORMAL.getVal());
         return gzhPlanMapper.selectByExample(example);
     }
 
     @Override
     public List<ContentPlatformGzhPlan> getGzhPlanListByCreateAccountId(Long createAccountId) {
         ContentPlatformGzhPlanExample example = new ContentPlatformGzhPlanExample();
-        example.createCriteria().andCreateAccountIdEqualTo(createAccountId).andStatusEqualTo(1);
+        example.createCriteria().andCreateAccountIdEqualTo(createAccountId).andStatusEqualTo(PlanStatusEnum.NORMAL.getVal());
         return gzhPlanMapper.selectByExample(example);
     }
 
@@ -918,7 +916,7 @@ public class ContentPlatformPlanServiceImpl implements ContentPlatformPlanServic
             ContentPlatformAccount account = accountService.getAccountById(gzhAccount.getCreateAccountId());
             ContentPlatformGzhPlanExample example = new ContentPlatformGzhPlanExample();
             example.createCriteria().andCreateAccountIdEqualTo(account.getId()).andAccountIdEqualTo(gzhAccount.getId())
-                    .andStatusEqualTo(1).andTypeEqualTo(ContentPlatformGzhPlanTypeEnum.FWH_PUSH.getVal());
+                    .andStatusEqualTo(AccountStatusEnum.NORMAL.getVal()).andTypeEqualTo(ContentPlatformGzhPlanTypeEnum.FWH_PUSH.getVal());
             List<ContentPlatformGzhPlan> list = gzhPlanMapper.selectByExample(example);
             if (CollectionUtils.isNotEmpty(list)) {
                 return account.getChannel();

+ 2 - 1
api-module/src/main/java/com/tzld/piaoquan/api/service/contentplatform/impl/ContentPlatformSettingServiceImpl.java

@@ -1,6 +1,7 @@
 package com.tzld.piaoquan.api.service.contentplatform.impl;
 
 import com.tzld.piaoquan.api.common.enums.ExceptionEnum;
+import com.tzld.piaoquan.api.common.enums.contentplatform.AccountStatusEnum;
 import com.tzld.piaoquan.api.common.exception.CommonException;
 import com.tzld.piaoquan.api.component.VideoApiService;
 import com.tzld.piaoquan.api.dao.mapper.contentplatform.ContentPlatformPqAccountRelMapper;
@@ -68,7 +69,7 @@ public class ContentPlatformSettingServiceImpl implements ContentPlatformSetting
     @Override
     public ContentPlatformPqAccountRel getPqAccountRel(Long accountId) {
         ContentPlatformPqAccountRelExample example = new ContentPlatformPqAccountRelExample();
-        example.createCriteria().andAccountIdEqualTo(accountId).andStatusEqualTo(1);
+        example.createCriteria().andAccountIdEqualTo(accountId).andStatusEqualTo(AccountStatusEnum.NORMAL.getVal());
         List<ContentPlatformPqAccountRel> pqAccountRelList = pqAccountRelMapper.selectByExample(example);
         if (CollectionUtils.isEmpty(pqAccountRelList)) {
             return null;

+ 4 - 3
api-module/src/main/java/com/tzld/piaoquan/api/service/contentplatform/impl/ContentPlatformUploadContentServiceImpl.java

@@ -1,6 +1,7 @@
 package com.tzld.piaoquan.api.service.contentplatform.impl;
 
 import com.tzld.piaoquan.api.common.enums.ExceptionEnum;
+import com.tzld.piaoquan.api.common.enums.contentplatform.DeletedStatusEnum;
 import com.tzld.piaoquan.api.common.enums.contentplatform.UploadVideoAuditStatusEnum;
 import com.tzld.piaoquan.api.common.exception.CommonException;
 import com.tzld.piaoquan.api.component.VideoApiService;
@@ -139,7 +140,7 @@ public class ContentPlatformUploadContentServiceImpl implements ContentPlatformU
         if (checkVideoCited(uploadVideo)) {
             throw new CommonException(ExceptionEnum.VIDEO_CITED);
         }
-        uploadVideo.setIsDelete(1);
+        uploadVideo.setIsDelete(DeletedStatusEnum.DELETED.getVal());
         uploadVideo.setUpdateTimestamp(System.currentTimeMillis());
         uploadVideoMapper.updateByPrimaryKeySelective(uploadVideo);
         // 调用删除视频接口
@@ -222,7 +223,7 @@ public class ContentPlatformUploadContentServiceImpl implements ContentPlatformU
             criteria.andTitleLike("%" + param.getTitle() + "%");
         }
         criteria.andCreateAccountIdEqualTo(accountId);
-        criteria.andIsDeleteEqualTo(0);
+        criteria.andIsDeleteEqualTo(DeletedStatusEnum.NOT_DELETED.getVal());
         return uploadVideoMapper.countByExample(example);
     }
 
@@ -236,7 +237,7 @@ public class ContentPlatformUploadContentServiceImpl implements ContentPlatformU
             criteria.andTitleLike("%" + param.getTitle() + "%");
         }
         criteria.andCreateAccountIdEqualTo(id);
-        criteria.andIsDeleteEqualTo(0);
+        criteria.andIsDeleteEqualTo(DeletedStatusEnum.NOT_DELETED.getVal());
         example.setOrderByClause("create_timestamp desc");
         example.setPage(new Page<>(param.getPageNum(), param.getPageSize()));
         return uploadVideoMapper.selectByExample(example);

+ 84 - 0
api-module/src/main/java/com/tzld/piaoquan/api/service/impl/LoghubServiceImpl.java

@@ -0,0 +1,84 @@
+package com.tzld.piaoquan.api.service.impl;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.tzld.commons.aliyun.log.AliyunLogManager;
+import com.tzld.piaoquan.api.feign.LogCenterFeign;
+import com.tzld.piaoquan.api.service.LoghubService;
+import com.tzld.piaoquan.growth.common.common.base.BaseLogInfoDTO;
+import com.tzld.piaoquan.growth.common.common.base.CommonLogRequest;
+import com.tzld.piaoquan.growth.common.common.base.LogDetailInfo;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.PostConstruct;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ThreadPoolExecutor;
+
+/**
+ * @author ehlxr
+ */
+@Service
+public class LoghubServiceImpl implements LoghubService {
+    private static final Logger log = LoggerFactory.getLogger(LoghubServiceImpl.class);
+    @Autowired
+    private AliyunLogManager aliyunLogManager;
+    @Autowired
+    private ThreadPoolTaskExecutor logHubThreadPool;
+    @Value("${aliyun.log.threadpool.corePoolSize:100}")
+    private int corePoolSize;
+    @Value("${aliyun.log.threadpool.maxPoolSize:100}")
+    private int maxPoolSize;
+    @Value("${aliyun.log.threadpool.keepAliveSeconds:200}")
+    private int keepAliveSeconds;
+    @Value("${aliyun.log.threadpool.queueCapacity:100000}")
+    private int queueCapacity;
+    @Value("${aliyun.log.project:}")
+    private String project;
+
+    @Autowired
+    private LogCenterFeign logCenterFeign;
+
+    @PostConstruct
+    public void init() {
+        logHubThreadPool.setCorePoolSize(corePoolSize);
+        logHubThreadPool.setMaxPoolSize(maxPoolSize);
+        logHubThreadPool.setKeepAliveSeconds(keepAliveSeconds);
+        logHubThreadPool.setQueueCapacity(queueCapacity);
+        logHubThreadPool.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
+    }
+
+    @Override
+    public void logUploadByKey(Object data, String key) {
+        CommonLogRequest<List<JSONObject>> commonLogRequest = new CommonLogRequest<>();
+        BaseLogInfoDTO baseInfo = new BaseLogInfoDTO();
+        List<JSONObject> detail = new ArrayList<>();
+
+        LogDetailInfo logDetailInfo = new LogDetailInfo();
+        logDetailInfo.setLogUploadType(key);
+        JSONObject params = JSONObject.parseObject(JSONObject.toJSONString(data));
+        logDetailInfo.setParams(params);
+
+        detail.add((JSONObject) JSONObject.toJSON(logDetailInfo));
+
+        commonLogRequest.setBaseInfo(baseInfo);
+        commonLogRequest.setDetail(detail);
+        logCenterFeign.logUpload(JSON.toJSONString(commonLogRequest));
+    }
+
+    private void asyncSubmitLog(String project, String logStore, String topic, Map<String, Object> data) {
+        logHubThreadPool.submit(() -> {
+            try {
+                aliyunLogManager.sendLog(project, logStore, topic, data);
+            } catch (Exception e) {
+                log.error("调用阿里云loghub异常", e);
+            }
+        });
+    }
+}

+ 3 - 1
api-module/src/main/resources/application-dev.properties

@@ -26,4 +26,6 @@ feign.client.config.default.logger-level=NONE
 feign.client.config.default.connect-timeout=20000
 feign.client.config.default.read-timeout=20000
 
-eureka.client.serviceUrl.defaultZone=http://deveureka-internal.piaoquantv.com/eureka/
+eureka.client.serviceUrl.defaultZone=http://deveureka-internal.piaoquantv.com/eureka/
+
+api-gateway.feign.url=https://testapi.piaoquantv.com

+ 3 - 1
api-module/src/main/resources/application-prod.properties

@@ -24,4 +24,6 @@ feign.client.config.default.logger-level=NONE
 feign.client.config.default.connect-timeout=20000
 feign.client.config.default.read-timeout=20000
 
-eureka.client.serviceUrl.defaultZone=http://eureka-internal.piaoquantv.com/eureka/
+eureka.client.serviceUrl.defaultZone=http://eureka-internal.piaoquantv.com/eureka/
+
+api-gateway.feign.url=https://api.piaoquantv.com

+ 3 - 1
api-module/src/main/resources/application-test.properties

@@ -26,4 +26,6 @@ feign.client.config.default.logger-level=NONE
 feign.client.config.default.connect-timeout=20000
 feign.client.config.default.read-timeout=20000
 
-eureka.client.serviceUrl.defaultZone=http://testeureka-internal.piaoquantv.com/eureka/
+eureka.client.serviceUrl.defaultZone=http://testeureka-internal.piaoquantv.com/eureka/
+
+api-gateway.feign.url=https://testapi.piaoquantv.com

+ 80 - 0
common-module/src/main/java/com/tzld/piaoquan/growth/common/common/base/BaseLogInfoDTO.java

@@ -0,0 +1,80 @@
+package com.tzld.piaoquan.growth.common.common.base;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class BaseLogInfoDTO {
+
+    /// 用户信息
+    @ApiModelProperty(value = "公共参数-token值")
+    private String token;
+    @ApiModelProperty(value = "公共参数-登录用户ID")
+    private String loginUid;
+
+    /// 应用信息
+    @ApiModelProperty(value = "公共参数-应用版本号")
+    private String appVersionCode;
+    @ApiModelProperty(value = "公共参数-产品代号")
+    private String appType;
+
+    /// 设备信息
+    @ApiModelProperty(value = "公共参数-手机设备的唯一码")
+    private String machineCode;
+    @ApiModelProperty(value = "公共参数-ios,android")
+    private String platform;
+    @ApiModelProperty(value = "公共参数-系统版本(例:ios10.1)")
+    private String systemVersion;
+    @ApiModelProperty(value = "公共参数-手机信息")
+    private String machineInfo;
+    @ApiModelProperty(value = "公共参数-网络类型 WI-FI 5G 4G 3G 2G")
+    private String networkType;
+    @ApiModelProperty(value = "公共参数-客户端ip")
+    private String clientIp;
+
+    // pageSource相关的参数
+    @ApiModelProperty(value = "公共参数-页面来源")
+    private String pageSource;
+
+    // 某次操作相关的参数
+    @ApiModelProperty(value = "公共参数-前端请求时间")
+    private String clientTimestamp;
+    @ApiModelProperty(value = "公共参数-sessionId")
+    private String sessionId;
+    @ApiModelProperty(value = "公共参数-requestId,每次请求客户端生成唯一ID,不超过64位")
+    private String requestId;
+
+    @ApiModelProperty(value = "公共参数-页面分类ID,只在首页分发列表中才有")
+    private String pageCategoryId;
+    @ApiModelProperty(value = "公共参数-root页面来源")
+    private String rootPageSource;
+    @ApiModelProperty(value = "公共参数-root页面分类ID")
+    private String rootPageCategoryId;
+    // 某次操作相关的参数
+    @ApiModelProperty(value = "公共参数-小程序打开类型")
+    private String openType;
+    @ApiModelProperty(value = "公共参数-分享的深度")
+    private String shareDepth;
+    @ApiModelProperty(value = "公共参数-事件ID")
+    private String eventId;
+    @ApiModelProperty(value = "公共参数-视频上报数据,使用后端返回的原样数据")
+    private String videoReportMeta;
+    @ApiModelProperty(value = "公共参数-root页面时间戳")
+    private String rootPageTimestamp;
+    @ApiModelProperty(value = "公共参数-subSessionId")
+    private String subSessionId;
+    @ApiModelProperty(value = "公共参数-returnId")
+    private String returnId;
+
+    private Integer senceType;
+
+    private Integer hotSenceType;
+
+    private String softVersion;
+
+    private String eventIds;
+
+    private String eventInfos;
+
+    private String abExpInfo;
+}

+ 37 - 0
common-module/src/main/java/com/tzld/piaoquan/growth/common/common/base/CommonLogRequest.java

@@ -0,0 +1,37 @@
+package com.tzld.piaoquan.growth.common.common.base;
+
+public class CommonLogRequest<T> {
+
+
+    /**
+     * 基础信息
+     */
+    BaseLogInfoDTO baseInfo;
+    /**
+     * 请求参数
+     */
+    T detail;
+
+
+    public BaseLogInfoDTO getBaseInfo() {
+        return baseInfo;
+    }
+
+    public void setBaseInfo(BaseLogInfoDTO baseInfo) {
+        this.baseInfo = baseInfo;
+    }
+
+    public T getDetail() {
+        return detail;
+    }
+
+    public void setDetail(T detail) {
+        this.detail = detail;
+    }
+
+    @Override
+    public String toString() {
+        return "CommonRequest{" + "baseInfo=" + baseInfo + ", params=" + detail + '}';
+    }
+
+}

+ 26 - 0
common-module/src/main/java/com/tzld/piaoquan/growth/common/common/base/LogDetailInfo.java

@@ -0,0 +1,26 @@
+package com.tzld.piaoquan.growth.common.common.base;
+
+import com.alibaba.fastjson.JSONObject;
+
+public class LogDetailInfo {
+
+    private String logUploadType;
+
+    private JSONObject params;
+
+    public String getLogUploadType() {
+        return logUploadType;
+    }
+
+    public void setLogUploadType(String logUploadType) {
+        this.logUploadType = logUploadType;
+    }
+
+    public JSONObject getParams() {
+        return params;
+    }
+
+    public void setParams(JSONObject params) {
+        this.params = params;
+    }
+}