def show_route(self, name, ID):
        d_date, risk, route = self.sim.get_plan(ID)
        text = ''
        one_day = datetime.timedelta(days=1)
        E2C = {'BUS': '汽车', 'TRAIN': '火车', 'AIRPLANE': '飞机'}
        text += f'{name},您好!\n\n'
        if len(route) > 0:
            prev = int(d_date.strftime('%H'))
            text += f'为您规划的最佳路线如下:\n'
            for part in route:
                if part['origin'] != part['destination']:
                    if part['departure_time'] < prev:
                        d_date += one_day
                    text += f"{d_date.strftime('%m')}月{d_date.strftime('%d')}日{part['departure_time']:02}时 - "
                    if part['arrival_time'] < part['departure_time']:
                        d_date += one_day
                    text += f"{d_date.strftime('%m')}月{d_date.strftime('%d')}日{part['arrival_time']:02}时  " \
                            f"{part['origin']} --> {part['destination']}  {E2C[part['type']]}\n"
                    prev = part['arrival_time']
            text += f"该路线的风险总值为:{risk}"
        else:
            text += f'非常抱歉,基于您当前的选择,系统无法为您找到合适的路线。'
            self.logTextBrowser.append(f"未找到符合用户{name}(ID:{ID})要求的路线")
            logger.get_log(f"未找到符合用户{name}(ID:{ID})要求的路线")

        font = QtGui.QFont()
        font.setFamily("新宋体")
        font.setPointSize(11)
        self.routeTextBrowser.setFont(font)
        self.routeTextBrowser.setText(text)
 def stateSearchButton_clicked(self):
     ID = self.stateSearchIDLineEdit.text()
     if ID == '':
         QtWidgets.QMessageBox.warning(self.centralwidget, '注意',
                                       '身份证号不能为空!',
                                       QtWidgets.QMessageBox.Ok,
                                       QtWidgets.QMessageBox.Ok)
     else:
         state = self.sim.get_state(ID, self.time_now)
         font = QtGui.QFont()
         font.setFamily("新宋体")
         font.setPointSize(12)
         self.stateSearchTextBrowser.setFont(font)
         E2C = {'BUS': '汽车', 'TRAIN': '火车', 'AIRPLANE': '飞机'}
         if state != None:
             if state['type'] == 'STAY':
                 text = f"旅客当前停留在{state['origin']}"
             else:
                 text = f"旅客当前处于{state['origin']}前往{state['destination']}的{E2C[state['type']]}上"
             self.stateSearchTextBrowser.setText(text)
             self.logTextBrowser.append(f"查询旅客(ID:{ID})状态," + text)
             logger.get_log(f"查询旅客(ID:{ID})状态," + text)
         else:
             QtWidgets.QMessageBox.warning(self.centralwidget, '注意',
                                           '抱歉,您查找的旅客不存在,请检查您的输入是否有误。',
                                           QtWidgets.QMessageBox.Ok,
                                           QtWidgets.QMessageBox.Ok)
示例#3
0
文件: decorators.py 项目: prior/hspy
 def _view(request, *args, **kwargs):
     authenticate = getattr(settings, 'HUBSPOT_MARKETPLACE_AUTH', {}).get('SECRET_KEY', False)
     if authenticate and not getattr(request, 'marketplace', None):
         logger.get_log('marketplace_decorator').error(AUTH_ERROR)
         return HttpResponse(status=401)
     else:
         return view_func(request, *args, **kwargs)
示例#4
0
def generic_parse(
    path,
    root_name,
    force_list=(),
    namespaces=DCP_SETTINGS['xmlns']
):
    """ Parse an XML and returns a Python Dictionary """
    try:
        res_dict = parse_xml(
            path,
            namespaces=namespaces,
            force_list=force_list)

        if res_dict and root_name in res_dict:
            node = res_dict[root_name]
            discover_schema(node)

            return {
                'FileName': os.path.basename(path),
                'FilePath': path,
                'Info': {
                    root_name: node
                }
            }
    except Exception as e:
        get_log().info("Error parsing XML {} : {}".format(path, str(e)))
