|
@@ -1,14 +1,39 @@
|
|
package cn.com.ctop.common.module.service.impl;
|
|
package cn.com.ctop.common.module.service.impl;
|
|
|
|
|
|
import cn.com.ctop.common.module.constant.CosConstant;
|
|
import cn.com.ctop.common.module.constant.CosConstant;
|
|
-import cn.com.ctop.common.module.entity.*;
|
|
|
|
|
|
+import cn.com.ctop.common.module.entity.MaterialAscription;
|
|
|
|
+import cn.com.ctop.common.module.entity.MaterialCutFrame;
|
|
|
|
+import cn.com.ctop.common.module.entity.MaterialImageInfo;
|
|
|
|
+import cn.com.ctop.common.module.entity.MaterialInfo;
|
|
|
|
+import cn.com.ctop.common.module.entity.MaterialParameter;
|
|
|
|
+import cn.com.ctop.common.module.entity.MaterialTag;
|
|
|
|
+import cn.com.ctop.common.module.entity.MaterialTagInfo;
|
|
|
|
+import cn.com.ctop.common.module.entity.Project;
|
|
|
|
+import cn.com.ctop.common.module.entity.SupplierWatermark;
|
|
|
|
+import cn.com.ctop.common.module.entity.TagInfo;
|
|
|
|
+import cn.com.ctop.common.module.entity.TencentWatermarkTemplate;
|
|
|
|
+import cn.com.ctop.common.module.entity.VideoWatermarkTask;
|
|
import cn.com.ctop.common.module.enums.MaterialSupplierEnum;
|
|
import cn.com.ctop.common.module.enums.MaterialSupplierEnum;
|
|
import cn.com.ctop.common.module.mapper.MaterialAscriptionMapper;
|
|
import cn.com.ctop.common.module.mapper.MaterialAscriptionMapper;
|
|
import cn.com.ctop.common.module.mapper.MaterialInfoMapper;
|
|
import cn.com.ctop.common.module.mapper.MaterialInfoMapper;
|
|
import cn.com.ctop.common.module.mapper.MaterialParameterMapper;
|
|
import cn.com.ctop.common.module.mapper.MaterialParameterMapper;
|
|
import cn.com.ctop.common.module.mapper.MaterialTagMapper;
|
|
import cn.com.ctop.common.module.mapper.MaterialTagMapper;
|
|
-import cn.com.ctop.common.module.service.*;
|
|
|
|
-import cn.com.ctop.common.module.utils.*;
|
|
|
|
|
|
+import cn.com.ctop.common.module.service.IMaterialCutFrameService;
|
|
|
|
+import cn.com.ctop.common.module.service.IMaterialImageInfoService;
|
|
|
|
+import cn.com.ctop.common.module.service.IMaterialInfoService;
|
|
|
|
+import cn.com.ctop.common.module.service.IMaterialTagInfoService;
|
|
|
|
+import cn.com.ctop.common.module.service.IProjectService;
|
|
|
|
+import cn.com.ctop.common.module.service.ISupplierWatermarkService;
|
|
|
|
+import cn.com.ctop.common.module.service.ITagInfoService;
|
|
|
|
+import cn.com.ctop.common.module.service.ITencentWatermarkTemplateService;
|
|
|
|
+import cn.com.ctop.common.module.service.IVideoWatermarkTaskService;
|
|
|
|
+import cn.com.ctop.common.module.utils.AesEncryptUtil;
|
|
|
|
+import cn.com.ctop.common.module.utils.Check;
|
|
|
|
+import cn.com.ctop.common.module.utils.CloudVideoProcessUtil;
|
|
|
|
+import cn.com.ctop.common.module.utils.LoadFileUtil;
|
|
|
|
+import cn.com.ctop.common.module.utils.PropertiesUtils;
|
|
|
|
+import cn.com.ctop.common.module.utils.ResultMapUtils;
|
|
|
|
+import cn.com.ctop.common.module.utils.StatusCode;
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONArray;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
@@ -32,7 +57,11 @@ import java.math.BigDecimal;
|
|
import java.math.RoundingMode;
|
|
import java.math.RoundingMode;
|
|
import java.net.URLDecoder;
|
|
import java.net.URLDecoder;
|
|
import java.nio.channels.FileChannel;
|
|
import java.nio.channels.FileChannel;
|
|
-import java.util.*;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
+import java.util.Date;
|
|
|
|
+import java.util.HashMap;
|
|
|
|
+import java.util.List;
|
|
|
|
+import java.util.Map;
|
|
import java.util.concurrent.ExecutorService;
|
|
import java.util.concurrent.ExecutorService;
|
|
import java.util.concurrent.Executors;
|
|
import java.util.concurrent.Executors;
|
|
|
|
|
|
@@ -589,13 +618,13 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
|
|
}
|
|
}
|
|
materialTagInfoService.deleteByCode(code);
|
|
materialTagInfoService.deleteByCode(code);
|
|
JSONArray modalityTagList = json.getJSONArray("modalityTagList");
|
|
JSONArray modalityTagList = json.getJSONArray("modalityTagList");
|
|
- insertTagList(code,userId,modalityTagList);
|
|
|
|
|
|
+ insertTagList(code, userId, modalityTagList);
|
|
JSONArray contentTagList = json.getJSONArray("contentTagList");
|
|
JSONArray contentTagList = json.getJSONArray("contentTagList");
|
|
- insertTagList(code,userId,contentTagList);
|
|
|
|
|
|
+ insertTagList(code, userId, contentTagList);
|
|
JSONArray senceTagList = json.getJSONArray("senceTagList");
|
|
JSONArray senceTagList = json.getJSONArray("senceTagList");
|
|
- insertTagList(code,userId,senceTagList);
|
|
|
|
|
|
+ insertTagList(code, userId, senceTagList);
|
|
JSONArray modTagList = json.getJSONArray("modTagList");
|
|
JSONArray modTagList = json.getJSONArray("modTagList");
|
|
- insertTagList(code,userId,modTagList);
|
|
|
|
|
|
+ insertTagList(code, userId, modTagList);
|
|
getFile(info, project.getMediaId());
|
|
getFile(info, project.getMediaId());
|
|
ResultMapUtils.setResultMap(resultMap, StatusCode.COMMON_SUCCESS.getCode());
|
|
ResultMapUtils.setResultMap(resultMap, StatusCode.COMMON_SUCCESS.getCode());
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
@@ -605,17 +634,18 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
|
|
return resultMap;
|
|
return resultMap;
|
|
}
|
|
}
|
|
|
|
|
|
- private void insertTagList(String code,String userId,JSONArray tagList){
|
|
|
|
- if(null!=tagList&&!tagList.isEmpty()){
|
|
|
|
- for(int m=0;m<tagList.size();m++){
|
|
|
|
|
|
+ private void insertTagList(String code, String userId, JSONArray tagList) {
|
|
|
|
+ if (null != tagList && !tagList.isEmpty()) {
|
|
|
|
+ for (int m = 0; m < tagList.size(); m++) {
|
|
Long tagId = tagList.getLong(m);
|
|
Long tagId = tagList.getLong(m);
|
|
TagInfo tagInfo = tagInfoService.getById(tagId);
|
|
TagInfo tagInfo = tagInfoService.getById(tagId);
|
|
- MaterialTagInfo setTag= new MaterialTagInfo(code,tagInfo,userId);
|
|
|
|
|
|
+ MaterialTagInfo setTag = new MaterialTagInfo(code, tagInfo, userId);
|
|
setTag.setCategoryId(tagInfo.getTagCategoryId());
|
|
setTag.setCategoryId(tagInfo.getTagCategoryId());
|
|
materialTagInfoService.save(setTag);
|
|
materialTagInfoService.save(setTag);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
@Autowired
|
|
@Autowired
|
|
private ITagInfoService tagInfoService;
|
|
private ITagInfoService tagInfoService;
|
|
@Autowired
|
|
@Autowired
|
|
@@ -676,14 +706,14 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public Map<String,Object> getListByParams(String tagCode,String type, Integer status, List<Long> projectIds, String materialName, String code, String startDate, String endDate, String userId, Integer pageNo, Integer pageSize) {
|
|
|
|
- Map<String,Object> result = new HashMap<>();
|
|
|
|
- PageHelper.startPage(pageNo,pageSize);
|
|
|
|
- List<MaterialInfo> dailyList = materialInfoMapper.getListByParams(tagCode,type,status,projectIds,materialName,code,startDate,endDate, userId);
|
|
|
|
|
|
+ public Map<String, Object> getListByParams(String tagCode, String type, Integer status, List<Long> projectIds, String materialName, String code, String startDate, String endDate, String userId, Integer pageNo, Integer pageSize) {
|
|
|
|
+ Map<String, Object> result = new HashMap<>();
|
|
|
|
+ PageHelper.startPage(pageNo, pageSize);
|
|
|
|
+ List<MaterialInfo> dailyList = materialInfoMapper.getListByParams(tagCode, type, status, projectIds, materialName, code, startDate, endDate, userId);
|
|
List<MaterialInfo> setList = new ArrayList<>();
|
|
List<MaterialInfo> setList = new ArrayList<>();
|
|
PageInfo<MaterialInfo> pageInfo = new PageInfo<>(dailyList);
|
|
PageInfo<MaterialInfo> pageInfo = new PageInfo<>(dailyList);
|
|
- if(null!=dailyList&&!dailyList.isEmpty()){
|
|
|
|
- for(MaterialInfo info:dailyList){
|
|
|
|
|
|
+ if (null != dailyList && !dailyList.isEmpty()) {
|
|
|
|
+ for (MaterialInfo info : dailyList) {
|
|
MaterialInfo materialInfo = materialInfoMapper.selectById(info.getId());
|
|
MaterialInfo materialInfo = materialInfoMapper.selectById(info.getId());
|
|
//判断是否已经同步到快手平台
|
|
//判断是否已经同步到快手平台
|
|
Integer kuaishouMaterialUpCount = this.getKuaishouUpVideoCount(info.getCode());
|
|
Integer kuaishouMaterialUpCount = this.getKuaishouUpVideoCount(info.getCode());
|
|
@@ -699,8 +729,20 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
|
|
} else {
|
|
} else {
|
|
materialInfo.setToutiaoVideoIsUp(0);
|
|
materialInfo.setToutiaoVideoIsUp(0);
|
|
}
|
|
}
|
|
-
|
|
|
|
- //TODO 消耗统计
|
|
|
|
|
|
+ //统计快手总消耗数据
|
|
|
|
+ JSONObject kuaishous = materialParameterMapper.getMaterialTotalCharge(info.getCode());
|
|
|
|
+ if (!Check.isNull(kuaishous)) {
|
|
|
|
+ materialInfo.setCost(kuaishous.getBigDecimal("charges"));
|
|
|
|
+ } else {
|
|
|
|
+ materialInfo.setCost(new BigDecimal(0));
|
|
|
|
+ }
|
|
|
|
+ //统计抖音总消耗数据
|
|
|
|
+ JSONObject bytedances = materialParameterMapper.getByteDanceMaterialTotalCharge(info.getCode());
|
|
|
|
+ if (!Check.isNull(bytedances)) {
|
|
|
|
+ materialInfo.setBytedanceCost(bytedances.getBigDecimal("charges"));
|
|
|
|
+ } else {
|
|
|
|
+ materialInfo.setBytedanceCost(new BigDecimal(0));
|
|
|
|
+ }
|
|
|
|
|
|
Project project = projectService.getById(info.getProjectId());
|
|
Project project = projectService.getById(info.getProjectId());
|
|
if (!Check.isNull(project)) {
|
|
if (!Check.isNull(project)) {
|
|
@@ -722,8 +764,8 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
|
|
}
|
|
}
|
|
}
|
|
}
|
|
pageInfo.setList(setList);
|
|
pageInfo.setList(setList);
|
|
- result.put("data",pageInfo);
|
|
|
|
- ResultMapUtils.setResultMap(result,StatusCode.COMMON_SUCCESS);
|
|
|
|
|
|
+ result.put("data", pageInfo);
|
|
|
|
+ ResultMapUtils.setResultMap(result, StatusCode.COMMON_SUCCESS);
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
}
|
|
}
|