Jelajahi Sumber

二期向一期上报放行和销子夹板

maohu 3 minggu lalu
induk
melakukan
8559796fed

+ 51 - 7
Functions/DButilsFunction/checkTFUairplane.py

@@ -3,14 +3,16 @@ import datetime
 import unitls.baseFunction as baseFunction
 from unitls.LogerinTxt import app_logger
 from .flightDB import flightDB
-
-
-def checkTFUairplane(database:flightDB):
+from unitls.settings import Oline_flight
+SameDatabase,HighRefreh,Online_flight_sts=Oline_flight()
+def checkTFUairplane(database:flightDB,fileDB:flightDB):
     try:
         code = {"接机已到位提示","已放行提示","二送已到位提示"}
         code2num = {"接机已到位提示":8,"已放行提示":9,"二送已到位提示":12}
         code2 = {"接机已到位提示", "已放行提示"}
-        code22num = {"接机已到位提示":8, "已放行提示":9}
+        code3 = {"已放行提示"}
+        code4 = {"销子夹板已提示"}
+        code22num = {"接机已到位提示":8, "已放行提示":9, "销子夹板已提示":10}
         #需要建立昨日初始化
         nowDay = datetime.datetime.now().strftime("%Y%m%d")
         nowDay_1 = (datetime.date.today() - datetime.timedelta(days=1)).strftime("%Y%m%d")
@@ -60,6 +62,9 @@ def checkTFUairplane(database:flightDB):
                     APongroud_arr.append(i[0])
             flightsts_flight_ids=database.queryTabel('flightsts{}'.format(nowDayStr),'*',"航班编号 != ''")
             flightinfo_flight_ids = database.queryTabel('TaskFlightinfo{}'.format(nowDayStr), '*', "航班编号 != ''")
+            if fileDB:
+                imagests_infos=fileDB.queryTabel('imagests','*',"备3='%s'"%nowDayStr)
+            #加上在imagests里抽出日期为nowDaystr的内容,且为通过的内容,去赋值销子夹板和飞机放行,飞单上传就是放行,销子夹板是审核通过才打勾,确认是不是准备组
             if len(flightsts_flight_ids) != 0:
                 for flightstskey in flightsts_flight_ids:
                     newdic={"天府飞机":"''"}
@@ -149,7 +154,7 @@ def checkTFUairplane(database:flightDB):
                         newdic={"接机到位":"'已到位'", "放行": "'已放行'"}
                         database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'" % flightstskey[0])
                     for i in code2:
-                        if "1" not in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0 ], 0, code22num[i ]):
+                        if "1" not in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0 ], 0, code22num[i]):
                             newdic={"航班编号":"%s"% flightstskey[0],"警告信息":"","信息状态":"","提示信息":"AMRO:%s%s!%s"%(a,i,now11),"产生时间":"%s"%now,"处理人":"","处理时间":"","变更字段":"","显示对象":"","提示内容":""}
                             database.lazyInsertData('logs', newdic)
                             newdic = {"%s"%i: 1}
@@ -158,7 +163,7 @@ def checkTFUairplane(database:flightDB):
                     if baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0 ], 0, 3) != "已到位" :
                         newdic = {"接机到位": "'已到位'"}
                         database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'" % flightstskey[0])
-                    if "1" not in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0 ], 0, 8):
+                    if "1" not in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0], 0, 8):
                         newdic={"航班编号":"%s"% flightstskey[0],"警告信息":"","信息状态":"","提示信息":"AMRO:%s接机已到位提示!%s"%(a,now11),"产生时间":"%s"%now,"处理人":"","处理时间":"","变更字段":"","显示对象":"","提示内容":""}
                         database.lazyInsertData('logs', newdic)
                         newdic = {"接机已到位提示": 1}
@@ -170,7 +175,7 @@ def checkTFUairplane(database:flightDB):
                         database.lazyInsertData('logs', newdic)
                         newdic = {"已放行提示": 0}
                         database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'"% flightstskey[0])
-                elif  str(flightstskey[0]) in str(flightsts_flight_ids_arr):
+                elif str(flightstskey[0]) in str(flightsts_flight_ids_arr):
                     if "1" in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0 ], 0, 8) and "人工" not in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0 ], 0, 3):
                         newdic = {"接机到位": "''"}
                         database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'" % flightstskey[0])
@@ -186,6 +191,45 @@ def checkTFUairplane(database:flightDB):
                         newdic = {"已放行提示": 0}
                         database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'"% flightstskey[0])
 
