syh il y a 5 ans
Parent
commit
55d17b34af

+ 1 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/AdvertiserController.java

@@ -432,7 +432,7 @@ public class AdvertiserController {
 
         OutputStream outputStream = response.getOutputStream();
         String date = DateUtils.formatDate(new Date());
-        HttpUtils.setResponseHeader(response, "爱上消消消日报" + date + ".xls");
+        HttpUtils.setResponseHeader(response, "爱上消消消日报" + date + ".xlsx");
         ExcelWriter excelWriter = EasyExcelFactory.getWriter(outputStream);
         for (int i = 0; i < sheets.size(); i++) {
             Sheet sheet = new Sheet(i + 1, 0, KuaishouXxlEntity.class);

+ 0 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/AgentInfoController.java

@@ -202,7 +202,6 @@ public class AgentInfoController {
         } catch (UnsupportedEncodingException e) {
             e.printStackTrace();
         }
-
         //Step.2 AutoPoi 导出Excel
         ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
         List<AgentInfo> pageList = agentInfoService.list(queryWrapper);

+ 6 - 2
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/MaterialCutFrameController.java

@@ -16,6 +16,7 @@ import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
 import java.util.Arrays;
+import java.util.List;
 
 
 /**
@@ -49,11 +50,14 @@ public class MaterialCutFrameController {
                                                          @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
                                                          @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
                                                          HttpServletRequest req) {
-        Result<IPage<MaterialCutFrame>> result = new Result<IPage<MaterialCutFrame>>();
+        Result<IPage<MaterialCutFrame>> result = new Result<>();
         QueryWrapper<MaterialCutFrame> queryWrapper = QueryGenerator.initQueryWrapper(materialCutFrame, req.getParameterMap());
         queryWrapper.orderByAsc("image_index");
-        Page<MaterialCutFrame> page = new Page<MaterialCutFrame>(pageNo, pageSize);
+        Page<MaterialCutFrame> page = new Page<>(pageNo, pageSize);
+        //TODO 这边代码有bug,先临时紧急处理,后续优化截帧任务
         IPage<MaterialCutFrame> pageList = materialCutFrameService.page(page, queryWrapper);
+        List<MaterialCutFrame> list = materialCutFrameService.getListByVideoSignature(materialCutFrame.getVideoSignature());
+        pageList.setRecords(list);
         result.setSuccess(true);
         result.setResult(pageList);
         return result;

+ 1 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/mapper/xml/AdvertiserMapper.xml

@@ -62,7 +62,7 @@
             and allocation.account_id = #{accountId}
         </if>
         <if test="groupBy != null">
-            group by report.stat_date;
+            group by report.stat_date desc
         </if>
 
     </select>

+ 1 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/service/impl/AdvertiserServiceImpl.java

@@ -115,7 +115,7 @@ public class AdvertiserServiceImpl extends ServiceImpl<AdvertiserMapper, Adverti
     private List<YdPlanAggregateEntity> getYdPlanStatisticInfo(Long projectId, String startDate, String endDate) {
         List<YdPlanAggregateEntity> result = new ArrayList<>();
         List<UserAllocation> allocations = userAllocationService.getByProjectId(projectId, null);
-        if (null != allocations && allocations.size() > 0) {
+        if (null != allocations && !allocations.isEmpty()) {
             allocations.forEach(allocation -> {
                 List<YdPlanAggregateEntity> plans = statisticWeekInfoByAccount(allocation, startDate, endDate);
                 result.addAll(plans);

+ 10 - 8
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/service/impl/ProjectMemberServiceImpl.java

@@ -1,11 +1,11 @@
 package org.jeecg.modules.ctop.service.impl;
 
+import cn.com.ctop.common.module.constant.CtopRoleCodeConstant;
 import cn.com.ctop.common.module.entity.UserAllocation;
 import cn.com.ctop.common.module.mapper.UserAllocationMapper;
 import cn.com.ctop.common.module.service.ISysRoleService;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.CtopAdConstant;
-import cn.com.ctop.common.module.utils.SpringUtils;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.apache.shiro.SecurityUtils;
@@ -33,7 +33,6 @@ import java.util.Map;
  */
 @Service
 public class ProjectMemberServiceImpl extends ServiceImpl<ProjectMemberMapper, ProjectMember> implements IProjectMemberService {
-
     @Autowired
     private ProjectMemberMapper memberMapper;
     @Autowired
@@ -72,7 +71,8 @@ public class ProjectMemberServiceImpl extends ServiceImpl<ProjectMemberMapper, P
     }
 
     //视频报表
-    public List<ProjectMember> getProjects(List<Integer> mediaIds) {
+    @Override
+    public List<ProjectMember> getProjects(List<Integer> mediaIds){
         LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
         String userId = sysUser.getId();
         String roleCode = memberMapper.getRoleCodeByUserId(userId);
@@ -80,16 +80,18 @@ public class ProjectMemberServiceImpl extends ServiceImpl<ProjectMemberMapper, P
 
         //角色权限判断
         List<ProjectMember> projectMemberList = null;
-        if (roleCode.equals("plan") || roleCode.equals("clip") || roleCode.equals("shot") || roleCode.equals("plane") || roleCode.equals("planeLeader")) {
+        if(roleCode.equals("plan") || roleCode.equals("clip") || roleCode.equals("shot") || roleCode.equals("plane")|| roleCode.equals("planeLeader")){
             projectMemberList = memberMapper.designProjects(userId, mediaIds);
-        } else if (roleCode.equals("designTeamLeader")) {
+        }else if( roleCode.equals("designTeamLeader")){
             projectMemberList = memberMapper.designLeaderProjects(companyId, mediaIds);
-        } else if (roleCode.equals("admin")) {
+        }else if(roleCode.equals(CtopRoleCodeConstant.COMMON_ROLE_CODE_ADMIN)){
             projectMemberList = memberMapper.adminProjects(mediaIds);
-        } else if (roleCode.equals("operator") || roleCode.equals("operationAssistant") || roleCode.equals("touTiaoOperationManager")) {
+        }else if(roleCode.equals("operator") || roleCode.equals("operationAssistant") || roleCode.equals("touTiaoOperationManager")||roleCode.equals("huananyunying")){
             projectMemberList = memberMapper.operationProjects(userId, mediaIds);
         }
-
+        if(null == projectMemberList){
+            projectMemberList = new ArrayList<>();
+        }
         return projectMemberList;
     }
 

+ 0 - 4
jeecg-boot-module-system/src/main/java/org/jeecg/modules/performanceappraisal/aa.java

@@ -1,4 +0,0 @@
-package org.jeecg.modules.performanceappraisal;
-
-public class aa {
-}

+ 14 - 0
jeecg-boot-module-system/src/test/java/org/jeecg/SampleTest.java

@@ -1,6 +1,7 @@
 package org.jeecg;
 
 import cn.com.ctop.common.module.entity.BindAccountLogin;
+import cn.com.ctop.common.module.entity.CtopOauthToken;
 import cn.com.ctop.common.module.service.IBindAccountLoginService;
 import cn.com.ctop.common.module.service.ICtopOauthTokenService;
 import cn.com.ctop.common.module.utils.CtopAdConstant;
@@ -9,6 +10,7 @@ import cn.com.ctop.crawler.modules.pangolin.entity.PangolinApp;
 import cn.com.ctop.crawler.modules.pangolin.service.PangolinAppService;
 import cn.com.ctop.crawler.modules.pangolin.service.PangolinCrawlerService;
 import cn.com.ctop.crawler.modules.pangolin.service.PangolinLoginService;
+import cn.com.ctop.kuaishou.modules.batch.service.IKuaiShouDailyReportTaskService;
 import cn.com.ctop.kuaishou.modules.graphql.service.IKuaishouWebInterfaceService;
 import cn.com.ctop.toutiao.modules.report.service.IByteDanceVideoReportDailyService;
 import cn.com.ctop.toutiao.modules.report.service.IBytedanceReportService;
@@ -24,6 +26,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
+import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -190,6 +193,17 @@ public class SampleTest {
             }
         }
     }
+
+    @Autowired
+    private IKuaiShouDailyReportTaskService dailyReportTaskService;
+    @Test
+    public void testLoadKuaishouData(){
+        CtopOauthToken token = oauthTokenService.getTokenByAccountId(4801739L);
+        for(int i=0;i<50;i++){
+            Date startDate = DateUtils.addDay(new Date(),-(i+30));
+            dailyReportTaskService.getTaskList(token.getAccountId(), token.getAccessToken(), DateUtils.formatDate(startDate));
+        }
+    }
 }
 
 

+ 4 - 0
module-common/src/main/java/cn/com/ctop/common/module/mapper/MaterialCutFrameMapper.java

@@ -2,6 +2,9 @@ package cn.com.ctop.common.module.mapper;
 
 import cn.com.ctop.common.module.entity.MaterialCutFrame;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 
 /**
@@ -13,4 +16,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface MaterialCutFrameMapper extends BaseMapper<MaterialCutFrame> {
 
+    List<MaterialCutFrame> getListByVideoSignature(@Param(value = "videoSignature") String signature);
 }

+ 22 - 1
module-common/src/main/java/cn/com/ctop/common/module/mapper/xml/MaterialCutFrameMapper.xml

@@ -2,4 +2,25 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="cn.com.ctop.common.module.mapper.MaterialCutFrameMapper">
 
-</mapper>
+    <select id="getListByVideoSignature" resultType="cn.com.ctop.common.module.entity.MaterialCutFrame">
+        select a.signature,
+       (select frame.url
+        from ctop_material_cut_frame frame
+        where frame.signature = a.signature
+        order by id desc
+        limit 1) as 'url',
+       (select frame.image_index
+        from ctop_material_cut_frame frame
+        where frame.signature = a.signature
+        order by id desc
+        limit 1) as 'image_index',
+       (select frame.id
+        from ctop_material_cut_frame frame
+        where frame.signature = a.signature
+        order by id desc
+        limit 1) as 'id'
+from (select distinct signature
+      from ctop_material_cut_frame
+      where video_signature = #{videoSignature}) a;
+    </select>
+</mapper>

+ 3 - 0
module-common/src/main/java/cn/com/ctop/common/module/service/IMaterialCutFrameService.java

@@ -5,6 +5,7 @@ import cn.com.ctop.common.module.entity.MaterialCutFrame;
 import com.baomidou.mybatisplus.extension.service.IService;
 
 import java.io.IOException;
+import java.util.List;
 
 /**
  * 截屏
@@ -18,4 +19,6 @@ public interface IMaterialCutFrameService extends IService<MaterialCutFrame> {
 
     void loadCutFrame(String jobId, String videoSignature);
 
+    List<MaterialCutFrame> getListByVideoSignature(String signature);
+
 }

+ 8 - 0
module-common/src/main/java/cn/com/ctop/common/module/service/impl/MaterialCutFrameServiceImpl.java

@@ -27,6 +27,7 @@ import org.springframework.stereotype.Service;
 
 import java.io.IOException;
 import java.net.URLEncoder;
+import java.util.List;
 
 
 /**
@@ -50,6 +51,8 @@ public class MaterialCutFrameServiceImpl extends ServiceImpl<MaterialCutFrameMap
 
     @Autowired
     private IMaterialCutFrameTaskService cutFrameTaskService;
+    @Autowired
+    private MaterialCutFrameMapper materialCutFrameMapper;
 
     /**
      * 获取素材关键帧
@@ -215,5 +218,10 @@ public class MaterialCutFrameServiceImpl extends ServiceImpl<MaterialCutFrameMap
 
     }
 
+    @Override
+    public List<MaterialCutFrame> getListByVideoSignature(String videoSignature) {
+        return materialCutFrameMapper.getListByVideoSignature(videoSignature);
+    }
+
 
 }

+ 6 - 3
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/controller/BatchController.java

@@ -1060,12 +1060,15 @@ public class BatchController {
      */
     @GetMapping(value = "/getVideoList")
     public Result<IPage<KuaiShouVideoGet>> getVideoList(KuaiShouVideoGet kuaiShouVideoGet, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
-                                                        @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) {
-        Result<IPage<KuaiShouVideoGet>> result = new Result<IPage<KuaiShouVideoGet>>();
+                                                        @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                        @RequestParam(name = "startDate", defaultValue = "2010-01-01") String startDate,
+                                                        @RequestParam(name = "endDate", defaultValue = "2100-01-01") String endDate,HttpServletRequest req) {
+        Result<IPage<KuaiShouVideoGet>> result = new Result<>();
         try {
             QueryWrapper<KuaiShouVideoGet> queryWrapper = QueryGenerator.initQueryWrapper(kuaiShouVideoGet, req.getParameterMap());
+            queryWrapper.between("create_time",startDate,endDate);
             queryWrapper.orderByDesc("create_time");
-            Page<KuaiShouVideoGet> page = new Page<KuaiShouVideoGet>(pageNo, pageSize);
+            Page<KuaiShouVideoGet> page = new Page<>(pageNo, pageSize);
             IPage<KuaiShouVideoGet> pageList = kuaiShouVideoGetService.page(page, queryWrapper);
             result.setSuccess(true);
             result.setResult(pageList);