ソースを参照

json parsing fixed and order loop processing

Dev Server 1 年間 前
コミット
bd96bd087a
2 ファイル変更37 行追加32 行削除
  1. 23 22
      jsonAndRequest.py
  2. 14 10
      open_template_bot.py

+ 23 - 22
jsonAndRequest.py

@@ -216,28 +216,29 @@ def requestGetList(auth_token, url):
     ordertext=response.json()
     startlist = []
     
-    #if not ordertext:
-    #    print("Empty array")
-    #else:
-    #    for i in ordertext:
-    #        print (i, "PROCESSING")
-    #        try:
-    #            orderticket = OrderTicket(**i)
-    #            print(i, "ORDER ", orderticket)
-    #        except Exception as ex:
-    #            print(ex)
-
-    if ordertext is not None:
-        for order in ordertext:
-            print (order)
-            strorder = str(order).replace("'", '"')
-            strorder = strorder.replace("None", 'null')
-            #parsed_json = ast.literal_eval(order)
-            #print (parsed_json)
-            orderObj = jsonToOrderTicket(strorder)
-            print (orderObj)
-            startlist.append(orderObj)
-            #bot.bot_log(str(datetime.now())+"Заказ успешно добавлен в очередь обработки\n")
+    if not ordertext:
+        print("Empty array")
+    else:
+        for i in ordertext:
+            print (i, "PROCESSING")
+            try:
+                orderticket = OrderTicket(**i)
+                print(i, "ORDER ", orderticket)
+                startlist.append(orderticket)
+            except Exception as ex:
+                print(ex)
+    print (startlist)
+    #if ordertext is not None:
+    #    for order in ordertext:
+    #        print (order)
+    #        strorder = str(order).replace("'", '"')
+    #        strorder = strorder.replace("None", 'null')
+    #        #parsed_json = ast.literal_eval(order)
+    #        #print (parsed_json)
+    #        orderObj = jsonToOrderTicket(strorder)
+    #        print (orderObj)
+    #        startlist.append(orderObj)
+    #        #bot.bot_log(str(datetime.now())+"Заказ успешно добавлен в очередь обработки\n")
 
 
     #print (orderticket)

+ 14 - 10
open_template_bot.py

@@ -55,7 +55,7 @@ def message_handler(conn, mess):
             tasklist.append(orderObj)
             bot.bot_log(str(datetime.now())+" Поступивший заказ успешно добавлен в очередь обработки\n")
 
-def open_bot_template_wait(period, i,localtask):
+def open_bot_template_wait(period,localtask):
     bot.bot_log(botname+" "+str(datetime.now())+" "+"Заказ ожидает\n")
     time.sleep(period)
     
@@ -64,7 +64,7 @@ def open_bot_template_wait(period, i,localtask):
 
     #обязательно данный обработчик должен заканчиваться передачей заказа куда-то на обработку дальше - обратно или другому, иначе оно потеряется
     bot.proceed_status(proceed_to[0],localtask)
-    bot.bot_log(botname+" "+str(datetime.now())+" "+str(i)+" "+"Заказ подождал и возвращен в очередь\n")
+    bot.bot_log(botname+" "+str(datetime.now())+" "+"Заказ подождал и возвращен в очередь\n")
 
 def open_bot_template_process(localtask):
     bot.bot_log(botname+" "+str(datetime.now())+" "+"Заказ в обработчике\n")
@@ -73,29 +73,33 @@ def open_bot_template_process(localtask):
     #localtask.title +=1
 
     bot.proceed_status(proceed_to[1],localtask)
-    bot.bot_log(botname+" "+str(datetime.now())+" "+str(i)+" "+"Заказ успешно обработан\n")
+    bot.bot_log(botname+" "+str(datetime.now())+" "+"Заказ успешно обработан\n")
 
 
 def open_bot_template():
     #print("Тут описывается работа со списком задач в данном статусе")
-    for i in range(len(tasklist)):
+    while (len(tasklist)):
+    #for i in range(len(tasklist)):
         #проверяем элемент tasklist[i]
-        bot.bot_log(botname + " " + datetime.now().strftime('%Y-%m-%d') + " " + str(i) + " " + "Заказ в очереди на обработке\n")
-        print ("EACH TASKLIST", tasklist[i])
-        localtask=tasklist.pop(i)
+        #print (i, len(tasklist))
+        localtask=tasklist.pop(0)
+        bot.bot_log(botname + " " + datetime.now().strftime('%Y-%m-%d') + " "+ "Заказ в очереди на обработке\n")
+        #bot.bot_log(botname + " " + datetime.now().strftime('%Y-%m-%d') + " " + str(i) + " " + "Заказ в очереди на обработке\n")
+        #print ("EACH TASKLIST", tasklist[i])
+        #localtask=tasklist.pop(i)
         
         #если боту почему-то пришла не его заявка - это явно ошибка движения процессов и отдаем в форсмажор - этот обработчик указывать стоит всегда последним
         if (localtask.status!=operating_status):
             bot.proceed_status(proceed_to[-1],localtask)
-            bot.bot_log(botname+" "+str(datetime.now())+" "+str(i)+" "+"Заказ не по адресу, перенаправляем на форсмажор\n")
+            bot.bot_log(botname+" "+str(datetime.now())+" "+"Заказ не по адресу, перенаправляем на форсмажор\n")
             continue
 
         if (localtask.title!="10"):
-            t1=threading.Thread(target=open_bot_template_wait, args=(5,i,localtask))
+            t1=threading.Thread(target=open_bot_template_wait, args=(5,localtask))
             t1.start()
 
         if (localtask.title=="101"):
-            t1=threading.Thread(target=open_bot_template_process, args=(10,i,localtask))
+            t1=threading.Thread(target=open_bot_template_process, args=(10,localtask))
             t1.start()
 
         #если никакие обработчики не подошли - отправляем обратно в очередь