Exemple #1
0
def device_profile_data(id):
    search = False
    q = request.args.get('q')
    if q:
        search = True
        try:
            page = int(request.args.get('page', 1))
        except ValueError:
            page = 1
    else:
        page = 1
    device = Device.get(id)
    if device:
        # datas = device.datas.order_by(desc(cls.create_time)).paginate(page, per_page, True).items
        datas = Data.get_gdatas(current_user, device)
        count = len(datas)
        pagination = Pagination(page=page,
                                per_page=15,
                                total=count,
                                css_framework='bootstrap3',
                                search=search,
                                record_name='devices')

        return render_template('devices/device_data.html',
                               datas=datas,
                               device=device,
                               pagination=pagination)
    else:
        abort(404)
Exemple #2
0
    def save(self, device_id=None, data=None,  create_time=None):
        """
        Saves an order and return an order object
        :param button:
        :param user:
        :return: Order object
    """
        if device_id:
            self.device_id = device_id
        if data:
            self.data = data
        if create_time:
            self.create_time = create_time

        if not self.create_time:
            self.create_time == datetime.now()

        device = Device.get(device_id)

        res = (0, 0, 0)
        if device and hasattr(device, 'garbage_can_obj'):
            bt_height = device.garbage_can_obj.bottom_height
            tp_height = device.garbage_can_obj.top_height
            res = parse_data(data, bt_height, tp_height)

        self.occupancy = res[0]
        self.temperature = res[1]
        self.electric_level = res[2]

        db.session.add(self)
        try:
            db.session.commit()
        except SQLAlchemyError:
            db.session.rollback()
        return self
Exemple #3
0
    def save(self, device_id=None, data=None, create_time=None):
        """
        Saves an order and return an order object
        :param button:
        :param user:
        :return: Order object
    """
        if device_id:
            self.device_id = device_id
        if data:
            self.data = data
        if create_time:
            self.create_time = create_time

        if not self.create_time:
            self.create_time == datetime.now()

        device = Device.get(device_id)

        res = (0, 0, 0)
        if device and hasattr(device, 'garbage_can_obj'):
            bt_height = device.garbage_can_obj.bottom_height
            tp_height = device.garbage_can_obj.top_height
            res = parse_data(data, bt_height, tp_height)

        self.occupancy = res[0]
        self.temperature = res[1]
        self.electric_level = res[2]

        db.session.add(self)
        try:
            db.session.commit()
        except SQLAlchemyError:
            db.session.rollback()
        return self
Exemple #4
0
def device_data():
    res = []
    device_id = request.args["device_id"]
    device = Device.get(device_id)
    if device:
        datas = device.datas.order_by(desc("create_time")).limit(200).all()
        datas = reversed(datas)
        for d in datas:
            data = dict()
            data["occupancy"] = d.occupancy
            data["temperature"] = d.temperature
            data["electric_level"] = d.electric_level
            data["create_time"] = d.create_time.strftime("%m-%d %H:%M")
            res.append(data)
    return jsonify({"data": res})
Exemple #5
0
def device_data():
    res = []
    device_id = request.args['device_id']
    device = Device.get(device_id)
    if device:
        datas = device.datas.order_by(desc('create_time')).limit(200).all()
        datas = reversed(datas)
        for d in datas:
            data = dict()
            data['occupancy'] = d.occupancy
            data['temperature'] = d.temperature
            data['electric_level'] = d.electric_level
            data['create_time'] = d.create_time.strftime('%m-%d %H:%M')
            res.append(data)
    return jsonify({'data': res})
Exemple #6
0
def device_profile_data(id):
    search = False
    q = request.args.get('q')
    if q:
        search = True
        try:
            page = int(request.args.get('page', 1))
        except ValueError:
            page = 1
    else:
        page = 1
    device = Device.get(id)
    if device:
        # datas = device.datas.order_by(desc(cls.create_time)).paginate(page, per_page, True).items
        datas = Data.get_gdatas(current_user, device)
        count = len(datas)
        pagination = Pagination(page=page, per_page=15, total=count, css_framework='bootstrap3',
                                search=search, record_name='devices')

        return render_template('devices/device_data.html', datas=datas, device=device, pagination=pagination)
    else:
        abort(404)