示例#5
0
文件: decorators.py 项目: lcgapp/hspy
 def _view(request, *args, **kwargs):
     authenticate = getattr(settings, 'HUBSPOT_MARKETPLACE_AUTH',
                            {}).get('SECRET_KEY', False)
     if authenticate and not getattr(request, 'marketplace', None):
         logger.get_log('marketplace_decorator').error(AUTH_ERROR)
         return HttpResponse(status=401)
     else:
         return view_func(request, *args, **kwargs)
示例#6
0
def upsyn(flight, farm):
    try:
        get_log("Downsync button",
                message="Start downsync {}".format(message),
                infol=1)
        upsyn = improc.qc.syncer.downsync_registration(flight, farm)
    except Exception as e:
        get_log("Downsync button",
                "Failed updated ref {}, the error is : {}".format(message, e),
                errorl=1)
        print(e)
    return
    def startButton_clicked(self):
        remainingTime = self.timer.remainingTime()
        self.timer.stop()
        name = self.nameLineEdit.text()
        ID = self.idLineEdit1.text()
        origin = self.originCombo.currentText()
        destination = self.destinationCombo.currentText()
        limit = self.strategyRadioButton2.isChecked()
        if limit:
            time_limit = int(self.daySpin.text()[:-1]) * 24 + int(
                self.hourSpin.text()[:-1])
        else:
            time_limit = 3 * 24
        if name == '' or ID == '':
            QtWidgets.QMessageBox.warning(self.centralwidget, '注意',
                                          '姓名和身份证号不能为空!',
                                          QtWidgets.QMessageBox.Ok,
                                          QtWidgets.QMessageBox.Ok)
        elif origin == destination:
            QtWidgets.QMessageBox.warning(self.centralwidget, '注意',
                                          '出发地和目的地不能相同!',
                                          QtWidgets.QMessageBox.Ok,
                                          QtWidgets.QMessageBox.Ok)
        elif time_limit <= 0:
            QtWidgets.QMessageBox.warning(self.centralwidget, '注意',
                                          '时间限制必须大于零!',
                                          QtWidgets.QMessageBox.Ok,
                                          QtWidgets.QMessageBox.Ok)
        else:

            traveler = {
                'name': name,
                'ID': ID,
                'origin': origin,
                'destination': destination,
                'departure_date': self.time_now,
                'time_limit': time_limit
            }
            self.nameLineEdit.clear()
            self.idLineEdit1.clear()
            if self.sim.new_traveler(traveler):
                self.draw_path(self.sim.get_all_routes())
                state = self.sim.get_state(ID, self.time_now)
                self.animation = self.anima(state, remainingTime - 50)
                self.animation.start()
                self.logTextBrowser.append(
                    f"{name}(ID:{ID})发起了请求, 开始旅行, 由{origin}前往{destination}")
                logger.get_log(
                    f"{name}(ID:{ID})发起了请求, 开始旅行, 由{origin}前往{destination}")
                state.update({'name': name, 'ID': ID})
                self.log_update([state])
            self.show_route(name, ID)
        self.timer.singleShot(remainingTime, self.one_time_tasks)
 def log_update(self, states):
     E2C = {'BUS': '汽车', 'TRAIN': '火车', 'AIRPLANE': '飞机'}
     if len(states) > 0:
         for state in states:
             if state['type'] == 'ARRIVAL':
                 text = f"{state['name']}(ID:{state['ID']})到达目的地{state['destination']}"
             elif state['type'] == 'STAY':
                 text = f"{state['name']}(ID:{state['ID']})当前停留在{state['origin']}"
             else:
                 text = (
                     f"{state['name']}(ID:{state['ID']})当前处于{state['origin']}"
                     f"前往{state['destination']}的{E2C[state['type']]}上")
             self.logTextBrowser.append(text)
             logger.get_log(text)
