示例#1
0
def sync_tables():
    desks = mysql.get_all('desks')
    logic.desks = set()
    logic.tables = {}
    for one in desks:
        logic.desks.add(one['desk'])
        logic.tables[one['desk']] = logic.Table(one['desk'])
示例#2
0
def update_desk():
    global desks
    t = mysql.get_all('desks')
    desks = map(lambda x: x['desk'], t)
    desks.sort()
    for desk in desks:
        tables[desk] = Table(desk)
    def post(self):
        fid = self.get_argument('fid')
        #print fid

        results = []
        if fid == 'all':
            faculty = mysql.get_all('faculty')
            for one in faculty:
                if one['role'].find('cook') >= 0:
                    results.append({
                        'fid':
                        one['fid'],
                        'name':
                        one['name'],
                        'diet':
                        logic_manager.get_cook_range(one['fid'])
                    })
        else:
            name = logic.faculty.get(fid)['name']
            results.append({
                'fid': fid,
                'name': name,
                'diet': logic_manager.get_cook_range(fid)
            })
        response = {'status': 'ok', 'result': results}

        self.write(json_encode(response))
示例#4
0
 def __init__(self):
     self.content = set()
     self.stamp = time.time()
     self.waiters = set()
     result = mysql.get_all('mask')
     for one in result:
         self.content.add(one['did'])
 def post(self):
     pid = self.get_argument('order')
     pid = int(pid)
     sql = 'select order_history.uid as uid,diet.name as name,num,order_history.price as price,cook_history.fid as cook,cash_history.fid as cashier,status from cash_history,order_history,cook_history,diet where cash_history.uid=order_history.uid and order_history.uid=cook_history.uid and order_history.did=diet.did and order_history.pid=%s' % pid
     result = mysql.query(sql)
     print result
     result2 = mysql.get_all('faculty')
     faculty = {}
     for one in result2:
         faculty[one['fid']] = one['name']
     total = 0
     for one in result:
         one['price'] = one['num'] * one['price']
         one['cook'] = faculty[one['cook']]
         one['cashier'] = faculty[one['cashier']]
         if one['status'] == 'success':
             total += one['price']
     result.append({
         'name': '',
         'num': 'all',
         'price': total,
         'cook': '',
         'cashier': '',
         'status': ''
     })
     response = {'status': 'ok', 'pid': pid, 'items': result}
     self.write(json_encode(response))
示例#6
0
 def post(self):
     role = self.get_cookie('role')
     if role != 'manager':
         return
     faculty_list = mysql.get_all('faculty')
     faculty_list.sort(key=lambda x: x['fid'])
     #print faculty_list
     response = {'status': 'ok', 'faculty': faculty_list}
     self.write(json_encode(response))
示例#7
0
def sync_cookdo():
    cook_do = mysql.get_all('cook_do')
    logic.cook_do = {}
    for one in cook_do:
        if one['fid'] not in logic.cook_do:
            logic.cook_do[one['fid']] = set()
        logic.cook_do.get(one['fid']).add(one['did'])
    for k, v in logic.cook_do.items():
        if u'all' in v:
            v = set([u'all'])
示例#8
0
    def post(self):
        cid = json_decode(self.get_argument('cid'))
        con = {'cid': int(cid)}
        res = mysql.delete('category', con)

        if res:
            response = {'status': 'ok'}
            data.category = mysql.get_all('category')
        else:
            response = {'status': 'err'}
        self.finish(json_encode(response))
示例#9
0
    def post(self):
        did = int(json_decode(self.get_argument('did')))
        res = mysql.get('diet', {'did': did})

        if res and res[0]:
            picture = res[0]['picture']
            full_path = os.path.join(os.path.dirname(__file__),
                                     'static/pictures/' + picture)
            os.remove(full_path)
            mysql.delete('diet', {'did': did})
            data.diet = mysql.get_all('diet')
            response = {'status': 'ok'}
            self.finish(json_encode(response))
            return
        response = {'status': 'err'}
        self.finish(json_encode(response))
示例#10
0
    def post(self):
        #attention to variable type
        did = int(self.get_argument('did'))
        name = str(self.get_argument('name'))
        price = float(self.get_argument('price'))
        base = float(self.get_argument('base'))
        cid = int(self.get_argument('cid'))
        order = int(self.get_argument('order'))
        desc = str(self.get_argument('desc'))
        picture = ''

        if self.request.files:
            metas = self.request.files['picture']
            for meta in metas:

                file_name = meta['filename']
                content = meta['body']
                ext = os.path.splitext(file_name)[-1]
                picture = str(uuid.uuid4()) + ext
                full_path = os.path.join(os.path.dirname(__file__),
                                         'static/pictures/' + picture)
                with open(full_path, 'wb') as f:
                    f.write(content)
        # store into database

        res = mysql.insert(
            'diet', {
                'did': did,
                'name': name,
                'price': price,
                'base': base,
                'cid': cid,
                'ord': order,
                'description': desc,
                'picture': picture
            })
        if res:
            data.diet = mysql.get_all('diet')
            response = {'status': 'ok'}
        else:
            os.remove(
                os.path.join(os.path.dirname(__file__),
                             'static/pictures/' + picture))
            response = {'status': 'error'}

        self.finish(json_encode(response))