+                if fileDB:
+                    if baseFunction.TuplefindInList55(imagests_infos, 1,flightstskey[0], 4,"flightlog") and str(flightstskey[0]) in str(flightsts_flight_ids_arr):#指定taskid的指定类型图片
+                        if "已放行" not in  baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0 ], 0, 4):
+                            newdic = {"放行" : "'二期人工已放行'" }
+                            database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic,"航班编号='%s'" % flightstskey[ 0 ])
+                        for i in code3:
+                            if "1" not in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0 ], 0, code22num[i]):
+                                newdic={"航班编号":"%s"% flightstskey[0],"警告信息":"","信息状态":"","提示信息":"二期照片上传数据:%s/%s%s!%s"%(acno_str,a,i,now11),"产生时间":"%s"%now,"处理人":"","处理时间":"","变更字段":"","显示对象":"","提示内容":""}
+                                database.lazyInsertData('logs', newdic)
+                                newdic = {"%s"%i: 1}
+                                database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'" % flightstskey[0])
+                    elif str(flightstskey[0]) in str(flightsts_flight_ids_arr):
+                        if "1" in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0], 0, 9) and "二期人工已放行" in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0 ], 0, 4):
+                            newdic = {"放行": "''"}
+                            database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'" % flightstskey[0])
+                            newdic={"航班编号":"%s"% flightstskey[0],"警告信息":"","信息状态":"","提示信息":"二期数据:%s/%s状态退回至初始状态!%s"%(acno_str,a,now11),"产生时间":"%s"%now,"处理人":"","处理时间":"","变更字段":"","显示对象":"","提示内容":""}
+                            database.lazyInsertData('logs', newdic)
+                            newdic = {"已放行提示": 0}
+                            database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'"% flightstskey[0])
+
+                    if baseFunction.TuplefindInList555(imagests_infos, 1,flightstskey[0], 4,"xzjb",12,"通过") and str(flightstskey[0]) in str(flightsts_flight_ids_arr):#指定taskid的指定类型图片
+                        if "已取下" not in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0], 0, 4):
+                            newdic = {"销子夹板": "'二期人工已取下'"}
+                            database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic,"航班编号='%s'" % flightstskey[0])
+
+                        for i in code4:
+                            if "1" not in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0], 0, code22num[i]):
+                                newdic={"航班编号":"%s"% flightstskey[0],"警告信息":"","信息状态":"","提示信息":"二期照片上传数据:%s/%s销子夹板照片审核通过提示!%s"%(acno_str,a,now11),"产生时间":"%s"%now,"处理人":"","处理时间":"","变更字段":"","显示对象":"","提示内容":""}
+                                database.lazyInsertData('logs', newdic)
+                                newdic = {"%s"%i: 1}
+                                database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'" % flightstskey[0])
+                    elif str(flightstskey[0]) in str(flightsts_flight_ids_arr):
+                        if "1" in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0], 0, 10) and "二期人工已取下"  in baseFunction.TuplefindInList3(flightsts_flight_ids, flightstskey[0 ], 0, 5):
+                            newdic = {"销子夹板": "''"}
+                            database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'" % flightstskey[0])
+                            newdic={"航班编号":"%s"% flightstskey[0],"警告信息":"","信息状态":"","提示信息":"二期数据:%s/%s销子夹板照片状态退回至初始状态!%s"%(acno_str,a,now11),"产生时间":"%s"%now,"处理人":"","处理时间":"","变更字段":"","显示对象":"","提示内容":""}
+                            database.lazyInsertData('logs', newdic)
+                            newdic = {"销子夹板已提示": 0}
+                            database.lazyUpdateItem('flightsts{}'.format(nowDayStr), newdic, "航班编号='%s'"% flightstskey[0])
                 ECSJ_worksts_str = baseFunction.TuplefindInList3(flightinfo_flight_ids , flightstskey[0 ] , 0 , 20)
                 ECSJ_worksts_STR = ECSJ_worksts_str if len(ECSJ_worksts_str) != 0 else 0
                 ECSJ_worksts = int(ECSJ_worksts_STR) if ECSJ_worksts_STR != "" else 0

+ 1 - 1
Functions/DButilsFunction/update_Pglist.py

@@ -20,7 +20,7 @@ def update_Pglist(database:flightDB,datatime: str,bc:str,jsonData):
                     if col not in newdic.keys():
                         newdic[col] = ''
                 database.lazyInsertData("pglist{}".format(nowDayStr),newdic)
-                names = row["NAME"]
+                names.append(row["NAME"])
         database.FunctionCommit()
     except Exception as e:
         database.FunctionCommit()

+ 5 - 4
ServerWithJWT.py

@@ -446,6 +446,7 @@ async def getFlightData2():
         global singlePeopleNotice,loaclseverip
         db = flaskDBUtils.flaskDB(host=dbhost, port=dbport, user=dbuser, password=dbpassword, database=database)
         fdb = flightDB(host=dbhost, port=dbport, user=dbuser, password=dbpassword, database=databaseDB4)
