优化可放映影片,如果是测试场景时,自动获取影院已排影片作为可排影片

main
rogersun 4 days ago
parent 68661cb72a
commit 279274045c
  1. 98
      ai/utils/manual_utils.py
  2. 13
      ai/utils/show_database.py
  3. 22
      ai/utils/sql.py

@ -5,57 +5,53 @@ from pymysql.cursors import DictCursor
s = """ s = """
影厅别名,影厅id,影片别名,本地影片id,语言,放映日期,开始时间,结束时间,片长,场间 影厅别名,影厅id,影片别名,本地影片id,语言,放映日期,开始时间,结束时间,片长,场间
2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-13,10:30,12:16,106,0 2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-14,13:00,14:46,106,0
2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-13,12:30,14:16,106,14 2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-14,15:00,16:46,106,14
2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-13,14:30,16:16,106,14 2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-14,17:00,18:46,106,14
2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-13,16:30,18:16,106,14 2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-14,19:00,20:46,106,14
2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-13,18:30,20:16,106,14 2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-14,21:00,22:46,106,14
2 百花厅部分按摩椅,1,功夫女足,4292,国语,2026-07-13,20:30,22:16,106,14 2楼1号厅部分按摩椅,2,功夫女足,4292,国语,2026-07-14,11:00,12:46,106,0
2楼1号厅部分按摩椅,2,三国第一部争洛阳,4281,国语,2026-07-13,11:00,13:17,137,0 2楼1号厅部分按摩椅,2,八仙,4296,国语,2026-07-14,13:00,15:24,144,14
2楼1号厅部分按摩椅,2,三国第一部争洛阳,4281,国语,2026-07-13,13:30,15:47,137,13 2楼1号厅部分按摩椅,2,三国第一部争洛阳,4281,国语,2026-07-14,15:40,17:57,137,16
2楼1号厅部分按摩椅,2,三国第一部争洛阳,4281,国语,2026-07-13,16:00,18:17,137,13 2楼1号厅部分按摩椅,2,三国第一部争洛阳,4281,国语,2026-07-14,18:10,20:27,137,13
2楼1号厅部分按摩椅,2,三国第一部争洛阳,4281,国语,2026-07-13,18:30,20:47,137,13 2楼1号厅部分按摩椅,2,八仙,4296,国语,2026-07-14,20:40,23:04,144,13
2楼1号厅部分按摩椅,2,三国第一部争洛阳,4281,国语,2026-07-13,21:00,23:17,137,13 2楼2号速度与激情厅部分按摩椅,3,四渡,4275,国语,2026-07-14,10:20,12:22,122,0
2楼2号速度与激情厅部分按摩椅,3,三国第一部争洛阳,4281,国语,2026-07-13,10:20,12:37,137,0 2楼2号速度与激情厅部分按摩椅,3,四渡,4275,国语,2026-07-14,12:35,14:37,122,13
2楼2号速度与激情厅部分按摩椅,3,三国第一部争洛阳,4281,国语,2026-07-13,12:50,15:07,137,13 2楼2号速度与激情厅部分按摩椅,3,四渡,4275,国语,2026-07-14,14:50,16:52,122,13
2楼2号速度与激情厅部分按摩椅,3,三国第一部争洛阳,4281,国语,2026-07-13,15:20,17:37,137,13 2楼2号速度与激情厅部分按摩椅,3,四渡,4275,国语,2026-07-14,17:05,19:07,122,13
2楼2号速度与激情厅部分按摩椅,3,三国第一部争洛阳,4281,国语,2026-07-13,17:50,20:07,137,13 2楼2号速度与激情厅部分按摩椅,3,四渡,4275,国语,2026-07-14,19:20,21:22,122,13
2楼2号速度与激情厅部分按摩椅,3,三国第一部争洛阳,4281,国语,2026-07-13,20:20,22:37,137,13 2楼3号厅部分按摩椅,4,功夫女足,4292,国语,2026-07-14,10:30,12:16,106,0
2楼3号厅部分按摩椅,4,小黄人与大怪兽,4288,原版,2026-07-13,10:30,12:00,90,0 2楼3号厅部分按摩椅,4,小黄人与大怪兽国语,4289,国语,2026-07-14,12:30,14:00,90,14
2楼3号厅部分按摩椅,4,玩具总动员5,4269,原版,2026-07-13,12:15,13:57,102,15 2楼3号厅部分按摩椅,4,小黄人与大怪兽国语,4289,国语,2026-07-14,14:15,15:45,90,15
2楼3号厅部分按摩椅,4,特立独行,4280,国语,2026-07-13,14:10,16:13,123,13 2楼3号厅部分按摩椅,4,后室,4279,原版,2026-07-14,16:00,17:51,111,15
2楼3号厅部分按摩椅,4,后室,4279,原版,2026-07-13,16:25,18:16,111,12 2楼3号厅部分按摩椅,4,功夫女足,4292,国语,2026-07-14,18:05,19:51,106,14
2楼3号厅部分按摩椅,4,功夫女足,4292,国语,2026-07-13,18:30,20:16,106,14 2楼3号厅部分按摩椅,4,八仙,4296,国语,2026-07-14,20:05,22:29,144,14
2楼3号厅部分按摩椅,4,八仙,4296,国语,2026-07-13,20:30,22:54,144,14 2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-14,11:30,13:16,106,0
2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-13,10:20,12:06,106,0 2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-14,13:30,15:16,106,14
2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-13,12:20,14:06,106,14 2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-14,15:30,17:16,106,14
2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-13,14:20,16:06,106,14 2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-14,17:30,19:16,106,14
2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-13,16:20,18:06,106,14 2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-14,19:30,21:16,106,14
2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-13,18:20,20:06,106,14 2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-14,21:30,23:16,106,14
2楼4号优选福励厅,5,功夫女足,4292,国语,2026-07-13,20:20,22:06,106,14 3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-14,11:05,12:51,106,0
3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-13,10:25,12:11,106,0 3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-14,13:05,14:51,106,14
3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-13,12:25,14:11,106,14 3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-14,15:05,16:51,106,14
3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-13,14:25,16:11,106,14 3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-14,17:05,18:51,106,14
3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-13,16:25,18:11,106,14 3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-14,19:05,20:51,106,14
3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-13,18:25,20:11,106,14 3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-14,21:05,22:51,106,14
3楼5号厅部分按摩椅,6,功夫女足,4292,国语,2026-07-13,20:25,22:11,106,14 3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-14,12:00,13:46,106,0
3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-13,10:30,12:16,106,0 3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-14,14:00,15:46,106,14
3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-13,12:30,14:16,106,14 3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-14,16:00,17:46,106,14
3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-13,14:30,16:16,106,14 3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-14,18:00,19:46,106,14
3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-13,16:30,18:16,106,14 3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-14,20:00,21:46,106,14
3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-13,18:30,20:16,106,14 3楼7号厅,8,功夫女足,4292,国语,2026-07-14,12:40,14:26,106,0
3楼6号泰隆银行厅部分按摩椅,7,功夫女足,4292,国语,2026-07-13,20:30,22:16,106,14 3楼7号厅,8,八仙,4296,国语,2026-07-14,14:40,17:04,144,14
3楼7号厅,8,海洋奇缘启航,4293,原版,2026-07-13,10:40,12:36,116,0 3楼7号厅,8,小黄人与大怪兽国语,4289,国语,2026-07-14,17:15,18:45,90,11
3楼7号厅,8,特立独行,4280,国语,2026-07-13,12:50,14:53,123,14 3楼7号厅,8,三国第一部争洛阳,4281,国语,2026-07-14,19:00,21:17,137,15
3楼7号厅,8,玩具总动员5,4269,原版,2026-07-13,15:05,16:47,102,12 3楼7号厅,8,后室,4279,原版,2026-07-14,21:30,23:21,111,13
3楼7号厅,8,后室,4279,原版,2026-07-13,17:00,18:51,111,13 2 三江VIP厅,9,功夫女足,4292,国语,2026-07-14,14:05,15:51,106,0
3楼7号厅,8,小黄人与大怪兽,4288,原版,2026-07-13,19:05,20:35,90,14 2 三江VIP厅,9,那山那水,4264,国语,2026-07-14,16:05,17:31,86,14
3楼7号厅,8,功夫女足,4292,国语,2026-07-13,20:50,22:36,106,15 2 三江VIP厅,9,八仙,4296,国语,2026-07-14,17:45,20:09,144,14
2 三江VIP厅,9,功夫女足,4292,国语,2026-07-13,12:15,14:01,106,0 2 三江VIP厅,9,特立独行,4280,国语,2026-07-14,20:20,22:23,123,11
2 三江VIP厅,9,八仙,4296,国语,2026-07-13,14:15,16:39,144,14
2 三江VIP厅,9,特立独行,4280,国语,2026-07-13,16:55,18:58,123,16
2 三江VIP厅,9,后室,4279,原版,2026-07-13,19:10,21:01,111,12
2 三江VIP厅,9,小黄人与大怪兽,4288,原版,2026-07-13,21:15,22:45,90,14
""" """

