tableWidgetDispaly_66.py 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555
  1. import concurrent.futures
  2. from unitls.LogerinTxt import app_logger
  3. from unitls.baseFunction import TuplefindInList , TuplefindInList11 , TuplefindInList3
  4. from .flightDB import flightDB
  5. from .getSortFlightdata import getSortFlightdata
  6. from .waringMessageID import waringMessageID
  7. def tableWidgetDispaly(fdb:flightDB,selectedtime,date):#1,昨天。2今天3明天4其他
  8. try:
  9. tableWidgetDispalydata = {}
  10. nowDayStr = selectedtime
  11. sorttable = getSortFlightdata(fdb, selectedtime, "sortFlight")
  12. TaskFlightinfoAlldata = fdb.getAlldata('TaskFlightinfo{}'.format(nowDayStr))
  13. flightStsDataAll = fdb.getAlldata('flightsts{}'.format(nowDayStr))
  14. peopleScheduleDataAll = fdb.getAlldata("peopleSchedule{}".format(nowDayStr))
  15. workjobDataAll = fdb.getAlldata('workjob')
  16. tasklistall = fdb.getAlldata('TaskList{}'.format(nowDayStr))
  17. flightSearchALl = fdb.sort_queryTable2('*','FlightSearch{}'.format(nowDayStr),"FLIGHT_ID !=''",'ACNO','ASC','STD','ASC')
  18. flightplan= fdb.getAlldata("flightplaninfo{}".format(nowDayStr))
  19. waringMessageIDs = waringMessageID(fdb)
  20. executor = concurrent.futures.ThreadPoolExecutor()
  21. all_task = []
  22. for i in range(len(sorttable)):
  23. all_task.append(executor.submit(functionDisaplay, sorttable[i],i, TaskFlightinfoAlldata,workjobDataAll, flightStsDataAll,peopleScheduleDataAll,waringMessageIDs,tasklistall,flightSearchALl,flightplan))
  24. for future in concurrent.futures.as_completed(all_task):
  25. data = future.result()
  26. tableWidgetDispalydata.update(data)
  27. #t8 = datetime.datetime.now()
  28. #print(f'【航班刷新】【处理数据】:{t8 - t7}')
  29. newdic = {"A": '"{}"'.format(tableWidgetDispalydata)}
  30. if date == "1":
  31. fdb.upDateItem("display", newdic, "ID = '1'")
  32. elif date == "2":
  33. fdb.upDateItem("display", newdic, "ID = '2'")
  34. elif date == "3":
  35. fdb.upDateItem("display", newdic, "ID = '3'")
  36. #t9 = datetime.datetime.now()
  37. #print(f'【航班刷新】【保存数据】:{t9 - t8}')
  38. #print(f'【航班刷新】【总时间】:{t9 - t1}')
  39. return tableWidgetDispalydata
  40. except Exception as e:
  41. #dingding_alert(traceback.format_exc())
  42. app_logger.log_error(e)
  43. def functionDisaplay(row,rowNum,TaskFlightinfoAlldata, workjobDataAll, flightStsDataAll,peopleScheduleDataAll, waringMessageID,TaskListAll,flightSearchALl,flightplan):
  44. dic=["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23",
  45. "24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39","40","41","42","43","44",
  46. "45","46","47","48","49","50","51","52","53","54","55","56","57","58","59","60","61","62","63","64","65"]
  47. TaskFlightinfo = TuplefindInList(TaskFlightinfoAlldata,row[1])
  48. infos="仅支持查询川航航班"
  49. dq = "--"
  50. dqxq = "电签工卡不适用"
  51. if TaskFlightinfo[21] and ('3U' in TaskFlightinfo[21] or 'CSC' in TaskFlightinfo[21]):
  52. singleflightsearch = TuplefindInList11(flightSearchALl, TaskFlightinfo[1],2)
  53. for info in singleflightsearch:
  54. if info[8] != "":
  55. time1="[实]"+info[8][-8:-3]
  56. elif info[7] != "":
  57. time1="[预]"+info[7][-8:-3]
  58. else:
  59. time1="[计]"+info[6][-8:-3]
  60. if info[11] !="":
  61. time2="[实]"+info[11][-8:-3]
  62. elif info[10] != "":
  63. time2="[预]"+info[10][-8:-3]
  64. else:
  65. time2="[计]"+info[9][-8:-3]
  66. mesg=info[4]+time1+"--"+time2+info[5]
  67. infos = mesg if infos == "仅支持查询川航航班" else infos+"\n"+mesg
  68. tasksts = TuplefindInList3(TaskListAll, TaskFlightinfo[0], 0, 8)
  69. if TaskFlightinfo[3] == "AP":
  70. dq = "√" if 'P-PRE-FLIGHT' in str(tasksts) and 'DEPARTURE-SERVICE' in str(tasksts) else ""
  71. if 'P-PRE-FLIGHT' in str(tasksts) and 'DEPARTURE-SERVICE' in str(tasksts):
  72. dqxq="航前工卡√\n送机勤务工卡√"
  73. elif 'P-PRE-FLIGHT' in str(tasksts):
  74. dqxq="航前工卡√\n送机勤务工卡X"
  75. elif 'DEPARTURE-SERVICE' in str(tasksts):
  76. dqxq="航前工卡X\n送机勤务工卡√"
  77. else:
  78. dqxq = "航前工卡X\n送机勤务工卡X"
  79. elif TaskFlightinfo[3] == "TR" and "接" in row[3]:
  80. dq = "√" if 'ARRIVAL-SERVICE' in str(tasksts) else ""
  81. dqxq = "接机勤务工卡√" if 'ARRIVAL-SERVICE' in str(tasksts) else "接机勤务工卡X"
  82. elif TaskFlightinfo[3] in ["TAF","停场"]:
  83. dq = "--"
  84. dqxq= "暂无完成的电签工卡"
  85. elif TaskFlightinfo[3] == "TR" and "送" in row[3]:
  86. dq = "√" if 'P-TRANSIT' in str(tasksts) and 'DEPARTURE-SERVICE' in str(tasksts) else ""
  87. if 'P-TRANSIT' in str(tasksts) and 'DEPARTURE-SERVICE' in str(tasksts):
  88. dqxq = "短停工卡√\n送机勤务工卡√"
  89. elif 'P-TRANSIT' in str(tasksts):
  90. dqxq = "短停工卡√\n送机勤务工卡X"
  91. elif 'DEPARTURE-SERVICE' in str(tasksts):
  92. dqxq ="短停工卡X\n送机勤务工卡√"
  93. else:
  94. dqxq = "短停工卡X\n送机勤务工卡X"
  95. elif TaskFlightinfo[3] == "AF":
  96. dq = "√" if 'P-POST-FLIGHT' in str(tasksts) and 'ARRIVAL-SERVICE' in str(tasksts) else ""
  97. if 'P-POST-FLIGHT' in str(tasksts) and 'ARRIVAL-SERVICE' in str(tasksts):
  98. dqxq = "航后工卡√\n接机勤务工卡√"
  99. elif 'P-POST-FLIGHT' in str(tasksts):
  100. dqxq = "航后工卡√\n接机勤务工卡X"
  101. elif 'ARRIVAL-SERVICE' in str(tasksts):
  102. dqxq = "航后工卡X\n接机勤务工卡√"
  103. else:
  104. dqxq = "航后工卡X\n接机勤务工卡X"
  105. #print(tasksts)
  106. #print(singleflightsearch)
  107. e = ""
  108. F = ""
  109. if TaskFlightinfo != None and TaskFlightinfo[16] != "":
  110. e = "保留"
  111. if TaskFlightinfo != None :
  112. takinfo = TuplefindInList(workjobDataAll, TaskFlightinfo[0])
  113. JWA = TaskFlightinfo[10]
  114. JWB = TaskFlightinfo[11]
  115. bayofflightplan_A = "飞机排班系统机位:" + TuplefindInList3(flightplan, TaskFlightinfo[39].replace("PBCZ", ""), 0, 7)
  116. bayofflightplan_B = "飞机排班系统机位:" + TuplefindInList3(flightplan, TaskFlightinfo[40].replace("PBCZ", ""), 0, 8)
  117. bayofflightplan_C = "飞机排班系统机位:N/A"
  118. if JWA =="" and JWB !="":
  119. JWA=JWB
  120. elif JWB =="" and JWA !="":
  121. JWB=JWA
  122. if TaskFlightinfo[18] != "":
  123. #takinfo = fdb.queryTabel('workjob', '*', "任务编号= '%s'" % TaskFlightinfo[0][21])
  124. F = "工作包无法正常获取请通过AMRO人工查询"
  125. if takinfo != None and takinfo[4] != "":
  126. F = takinfo[4] + "\n<+++++++++++++++++++++++++++++++++++++++++>\n" + takinfo[6] + "\n<+++++++++++++++++++++++++++++++++++++++++>\n" + takinfo[7]
  127. elif takinfo != None:
  128. F = "工作包暂未获取请点击右键工作包查询后再查看"
  129. else:
  130. JWA =""
  131. JWB =""
  132. wx_people = ""
  133. fx_people = ""
  134. ecsj_people = ""
  135. ta_td = ""
  136. type31 = ""
  137. if TaskFlightinfo != None:
  138. wx_people = TaskFlightinfo[12]
  139. fx_people = TaskFlightinfo[13]
  140. ecsj_people = TaskFlightinfo[19]
  141. ta_td = TaskFlightinfo[9]
  142. type31 = TaskFlightinfo[3]
  143. flightstsdata = TuplefindInList(flightStsDataAll, row[1]) if TuplefindInList(flightStsDataAll, row[1]) != None else ["", "","", "", "", "","", "", "", "","", "", "", ""]
  144. jjdw = "√" if flightstsdata[3] != "" else ""
  145. FX = "√" if flightstsdata[4] != "" else ""
  146. XJ = "√" if flightstsdata[5] != "" else ""
  147. ESDW = "√" if flightstsdata[7] != "" else ""
  148. if TaskFlightinfo[3] == "AF":
  149. postion = str(TaskFlightinfo[23]).split("</br>")[0]
  150. elif TaskFlightinfo[3] == "TR" or TaskFlightinfo[3] == "TAF":
  151. postion = str(TaskFlightinfo[23]).replace("</br>天府","").replace("</br>成都天府","")
  152. elif "</br>" in str(TaskFlightinfo[23]):
  153. postion = str(TaskFlightinfo[23]).split("</br>")[1]
  154. else:
  155. postion = "无信息"
  156. if TaskFlightinfo[4] != "" and (TaskFlightinfo[8] == "" or TaskFlightinfo[30] == ""): #如果sta不为空,且eta或flying为空,显示sta
  157. a = TaskFlightinfo[4][-8:-3]
  158. else:
  159. a=""
  160. if TaskFlightinfo[6] != "" : #当ata不为空显示ata,eta不为空显示eta否则为空
  161. b = TaskFlightinfo[6][-8:-3]
  162. elif TaskFlightinfo[8] != "":
  163. b = TaskFlightinfo[8][-8:-3]
  164. else:
  165. b = ''
  166. if TaskFlightinfo[7] != "" :
  167. c = '[实]' + TaskFlightinfo[7][-8:-3]
  168. elif TaskFlightinfo[5] != "":
  169. c = '[预]' + TaskFlightinfo[5][-8:-3]
  170. else:
  171. c = ''
  172. QColorList = ['black', 'white', '#F3ECD9', '#BAD1D1', '#DDE2E3', '#647277', '#00FFFF', 'blue']
  173. #QColorList = ['black', 'white', '#F3ECD9', '#BAD1D1', '#DDE2E3', '#647277', 'red', 'blue']
  174. waringMessageIDs = waringMessageID
  175. if str(row[1]) in str(waringMessageIDs["通用警告"]):
  176. color_code = QColorList[6]
  177. color_code1 = QColorList[0]
  178. color_code2 = QColorList[1]
  179. color_code3 = QColorList[1]
  180. elif row[3] == "短停接" and (str(row[1]) in str(waringMessageIDs["到位警告"]) or str(row[1]) in str(waringMessageIDs["ETA"]) or str(row[1]) in str(waringMessageIDs["BAY_2"])):
  181. color_code = QColorList[6]
  182. color_code1 = QColorList[0]
  183. color_code2 = QColorList[1]
  184. color_code3 = QColorList[1]
  185. elif row[3] == "短停送" and (str(row[1]) in str(waringMessageIDs["二送警告"]) or str(row[1]) in str(waringMessageIDs["TD"])):
  186. color_code = QColorList[6]
  187. color_code1 = QColorList[0]
  188. color_code2 = QColorList[1]
  189. color_code3 = QColorList[1]
  190. elif row[5] == "4":
  191. color_code = QColorList[5]
  192. color_code1 = QColorList[1]
  193. color_code2 = QColorList[1]
  194. color_code3 = QColorList[1]
  195. elif row[5] == "3":
  196. color_code = QColorList[3]
  197. color_code1 = QColorList[0]
  198. color_code2 = QColorList[0]
  199. color_code3 = QColorList[0]
  200. elif row[5] == "2":
  201. color_code = QColorList[2]
  202. color_code1 = QColorList[0]
  203. color_code2 = QColorList[0]
  204. color_code3 = QColorList[0]
  205. elif row[5] == "1":
  206. if (rowNum + 2) % 2 == 0:
  207. color_code = QColorList[4]
  208. else:
  209. color_code = QColorList[1]
  210. color_code1 = QColorList[0]
  211. color_code2 = QColorList[6]
  212. color_code3 = QColorList[7]
  213. findid = row[0] + "-A"
  214. peopleSchedule = TuplefindInList(peopleScheduleDataAll, findid)
  215. if peopleSchedule != None:
  216. fx = peopleSchedule[3]
  217. qw1 = peopleSchedule[4]
  218. qw2 = peopleSchedule[5]
  219. g1 = peopleSchedule[6]
  220. g2 = peopleSchedule[7]
  221. g3 = peopleSchedule[8]
  222. fj = str(peopleSchedule[9])
  223. else:
  224. fx = ""
  225. qw1 = ""
  226. qw2 = ""
  227. g1 = ""
  228. g2 = ""
  229. g3 = ""
  230. fj = ""
  231. if "随机离港" in str(fj):
  232. SJDW = "√" if flightstsdata[6] != "" else ""
  233. else:
  234. SJDW ="--"
  235. ggy = "【高高原】" if TaskFlightinfo[29] == "Y" else ""
  236. JBRY = "交班人员:" + TaskFlightinfo[37] if TaskFlightinfo[37] != "" else "无交班人员"
  237. if TaskFlightinfo[3] == "AF":
  238. item_dic = {"1": rowNum,
  239. "3": TaskFlightinfo[1],
  240. "4": TaskFlightinfo[1]+"\n"+TaskFlightinfo[21],
  241. "5": TaskFlightinfo[26],
  242. "6": TaskFlightinfo[26]+"\n"+TaskFlightinfo[25],
  243. "7": TaskFlightinfo[25],
  244. "8": JWA,
  245. "9": TaskFlightinfo[21],
  246. "11": a,
  247. "13": b,
  248. "15": "--",
  249. "17": TaskFlightinfo[24],
  250. "18": JWA,
  251. "19": row[3],
  252. "21": fx,
  253. "23": qw1,
  254. "25": qw2,
  255. "27": g1,
  256. "29": g2,
  257. "31": g3,
  258. "33": jjdw,
  259. "35": "--",
  260. "37": "--",
  261. "38":dq,
  262. "62":infos,
  263. "40":dqxq,
  264. "41": "--",
  265. "43": e,
  266. "45": F,
  267. "47": postion + ggy,
  268. "49": wx_people, # flightinfodata[22],
  269. "50":JBRY,
  270. "51": fx_people, # flightinfodata[23],
  271. "53": row[1],
  272. "55": row[1],
  273. "57": ta_td,
  274. "59": type31,
  275. "61": fj,
  276. "88": bayofflightplan_A,
  277. "99": color_code,
  278. "101": color_code1,
  279. "102": color_code2,
  280. "103": color_code3,
  281. "109": row[5],
  282. "119": row[2], #保障时间
  283. "129": row[4],#航日期
  284. "139": row[0]+"-A",#sor编号
  285. }
  286. elif TaskFlightinfo[3] == "停场":
  287. item_dic = {"1": rowNum,
  288. "3": TaskFlightinfo[1],
  289. "4": TaskFlightinfo[1]+"\n"+TaskFlightinfo[21],
  290. "5": TaskFlightinfo[26],
  291. "6": TaskFlightinfo[26]+"\n"+TaskFlightinfo[25],
  292. "7": TaskFlightinfo[25],
  293. "8": TaskFlightinfo[10],
  294. "9": "--",
  295. "11": a,
  296. "13": "--",
  297. "15": "--",
  298. "17": "--",
  299. "18": TaskFlightinfo[10],
  300. "19": row[3],
  301. "21": fx,
  302. "23": qw1,
  303. "25": qw2,
  304. "27": g1,
  305. "29": g2,
  306. "31": g3,
  307. "33": "--",
  308. "35": "--",
  309. "37": "--",
  310. "39": "--",
  311. "41": "--",
  312. "43": "--",
  313. "45": "--",
  314. "47": "停场",
  315. "49": "--", # flightinfodata[22],
  316. "50":JBRY,
  317. "51": "--", # flightinfodata[23],
  318. "53": row[1],
  319. "55": "TSK",
  320. "57": "--",
  321. "59": "--",
  322. "61": fj,
  323. "88": bayofflightplan_C,
  324. "99": color_code,
  325. "101": color_code1,
  326. "102": color_code2,
  327. "103": color_code3,
  328. "109": row[5],
  329. "119": row[2], #保障时间
  330. "129": row[4],#航日期
  331. "139": row[0]+"-A",#sor编号
  332. }
  333. elif TaskFlightinfo[3] == "AP":
  334. item_dic = {"1": rowNum,
  335. "3": TaskFlightinfo[1],
  336. "4": TaskFlightinfo[1]+"\n"+TaskFlightinfo[21],
  337. "5": TaskFlightinfo[26],
  338. "6": TaskFlightinfo[26]+"\n"+TaskFlightinfo[25],
  339. "7": TaskFlightinfo[25],
  340. "8": JWB,
  341. "9": TaskFlightinfo[21],
  342. "11": "",
  343. "13": "",
  344. "15": c,
  345. "17": TaskFlightinfo[24],
  346. "18": JWB,
  347. "19": row[3],
  348. "21": fx,
  349. "23": qw1,
  350. "25": qw2,
  351. "27": g1,
  352. "29": g2,
  353. "31": g3,
  354. "33": jjdw,
  355. "35": FX,
  356. "37": XJ,
  357. "38":dq,
  358. "62":infos,
  359. "40":dqxq,
  360. "41": SJDW,
  361. "43": e,
  362. "45": F,
  363. "47": postion + ggy,
  364. "49": wx_people, # flightinfodata[22],
  365. "50":JBRY,
  366. "51": fx_people, # flightinfodata[23],
  367. "53": row[1],
  368. "55": row[1],
  369. "57": ta_td,
  370. "59": type31,
  371. "61": fj,
  372. "88": bayofflightplan_B,
  373. "99": color_code,
  374. "101": color_code1,
  375. "102": color_code2,
  376. "103": color_code3,
  377. "109": row[5],
  378. "119": row[2], #保障时间
  379. "129": row[4],#航日期
  380. "139": row[0]+"-A",#sor编号
  381. }
  382. elif (TaskFlightinfo[3] == "TR" or TaskFlightinfo[3] == "TAF") and (row[3] == "短停接" or row[3] == "特后前接"):
  383. item_dic = {"1": rowNum,
  384. "3": TaskFlightinfo[1],
  385. "4": TaskFlightinfo[1]+"\n"+TaskFlightinfo[21],
  386. "5": TaskFlightinfo[26],
  387. "6": TaskFlightinfo[26]+"\n"+TaskFlightinfo[25],
  388. "7": TaskFlightinfo[25],
  389. "8": JWA,
  390. "9": TaskFlightinfo[21],
  391. "11": a,
  392. "13": b,
  393. "15": c,
  394. "17": TaskFlightinfo[24],
  395. "18": JWA,
  396. "19": row[3],
  397. "21": fx,
  398. "23": qw1,
  399. "25": qw2,
  400. "27": g1,
  401. "29": g2,
  402. "31": g3,
  403. "33": jjdw,
  404. "35": FX,
  405. "37": "--",
  406. "38":dq,
  407. "62":infos,
  408. "40":dqxq,
  409. "41": SJDW,
  410. "43": e,
  411. "45": F,
  412. "47": postion + ggy,
  413. "49": wx_people, # flightinfodata[22],
  414. "50":JBRY,
  415. "51": fx_people, # flightinfodata[23],
  416. "53": row[1],
  417. "55": row[1],
  418. "57": ta_td,
  419. "59": type31,
  420. "61": fj,
  421. "88": bayofflightplan_A,
  422. "99": color_code,
  423. "101": color_code1,
  424. "102": color_code2,
  425. "103": color_code3,
  426. "109": row[5],
  427. "119": row[2], #保障时间
  428. "129": row[4],#航日期
  429. "139": row[0]+"-A",#sor编号
  430. }
  431. elif (TaskFlightinfo[3] == "TR" or TaskFlightinfo[3] == "TAF") and (row[3] == "短停送" or row[3] == "特后前送"):
  432. item_dic = {"1": rowNum,
  433. "3": TaskFlightinfo[1],
  434. "4": TaskFlightinfo[1]+"\n"+TaskFlightinfo[21],
  435. "5": TaskFlightinfo[26],
  436. "6": TaskFlightinfo[26]+"\n"+TaskFlightinfo[25],
  437. "7": TaskFlightinfo[25],
  438. "8": JWA,
  439. "9": TaskFlightinfo[21],
  440. "11": a,
  441. "13": b,
  442. "15": c,
  443. "17": TaskFlightinfo[24],
  444. "18": JWA,
  445. "19": row[3],
  446. "21": fx,
  447. "23": qw1,
  448. "25": qw2,
  449. "27": g1,
  450. "29": g2,
  451. "31": g3,
  452. "33": ESDW,
  453. "35": FX,
  454. "37": "--",
  455. "38":dq,
  456. "62":infos,
  457. "40":dqxq,
  458. "41": SJDW,
  459. "43": e,
  460. "45": F,
  461. "47": postion + ggy,
  462. "49": ecsj_people, # flightinfodata[22],
  463. "50":JBRY,
  464. "51": fx_people, # flightinfodata[23],
  465. "53": row[1],
  466. "55": row[1],
  467. "57": ta_td,
  468. "59": type31,
  469. "61": fj,
  470. "88": bayofflightplan_B,
  471. "99": color_code,
  472. "101": color_code1,
  473. "102": color_code2,
  474. "103": color_code3,
  475. "109": row[5],
  476. "119": row[2], #保障时间
  477. "129": row[4],#航日期
  478. "139": row[0]+"-A",#sor编号
  479. }
  480. else:
  481. item_dic = {"1": rowNum,
  482. "3": TaskFlightinfo[1],
  483. "4": TaskFlightinfo[1]+"\n"+TaskFlightinfo[21],
  484. "5": TaskFlightinfo[26],
  485. "6": TaskFlightinfo[26]+"\n"+TaskFlightinfo[25],
  486. "7": TaskFlightinfo[25],
  487. "8": JWA,
  488. "9": TaskFlightinfo[21],
  489. "11": a,
  490. "13": b,
  491. "15": c,
  492. "17": TaskFlightinfo[24],
  493. "18": JWA,
  494. "19": row[3],
  495. "21": fx,
  496. "23": qw1,
  497. "25": qw2,
  498. "27": g1,
  499. "29": g2,
  500. "31": g3,
  501. "33": jjdw,
  502. "35": FX,
  503. "37": "--",
  504. "38":dq,
  505. "62":infos,
  506. "40": dqxq,
  507. "41": SJDW,
  508. "43": e,
  509. "45": F,
  510. "47": postion + ggy,
  511. "49": wx_people, # flightinfodata[22],
  512. "50": JBRY,
  513. "51": fx_people, # flightinfodata[23],
  514. "53": row[1],
  515. "55": row[1],
  516. "57": ta_td,
  517. "59": type31,
  518. "61": fj,
  519. "88": bayofflightplan_A,
  520. "99": color_code,
  521. "101": color_code1,
  522. "102": color_code2,
  523. "103": color_code3,
  524. "109": row[5],
  525. "119": row[2], #保障时间
  526. "129": row[4],#航日期
  527. "139": row[0]+"-A",#sor编号
  528. }
  529. for i in dic:
  530. if i not in item_dic.keys():
  531. item_dic[i] = ''
  532. #tableWidgetDispalydata[rowNum] = item_dic
  533. #rowNum += 1
  534. # print(rowNum)
  535. # print(item_dic)
  536. # print({rowNum:item_dic})
  537. return {rowNum:item_dic}