示例#9
0
def parse_xml(xml_path, namespaces={}, force_list=(), xml_attribs=True):
    """ Parse a XML document and returns a dict with proper formating.

        Args:
            xml_path (str): XML file absolute path.
            namespaces (dict): Namespace mapping dict, prefix: namespace. All
                matching namespaces found in the XML document will be processed
                and replaced by prefix.
            force_list (tuple): Tuple containing XML element name that needs
                to appear as list node in the generated dict. This force a list
                even if only one such element is found in a particular XML
                file.
            xml_attribs (boolean): If True, completly ignore all attributes
                found in the XML file.

        Returns:
            A dict representation of the input XML file.

        Raises:
            ValueError: If ``xml_path`` is not a valid file.

    """
    if not os.path.isfile(xml_path):
        raise ValueError("{} is not a file".format(xml_path))

    try:
        with open(xml_path) as file:
            readed_file = file.read()

            # Collapse these namespace
            namespaces = {v: k for k, v in six.iteritems(namespaces)}

            xml_dict = xmltodict.parse(readed_file,
                                       process_namespaces=True,
                                       namespaces=namespaces,
                                       force_list=force_list,
                                       xml_attribs=xml_attribs,
                                       postprocessor=post_parse_node,
                                       dict_constructor=dict)

            if xml_attribs:
                xml_dict = post_parse_attr(xml_dict)

            return xml_dict

    except (Exception, ExpatError) as e:
        get_log().info("Error parsing XML {} : {}".format(xml_path, str(e)))
示例#10
0
 def one_time_tasks(self):
     self.time_now += self.one_hour
     states = self.sim.get_all_states(self.time_now)
     self.timeLabel.setText(
         self.time_now.strftime("%Y{y}%m{m}%d{d}%H{h}").format(y="年",
                                                               m="月",
                                                               d="日",
                                                               h="时"))
     self.logTextBrowser.append(
         self.time_now.strftime("\n%Y{y}%m{m}%d{d}%H{h}").format(y="年",
                                                                 m="月",
                                                                 d="日",
                                                                 h="时"))
     logger.get_log(
         self.time_now.strftime("\n%Y{y}%m{m}%d{d}%H{h}").format(y="年",
                                                                 m="月",
                                                                 d="日",
                                                                 h="时"))
     self.draw_path(self.sim.get_all_routes())
     self.vehicle_move(states)
     self.log_update(states)
     self.timer.start()
示例#11
0
def test():
    return "<pre>{}</pre>".format(get_log())
示例#12
0
import time
import datetime
from logger import get_log




registered_files = glob.glob(os.path.join('D:\\Flight {}', 'registered', '*{}*.tif').format(sys.argv[1],sys.argv[2]))

message = 'Flight id: {0}, farm id : {1}'.format(str(sys.argv[1]),str(sys.argv[2]))
os.environ['GDAL_DATA']='C:/Users/Administrator/Anaconda3/envs/improc/Library/share/gdal'
os.environ['PROJ_LIB'] = os.path.join('C:\\', 'Users', 'Administrator', 'Anaconda3', 'envs', 'improc', 'Library', 'share')


try:
    get_log("Gen product button", message = "Start gen prod for {}".format(message), infol = 1)
    improc.postprocess.generate_products(registered_files)
    get_log("Gen product button",message =  "Done for Flight {}".format(message), infol = 1)
except Exception as e:
    get_log("Gen product button","Failed gen product for {}, the error is : {}".format(message,e), errorl = 1)
    print(e)


if sys.argv[3] == "True":  
    try:
        get_log("Gen product button","Start upsync for {}".format(message), infol = 1)
        upsyn = improc.qc.syncer.upsync(int(sys.argv[1]),sys.argv[2])
        get_log("Gen product button","Finished upsync for {}".format(message), infol = 1)
    except Exception as e:
        get_log("Gen product button","Failed upsync for {}, the error is : {}".format(message,e), errorl = 1)
        print (e)
示例#13
0
 def __init__(self):
     self.log = logger.get_log(FileStore)
     self.base = 'uploads'
     self.r = redis_db.get_connect()
     self.id_gen = IdGenerator()
示例#14
0
 def __init__(self):
     self.log = logger.get_log(ColorTransfer)
示例#15
0
 def __init__(self):
     self.log = logger.get_log(Executor)
     self.mq = message_queue.ProcessQueue()
     self.fs = FileStore()
     self.cf = ColorTransfer()
     self.db = db.SqliteDB()
