| 
              # -*- coding: utf-8 -*-
from __future__ import division
from django_logit import logit
from django_query import get_query_value
from django_response import response
from paginator import pagination
from equipment.models import IsolationPointInfo, IsolationPointUserInfo, ThermometerEquipmentInfo
from utils.error.errno_utils import IsolationPointStatusCode
@logit
def measure_window(request):
    point_id = request.POST.get('point_id', '')
    point_measure_window = get_query_value(request, 'point_measure_window', val_cast_type='listjson')
    try:
        point = IsolationPointInfo.objects.get(point_id=point_id, status=True)
    except IsolationPointInfo.DoesNotExist:
        return response(IsolationPointStatusCode.ISOLATIONPOINT_NOT_FOUND)
    point.point_measure_window = point_measure_window
    point.save()
    return response()
@logit
def get_point_list(request):
    page = request.POST.get('page', 1)
    num = request.POST.get('num', 20)
    points = IsolationPointInfo.objects.filter(status=True)
    points, left = pagination(points, page, num)
    points = [point.data for point in points]
    return response(data={
        'points': points,
        'left': left,
    })
@logit
def get_point_info(request):
    point_id = request.POST.get('point_id', '')
    try:
        point = IsolationPointInfo.objects.get(point_id=point_id, status=True)
    except IsolationPointInfo.DoesNotExist:
        return response(IsolationPointStatusCode.ISOLATIONPOINT_NOT_FOUND)
    return response(data=point.data)
@logit
def get_point_fields(request):
    point_id = request.POST.get('point_id', '')
    try:
        point = IsolationPointInfo.objects.get(point_id=point_id, status=True)
    except IsolationPointInfo.DoesNotExist:
        return response(IsolationPointStatusCode.ISOLATIONPOINT_NOT_FOUND)
    return response(data={
        'fields': point.point_fields,
    })
@logit
def save_point_fields(request):
    point_id = request.POST.get('point_id', '')
    user_id = request.POST.get('user_id', '')
    fields = get_query_value(request, 'fields', val_cast_type='listjson')
    IsolationPointUserInfo.objects.create(point_id=point_id, user_id=user_id, fields=fields)
    return response()
@logit
def bind_eqpt(request):
    macid = request.POST.get('macid', '')
    point_id = request.POST.get('point_id', '')
    user_id = request.POST.get('user_id', '')
    try:
        ipui = IsolationPointUserInfo.objects.get(point_id=point_id, user_id=user_id, status=True)
    except IsolationPointUserInfo.DoesNotExist:
        return response()
    ThermometerEquipmentInfo.objects.update_or_create(macid=macid, defaults={
        'ipui_pk': ipui.pk,
    })
    return response()
 
  |