|
|
|
|
from django.db.models import Q
|
|
|
|
|
import datetime
|
|
|
|
|
from ai.models import *
|
|
|
|
|
from ai.utils.show_database import GetData
|
|
|
|
|
from ai.utils.datetime_format import *
|
|
|
|
|
from ai.utils.movie_data import *
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_cinema_show_result_func(_zz_code, _show_date):
|
|
|
|
|
cinema = TestCinema.objects.filter(zz_code=_zz_code).first()
|
|
|
|
|
start = datetime.datetime.strftime(datetime.datetime.strptime(_show_date, '%Y-%m-%d') + datetime.timedelta(hours=6),
|
|
|
|
|
'%Y-%m-%d %H:%M:%S')
|
|
|
|
|
end = datetime.datetime.strftime(
|
|
|
|
|
datetime.datetime.strptime(_show_date, '%Y-%m-%d') + datetime.timedelta(hours=29, minutes=59, seconds=59),
|
|
|
|
|
'%Y-%m-%d %H:%M:%S')
|
|
|
|
|
show = ''
|
|
|
|
|
income = ''
|
|
|
|
|
if cinema:
|
|
|
|
|
print(cinema)
|
|
|
|
|
data = GetData(cinema)
|
|
|
|
|
show = data.get_show_data(start, end)
|
|
|
|
|
income = data.get_total_income(start, end)
|
|
|
|
|
print(show, income)
|
|
|
|
|
show_db = AiShow.objects.filter(Q(is_ai_show=False) & Q(zz_code=_zz_code) & Q(show_date=_show_date)).order_by(
|
|
|
|
|
'-id').first()
|
|
|
|
|
if show_db:
|
|
|
|
|
print('show_db', show_db)
|
|
|
|
|
show_db.show = show
|
|
|
|
|
show_db.sales = income
|
|
|
|
|
show_db.save()
|
|
|
|
|
else:
|
|
|
|
|
try:
|
|
|
|
|
AiShow.objects.create(
|
|
|
|
|
cinema=cinema.name,
|
|
|
|
|
zz_code=cinema.zz_code,
|
|
|
|
|
show_date=_show_date,
|
|
|
|
|
is_ai_show=False,
|
|
|
|
|
show=show,
|
|
|
|
|
sales=income,
|
|
|
|
|
prompt='',
|
|
|
|
|
result='',
|
|
|
|
|
message='',
|
|
|
|
|
take_times=0,
|
|
|
|
|
take_tokens='0'
|
|
|
|
|
)
|
|
|
|
|
except Exception as e:
|
|
|
|
|
print(e)
|
|
|
|
|
return show, income
|
|
|
|
|
|
|
|
|
|
# 获取模板日期排片数据
|
|
|
|
|
def get_template_show(cinema, show_date):
|
|
|
|
|
history_start, history_end, target_start, target_end = get_data_datetime(show_date)
|
|
|
|
|
data = GetData(cinema)
|
|
|
|
|
temp_date_obj = data.get_template_date(history_start, history_end)
|
|
|
|
|
temp_date = datetime.datetime.strftime(temp_date_obj, '%Y-%m-%d')
|
|
|
|
|
temp_start = datetime.datetime.strftime(temp_date_obj + datetime.timedelta(hours=6), '%Y-%m-%d %H:%M:%S')
|
|
|
|
|
temp_end = datetime.datetime.strftime(temp_date_obj + datetime.timedelta(hours=29, minutes=59, seconds=59),
|
|
|
|
|
'%Y-%m-%d %H:%M:%S')
|
|
|
|
|
temp_show = data.get_show_data(temp_start, temp_end)
|
|
|
|
|
print('get_template_show', temp_date, temp_show)
|
|
|
|
|
return temp_show, temp_date
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_all_movie_hot_info(cinema, show_date):
|
|
|
|
|
data = GetData(cinema)
|
|
|
|
|
movie = data.get_movie_info(show_date)
|
|
|
|
|
movie_data = MovieData()
|
|
|
|
|
movie_info_list = []
|
|
|
|
|
for m in movie:
|
|
|
|
|
print(m)
|
|
|
|
|
movie_info_list.append(movie_data.get_data(m['cinema_movie_num']))
|
|
|
|
|
return movie_info_list
|