Exemplo n.º 1
0
def alldatas():
    type_id = int(request.form['type_id'])
    point_id = int(request.form['point_id'])
    start_time = c_longlong(int(request.form['start_time']))
    end_time = c_longlong(int(request.form['end_time']))
    num = PI(c_int())
    lib.MyDataGetErrDesc.restype = c_char_p
    err = lib.ReadDatasNum(handle, point_id, start_time, end_time, num)
    if err:
        current_app.logger.error("获取数据数量失败,%d", err)
        return jsonify({
            'retcode':
            -1,
            'errmsg':
            '获取数据数量失败,' + lib.MyDataGetErrDesc(err).decode('gbk')
        })

    timestamps = (c_longlong * num.contents.value)()
    sers = (Mydata.Serializer * num.contents.value)()

    err = lib.ReadDatas(handle, point_id, type_id, start_time, end_time,
                        timestamps, sers, num)
    if err:
        current_app.logger.error("获取数据失败,%d", err)
        return jsonify({
            'retcode':
            -1,
            'errmsg':
            '获取数据失败,' + lib.MyDataGetErrDesc(err).decode('gbk')
        })
    typeinfo = (Mydata.TypeInfo * 1)()
    err = lib.MyDataGetTypeByID(handle, type_id, typeinfo)
    if err:
        current_app.logger.error("获取指定类型失败,%d", err)
        return jsonify({
            'retcode':
            -1,
            'errmsg':
            '获取指定类型失败,' + lib.MyDataGetErrDesc(err).decode('gbk')
        })
    readable_datas = Mydata.TransformReadableData(typeinfo[0], timestamps,
                                                  sers, current_app.logger)
    if readable_datas is None:
        return jsonify({'retcode': -1, 'errmsg': '数据解析失败'})
    return jsonify(readable_datas)
Exemplo n.º 2
0
def add_file():
    name = request.form['name']
    err = lib.MyDataAddFile(handle, c_char_p(name.encode()))
    if err:
        current_app.logger.error("添加文件失败,%d", err)
        lib.MyDataGetErrDesc.restype = c_char_p
        return jsonify({
            "ret": -1,
            'errmsg': lib.MyDataGetErrDesc(err).decode('gbk')
        })
    return jsonify({"ret": 0})
Exemplo n.º 3
0
def delete_table():
    try:
        table_id = int(request.form['table_id'])
    except:
        table_id = -1
    err = lib.MyDataDeleteTable(handle, table_id)
    if err:
        current_app.logger.error("删除表失败,%d", err)
        lib.MyDataGetErrDesc.restype = c_char_p
        return jsonify({
            "ret": -1,
            'errmsg': lib.MyDataGetErrDesc(err).decode('gbk')
        })
    return jsonify({"ret": 0})
Exemplo n.º 4
0
def add_table():
    try:
        type_id = int(request.form['table_type_id'])
    except:
        type_id = -1
    name = request.form['name']
    err = lib.MyDataAddTable(handle, type_id, c_char_p(name.encode()))
    if err:
        current_app.logger.error("添加表失败,%d", err)
        lib.MyDataGetErrDesc.restype = c_char_p
        return jsonify({
            "ret": -1,
            'errmsg': lib.MyDataGetErrDesc(err).decode('gbk')
        })
    return jsonify({"ret": 0})
Exemplo n.º 5
0
def rebuild_index():
    try:
        start_time = int(request.form['start_time'])
    except:
        start_time = 0
    name = request.form['name']
    err = lib.MyDataRebuildIndex(handle, c_char_p(name.encode()),
                                 c_longlong(start_time))
    if err:
        current_app.logger.error("重建索引失败,%d", err)
        lib.MyDataGetErrDesc.restype = c_char_p
        return jsonify({
            "ret": -1,
            'errmsg': lib.MyDataGetErrDesc(err).decode('gbk')
        })
    return jsonify({"ret": 0})
Exemplo n.º 6
0
def create_file():
    try:
        size = int(request.form['size'])
    except:
        size = -1
    name = request.form['name']
    start_time = int(request.form['start_time'])
    end_time = int(request.form['end_time'])
    llstart = c_longlong(start_time)
    llend = c_longlong(end_time)
    llsize = c_longlong(size)
    err = lib.MyDataCreateFile(handle, c_char_p(name.encode()), llstart, llend,
                               llsize)
    if err:
        current_app.logger.error("创建文件失败,%d", err)
        lib.MyDataGetErrDesc.restype = c_char_p
        return jsonify({
            "ret": -1,
            'errmsg': lib.MyDataGetErrDesc(err).decode('gbk')
        })
    return jsonify({"ret": 0})
Exemplo n.º 7
0
def addtype_result():
    type_name = request.form['type_name']
    typeenums = request.form['typeenums']
    names = request.form['names']
    typeenums = typeenums.split('H')
    num = len(typeenums)
    typeenums_array = (c_int * num)()
    for i in range(len(typeenums)):
        typeenums_array[i] = int(typeenums[i])

    err = lib.MyDataAddType(handle, typeenums_array, num,
                            c_char_p(type_name.encode()),
                            c_char_p(names.encode()))
    if err:
        current_app.logger.error("添加类型失败,%d", err)
        lib.MyDataGetErrDesc.restype = c_char_p
        return jsonify({
            "ret": -1,
            'errmsg': lib.MyDataGetErrDesc(err).decode('gbk')
        })
    return jsonify({"ret": 0})