示例#11
0
    def post(self):
        cid = json_decode(self.get_argument('cid'))
        name = json_decode(self.get_argument('name'))
        order = json_decode(self.get_argument('order'))
        desc = json_decode(self.get_argument('desc'))
        row = {
            'cid': int(cid),
            'name': name,
            'ord': int(order),
            'description': desc
        }
        res = mysql.insert('category', row)

        if res:
            data.category = mysql.get_all('category')
            response = {'status': 'ok'}
        else:
            response = {'status': 'err'}
        self.finish(json_encode(response))
示例#12
0
 def post(self):
     desks = mysql.get_all('desks')
     desks.sort(key=lambda x: x['desk'])
     response = {'status': 'ok', 'desks': desks}
     self.write(json_encode(response))
示例#13
0
 def post(self):
     result = mysql.get_all('category')
     result.sort(key=lambda one: one['cid'])
     response = {'status': 'ok', 'category': result}
     self.write(json_encode(response))
示例#14
0
def get_all(table):
    res = mysql.get_all(table)
    return res
示例#15
0
def sync_faculty():
    faculty = mysql.get_all('faculty')
    for one in faculty:
        logic.faculty[one['fid']] = one
示例#16
0
def get_all(table):
    if table in ('diet', 'category', 'faculty'):
        res = mysql.get_all(table)
    else:
        res = myredis.get_all(table)
    return res
示例#17
0
def sync_category():
    category = mysql.get_all('category')
    logic.category = {}
    for one in category:
        logic.category[one['cid']] = one
示例#18
0
def sync_diet():
    diet = mysql.get_all('diet')
    logic.diet = {}
    for one in diet:
        logic.diet[one['did']] = one
示例#19
0
 def post(self):
     t = mysql.get_all('faculty')
     response = {'status': 'ok', 'faculty': t}
     self.finish(json_encode(response))
示例#20
0
 def post(self):
     printers = mysql.get_all('printers')
     response = {'status': 'ok', 'printers': printers}
     self.write(json_encode(response))
示例#21
0
                {'fid': '0004', 'uid': '2', 'did': 2, 'num': 1, 'stamp': util.strtostamp('2015.1.8')},
                {'fid': '0005', 'uid': '3', 'did': 3, 'num': 1, 'stamp': util.strtostamp('2015.2.8')},
                {'fid': '0005', 'uid': '4', 'did': 4, 'num': 1, 'stamp': util.strtostamp('2015.3.8')}]

feedback = [{'uid': '2', 'did': 2, 'num': 1, 'fb': -1, 'stamp': util.strtostamp('2015.1.8')},
            {'uid': '2', 'did': 2, 'num': 1, 'fb': 1, 'stamp': util.strtostamp('2015.1.8')},
            {'uid': '2', 'did': 3, 'num': 1, 'fb': 1, 'stamp': util.strtostamp('2015.1.8')},
            {'uid': '2', 'did': 3, 'num': 1, 'fb': 1, 'stamp': util.strtostamp('2015.1.8')}]

comment = [{'session': 'ss', 'comment': 'ssss', 'stamp': util.strtostamp('2015.1.8')}]

#diet_stat = [{'id': 1, 'name': 'ss', 'price': 88, 'num': 1, 'stamp_from': time.time(), 'stamp_to': time.time()}]
#cook_stat = [{'fid': 'ff', 'name': 'dd', 'num': 1, 'val': 88, 'stamp_from': time.time(), 'stamp_to': time.time()}]
mysql.insert('category', categories[0])
mysql.insert_many('category', categories[1:])
print mysql.get_all('category')

mysql.insert('diet', diet[0])
mysql.insert_many('diet', diet[1:])
print mysql.get_all('diet')

mysql.insert('faculty', faculty[0])
mysql.insert_many('faculty', faculty[1:])
print mysql.get_all('faculty')

mysql.insert('order_history', order_history[0])
mysql.insert_many('order_history', order_history[1:])
print mysql.get_all('order_history')


mysql.insert('cook_history', cook_history[0])
示例#22
0
#cook_stat = [{'fid': 'ff', 'name': 'dd', 'num': 1, 'val': 88, 'stamp_from': time.time(), 'stamp_to': time.time()}]
'''
mysql.insert('category', categories[0])
mysql.insert_many('category', categories[1:])
print mysql.get_all('category')

mysql.insert('diet', diet[0])
mysql.insert_many('diet', diet[1:])
print mysql.get_all('diet')

mysql.insert('faculty', faculty[0])
mysql.insert_many('faculty', faculty[1:])
print mysql.get_all('faculty')

mysql.insert('order_history', order_history[0])
mysql.insert_many('order_history', order_history[1:])
print mysql.get_all('order_history')


mysql.insert('cook_history', cook_history[0])
mysql.insert_many('cook_history', cook_history[1:])
print mysql.get_all('cook_history')


mysql.insert('feedback', feedback[0])
mysql.insert_many('feedback', feedback[1:])
'''
print mysql.get_all('feedback')

cursor.close()
conn.close()
示例#23
0
def prepare():
    data.category = mysql.get_all('category')
    data.diet = mysql.get_all('diet')
    data.update_desk()
示例#24
0
 def post(self):
     diet = mysql.get_all('diet')
     diet.sort(key=lambda one: one['did'])
     response = {'status': 'ok', 'diet': diet}
     self.write(json_encode(response))
示例#25
0
def sync_printers():
    printers = mysql.get_all('printers')
    logic.printers = {}
    for one in printers:
        logic.printers[one['name']] = one['ip']