@ -62,9 +62,19 @@ class GetData:
end_datetime = datetime.datetime.strptime(date, '%Y-%m-%d') + datetime.timedelta(hours=6) end_datetime = datetime.datetime.strptime(date, '%Y-%m-%d') + datetime.timedelta(hours=6)
bl_bool, bl_str, bl_list = get_black_list(self.zz_code) bl_bool, bl_str, bl_list = get_black_list(self.zz_code)
if bl_bool: if bl_bool:
if get_runtime_val('real_target') == '0':
sql = GET_HANDLE_MOVIE_TEST + bl_str + ');'
self.cur.execute(sql, (end_datetime, start_datetime, *bl_list))
print(self.cur.mogrify(sql, (end_datetime, start_datetime, *bl_list)))
else:
sql = GET_HANDLE_MOVIE + bl_str + ');' sql = GET_HANDLE_MOVIE + bl_str + ');'
self.cur.execute(sql, (start_datetime, end_datetime, *bl_list)) self.cur.execute(sql, (start_datetime, end_datetime, *bl_list))
print(self.cur.mogrify(sql, (start_datetime, end_datetime, *bl_list))) print(self.cur.mogrify(sql, (start_datetime, end_datetime, *bl_list)))
else:
if get_runtime_val('real_target') == '0':
sql = GET_HANDLE_MOVIE_TEST + bl_str + ');'
self.cur.execute(sql, (end_datetime, start_datetime))
print(self.cur.mogrify(sql, (end_datetime, start_datetime)))
else: else:
sql = GET_HANDLE_MOVIE + bl_str + ');' sql = GET_HANDLE_MOVIE + bl_str + ');'
self.cur.execute(sql, (start_datetime, end_datetime)) self.cur.execute(sql, (start_datetime, end_datetime))
@ -143,7 +153,8 @@ class GetData:
# 按照影片获取销售数据 # 按照影片获取销售数据
def get_sell_data_by_movie(self, start_datetime, end_datetime): def get_sell_data_by_movie(self, start_datetime, end_datetime):
# 获取过去7天的数据 # 获取过去7天的数据
new_start_datetime = datetime.datetime.strptime(start_datetime, '%Y-%m-%d %H:%M:%S') + datetime.timedelta(days=-7) new_start_datetime = datetime.datetime.strptime(start_datetime, '%Y-%m-%d %H:%M:%S') + datetime.timedelta(
days=-7)
start_datetime = datetime.datetime.strftime(new_start_datetime, '%Y-%m-%d %H:%M:%S') start_datetime = datetime.datetime.strftime(new_start_datetime, '%Y-%m-%d %H:%M:%S')
self.cur.execute(GET_SELL_DATA_BY_MOVIE, (start_datetime, end_datetime, start_datetime, end_datetime)) self.cur.execute(GET_SELL_DATA_BY_MOVIE, (start_datetime, end_datetime, start_datetime, end_datetime))
sell_data = self.cur.fetchall() sell_data = self.cur.fetchall()

