Пример #1
0
def create_new_alarm(x, y):
    try:
        a = Alarm(x=x, y=y)
        db.add(a)
        db.commit()
        return a
    except:
        db.rollback()
        raise
Пример #2
0
def st_alarm_upload():
    if request.method == 'POST':
        myFile = request.files['uploadFile']

        # 判断语句
        if (myFile.content_type == "application/vnd.ms-excel"):
            # 判断是否用户是否登录
            if (session.get('user_id')):
                author_id = session['user_id']
                author_name = session['username']
            else:
                author_id = None
                author_name = ''

            # 写入文件
            path = os.path.join(os.getcwd(), 'static', 'user_data', str(author_id) + '_' + myFile.filename)
            myFile.save(path)
            target_path = os.path.join('static', 'user_data', str(author_id) + '_' + myFile.filename)

            try:
                data = pd.read_csv(target_path, encoding='GB18030')
                # data = pd.read_csv('userdata/test_data_1.csv', encoding='GB18030')
                test_x = data.iloc[:, -9:]  # x: x1-x9 特征数据

                datas = get_alarm_result(test_x)
                result_1 = round(datas[0], 2)
                result_2 = round(datas[1], 2)
                result_3 = round(datas[2], 2)
                result_4 = round(datas[3], 2)

                alarm = Alarm(type=1, author_id=author_id, filename=myFile.filename, result_1=result_1,
                              result_2=result_2,
                              result_3=result_3, result_4=result_4)
                db.session.add(alarm)
                db.session.commit()

                context = {
                    'data0': result_1,
                    'data1': result_2,
                    'data2': result_3,
                    'data3': result_4
                }

                return render_template('st_alarm.html', **context)

            except:
                return render_template("st_alarm.html", st_alarm_error="上传csv格式有误,请参考示范模板")

        else:
            return render_template("st_alarm.html", st_alarm_error="请上传csv文件")
    else:
        return redirect(url_for('st_alarm'))
Пример #3
0
def UserMeAlarmListApi():
    url = '/user/me/alarm/list/'
    offset = 0
    count = 20

    values = {'offset': offset, 'count': count}
    raw = request_get(url, values)

    raw_obj = json.loads(raw)
    alarms = []
    for alarm_obj in raw_obj['alarms']:
        alarm = Alarm(alarm_obj)
        alarms.append(alarm)

    return alarms