feat:提交时间戳整改
This commit is contained in:
3
.env
3
.env
@@ -26,8 +26,7 @@ QUERY_MEETING_ROOM_TYPE = '/yonbip/uspace/external/access/getMeetingRoomType'
|
||||
QUERY_MEETING_ROOM = '/yonbip/uspace/external/access/getMeetingRoom'
|
||||
QUERY_MEETINGBOOKING_INFO = '/yonbip/uspace/external/access/getDestineInformation'
|
||||
BOOK_MEETING_ROOM = '/yonbip/uspace/destine/Meeting'
|
||||
CANCEL_MEETING = '/yonbip/uspace/cancel/Meeting'
|
||||
CANCEL_MEETING2 = '/yonbip/uspace/external/access/cancel'
|
||||
CANCEL_MEETING = '/yonbip/uspace/external/access/cancel'
|
||||
BOOKMEETING = '/yonbip/uspace/external/access/book'
|
||||
EDIT_MEETING = '/yonbip/uspace/external/access/edit'
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from threading import Lock
|
||||
from datetime import datetime
|
||||
from datetime import datetime, timedelta
|
||||
import requests, json
|
||||
from django.db.models.expressions import result
|
||||
|
||||
@@ -20,10 +20,10 @@ BASE_URL = config('MODEL_BASE_URL', default="")
|
||||
def parse_time(time_str: str) -> int:
|
||||
try:
|
||||
timestamp = datetime.strptime(time_str, "%Y-%m-%d %H:%M:%S").timestamp()
|
||||
return int(timestamp)
|
||||
return int(timestamp * 1000)
|
||||
except Exception as ee:
|
||||
print("解析时间错误:" + str(ee.with_traceback()))
|
||||
return int(datetime.now().timestamp())
|
||||
return int(datetime.now().timestamp() * 1000)
|
||||
|
||||
|
||||
'''
|
||||
@@ -39,6 +39,14 @@ def is_json(myjson):
|
||||
return False
|
||||
|
||||
|
||||
def get_time_info(offset: int) -> int:
|
||||
now = datetime.now()
|
||||
if offset > 0:
|
||||
now = now + timedelta(days=offset)
|
||||
midnight = now.replace(hour=0, minute=0, second=0, microsecond=0)
|
||||
return int(midnight.timestamp() * 1000)
|
||||
|
||||
|
||||
'''
|
||||
查询租户下所有会议室类型
|
||||
'''
|
||||
@@ -135,12 +143,16 @@ def book_room(data: dict, params: dict) -> str:
|
||||
'''
|
||||
查询租户下预定信息
|
||||
'''
|
||||
|
||||
|
||||
def query_booking_info(params: dict) -> str:
|
||||
tenant_id = params.get('tenantId', None)
|
||||
if not tenant_id:
|
||||
raise Exception("tenantId 不能为空")
|
||||
access_token = getinfo.get_access_token(tenant_id)
|
||||
params['access_token'] = access_token
|
||||
params['startTimeStamp'] = get_time_info(0)
|
||||
params['endTimeStamp'] = get_time_info(10)
|
||||
meeting_room = getinfo.query_meetingbooking_info(params)
|
||||
result = params_filter.filter_state(meeting_room)
|
||||
content = json.loads(json.dumps(result))
|
||||
@@ -175,20 +187,41 @@ def book_meeting(params: dict, data: dict) -> str:
|
||||
}
|
||||
params: tenantId (not null)
|
||||
"""
|
||||
|
||||
new_data = {
|
||||
"subject": "会议主题",
|
||||
"meetingRoomId": data["room_id"],
|
||||
"meetingRoomName": "会议室名称",
|
||||
"meetingDateTimeStamp": int(datetime.now().timestamp() * 1000),
|
||||
"startDateTimeStamp": parse_time(data["start_time"]),
|
||||
"endDateTimeStamp": parse_time(data["end_time"]),
|
||||
"meetingPersonYhtUserIds": [
|
||||
|
||||
],
|
||||
"meetingPersonAmount": data["capacity"],
|
||||
"remindArray": [
|
||||
15
|
||||
],
|
||||
"content": "会议内容",
|
||||
"isSendMail": True,
|
||||
"isSendMsg": True
|
||||
}
|
||||
|
||||
tenant_id = params.get('tenantId', None)
|
||||
if not tenant_id:
|
||||
raise Exception("tenantId 不能为空")
|
||||
access_token = getinfo.get_access_token(tenant_id)
|
||||
params['access_token'] = access_token
|
||||
book_meeting = getinfo.book_meeting(params, data)
|
||||
book_meeting = getinfo.book_meeting(params, new_data)
|
||||
content = json.loads(json.dumps(book_meeting))
|
||||
return str(content)
|
||||
|
||||
|
||||
|
||||
'''
|
||||
会议编辑
|
||||
'''
|
||||
|
||||
|
||||
def edit_meeting(params: dict, data: dict):
|
||||
"""
|
||||
:params: {tenant_id}
|
||||
@@ -214,10 +247,13 @@ def edit_meeting(params: dict, data: dict):
|
||||
print("content is :", content)
|
||||
return str(content)
|
||||
|
||||
|
||||
'''
|
||||
第二个会议取消接口
|
||||
'''
|
||||
def cancel_meeting(params: dict)->str:
|
||||
|
||||
|
||||
def cancel_meeting(params: dict) -> str:
|
||||
"""
|
||||
params{
|
||||
ytenantId
|
||||
@@ -387,7 +423,7 @@ def add_message_async(manager: DialogManager, session_id: str, role: str, conten
|
||||
|
||||
|
||||
def process_book_room(data, params) -> str:
|
||||
result = book_room(data=data, params=params)
|
||||
result = book_meeting(data=data, params=params)
|
||||
book_promot = f'''
|
||||
系统调用API预订该会议室的结果如下:
|
||||
{result}
|
||||
@@ -414,6 +450,8 @@ def process_query_book_room(**kwargs) -> str:
|
||||
'''
|
||||
函数调用,取消会议室
|
||||
'''
|
||||
|
||||
|
||||
def process_cancel_room_meeting(data, params) -> str:
|
||||
meetingId = data.get("meetingId", None)
|
||||
if meetingId:
|
||||
@@ -462,7 +500,7 @@ def process_chat(user_id: str, user_input: str, params: dict):
|
||||
add_message_async(dialog_manager, user_id, 'user', user_input)
|
||||
resp = call_openai_api(model=MODEL_NAME, system_prompt=prompt, user_query=user_input,
|
||||
api_key=config('MODEL_API_KEY'),
|
||||
history=history,temperature=config("MODEL_TEMPERATURE",cast=float,default=0.5))
|
||||
history=history, temperature=config("MODEL_TEMPERATURE", cast=float, default=0.5))
|
||||
print(resp)
|
||||
content = resp["choices"][0]["message"]["content"]
|
||||
reasoning_content = resp["choices"][0]["message"].get('reasoning_content')
|
||||
|
||||
@@ -235,6 +235,8 @@ def cancel_meeting(params: dict):
|
||||
request_url = gateway_url + CANCEL_MEETING
|
||||
print("request url ", request_url)
|
||||
print("paramas ", params)
|
||||
params['isSendMail']=True
|
||||
params['isSendMsg']=True
|
||||
respones = requests.get(url=request_url, params=params,
|
||||
headers=DEFAULT_HEADER)
|
||||
print("respone ", respones)
|
||||
|
||||
@@ -23,7 +23,7 @@ def filter_params(data, endpoint_name):
|
||||
def filter_state(content:dict):
|
||||
filtered_data = []
|
||||
for room in content['data']:
|
||||
filtered_meetings = [meeting for meeting in room['meetingDTOList'] if meeting['state'] != 3]
|
||||
filtered_meetings = [meeting for meeting in room['meetingDTOList'] if meeting['state'] in [0,1]]
|
||||
if filtered_meetings: # 只保留有会议的会议室
|
||||
filtered_room = room.copy()
|
||||
filtered_room['meetingDTOList'] = filtered_meetings
|
||||
|
||||
Reference in New Issue
Block a user