@ -171,6 +171,28 @@ WHERE scvm.system_const_sub_module = 'new_media_type'
AND cmi.cinema_movie_num NOT IN ( AND cmi.cinema_movie_num NOT IN (
""" """
GET_HANDLE_MOVIE_TEST = """
SELECT cmi.cinema_movie_alias,
cmi.cinema_movie_num,
cmi.cinema_movie_id,
cmi.cinema_movie_time,
cmlt.cinema_movie_lang_type_desc as language,
scvm.system_const_val_desc as media_type,
cmi.cinema_movie_start_datetime,
cmi.cinema_movie_end_datetime
FROM cinema_movie_info cmi
JOIN cinema_movie_lang_type cmlt ON cmi.cinema_movie_lang_id = cmlt.cinema_movie_lang_type_id
JOIN system_const_val_map scvm ON cmi.cinema_movie_media_type = scvm.system_const_val_value
WHERE scvm.system_const_sub_module = 'new_media_type'
AND cmi.cinema_movie_id IN (SELECT ms.cinema_movie_id
FROM cinema_movie_show ms
WHERE ms.cinema_del_flag = 1
AND ms.cinema_movie_show_start_time >= %s
AND ms.cinema_movie_show_start_time <= %s
GROUP BY ms.cinema_movie_num) AND cmi.cinema_movie_num NOT IN (
"""
# 获取新上映的影片 # 获取新上映的影片
GET_NEW_MOVIE = """SELECT cmi.cinema_movie_alias, GET_NEW_MOVIE = """SELECT cmi.cinema_movie_alias,
cmi.cinema_movie_id, cmi.cinema_movie_id,

Loading…
Cancel
Save