示例#16
0
nb_epochs = opt.epoch
data_dir = opt.data_dir
# data_dir = '/Users/kangrong/tsResearch/tols/UCR_TS_Archive_2015/'
worker_num = opt.worker_num
worker_idx = opt.worker_idx

task_num = int(len(flist) // worker_num)
if opt.one_dataset is not None:
    sub_flist = [opt.one_dataset]
else:
    sub_flist = flist[worker_idx * task_num:(worker_idx + 1) * task_num]
    if worker_idx == worker_num - 1:
        sub_flist = flist[worker_idx * task_num:]

logger = get_log(opt.log_dir,
                 "Trans_%s_%d_%d" % (opt.annotation, worker_num, worker_idx))

logger.info(sub_flist)
print(sub_flist)

for each in sub_flist:
    st = time.time()
    print("dataset: %s, start time: %.3f" % (each, st))
    logger.info("dataset: %s, start time: %.3f" % (each, st))
    fname = each
    x_train, y_train = readucr(data_dir + fname + '/' + fname + '_TRAIN')
    x_test, y_test = readucr(data_dir + fname + '/' + fname + '_TEST')
    nb_classes = len(np.unique(y_test))
    y_train = (y_train - y_train.min()) / (y_train.max() -
                                           y_train.min()) * (nb_classes - 1)
    y_test = (y_test - y_test.min()) / (y_test.max() -
示例#17
0
# -*- coding: utf-8 -*-

import improc
import sys
from logger import get_log

message = 'Flight id: {0}, farm id : {1}'.format(str(sys.argv[1]),
                                                 str(sys.argv[2]))

try:
    get_log("New field button",
            message="Start upsync {}".format(message),
            infol=1)
    upsyn = improc.qc.syncer.upsync(int(sys.argv[1]), sys.argv[2])
    get_log("New field button",
            message="Done upsync {}".format(message),
            infol=1)
except Exception as e:
    get_log("New field button",
            "Failed upsync for {}, the error is : {}".format(message, e),
            errorl=1)
    print(e)
示例#18
0
 def __init__(self):
     self.r = redis_db.get_connect()
     self.log = logger.get_log(ProcessQueue)
示例#19
0
#Create the connection
from pymongo import MongoClient
from bson.objectid import ObjectId
import logger
from config_loader import Config_Loader

conf = Config_Loader()
#log handler
log = logger.get_log('db')

#db connection
connection = MongoClient(conf.mongo_url)
#Table list
db_users = connection.rdrlotto.users
db_draw = connection.rdrlotto.draw
db_winning = connection.rdrlotto.winning

##########
#User
#########
def get_user(tbl={}):
    return db_users.find_one(tbl)

def new_user(name,number,mega,balance,leader,phone):
    tbl = {'name': name,
          'number': number,
          'mega': mega,
          'balance': float(balance),
          'leader': leader,
          'phone': phone,
          'won': 0,
示例#20
0
 def retranslateUi(self, MainWindow):
     _translate = QtCore.QCoreApplication.translate
     MainWindow.setWindowTitle(_translate("MainWindow", "COVID-19安全旅行模拟系统"))
     self.nameLabel.setText(_translate("MainWindow", "    姓名:"))
     self.idLabel1.setText(_translate("MainWindow", "身份证号:"))
     self.infoLabel.setText(_translate("MainWindow", "旅客信息"))
     self.destinationLabel.setText(_translate("MainWindow", "目的地"))
     self.destinationCombo.setCurrentText(_translate("MainWindow", "北京"))
     self.destinationCombo.setItemText(0, _translate("MainWindow", '北京'))
     self.destinationCombo.setItemText(1, _translate("MainWindow", '成都'))
     self.destinationCombo.setItemText(2, _translate("MainWindow", '福州'))
     self.destinationCombo.setItemText(3, _translate("MainWindow", '广州'))
     self.destinationCombo.setItemText(4, _translate("MainWindow", '贵阳'))
     self.destinationCombo.setItemText(5, _translate("MainWindow", '哈尔滨'))
     self.destinationCombo.setItemText(6, _translate("MainWindow", '海口'))
     self.destinationCombo.setItemText(7, _translate("MainWindow", '杭州'))
     self.destinationCombo.setItemText(8, _translate("MainWindow", '合肥'))
     self.destinationCombo.setItemText(9, _translate("MainWindow", '呼和浩特'))
     self.destinationCombo.setItemText(10, _translate("MainWindow", '济南'))
     self.destinationCombo.setItemText(11, _translate("MainWindow", '昆明'))
     self.destinationCombo.setItemText(12, _translate("MainWindow", '拉萨'))
     self.destinationCombo.setItemText(13, _translate("MainWindow", '兰州'))
     self.destinationCombo.setItemText(14, _translate("MainWindow", '南昌'))
     self.destinationCombo.setItemText(15, _translate("MainWindow", '南京'))
     self.destinationCombo.setItemText(16, _translate("MainWindow", '南宁'))
     self.destinationCombo.setItemText(17, _translate("MainWindow", '上海'))
     self.destinationCombo.setItemText(18, _translate("MainWindow", '沈阳'))
     self.destinationCombo.setItemText(19, _translate("MainWindow", '石家庄'))
     self.destinationCombo.setItemText(20, _translate("MainWindow", '太原'))
     self.destinationCombo.setItemText(21, _translate("MainWindow", '天津'))
     self.destinationCombo.setItemText(22, _translate("MainWindow", '乌鲁木齐'))
     self.destinationCombo.setItemText(23, _translate("MainWindow", '武汉'))
     self.destinationCombo.setItemText(24, _translate("MainWindow", '西安'))
     self.destinationCombo.setItemText(25, _translate("MainWindow", '西宁'))
     self.destinationCombo.setItemText(26, _translate("MainWindow", '银川'))
     self.destinationCombo.setItemText(27, _translate("MainWindow", '长春'))
     self.destinationCombo.setItemText(28, _translate("MainWindow", '长沙'))
     self.destinationCombo.setItemText(29, _translate("MainWindow", '郑州'))
     self.destinationCombo.setItemText(30, _translate("MainWindow", '重庆'))
     self.destinationCombo.setItemText(31, _translate("MainWindow", '香港'))
     self.destinationCombo.setItemText(32, _translate("MainWindow", '澳门'))
     self.destinationCombo.setItemText(33, _translate("MainWindow", '台北'))
     self.travelLabel.setText(_translate("MainWindow", "旅程信息"))
     self.originLabel.setText(_translate("MainWindow", "出发地"))
     self.originCombo.setItemText(0, _translate("MainWindow", '北京'))
     self.originCombo.setItemText(1, _translate("MainWindow", '成都'))
     self.originCombo.setItemText(2, _translate("MainWindow", '福州'))
     self.originCombo.setItemText(3, _translate("MainWindow", '广州'))
     self.originCombo.setItemText(4, _translate("MainWindow", '贵阳'))
     self.originCombo.setItemText(5, _translate("MainWindow", '哈尔滨'))
     self.originCombo.setItemText(6, _translate("MainWindow", '海口'))
     self.originCombo.setItemText(7, _translate("MainWindow", '杭州'))
     self.originCombo.setItemText(8, _translate("MainWindow", '合肥'))
     self.originCombo.setItemText(9, _translate("MainWindow", '呼和浩特'))
     self.originCombo.setItemText(10, _translate("MainWindow", '济南'))
     self.originCombo.setItemText(11, _translate("MainWindow", '昆明'))
     self.originCombo.setItemText(12, _translate("MainWindow", '拉萨'))
     self.originCombo.setItemText(13, _translate("MainWindow", '兰州'))
     self.originCombo.setItemText(14, _translate("MainWindow", '南昌'))
     self.originCombo.setItemText(15, _translate("MainWindow", '南京'))
     self.originCombo.setItemText(16, _translate("MainWindow", '南宁'))
     self.originCombo.setItemText(17, _translate("MainWindow", '上海'))
     self.originCombo.setItemText(18, _translate("MainWindow", '沈阳'))
     self.originCombo.setItemText(19, _translate("MainWindow", '石家庄'))
     self.originCombo.setItemText(20, _translate("MainWindow", '太原'))
     self.originCombo.setItemText(21, _translate("MainWindow", '天津'))
     self.originCombo.setItemText(22, _translate("MainWindow", '乌鲁木齐'))
     self.originCombo.setItemText(23, _translate("MainWindow", '武汉'))
     self.originCombo.setItemText(24, _translate("MainWindow", '西安'))
     self.originCombo.setItemText(25, _translate("MainWindow", '西宁'))
     self.originCombo.setItemText(26, _translate("MainWindow", '银川'))
     self.originCombo.setItemText(27, _translate("MainWindow", '长春'))
     self.originCombo.setItemText(28, _translate("MainWindow", '长沙'))
     self.originCombo.setItemText(29, _translate("MainWindow", '郑州'))
     self.originCombo.setItemText(30, _translate("MainWindow", '重庆'))
     self.originCombo.setItemText(31, _translate("MainWindow", '香港'))
     self.originCombo.setItemText(32, _translate("MainWindow", '澳门'))
     self.originCombo.setItemText(33, _translate("MainWindow", '台北'))
     self.strategyLabel.setText(_translate("MainWindow", "策略选择"))
     self.hourSpin.setSuffix(_translate("MainWindow", "时"))
     self.daySpin.setSuffix(_translate("MainWindow", "天"))
     self.timeLimitLabel.setText(_translate("MainWindow", "限时:"))
     self.startButton.setText(_translate("MainWindow", "开始模拟"))
     self.routeLabel.setText(_translate("MainWindow", "旅行路线"))
     self.strategyRadioButton1.setText(_translate("MainWindow", "最少风险"))
     self.strategyRadioButton2.setText(_translate("MainWindow", "限时最少风险"))
     self.timeLabel.setText(
         _translate(
             "MainWindow",
             self.time_now.strftime("%Y{y}%m{m}%d{d}%H{h}").format(y="年",
                                                                   m="月",
                                                                   d="日",
                                                                   h="时")))
     self.logTextBrowser.append(
         self.time_now.strftime("%Y{y}%m{m}%d{d}%H{h}").format(y="年",
                                                               m="月",
                                                               d="日",
                                                               h="时"))
     logger.get_log(
         self.time_now.strftime("%Y{y}%m{m}%d{d}%H{h}").format(y="年",
                                                               m="月",
                                                               d="日",
                                                               h="时"))
     self.tabWidget.setTabText(self.tabWidget.indexOf(self.main),
                               _translate("MainWindow", "模拟旅行"))
     self.logLabel.setText(_translate("MainWindow", "系统日志"))
     self.stateSearchLabel.setText(_translate("MainWindow", "旅客状态查询"))
     self.stateSearchIDLabel.setText(_translate("MainWindow", "身份证号:"))
     self.stateSearchButton.setText(_translate("MainWindow", "开始查询"))
     self.tabWidget.setTabText(self.tabWidget.indexOf(self.log),
                               _translate("MainWindow", "日志"))
示例#21
0
文件: nodeio.py 项目: librcye/librcye
import httplib
import inspect
import threading
import time
import os
import shutil
import utils
import logger
import socket

log = logger.get_log(inspect.getfile(inspect.currentframe()))
rout = open(utils.resolv, 'w', 1) 
cout = open(utils.tmp_censored, 'w', 1)
cin  = open(utils.censored, 'w', 1) if os.path.exists(utils.censored) else None
lout= open(utils.conlog, 'w', 1)
unrout = open(utils.unresolv, 'w', 1)
#globalize Node objective variables.

class Node(threading.Thread):
    HTTP_PORT = 80
    HTTPS_PORT = 443
    GET = 'GET' #the only gurantee http(s) method
    CONNECT = 'CONNECT'
    def __init__(self, ip, host, port=None, path=None, lock=None, resolv=None, inst=None):
        threading.Thread.__init__(self)
        self.ip = ip
        self.port = Node.HTTP_PORT if port==None else int(port)
        self.host = host.split('\n')[0]
        self.path = '/' if path==None else path
        self.routable = True #guideline(1)
        self.con = None