Example #1
0
def leave():
    if request.method == "POST":
        order_number = request.form['inputNumber2']
        plate_number = request.form['inputLicenseNumber2']
        if order_number == "" and plate_number == "":
            return redirect('/lot')
        else:
            if order_number != "":
                result = Manage.Reservation.query_book(order_number)
                if result:
                    Manage.set_lot_status_idle(result.PID)    # 开后设置车位状态有问题
            else:
                result = Manage.Reservation.query_book_by_plate(plate_number)
                # plate_number不是唯一,这里要修正
                if result:
                    Manage.set_lot_status_idle(result.PID)
            min = result.insert_leavetime()
            if min == 0:
                return "car is not here"
            elif min == 1:
                return "car has left"
            else:
                result.query_money()
                TotalMoney = int(result.Price) + int(result.overpay)
                Temp.TempCharge = result
                return render_template('leave.html', result=result, Total=TotalMoney)
    else:
        return render_template('leave.html')
Example #2
0
def main():
    '''
    #读取已有特征数据测试,测试成功
    trainpath = []
    trainmode = []
    trainpath.append('/home/chenming/Music/happy/feature_0/happy.txt')
    trainmode.append('happy')
    trainpath.append('/home/chenming/Music/sad/feature_0/sad.txt')
    trainmode.append('sad')

    m.setClassifier('svm')

    testpath = []
    testmode = []
    testpath.append('/home/chenming/Music/happytest/feature_0/happy.txt')
    testmode.append('happy')
    testpath.append('/home/chenming/Music/sadtest/feature_0/sad.txt')
    testmode.append('sad')

    train_data,train_target = m.readTrainData(trainpath,trainmode)
    test_data,test_target = m.readTestData(trainmode,testpath,testmode)

    m.train_test(train_data,train_target,test_data,test_target)
	#ok
    '''
    #==========================================================================
    #m.testSong('/home/chenming/Music/happytest/Happy - Johnny Rollins.mp3','emotion')
    m.testAllSong('/home/chenming/Music/111', 'emotion')
Example #3
0
def OPenClose22(openClose):
    print(openClose)
    if openClose:
        GPIO.output(22, GPIO.HIGH)
        Manage.sendGPIOChange(True)

    else:
        GPIO.output(22, GPIO.LOW)
        Manage.sendGPIOChange(False)
    pass
Example #4
0
def reviceData():

    while True:
        try:
            # 接收数据:
            data, addr = sockLocal.recvfrom(1024)
            if len(data) > 0:
                Method.MyPrint('Received from %s:%s.' % (data, addr))
                Manage.handleTCP(sockLocal, data, addr)
        except:
            pass
Example #5
0
def reviceData(s):
    while True:
        # 接收数据:
        data, addr = s.recvfrom(1024)
        myIP = Method.getSelfIP()
        # 判断是否为自己IP
        if addr[0] == myIP:
            Method.MyPrint('udp from self')
            pass
        else:
            Manage.handleUDP(s, data, addr)
            EsptouchConfig.logmsg(s, data, addr)
 def startTraintest(self):
     self.trainResult.clear()
     path = str(self.trainPath.text())
     self.trainResult.append("开始训练")
     m.setClassifier('svm')
     train_data, train_target = m.readSelectedTrainData(
         self.train_path, self.train_mode)
     reslut_info = m.train(train_data, train_target, self.train_mode,
                           'emotion')
     self.trainResult.append(reslut_info)
     self.train_path = []
     self.train_mode = []
