123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- import threading
- import time
- import mysqlhelper
- class DBOperation(threading.Thread):
- def __init__(self):
- threading.Thread.__init__(self)
- self._space_dict = {1:{},2:{},3:{}}
- self._command_dict = {1:{},2:{},3:{}}
- self._db = mysqlhelper.MySqLHelper()
- self._isClose = False
- def close(self):
- self._isClose = True
- def query_command_in_unit(self, unit):
- sql = "select * from command_queue WHERE unit=%s"
- return self._db.selectall(sql, unit)
- def query_command_in_unit_and_type(self, unit,type):
- sql = "select * from command_queue WHERE unit=%s and type=%s ORDER BY statu DESC"
- return self._db.selectall(sql, (unit,type))
- def query_command_all(self):
- sql = "select * from command_queue"
- return self._db.selectall(sql)
- def query_space_in_unit(self,unit):
- sql = "select * from space WHERE unit=%s"
- return self._db.selectall(sql,unit)
- def query_space_all(self):
- sql = "select * from space"
- return self._db.selectall(sql)
- def update_space_status(self,space_id,statu):
- sql = "update space set statu=%s where id=%s"
- return self._db.update(sql,(statu,space_id))
- def clear_space_data(self,space_id):
- sql = "update space set car_number=NULL where id=%s"
- return self._db.update(sql,space_id)
- def query_vehicle_primary_key(self,car_number):
- sql = "select primary_key from vehicle where car_number=%s"
- return self._db.selectall(sql,car_number)
- def delete_command(self,car_number):
- sql = "delete from command_queue where car_number=%s"
- return self._db.delete(sql,car_number)
- def get_space_dict(self):
- return self._space_dict
- def get_command_dict(self):
- return self._command_dict
- def get_pick_command_dict(self):
- return self._command_dict
- def run(self):
- while not self._isClose:
- for unit in range(1,4):
- res = self.query_space_in_unit(unit)
- if len(res) > 0 and self._space_dict[unit] != res:
- self._space_dict[unit] = res
- for unit in range(1,4):
- res = self.query_command_in_unit(unit)
- if len(res) > 0 and self._command_dict[unit] != res:
- self._command_dict[unit] = res
- time.sleep(0.001)
|