|
@@ -69,32 +69,45 @@
|
|
|
<select id="getNewVideoByParams"
|
|
|
resultType="org.jeecg.modules.bytedance.advertise.entity.ByteDanceVideoInfo">
|
|
|
select video.*,
|
|
|
- (select count(1)
|
|
|
- from ctop_bytedance_creative c
|
|
|
- where c.video_id = video.vid and c.account_id = '${accountId}') as creativeCnt
|
|
|
+ (select count(1) from ctop_bytedance_ai_video_creative_log l where l.video_code = video.signature and l.state_date = #{now}) as creativeNum,
|
|
|
+ (select count(1) from ctop_bytedance_creative c where c.video_id = video.vid and c.account_id = '${accountId}') as creativeCnt,
|
|
|
+ (select count(1) from ctop_bytedance_video_slogen_info s where s.video_code = video.signature) as slogens
|
|
|
from ctop_bytedance_video_info video
|
|
|
+ left join ctop_material_info cmi on video.signature = cmi.code
|
|
|
where account_id = #{accountId}
|
|
|
+ and cmi.code is not null
|
|
|
+ and cmi.offline_flag = 0
|
|
|
and material_upload_time >= #{startTime}
|
|
|
and material_upload_time <= #{endTime}
|
|
|
- having creativeCnt <= #{creativeCnt}
|
|
|
+ having creativeCnt <= #{creativeCnt} and slogens >0 and creativeNum = 0
|
|
|
order by material_upload_time desc
|
|
|
limit #{videoCnt}
|
|
|
</select>
|
|
|
<select id="topMatByParams" resultType="org.jeecg.modules.bytedance.advertise.entity.ByteDanceVideoInfo">
|
|
|
- select video.*
|
|
|
- from (select report.material_id, sum(cost) as totalCost, report.account_id
|
|
|
+ select video.*,
|
|
|
+ a.totalCost,
|
|
|
+ (select count(1) from ctop_bytedance_ai_video_creative_log l where l.video_code = video.signature and l.state_date = #{now}) as creativeNum,
|
|
|
+ (select count(1) from ctop_bytedance_creative c where c.video_id = video.vid and c.account_id = '${accountId}') as creativeCnt,
|
|
|
+ (select count(1) from ctop_bytedance_video_slogen_info s where s.video_code = video.signature) as slogens
|
|
|
+ from (select report.material_id, sum(cost) as totalCost
|
|
|
from ctop_bytedance_report_material_daily report
|
|
|
left join ctop_user_allocation cua on report.account_id = cua.account_id
|
|
|
where cua.project_id = #{projectId}
|
|
|
and report.stat_datetime >= #{startTime}
|
|
|
and report.stat_datetime <= #{endTime}
|
|
|
group by report.material_id
|
|
|
- order by sum(report.cost) desc) a
|
|
|
- left join ctop_bytedance_video_info video
|
|
|
- on a.material_id = video.material_id and video.account_id = a.account_id
|
|
|
- left join ctop_material_info cmi on cmi.code = video.signature
|
|
|
- where video.account_id = #{accountId}
|
|
|
- and cmi.id is not null
|
|
|
+ order by sum(report.cost) desc ) a
|
|
|
+ left join (select distinct a.* from ctop_bytedance_video_info a where a.account_id = #{accountId})as video
|
|
|
+ on a.material_id = video.material_id
|
|
|
+ left join ctop_material_info cmi on cmi.code = video.signature and cmi.project_id = #{projectId}
|
|
|
+ where cmi.id is not null
|
|
|
+ and video.id is not null
|
|
|
+ and cmi.offline_flag = 0
|
|
|
+ and a.totalCost >= 500
|
|
|
+ having creativeCnt <= 100
|
|
|
+ and creativeNum = 0
|
|
|
+ and slogens >0
|
|
|
+ order by a.material_id desc
|
|
|
limit #{videoCnt}
|
|
|
</select>
|
|
|
</mapper>
|