Example #7
0
def getlotname():
    if request.method == "POST":
        order_number = request.form['inputNumber']
        plate_number = request.form['inputLicenseNumber']
        print order_number
        print plate_number
        if order_number == "" and plate_number == "":
            flash(u'you must input either of blanks', 'error')  # 消息错误提示)
            return render_template('pad1.html')
        else:
            if order_number != "":
                result = Manage.Reservation.query_book(order_number)
                if result:
                    Manage.set_lot_status(result.PID)
                else:
                    flash(u'The order number is not existing,please try again ', 'error')  # 消息错误提示)
                    return render_template('pad1.html')
            else:
                result = Manage.Reservation.query_book_by_plate(plate_number)
                # plate_number不是唯一,这里要修正
                if result:
                    Manage.set_lot_status(result.PID)
                else:
                    flash(u'The plate number is not existing,please try again ', 'error')  # 消息错误提示)
                    return render_template('pad1.html')

        print result.PayStatus
        if result.PayStatus == '0':
            flash(u'No Pay ', 'error')  # 消息错误提示)
            return render_template('pad1.html')
        number = result.insert_parktime()

        if number == 0:
            flash(u'15 minues ago ', 'error')  # 消息错误提示)
            return render_template('pad1.html')
        elif number == 1:
            flash(u'30 minutes behind ', 'error')  # 消息错误提示)
            return render_template('pad1.html')
        elif number == 3:
            flash(u'car is already there ', 'error')  # 消息错误提示)
            return render_template('pad1.html')
        else:
            return render_template('pad2.html', result=result)

    return render_template('pad2.html', result=None)
Example #8
0
def register():
    result = Manage.user_register(
        request.form["registUsername"],
        request.form["registEmail"],
        request.form["registUsername"],
        request.form["registPassword"])
    if result == "success":
        return render_template('blue_customer/templates/home01.html', data=None, history=None)
    elif result == "exist":
        flash(u'Username is used, please try another', 'error')  # 用户名已经被使用
        return render_template('index.html')
Example #9
0
def manager_login():
    """  check ording"""
    phone = request.form.get('inputPhoneNumber')
    password = request.form.get('inputPassword')
    result = Manage.manager_login(phone, password)
    print result
    if result == "success":
        session['manager_username'] = phone                     # 添加到session
        return redirect(url_for('blue_manager.manage_index'))
    else:
        flash(u'Invalid password or username provided', 'error')        # 消息错误提示
        return render_template('manager_login.html')
Example #10
0
def confirm_publish():
    if request.method == "POST":
        reservprice = request.form['reservPrice']
        overstayfine = request.form['overstayFine']
        discounts = request.form['discounts']
        result = Manage.set_price(reservprice, overstayfine, discounts)
        if result == "success":
            print result
            return redirect(url_for('blue_manager.business_price'))
        else:
            flash(u'failed to summit the price,please try again', 'error')
            return render_template('business_price.html')
    return render_template('business_price.html')
Example #11
0
def add_promotion():
    if request.method == "POST":
        title = request.form['addtitle']
        context = request.form['addcontext']
        print context
        result = Manage.set_promotion(title, context)
        print result
        if result == "success":
            return redirect(url_for('blue_manager.business_promotion'))
        else:
            flash(u'failed to summit the promotion,please try again', 'error')
            return redirect('/business_promotion')
    return redirect('/business_promotion')
Example #12
0
def quick():
    username = request.cookies.get('username')
    password = request.cookies.get('password')
    if username is None or password is None:
        return render_template('index.html')
    result = Manage.user_login(username, password)
    if result == "success":
        session['username'] = username                     # 添加到session
        repr = make_response(redirect('customer_index'))
        repr.set_cookie('username', username, 1800)
        repr.set_cookie('password', password, 1800)
        return repr
    else:
        flash(u'Invalid password or username provided', 'error')        # 消息错误提示
        return render_template('index.html')
Example #13
0
def login():
    """  check ording"""

    phone = request.form.get('inputPhoneNumber')
    password = request.form.get('inputPassword')
    result = Manage.user_login(phone, password)
    if result == "success":
        session['username'] = phone                     # 添加到session
        repr = make_response(redirect('customer_index'))
        repr.set_cookie('username', phone, 1800)
        repr.set_cookie('password', password, 1800)
        return repr
    else:
        flash(u'Invalid password or username provided', 'error')        # 消息错误提示
        return render_template('index.html')