+        onlinefileDB=None
         workLoad = flightDB(host=dbhost, port=dbport, user=dbuser, password=dbpassword, database=databaseWorkLoad)
         if Online_flight_sts == "1":
             onlinefileDB = flightDB(host=online_host, port=dbport, user=dbuser, password=dbpassword, database=databasefileDB)
@@ -519,14 +520,14 @@ async def getFlightData2():
                             InitFlightDatabase(fdb,workLoad, nowDay_1)
                             sortFlighttime(fdb,workLoad)
                             sortFlighttime2(fdb,workLoad)
-                            checkTFUairplane(fdb)
+                            checkTFUairplane(fdb,onlinefileDB)
                             checkWorkerlaod_new(fdb,workLoad,nowDayStr,nowDay_1)
                             checkFlightAlert(fdb, singlePeopleNotice)
                             dingdingDelete_flight(fdb)
                             dingdingFlightsts(fdb)
                             dingdinginfoget(fdb)
                             CalledChecked(fdb)
-                            if Online_flight_sts == "1" and  SameDatabase == "0":
+                            if Online_flight_sts == "1" and SameDatabase == "0":
                                 res = UpdatePeopleScheduleFromOnline(fdb, onlinefileDB)
                                 if res:
                                     updatetimer()
@@ -552,7 +553,7 @@ async def getFlightData2():
                             checkFlightplan(fdb,workLoad)
                             sortFlighttime(fdb,workLoad)
                             sortFlighttime2(fdb,workLoad)
-                            checkTFUairplane(fdb)
+                            checkTFUairplane(fdb,onlinefileDB)
                             checkWorkerlaod_new(fdb,workLoad,nowDayStr,nowDay_1)
                             checkFlightAlert(fdb, singlePeopleNotice)
                             dingdingDelete_flight(fdb)
@@ -574,7 +575,7 @@ async def getFlightData2():
                     InitFlightDatabase(fdb,workLoad, nowDay_1)
                     sortFlighttime(fdb,workLoad)
                     sortFlighttime2(fdb,workLoad)
-                    checkTFUairplane(fdb)
+                    checkTFUairplane(fdb,onlinefileDB)
                     checkWorkerlaod_new(fdb,workLoad,nowDayStr,nowDay_1)
                     checkFlightAlert(fdb, singlePeopleNotice)
                     dingdingDelete_flight(fdb)

+ 5 - 5
config.ini

@@ -1,10 +1,10 @@
 #QT_SEVER_CONFIG#
 #=====================#
 [DBserver]
-local_host =  192.168.2.25
+local_host =  192.168.2.53
 local_port = 9527
 #online_host = 192.168.2.4
-online_host = 192.168.2.49
+online_host = 192.168.2.53
 #online_host = 222.209.89.138
 online_port =9527
 flightdb4 = flightDB
@@ -29,9 +29,9 @@ Class=测试服务器,非管理员通知勿用
 #=====================#
 [Online_flight]
 #是否开启在线编辑同步
-Online_flight_sts=0
+Online_flight_sts=1
 #当不是同一个数据库,需要本地从云端获取写入peopleschule  主服务器设置,备用设置0
-SameDatabase=0
+SameDatabase=1
 #在线编辑状态,将提高刷新频率,主服务器设置,备用设置0,只在SameDatabase为1下启用
 HighRefreh=0
 
@@ -39,7 +39,7 @@ HighRefreh=0
 #=====================#
 [Main_Sever]
 MainSever=192.168.2.25
-MainDatabase=192.168.2.25
+MainDatabase=192.168.2.53
 
 #======================-#
 #####====请勿随意修改===####

+ 16 - 0
unitls/baseFunction.py

@@ -72,6 +72,22 @@ def TuplefindInList5(lists: list, numb, args,numb2, args2):  #且双条件查询
             if args == l[numb] and args2 == l[numb2]:
                 res.append(l)
     return res
+def TuplefindInList55(lists: list, numb, args,numb2, args2):  #且双条件查询
+    res = []
+    if lists:
+        for l in lists:
+            if args == l[numb] and args2 == l[numb2]:
+                res.append(l)
+                break
+    return res
+def TuplefindInList555(lists: list, numb, args,numb2, args2,numb3, args3):  #且双条件查询
+    res = []
+    if lists:
+        for l in lists:
+            if args == l[numb] and args2 == l[numb2]and args3 == l[numb3]:
+                res.append(l)
+                break
+    return res
 
 
 def TuplefindInList6(lists: list, args, args2, args3, numb):  # 或三条件查询