123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378 |
- from unitls.baseFunction import TuplefindInList,TuplefindInList3
- from .flightDB import flightDB
- from unitls.LogerinTxt import app_logger
- from .getSortFlightdata import getSortFlightdata
- from .waringMessageID import waringMessageID
- import concurrent.futures
- from unitls.StaticDataclass import get_dic
- def tableWidgetDispaly2(fdb:flightDB,selectedtime,date):#1,昨天。2今天3明天4其他
- try:
- tableWidgetDispalydata = {}
- sorttable = getSortFlightdata(fdb,selectedtime,"sortFlight2")
- nowDayStr = selectedtime
- TaskFlightinfoAll = fdb.getAlldata('TaskFlightinfo{}'.format(nowDayStr))
- waringMessageIDs = waringMessageID(fdb)
- peopleScheduleAll = fdb.getAlldata("peopleSchedule{}".format(nowDayStr))
- tasklistall = fdb.getAlldata('TaskList{}'.format(nowDayStr))
- executor = concurrent.futures.ThreadPoolExecutor()
- all_task = []
- taskType=get_dic('taskType')
- for i in range(len(sorttable)):
- all_task.append(executor.submit(functionDisplay2, sorttable[i], i, TaskFlightinfoAll, waringMessageIDs,peopleScheduleAll,taskType,tasklistall))
- for future in concurrent.futures.as_completed(all_task):
- data = future.result()
- tableWidgetDispalydata.update(data)
- newdic = {"B": '"{}"'.format(tableWidgetDispalydata)}
- if date == "1":
- fdb.upDateItem("display", newdic, "ID = '1'")
- elif date == "2":
- fdb.upDateItem("display", newdic, "ID = '2'")
- elif date == "3":
- fdb.upDateItem("display", newdic, "ID = '3'")
- return tableWidgetDispalydata
- except Exception as e:
- app_logger.log_error(e)
- def functionDisplay2(row, rowNum, TaskFlightinfoAll,waringMessageIDs,peopleScheduleAll,taskType,TaskListAll):
- TaskFlightinfo = TuplefindInList(TaskFlightinfoAll,row[1])
- jjdq="--"
- hbdq="--"
- esdq="--"
- tasksts=""
- if '3U' in TaskFlightinfo[21] or 'CSC' in TaskFlightinfo[21]:
- tasksts = TuplefindInList3(TaskListAll, TaskFlightinfo[0], 0, 8)
- if TaskFlightinfo[3] == "AP":
- hbdq = "√" if 'P-PRE-FLIGHT' in str(tasksts) else ""
- esdq = "√" if 'DEPARTURE-SERVICE' in str(tasksts) else ""
- elif TaskFlightinfo[3] == "TR" :
- jjdq = "√" if 'ARRIVAL-SERVICE' in str(tasksts) else ""
- hbdq = "√" if 'P-TRANSIT' in str(tasksts) else ""
- esdq = "√" if 'DEPARTURE-SERVICE' in str(tasksts) else ""
- elif TaskFlightinfo[3] == "AF":
- jjdq = "√" if 'ARRIVAL-SERVICE' in str(tasksts) else ""
- hbdq = "√" if 'P-POST-FLIGHT' in str(tasksts) else ""
- if TaskFlightinfo != None:
- JWA = TaskFlightinfo[10]
- JWB = TaskFlightinfo[11]
- if JWB!="" and JWA =="":
- JWA=JWB
- if JWA!="" and JWB =="":
- JWB=JWA
- else:
- JWA = ""
- JWB = ""
- wx_people = ""
- fx_people = ""
- ecsj_people = ""
- type31 = ""
- # print(TaskFlightinfo)
- if TaskFlightinfo != None:
- wx_people = TaskFlightinfo[12]
- fx_people = TaskFlightinfo[13]
- ecsj_people = TaskFlightinfo[19]
- type31 = TaskFlightinfo[3]
- if TaskFlightinfo[3] == "AF":
- postion = str(TaskFlightinfo[23]).split("</br>")[0]
- elif TaskFlightinfo[3] == "TR" or TaskFlightinfo[3] == "TAF":
- postion = str(TaskFlightinfo[23]).replace("</br>天府","")
- elif "</br>" in str(TaskFlightinfo[23]):
- postion = str(TaskFlightinfo[23]).split("</br>")[1]
- else:
- postion ="无信息"
- if TaskFlightinfo[4] != "" and (TaskFlightinfo[8] == "" or TaskFlightinfo[30] == ""): #如果sta不为空,且eta或flying为空,显示sta
- a = TaskFlightinfo[4][-8:-3]
- else:
- a=""
- if TaskFlightinfo[6] != "" : #当ata不为空显示ata,eta不为空显示eta否则为空
- b = TaskFlightinfo[6][-8:-3]
- elif TaskFlightinfo[8] != "":
- b = TaskFlightinfo[8][-8:-3]
- else:
- b = ''
- if TaskFlightinfo[7] != "" :
- c = '[实]' + TaskFlightinfo[7][-8:-3]
- elif TaskFlightinfo[5] != "":
- c = '[预]' + TaskFlightinfo[5][-8:-3]
- else:
- c = ''
- QColorList = ['black', 'white', '#F3ECD9', '#BAD1D1', '#DDE2E3', '#647277', '#00FFFF', 'blue']
- #QColorList = ['black', 'white', '#F3ECD9', '#BAD1D1', '#DDE2E3', '#647277', 'red', 'blue']
- # waringMessageIDs = waringMessageID(fdb)
- if str(row[1]) in str(waringMessageIDs["全部警告"]):
- color_code = QColorList[6]
- color_code1 = QColorList[0]
- color_code2 = QColorList[1]
- color_code3 = QColorList[0]
- elif row[5] == "4":
- color_code = QColorList[5]
- color_code1 = QColorList[1]
- color_code2 = QColorList[1]
- color_code3 = QColorList[1]
- elif row[5] == "3":
- color_code = QColorList[3]
- color_code1 = QColorList[0]
- color_code2 = QColorList[0]
- color_code3 = QColorList[0]
- elif row[5] == "2":
- color_code = QColorList[2]
- color_code1 = QColorList[0]
- color_code2 = QColorList[0]
- color_code3 = QColorList[0]
- elif row[5] == "1":
- if (rowNum + 2) % 2 == 0:
- color_code = QColorList[4]
- else:
- color_code = QColorList[1]
- color_code1 = QColorList[0]
- color_code2 = QColorList[6]
- color_code3 = QColorList[7]
- findid = row[0] + "-B"
- #peopleSchedule = fdb.queryTabel("peopleSchedule{}".format(nowDayStr), "*", "编号='%s'" % findid)
- peopleSchedule = TuplefindInList(peopleScheduleAll, findid)
- if peopleSchedule != None:
- fx = peopleSchedule[3]
- qw1 = peopleSchedule[4]
- qw2 = peopleSchedule[5]
- g1 = peopleSchedule[6]
- g2 = peopleSchedule[7]
- g3 = peopleSchedule[8]
- fj = peopleSchedule[9]
- else:
- fx = ""
- qw1 = ""
- qw2 = ""
- g1 = ""
- g2 = ""
- g3 = ""
- fj = ""
- if TaskFlightinfo[3] == "AF":
- item_dic = {"0": rowNum,
- "1": TaskFlightinfo[1],
- "2": TaskFlightinfo[26],
- "3": TaskFlightinfo[25],
- "4": TaskFlightinfo[21],
- "5": a,
- "6": b,
- "7": "--",
- "8": JWA,
- "9": taskType[TaskFlightinfo[3]],
- "10": fx,
- "11": qw1,
- "12": qw2,
- "13": g1,
- "14": g2,
- "15": g3,
- "19": "",
- "16": jjdq,
- "18": esdq,
- "17": hbdq,
- "20": "",
- "21": "",
- "22": "",
- "23": "",
- "24": postion,
- "25": wx_people, # flightinfodata[22],
- "26": "",
- "27": fx_people, # flightinfodata[23],
- "28": row[1],
- "29": tasksts,
- "30": "",
- "31": type31,
- "32": fj,
- "99": color_code,
- "101": color_code1,
- "102": color_code2,
- "103": color_code3,
- "109": row[5]
- }
- # tableWidgetDispalydata[rowNum] = item_dic
- # rowNum += 1
- return {rowNum: item_dic}
- elif TaskFlightinfo[3] == "停场":
- item_dic = {"0": rowNum,
- "1": TaskFlightinfo[1],
- "2": TaskFlightinfo[26],
- "3": TaskFlightinfo[25],
- "4": "--",
- "5": a,
- "6": "--",
- "7": "--",
- "8": JWA,
- "9": taskType[TaskFlightinfo[3]],
- "10": fx,
- "11": qw1,
- "12": qw2,
- "13": g1,
- "14": g2,
- "15": g3,
- "16": "--",
- "17": "--",
- "18": "--",
- "19": "--",
- "20": "--",
- "21": "--",
- "22": "--",
- "23": "--",
- "24": "--", # flightinfodata[22],
- "25": "--", # flightinfodata[23],
- "26": "--",
- "27": "--",
- "28": row[1],
- "29": tasksts,
- "30": "--",
- "31": "--",
- "32": fj,
- "99": color_code,
- "101": color_code1,
- "102": color_code2,
- "103": color_code3,
- "109": row[5]
- }
- # tableWidgetDispalydata[rowNum] = item_dic
- # rowNum += 1
- return {rowNum: item_dic}
- elif TaskFlightinfo[3] == "AP":
- item_dic = {"0": rowNum,
- "1": TaskFlightinfo[1],
- "2": TaskFlightinfo[26],
- "3": TaskFlightinfo[25],
- "4": TaskFlightinfo[21],
- "5": "",
- "6": "",
- "7": c,
- "8": JWB,
- "9": taskType[TaskFlightinfo[3]],
- "10": fx,
- "11": qw1,
- "12": qw2,
- "13": g1,
- "14": g2,
- "15": g3,
- "19": "",
- "16": jjdq,
- "18": esdq,
- "17": hbdq,
- "20": "",
- "21": "",
- "22": "",
- "23": "",
- "24": postion,
- "25": wx_people, # flightinfodata[22],
- "26": "",
- "27": fx_people, # flightinfodata[23],
- "28": row[1],
- "29": tasksts,
- "30": "",
- "31": type31,
- "32": fj,
- "99": color_code,
- "101": color_code1,
- "102": color_code2,
- "103": color_code3,
- "109": row[5]
- }
- # tableWidgetDispalydata[rowNum] = item_dic
- # rowNum += 1
- return {rowNum: item_dic}
- elif row[3] == "短停接":
- item_dic = {"0": rowNum,
- "1": TaskFlightinfo[1],
- "2": TaskFlightinfo[26],
- "3": TaskFlightinfo[25],
- "4": TaskFlightinfo[21],
- "5": a,
- "6": b,
- "7": c,
- "8": JWA,
- "9": taskType[TaskFlightinfo[3]],
- "10": fx,
- "11": qw1,
- "12": qw2,
- "13": g1,
- "14": g2,
- "15": g3,
- "19": "",
- "16": jjdq,
- "18": esdq,
- "17": hbdq,
- "20": "",
- "21": "",
- "22": "",
- "23": "",
- "24": postion,
- "25": wx_people, # flightinfodata[22],
- "26": ecsj_people,
- "27": fx_people, # flightinfodata[23],
- "28": row[1],
- "29": tasksts,
- "30": "",
- "31": type31,
- "32": fj,
- "99": color_code,
- "101": color_code1,
- "102": color_code2,
- "103": color_code3,
- "109": row[5]
- }
- # tableWidgetDispalydata[rowNum] = item_dic
- # rowNum += 1
- return {rowNum: item_dic}
- elif row[3] == "特后前接":
- item_dic = {"0": rowNum,
- "1": TaskFlightinfo[1],
- "2": TaskFlightinfo[26],
- "3": TaskFlightinfo[25],
- "4": TaskFlightinfo[21],
- "5": a,
- "6": b,
- "7": c,
- "8": JWA,
- "9": taskType[TaskFlightinfo[3]],
- "10": fx,
- "11": qw1,
- "12": qw2,
- "13": g1,
- "14": g2,
- "15": g3,
- "19": "",
- "16": jjdq,
- "18": esdq,
- "17": hbdq,
- "20": "",
- "21": "",
- "22": "",
- "23": "",
- "24": postion,
- "25": wx_people, # flightinfodata[22],
- "26": "",
- "27": fx_people, # flightinfodata[23],
- "28": row[1],
- "29": tasksts,
- "30": "",
- "31": type31,
- "32": fj,
- "99": color_code,
- "101": color_code1,
- "102": color_code2,
- "103": color_code3,
- "109": row[5]
- }
- #tableWidgetDispalydata[rowNum] = item_dic
- #rowNum += 1
- return {rowNum:item_dic}
|