Example #14
0
    def __init__(self):
        super(GameScene, self).__init__()
        self.score = 0
        self.grid = scene.grid(50, 50, 32, 32, 8)
        self.velita = character.player(self.grid)  # Jugador Principal
        self.ghosts = []
        for x in range(5):
            self.ghosts.append(character.Enemy(self.grid))
        self.players = self.ghosts[:]
        self.players.append(self.velita)
        # self.cartica = cards.deck(21)
        self.font = pygame.font.Font(None, 20)
        self.GUI = GUI.pantalla(self.velita, screen, self.grid)
        random.shuffle(self.players)
        self.turns = Manage.TurnManager(self.players, self.grid)

        self.alpha = 0
 def test(self):
     self.result.clear()
     self.result.append('开始测试,请等待')
     print 'asdasdasdasd'
     mode_name = str(self.testStyle.currentText().toAscii())
     test_pa = str(self.songPath.text())
     test_file_type = str(self.songPath.text()).split('/')
     test_file = str(self.songPath.text()) + '/feature_0/' + test_file_type[
         len(test_file_type) - 1] + '.txt'
     self.result.append(test_file)
     test_result = m.testAllSong(test_pa,
                                 one_mode=mode_name,
                                 data_fi=test_file)
     print test_result
     test_result = '\n'.join(test_result)
     unicode(QString(test_result).toUtf8(), 'utf-8', 'ignore')
     self.result.append(test_result)
     typeMode = wf.readFileTxt('dataSystem/emotion/modeList.txt')
     mf.moveMusic(test_pa, typeMode)
     '''
Example #16
0
def customer_index(page):
    if session.get('username') is None:
        return redirect('/')
    else:
        pro_data = Manage.get_promotion()
        data, history = Manage.Reservation.diplay_book(session["username"])
        history_data = Manage.Reservation.diplay_history_book(session["username"])
        if history is None:
            if history_data == []:
                pass
            else:
                data = []
                history = history_data
        elif history == [] and history_data == []:
            pass
        else:
            history += history_data
        try:
            return render_template('%s.html' % page, data=data, history=history, pro_data=pro_data)  # 打印相应的页
        except TemplateNotFound:
            abort(404)
Example #17
0
    def test_mananger(self):
        username='******'
        password='******'
        rv=Manage.manager_login(username,password)
        print rv
    #---------------------------get someone reservation histort----------------------------
        username="******"
        rv=Manage.Reservation.display_history_book(username)
    #---------------------------someone reservation  now---------------------------
        username='******'
        rv=Manage.Reservation.display_book(username)
    #----------------------------view parkinglot price now---------------------------
        type='1'
        rv=Manage.get_price(type)

    #----------------------------change parkinglot price---------------------------
#        Manage.set_price('581' , '2016-05-03 09:05:00' , '0.8')

    #-----------------------------manage set advertise----------------------
        Manage.set_promotion('you te jia la','discount ')

    #----------------------------manage get advertise----------------------
        Manage.get_promotion()
Example #18
0
def queue_daemon(app, rv_ttl=500):         # rv_ttl是等待时常
    q = RedisQueue(app.config['REDIS_QUEUE_KEY'])               # 提前配置好app
    while 1:                                             # 每一次轮训
        msg = q.get_nowait()
        if msg is not None:
            dict = loads(msg)           # 调用数据库查询程序(下单,修改,取消)
            if dict.get('type') == 'change':
                """ we should ascertain whether there is a lot available """
                orders, begin, sustain = Manage.all_lot(dict.get('beginTime'), dict.get('endTime'))
                timeprice = Manage.cal_money(dict.get('beginTime'), dict.get('endTime'), 1)
                if len(orders) == 0:
                    reservation = Manage.Reservation(ID=dict.get('id'),
                                                     PID='A101',
                                                     Name=dict.get('name'),
                                                     StartTime=dict.get('beginTime'),
                                                     EndTime=dict.get('endTime'),
                                                     PlateNumber=dict.get('PlateNumber'),
                                                     ProduceTime=dict.get('time'),
                                                     Price=timeprice)  # 根据sustain来计费
                else:
                    mov_dict = insert(orders, gl.Lots_len, begin, sustain)
                    dict_len = len(mov_dict)
                    if dict_len == 0:  # 如果没有可以用返回[],此时可以给予提示
                        continue    # u'Sorry! There is no a Parkinglotavailable now,failed to alter order', 'error')
                    for i in range(dict_len):
                        if i == 0:
                            reservation = Manage.Reservation(ID=dict.get('id'),
                                                             PID=gl.dict1[mov_dict[0].get('to')],
                                                             Name=dict.get('name'),
                                                             StartTime=dict.get('beginTime'),
                                                             EndTime=dict.get('endTime'),
                                                             PlateNumber=dict.get('PlateNumber'),
                                                             ProduceTime=dict.get('time'),
                                                             Price=timeprice)
                        else:
                            Manage.Reservation.update_lot(mov_dict[i].get('to'), mov_dict[i].get('id'))
                reservation.alter_book()
            elif dict.get('type') == 'create':
                """ we should ascertain whether there is a lot available """
                orders, begin, sustain = Manage.all_lot(dict.get('beginTime'), dict.get('endTime'))
                timeprice = Manage.cal_money(dict.get('beginTime'), dict.get('endTime'), 1)
                if len(orders) == 0:
                    reservation = Manage.Reservation(PID='A101',
                                                     Name=dict.get('name'),
                                                     StartTime=dict.get('beginTime'),
                                                     EndTime=dict.get('endTime'),
                                                     PlateNumber=dict.get('PlateNumber'),
                                                     ProduceTime=dict.get('time'),
                                                     Price=timeprice)
                else:
                    mov_dict = insert(orders, 11, begin, sustain)     # 11为车位总数量,需要动态改变
                    dict_len = len(mov_dict)
                    if dict_len == 0:  # 如果没有可以用返回[]
                        continue    # u'Sorry! There is no a Parkinglot available now'
                    for i in range(dict_len):
                        if i == 0:
                            reservation = Manage.Reservation(PID=gl.dict1[mov_dict[0].get('to')],
                                                             Name=dict.get('name'),
                                                             StartTime=dict.get('beginTime'),
                                                             EndTime=dict.get('endTime'),
                                                             PlateNumber=dict.get('PlateNumber'),
                                                             ProduceTime=dict.get('time'),
                                                             Price=timeprice)
                        else:
                            Manage.Reservation.update_lot(mov_dict[i].get('to'), mov_dict[i].get('id'))
                reservation = reservation.reserve()
            elif dict.get('type') == 'cancel':
                ID = dict.get('id')
                Manage.Reservation.cancel_book(ID)   # 取消订单
        else:                          # flask端用get()或者size()判断
            time.sleep(1)
    return 0
Example #19
0
    def __init__(self, *args):
        QMainWindow.__init__(self, *args)
        pwd = QInputDialog.getText(self, "Password", "Type your password :"******"(PyQt4.QtCore.QString(u''), False)":
            self.valid = False
        else:
            try:
                self.control = Manage(str(pwd))
                self.valid = True

                img_src = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAKfSURBVHjaYvz//z8DJQAggFhgDDaz2ccVJHgt3rz8cu/9+z9FDGKCGxnYeRkY/rMxMLBzMTDwANlMnAwMzNwMDNxcDP9n84P1AQQQE8wA9v8MBqV5Vgyz+9yVlFRFNjB8+DWV4e8/MQZG/C4ACCC4Af+APnn3n4lB20qWYU6/J0NYoHoW089/exn+/vfDZwBAAMEN+MHA+u7I8VcM+6/+Y3jwn5shM8OUoavCREdChGstw+//k4A2cGIzACCAGGGByGi5xJLhF/MEFV05Myt3PQY+IV4GI2kGBsH/3xlmrnnKsOv010v/2LmyGTh5jjDwAMNgFiQMAAIIYYDNMiDBwcvwg6mSW0IoV8lAhYdLQpJBV4aRwVvzH8OFax8YJq/7/OHdF5aZDMI8jcBA/A7SBxBAaAawQzAnrxEDM/t0bjERMxYxeQZeblaGRFsGBlX+3wwzdnxlOHaX6cT/eXyWIH0AAQSPRgYxDWBIMkAx4ydeLsbv7CzMDB9//Gf4+JuBYdYRBgZPbWag2RwMTKwM8PAACCAWtDDhZvj9L0dCgqvUQFtM+M53YYZvXxgZlET/M/z5+Yth2a4/P379YJrHwM1cBdMAEEAIA/7/12D8zzBdUUXQQVJRhuHcO3aG70DfSQn+ZXj36hfD2w9/7/77z5zHwMa4HaQapg0ggJBcwLRdQEZM4Y+YJMPpZ0wMPBwMDHysvxiePP7J8OMX82IGFpY8oPc+gL2IBAACCG4AIxuHxDdmAYbvX5kYBDj/Mvz58Z3h2cu/9/4zsjQysDAuwpWQAAIIbsB/FnYGJiYmBm7GXwyf3n4H2sqwjIGZuR4odQdfSgQIIHhKZGRmv/X3+3eG92+/vgRqjmVgYY4G5oM7DAQyK0AAMVKanQECDADMwNCYef7LugAAAABJRU5ErkJggg==".decode(
                    'base64')

                self.logo = QPixmap()
                self.logo.loadFromData(QByteArray(img_src))

                self.tmp = tempfile.NamedTemporaryFile()
                self.tmp_logo = self.tmp.name
                self.tmp.write(img_src)
                self.tmp.flush()

                self.setContentsMargins(0, 0, 0, 0)

                self.fileMenu = self.menuBar().addMenu("&File")

                self.quit = self.fileMenu.addAction("Quit")
                self.quit.setIcon(QIcon(self.logo))
                self.connect(self.quit, SIGNAL('triggered()'), qApp,
                             SLOT('quit()'))

                self.cmdMenu = self.menuBar().addMenu("&Commands")

                self.addpwd_ = self.cmdMenu.addAction("Add password")
                self.addpwd_.setIcon(QIcon(self.logo))
                self.connect(self.addpwd_, SIGNAL('triggered()'), self,
                             SLOT('_add_pwd()'))

                self.cmdMenu.addSeparator()

                self.changepwd_ = self.cmdMenu.addAction(
                    "Change master password")
                self.changepwd_.setIcon(QIcon(self.logo))
                self.connect(self.changepwd_, SIGNAL('triggered()'), self,
                             SLOT('_update_master_pwd()'))

                self.help_ = self.cmdMenu.addAction("Help")
                self.help_.setIcon(QIcon(self.logo))
                self.connect(self.help_, SIGNAL('triggered()'), self,
                             SLOT('_help()'))

                self.aboutMenu = self.menuBar().addMenu("&?")

                self.about_ = self.aboutMenu.addAction("About PassManager")
                self.about_.setIcon(QIcon(self.logo))
                self.connect(self.about_, SIGNAL('triggered()'), self,
                             SLOT('about()'))

                self.view = QTreeWidget(self)
                self.view.setAlternatingRowColors(True)
                self.view.setHeaderLabels(QStringList() << "Place" << "Pseudo"
                                          << "E-mail" << "Password" << "ID")
                self.connect(self.view, SIGNAL('doubleClicked(QModelIndex)'),
                             self, SLOT('choice(QModelIndex)'))

                self.update_pwd_list()

                self.setCentralWidget(self.view)
                self.resize(700, 400)
                self.setWindowTitle("PassManager")
                self.setWindowIcon(QIcon(self.logo))

            except Exception as e:
                self.error(e)
                self.valid = False
Example #20
0
def show_reservation1(date):
    the_date = datetime.datetime.strptime(date, '%Y-%m-%d')
    order_date = Manage.oneday_order_lot(the_date)
    print json.dumps(order_date)
    return render_template('show-reservation.html', reservation=json.dumps(order_date), date=date)
Example #21
0
                    self.manager.go_to(TitleScene())

    def update(self):
        # mouse_pressed = pygame.mouse.get_pressed()
        self.text = self.font.render(
            f'''PosX: {self.velita.Px}, PosY: {self.velita.Py} ~~ {self.grid.CHECK_mouse()}''',
            1, (250, 250, 25))
        # -aquí pondre la cuestión de los turnos

    def render(self, screen):
        screen.fill((255, 125, 180))
        screen.blit(self.text, (5, 480))
        media.put_string(f'{self.turns.round}', screen, (0, 0))
        self.GUI.draw_things()

        # self.cartica.show(screen, self.grid.inside_grid.bottomleft)
        pygame.display.update()


running = True
manager = Manage.SceneManager(TitleScene())
while running:
    clock.tick(60)

    if pygame.event.get(pygame.QUIT):
        manager.go_to(ByeScene())
    manager.scene.handle_events(pygame.event.get())
    manager.scene.update()
    manager.scene.render(screen)
    pygame.display.flip()
Example #22
0
def business_price():  # 显示
    price_reservation = Manage.get_price('0')  # 三种价格:正常价罚款折扣
    price_overstay = Manage.get_price('1')
    price_discount = Manage.get_price('2')
    return render_template('business_price.html', price_reservation=price_reservation, price_overstay=price_overstay,
                           price_discount=price_discount)
Example #23
0
def manage_index():
    lots_status = Manage.all_lot_status()
    print json.dumps(lots_status)
    return render_template('console.html', lots_status=json.dumps(lots_status))
Example #24
0
def get_single_promotion(Id):
    data = Manage.get_single_promotion(Id)
    print data
    return render_template('specific-promotion.html', data=data)
Example #25
0
def business_promotion():
    data = Manage.get_promotion()
    return render_template('business-promotion.html', data=data)
Example #26
0
def delete_promotion(ID):
    result = Manage.delete_promotion(ID)
    if result == "success":
        return redirect('/business_promotion')
    else:
        return result
Example #27
0
    def __init__(self):
        wx.Frame.__init__(self,
                          parent=None,
                          title="学生信息",
                          pos=(100, 100),
                          size=(550, 350))

        self.panel = wx.Panel(self)

        self.studentsNumberLabel = wx.StaticText(self.panel,
                                                 -1,
                                                 "记录总数:",
                                                 pos=(20, 10))
        self.studentsNumberLabel.SetFont(
            wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL))

        self.manage = Manage.Manage()
        rowLength = len(self.manage.getStudentsMessage())

        self.grid = wx.grid.Grid(self.panel,
                                 id=-1,
                                 pos=(20, 80),
                                 size=(410, 220))
        self.grid.CreateGrid(rowLength, 7)
        self.grid.SetRowLabelSize(30)
        self.grid.SetColLabelValue(0, '学号')
        self.grid.SetColSize(0, 40)
        self.grid.SetColLabelValue(1, '姓名')
        self.grid.SetColLabelValue(2, '性别')
        self.grid.SetColSize(2, 40)
        self.grid.SetColLabelValue(3, '年龄')
        self.grid.SetColSize(3, 40)
        self.grid.SetColLabelValue(4, '所在系')
        self.grid.SetColSize(4, 100)
        self.grid.SetColLabelValue(5, '登录名')
        self.grid.SetColSize(5, 40)
        self.grid.SetColLabelValue(6, '密码')
        self.grid.SetColSize(6, 40)
        self.grid.EnableEditing(False)
        self.setGridReadOnly()
        self.updateStudents()

        self.studentsNumberLabel.SetLabel(self.studentsNumberLabel.GetLabel() +
                                          str(self.grid.GetNumberRows()))

        self.addButton = wx.Button(self.panel,
                                   -1,
                                   "新增",
                                   pos=(450, 100),
                                   size=(80, 20))
        self.Bind(wx.EVT_BUTTON, self.onAdd, self.addButton)

        self.saveButton = wx.Button(self.panel,
                                    -1,
                                    "保存",
                                    pos=(450, 150),
                                    size=(80, 20))
        self.Bind(wx.EVT_BUTTON, self.onSave, self.saveButton)

        self.deleteButton = wx.Button(self.panel,
                                      -1,
                                      "删除",
                                      pos=(450, 200),
                                      size=(80, 20))
        self.Bind(wx.EVT_BUTTON, self.onDelete, self.deleteButton)

        self.closeButton = wx.Button(self.panel,
                                     -1,
                                     "退出",
                                     pos=(450, 250),
                                     size=(80, 20))
        self.Bind(wx.EVT_BUTTON, self.onClose, self.closeButton)
        self.saveButton.Disable()
Example #28
0
    def __init__(self):
        wx.Frame.__init__(self,
                          parent=None,
                          title="学生信息",
                          pos=(100, 100),
                          size=(550, 400))

        menuBar = wx.MenuBar()
        openMenu = wx.Menu()
        closeMenu = wx.Menu()

        self.studentsMenuSelect = openMenu.Append(-1, u'学生表\tCtrl+S')
        self.Bind(wx.EVT_MENU, self.onStudentsMenuSelect,
                  self.studentsMenuSelect)
        self.classesMenuSelect = openMenu.Append(-1, u'课程表\tCtrl+C')
        self.Bind(wx.EVT_MENU, self.onClassesMenuSelect,
                  self.classesMenuSelect)

        self.closeMenuSelect = closeMenu.Append(-1, u'关闭\tCtrl+Q')
        self.Bind(wx.EVT_MENU, self.onCloseMenuSelect, self.closeMenuSelect)

        menuBar.Append(openMenu, u'维护')
        menuBar.Append(closeMenu, u'关闭')

        self.SetMenuBar(menuBar)

        self.panel = wx.Panel(self)
        self.classLabel = wx.StaticText(self.panel, -1, "课程:", pos=(20, 10))
        self.classLabel.SetFont(wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL))
        self.teacherLabel = wx.StaticText(self.panel,
                                          -1,
                                          "任课教师:",
                                          pos=(200, 10))
        self.teacherLabel.SetFont(wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL))
        mentionLabel = wx.StaticText(self.panel, -1, "请选择课程名:", pos=(20, 100))
        studentsLabel = wx.StaticText(self.panel,
                                      -1,
                                      "已选修此课程的学生:",
                                      pos=(200, 100))

        self.manage = Manage.Manage()
        self.classesList, self.teacheresList = self.manage.getClasses()
        self.classesComboBox = wx.ComboBox(self.panel,
                                           -1,
                                           value='\t',
                                           choices=self.classesList,
                                           pos=(20, 130))
        self.Bind(wx.EVT_COMBOBOX, self.onClassSelect, self.classesComboBox)

        self.grid = wx.grid.Grid(self.panel,
                                 id=-1,
                                 pos=(200, 130),
                                 size=(180, 200))
        self.grid.CreateGrid(10, 2)
        self.grid.HideRowLabels()
        self.grid.SetColLabelValue(0, '学号')
        self.grid.SetColLabelValue(1, '成绩')
        self.grid.EnableEditing(False)
        self.setGridReadOnly()

        self.searchButton = wx.Button(self.panel,
                                      -1,
                                      "查询",
                                      pos=(400, 150),
                                      size=(80, 20))
        self.Bind(wx.EVT_BUTTON, self.onSearch, self.searchButton)

        self.inputGradeButton = wx.Button(self.panel,
                                          -1,
                                          "输入成绩",
                                          pos=(400, 200),
                                          size=(80, 20))
        self.Bind(wx.EVT_BUTTON, self.onInputGrade, self.inputGradeButton)

        self.gradeSpreadButton = wx.Button(self.panel,
                                           -1,
                                           "成绩分布",
                                           pos=(400, 250),
                                           size=(80, 20))
        self.Bind(wx.EVT_BUTTON, self.onGradeSpread, self.gradeSpreadButton)

        self.closeButton = wx.Button(self.panel,
                                     -1,
                                     "退出",
                                     pos=(400, 300),
                                     size=(80, 20))
        self.Bind(wx.EVT_BUTTON, self.close, self.closeButton)

        self.inputGradeButton.Disable()
        self.gradeSpreadButton.Disable()
"""
about:
This code was written by Mostafa El-Marzouki @iSuperMostafa
------------------------------------------------------------
summery:
this project is a performance comparison among bunch of sorting algorithms
it computes the time used in each algorithm to sort list of: Sorted numbers
and Unsorted numbers
input: the size of the numbers list
output: the time each algorithm take to sort the numbers in ms
"""
import Manage

Manage = Manage.Manage()

print(
    "Number size must be more than 5000 to notice the difference among the algorithms! \n"
    "Output is measured in seconds")
while True:
    Manage.FillRandom(int(input("Numbers size: ")))
    Time = Manage.Sort()
    for Type, TypeValue in Time.items():
        print("--------------------\n" "-", Type, "-\n" "--------------------")
        for Sort, SortValue in TypeValue.items():
            print(Sort, " : ", SortValue)
Example #30
0
def get_single_promotion(Id):
    data = Manage.get_single_promotion(Id)
    return render_template('customer-promotion.html', data=data)