Esempio n. 1
0
def saveJsonData(request):
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 24001001,
                "msg": getErrMsgByCode(24001001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=24001001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=24001001)

    userLogin = None
    if "login" in reqBody:
        userLogin = reqBody["login"]
    else:
        return Response(
            {
                "result": 24001006,
                "msg": getErrMsgByCode(24001006, None)
            },
            content_type="application/json")

    userData = None
    if "data" in reqBody:
        userData = reqBody["data"]
    else:
        return Response(
            {
                "result": 24001007,
                "msg": getErrMsgByCode(24001007, None)
            },
            content_type="application/json")

    result = None
    if userLogin and userData:
        userLogin = "******" + userLogin
        result = setValueToCache(userLogin, userData)

    if result is None:
        return Response(
            {
                "result": 24001008,
                "msg": getErrMsgByCode(24001008, None)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 2
0
def rtspDeviceInfoDelete(request):
    """
    Rtsp信息--删除
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 11004001,
                "msg": getErrMsgByCode(11004001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=17005001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=17005001)

    if "id" not in reqBody:
        return Response(
            {
                "result": 11004006,
                "msg": getErrMsgByCode(11004006, None)
            },
            content_type="application/json")
    else:
        deviceID = reqBody["id"]

    try:
        deviceObj = RTSPDeviceDB.objects.get(id=deviceID)
    except Exception as err:
        return Response(
            {
                "result": 11004007,
                "msg": getErrMsgByCode(11004007, err)
            },
            content_type="application/json")

    try:
        deviceObj.delete()
    except Exception as err:
        return Response(
            {
                "result": 11004008,
                "msg": getErrMsgByCode(11004008, err)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 3
0
def AIrtspDeviceInfoQueryAll(request):
    """
     AI Rtsp设备信息--全部
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 17013001,
                "msg": getErrMsgByCode(17013001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=17013001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=17013001)

    resData = []

    try:
        rtspDeviceObjs = videoMonitorDB.objects.all()

        for item in rtspDeviceObjs:
            deviceObj = {}

            deviceObj["id"] = item.id
            deviceObj["name"] = item.name
            deviceObj["dept"] = item.dept
            deviceObj["ai_id"] = item.ai_device_id
            deviceObj["code"] = item.code
            deviceObj["channel"] = item.channel
            deviceObj["longitude"] = item.longitude
            deviceObj["latitude"] = item.latitude
            deviceObj["height"] = item.height
            deviceObj["locate"] = item.locate
            deviceObj["enable"] = item.enable
            resData.append(deviceObj)

    except Exception as err:
        return Response(
            {
                "result": 17013006,
                "msg": getErrMsgByCode(17013006, err)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")
Esempio n. 4
0
def queryRtspServerInfo(request):
    """
    Rtsp服务信息--查询
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response({"result": 16003001, "msg": getErrMsgByCode(16003001, err)}, content_type="application/json")

    if reqbody_verify(reqBody, err_code=16003001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=16003001)

    tokenInfo = tokenDecode(reqBody["token"])
    serverID = None

    if tokenInfo["role"] >= 10:
        if "id" in reqBody:
            serverID = reqBody["id"]
    else:
        if "id" in reqBody:
            serverID = reqBody["id"]
        else:
            return Response({"result": 16003005, "msg": getErrMsgByCode(16003005, None)},  content_type="application/json")

    resData = []

    try:
        if serverID is None:
            sipServerObjs = RTSPServerDB.objects.all()
        else:
            sipServerObjs = RTSPServerDB.objects.filter(id=serverID)

        for item in sipServerObjs:
            serverObj = {}

            serverObj["id"] = item.id
            serverObj["name"] = item.name
            serverObj["ip"] = item.ip
            serverObj["port"] = item.port

            serverObj["user"] = item.user
            serverObj["password"] = item.password
            serverObj["channels"] = item.channels
            serverObj["type"] = item.type
            serverObj["enable"] = item.enable

            resData.append(serverObj)
    except Exception as err:
        return Response({"result": 16003006, "msg": getErrMsgByCode(16003006, err)}, content_type="application/json")

    return Response({"result": 0, "msg": "OK", "data": resData}, content_type="application/json")
Esempio n. 5
0
def queryDeptInfo(request):
    """
    部门信息--查询
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 11003001,
                "msg": getErrMsgByCode(11003001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=11003001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=11003001)

    resData = {}

    tokenInfo = tokenDecode(reqBody["token"])
    deptID = tokenInfo["dept"]

    try:
        deptInfo = deptDB.objects.get(id=deptID)

        resData["id"] = deptInfo.id
        resData["name"] = deptInfo.name
        resData["pid"] = deptInfo.pid
        resData["path"] = deptInfo.path
        resData["enable"] = deptInfo.enable
        resData["register"] = deptInfo.register

        subDeptList = []
        getSubDeptTreeList(deptID, subDeptList)

        resData["children"] = subDeptList
    except Exception as err:
        return Response(
            {
                "result": 11003005,
                "msg": getErrMsgByCode(11003005, err)
            },
            content_type="application/json")

    addOperationLog(tokenInfo["login"], "查询部门信息", "查询部门信息成功", "查询部门信息成功")
    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")
Esempio n. 6
0
def queryOptionInfo(request):
    """
    配置信息--查询
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 28003001,
                "msg": getErrMsgByCode(28003001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=28003001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=28003001)

    try:
        optObjs = OptionSysDB.objects.all()
    except Exception as err:
        return Response(
            {
                "result": 28003005,
                "msg": getErrMsgByCode(28003005, err)
            },
            content_type="application/json")

    resData = []

    for opt in optObjs:
        optInfo = {}

        optInfo["id"] = opt.id
        optInfo["name"] = opt.opt_name
        optInfo["key"] = opt.opt_key
        optInfo["value"] = opt.opt_value
        optInfo["modify"] = opt.opt_modify

        resData.append(optInfo)

    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")
Esempio n. 7
0
def queryTemplateInfo(request):
    """
    SMS短信模板--查询
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 19004001,
                "msg": getErrMsgByCode(19004001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=19004001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=19004001)

    resData = []
    try:
        hazardsInfoObjs = infoTempDB.objects.all()
        for item in hazardsInfoObjs:
            infoObj = {}

            infoObj["id"] = item.id
            infoObj["user"] = item.user
            infoObj["name"] = item.name
            infoObj["content"] = item.content
            infoObj["type"] = item.type
            infoObj["time"] = item.time

            resData.append(infoObj)
    except Exception as err:
        return Response(
            {
                "result": 19004006,
                "msg": getErrMsgByCode(19004006, err)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")
Esempio n. 8
0
def getJsonData(request):
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 24002001,
                "msg": getErrMsgByCode(24002001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=24002001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=24002001)

    userLogin = None
    if "login" in reqBody:
        userLogin = reqBody["login"]
    else:
        return Response(
            {
                "result": 24002006,
                "msg": getErrMsgByCode(24002006, None)
            },
            content_type="application/json")

    result = None
    if userLogin:
        userLogin = "******" + userLogin
        result = tokenQuery(userLogin)

    if result is None:
        return Response(
            {
                "result": 24002007,
                "msg": getErrMsgByCode(24002007, None)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK",
        "data": result
    },
                    content_type="application/json")
Esempio n. 9
0
def userInfoQuery(request):
    """
    用户信息--查询
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 10004001,
                "msg": getErrMsgByCode(10004001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=10004001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=10004001)

    try:
        userObj = userDB.objects.all()
    except Exception as err:
        return Response(
            {
                "result": 10004006,
                "msg": getErrMsgByCode(10004006, err)
            },
            content_type="application/json")
    resDataList = []
    for item in userObj:
        resData = {}
        resData["id"] = item.id
        resData["login"] = item.login
        resData["nickname"] = item.nickname
        resData["enable"] = item.enable
        resDataList.append(resData)

    return Response({
        "result": 0,
        "msg": "OK",
        "data": resDataList
    },
                    content_type="application/json")
Esempio n. 10
0
def userInfoDelete(request):
    """
    用户信息--删除
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 10005001,
                "msg": getErrMsgByCode(10005001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=10005001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=10005001)

    if "id" not in reqBody:
        return Response(
            {
                "result": 10005005,
                "msg": getErrMsgByCode(10005005, None)
            },
            content_type="application/json")
    else:
        userID = reqBody["id"]

    try:
        userObj = userDB.objects.get(id=userID)
    except Exception as err:
        return Response(
            {
                "result": 10005006,
                "msg": getErrMsgByCode(10005007, err)
            },
            content_type="application/json")

    if userObj.login == "admin":
        return Response(
            {
                "result": 10005007,
                "msg": getErrMsgByCode(10005008, None)
            },
            content_type="application/json")

    savePoint = transaction.savepoint()

    try:
        userObj.delete()
    except Exception as err:
        transaction.savepoint_rollback(savePoint)
        return Response(
            {
                "result": 10005008,
                "msg": getErrMsgByCode(10005009, err)
            },
            content_type="application/json")

    transaction.savepoint_commit(savePoint)
    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 11
0
def userInfoModify(request):
    """
    用户信息--修改
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 10003001,
                "msg": getErrMsgByCode(10003001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=10003001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=10003001)

    tokenInfo = tokenDecode(reqBody["token"])

    if "id" not in reqBody:
        return Response(
            {
                "result": 10003005,
                "msg": getErrMsgByCode(10003005, None)
            },
            content_type="application/json")
    else:
        userID = reqBody["id"]

    if userDB.objects.filter(id=userID).count() == 0:
        return Response(
            {
                "result": 10003006,
                "msg": getErrMsgByCode(10003006, None)
            },
            content_type="application/json")

    userPwd = None
    userName = None
    userEnable = None

    if "password" not in reqBody:
        pass
    else:
        userPwd = reqBody["password"]

    if "nickname" not in reqBody:
        pass
    else:
        userName = reqBody["nickname"]

    if "enable" not in reqBody:
        pass
    else:
        userEnable = reqBody["enable"]

    userObj = userDB.objects.get(id=userID)

    if userPwd is not None:
        userObj.password = mysql_password(userPwd)

    if userName is not None:
        userObj.nickname = userName

    if userEnable is not None:
        userObj.enable = userEnable

    savePoint = transaction.savepoint()

    try:
        userObj.save()
    except Exception as err:
        transaction.savepoint_rollback(savePoint)
        return Response(
            {
                "result": 10003007,
                "msg": getErrMsgByCode(10003007, err)
            },
            content_type="application/json")

    transaction.savepoint_commit(savePoint)

    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 12
0
def userInfoAdd(request):
    """
    用户信息--新增
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 10002001,
                "msg": getErrMsgByCode(10002001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=10002001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=10002001)

    if "login" not in reqBody:
        return Response(
            {
                "result": 10002006,
                "msg": getErrMsgByCode(10002006, None)
            },
            content_type="application/json")
    else:
        userLogin = reqBody["login"]

    if userDB.objects.filter(login=userLogin):
        return Response(
            {
                "result": 10002007,
                "msg": getErrMsgByCode(10002007, None)
            },
            content_type="application/json")

    if "password" not in reqBody:
        return Response(
            {
                "result": 10002008,
                "msg": getErrMsgByCode(10002008, None)
            },
            content_type="application/json")
    else:
        userPwd = reqBody["password"]

    if "nickname" not in reqBody:
        return Response(
            {
                "result": 10002009,
                "msg": getErrMsgByCode(10002009, None)
            },
            content_type="application/json")
    else:
        userName = reqBody["nickname"]

    if "enable" not in reqBody:
        return Response(
            {
                "result": 10002010,
                "msg": getErrMsgByCode(10002010, None)
            },
            content_type="application/json")
    else:
        userEnable = reqBody["enable"]

    userObj = userDB()

    userObj.login = userLogin
    userObj.password = mysql_password(userPwd)
    userObj.nickname = userName
    userObj.enable = userEnable

    savePoint = transaction.savepoint()

    try:
        userObj.save()
    except Exception as err:
        transaction.savepoint_rollback(savePoint)
        Response({
            "result": 10002011,
            "msg": getErrMsgByCode(10002011, None)
        },
                 content_type="application/json")

    transaction.savepoint_commit(savePoint)

    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 13
0
def rtspRecordInfoAdd(request):
    """
    Rtsp设备录像信息--添加
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 17009001,
                "msg": getErrMsgByCode(17009001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=17009001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=17009001)

    if "device" not in reqBody:
        return Response(
            {
                "result": 17009006,
                "msg": getErrMsgByCode(17009006, None)
            },
            content_type="application/json")
    else:
        deviceID = reqBody["device"]

    if "user" not in reqBody:
        return Response(
            {
                "result": 17009007,
                "msg": getErrMsgByCode(17009007, None)
            },
            content_type="application/json")
    else:
        userID = reqBody["user"]

    if "type" not in reqBody:
        return Response(
            {
                "result": 17009008,
                "msg": getErrMsgByCode(17009008, None)
            },
            content_type="application/json")
    else:
        recordType = reqBody["type"]

    recordCode = None
    # if recordType == 1:
    if "record_code" not in reqBody:
        return Response(
            {
                "result": 17009009,
                "msg": getErrMsgByCode(17009009, None)
            },
            content_type="application/json")
    else:
        recordCode = reqBody["record_code"]
    # else:
    #     recordCode = str(deviceID) + "." + str(userID) + "." + str(time.time())

    try:
        recordObj = RTSPRecordDB()
        recordObj.user = userID
        recordObj.ipc = deviceID
        recordObj.type = recordType
        recordObj.record_code = recordCode

        recordObj.save()
    except Exception as err:
        return Response(
            {
                "result": 17009010,
                "msg": getErrMsgByCode(17009010, err)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK",
        "recordCode": recordCode
    },
                    content_type="application/json")
Esempio n. 14
0
def rtspDeviceRollingQuery(request):
    """
    Rtsp设备轮询列表--查询
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 17008001,
                "msg": getErrMsgByCode(17008001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=17008001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=17008001)

    if "user" not in reqBody:
        return Response(
            {
                "result": 17008006,
                "msg": getErrMsgByCode(17008006, None)
            },
            content_type="application/json")
    else:
        userID = reqBody["user"]

    resData = []
    try:
        ipcObjList = RTSPRollingDB.objects.filter(user=userID)

        for ipcItem in ipcObjList:
            ipcObj = RTSPDeviceDB.objects.filter(id=ipcItem.ipc).first()
            if not ipcObj:
                continue

            deviceInfo = {}
            deviceInfo["id"] = ipcObj.id
            deviceInfo["name"] = ipcObj.name
            deviceInfo["dept"] = ipcObj.dept
            deviceInfo["type"] = ipcObj.type
            deviceInfo["server"] = ipcObj.server
            deviceInfo["channel"] = ipcObj.channel
            deviceInfo["longitude"] = ipcObj.longitude
            deviceInfo["latitude"] = ipcObj.latitude
            deviceInfo["height"] = ipcObj.height
            deviceInfo["locate"] = ipcObj.locate
            deviceInfo["enable"] = ipcObj.enable
            deviceInfo["position"] = ipcObj.position

            resData.append(deviceInfo)
    except Exception as err:
        return Response(
            {
                "result": 17008007,
                "msg": getErrMsgByCode(17008007, err)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")
Esempio n. 15
0
def queryDeptMemberInfo(request):
    """
    部门成员信息--查询
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 11005001,
                "msg": getErrMsgByCode(11005001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=11005001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=11005001)

    tokenInfo = tokenDecode(reqBody["token"])
    if "id" not in reqBody:
        return Response(
            {
                "result": 11005005,
                "msg": getErrMsgByCode(11005005, None)
            },
            content_type="application/json")
    else:
        deptID = reqBody["id"]

    resData = []

    try:
        if int(deptID) == 1:
            memberInfoList = userDB.objects.all().order_by("position")
        else:
            memberInfoList = userDB.objects.filter(
                dept=deptID).order_by("position")

        if memberInfoList:
            for obj in memberInfoList:
                userObj = {}

                userObj["id"] = obj.id
                userObj["login"] = obj.login
                userObj["nickname"] = obj.nickname
                userObj["dept"] = obj.dept
                userObj["email"] = obj.email
                userObj["enable"] = obj.enable
                userObj["height"] = obj.height
                userObj["latitude"] = obj.latitude

                userObj["level"] = obj.level
                userObj["locate"] = obj.locate
                userObj["longitude"] = obj.longitude
                userObj["mobile"] = obj.mobile
                userObj["phone"] = obj.phone
                userObj["position"] = obj.position
                userObj["role"] = obj.role
                userObj["register"] = obj.register

                resData.append(userObj)
    except Exception as err:
        return Response(
            {
                "result": 11005006,
                "msg": getErrMsgByCode(11005006, None)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")
Esempio n. 16
0
def userInfoModify(request):
    """
    用户信息--修改
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 10003001,
                "msg": getErrMsgByCode(10003001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=10003001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=10003001)

    tokenInfo = tokenDecode(reqBody["token"])

    if "id" not in reqBody:
        return Response(
            {
                "result": 10003005,
                "msg": getErrMsgByCode(10003005, None)
            },
            content_type="application/json")
    else:
        userID = reqBody["id"]

    if (tokenInfo["role"] < 10) and (tokenInfo["id"] != reqBody["id"]):
        return Response(
            {
                "result": 10003006,
                "msg": getErrMsgByCode(10003006, None)
            },
            content_type="application/json")

    if userDB.objects.filter(id=userID).count() == 0:
        return Response(
            {
                "result": 10003007,
                "msg": getErrMsgByCode(10003007, None)
            },
            content_type="application/json")

    userPwd = None
    userName = None
    userDept = None
    userEmail = None
    userEnable = None
    userHeight = None

    userLat = None
    userLevel = None
    userLocate = None
    userLon = None
    userMobile = None
    userPhone = None

    if "password" not in reqBody:
        pass
    else:
        userPwd = reqBody["password"]

    if "nickname" not in reqBody:
        pass
    else:
        userName = reqBody["nickname"]

    if "dept" not in reqBody:
        pass
    else:
        userDept = reqBody["dept"]

    if "default_group" not in reqBody:
        pass
    else:
        userGroup = reqBody["default_group"]

    if "email" not in reqBody:
        pass
    else:
        userEmail = reqBody["email"]

    if "enable" not in reqBody:
        pass
    else:
        userEnable = reqBody["enable"]

    if "height" not in reqBody:
        pass
    else:
        userHeight = reqBody["height"]

    if "latitude" not in reqBody:
        pass
    else:
        userLat = reqBody["latitude"]

    if "level" not in reqBody:
        pass
    else:
        userLevel = reqBody["level"]

    if "locate" not in reqBody:
        pass
    else:
        userLocate = reqBody["locate"]

    if "longitude" not in reqBody:
        pass
    else:
        userLon = reqBody["longitude"]

    if "mobile" not in reqBody:
        pass
    else:
        userMobile = reqBody["mobile"]

    if "phone" not in reqBody:
        pass
    else:
        userPhone = reqBody["phone"]

    userObj = userDB.objects.get(id=userID)

    if userPwd is not None:
        userObj.password = mysql_password(userPwd)

    if userName is not None:
        userObj.nickname = userName

    if userDept is not None:
        userObj.dept = userDept

    if userEmail is not None:
        userObj.email = userEmail

    if userEnable is not None:
        userObj.enable = userEnable

    if userHeight is not None:
        userObj.height = userHeight

    if userLat is not None:
        userObj.latitude = userLat

    if userLevel is not None:
        userObj.level = userLevel

    if userLocate is not None:
        userObj.locate = userLocate

    if userLon is not None:
        userObj.longitude = userLon

    if userMobile is not None:
        userObj.mobile = userMobile

    if userPhone is not None:
        userObj.phone = userPhone

    savePoint = transaction.savepoint()

    try:
        userObj.save()
    except Exception as err:
        transaction.savepoint_rollback(savePoint)
        return Response(
            {
                "result": 10003008,
                "msg": getErrMsgByCode(10003008, err)
            },
            content_type="application/json")

    transaction.savepoint_commit(savePoint)

    addOperationLog(userObj.login, "修改用户信息", "用户信息修改成功", "用户信息修改成功")
    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 17
0
def rtspDeviceInfoModify(request):
    """
    Rtsp设备信息--修改
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 11002001,
                "msg": getErrMsgByCode(11002001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=17002001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=17002001)

    if "id" not in reqBody:
        return Response(
            {
                "result": 11002006,
                "msg": getErrMsgByCode(11002006, None)
            },
            content_type="application/json")
    else:
        deviceID = reqBody["id"]

    deviceName = None
    deviceIP = None
    longitude = None
    latitude = None
    address = None
    observation_area = None
    observation_target = None
    # enable=None
    bin_id = None
    tide_level_name = None
    tide_level_code = None
    wave_heigh_name = None
    wave_heigh_code = None
    wave_direction_name = None
    wave_direction_code = None
    Port = None

    if "name" in reqBody:
        deviceName = reqBody["name"]

    if "ip" in reqBody:
        deviceIP = reqBody["ip"]

    if "longitude" in reqBody:
        longitude = reqBody["longitude"]

    if "latitude" in reqBody:
        latitude = reqBody["latitude"]

    if "address" in reqBody:
        address = reqBody["address"]

    if "observation_area" in reqBody:
        observation_area = reqBody["observation_area"]

    if "observation_target" in reqBody:
        observation_target = reqBody["observation_target"]

    # if "enable" in reqBody:
    #     enable = reqBody["enable"]

    if "bin_id" in reqBody:
        bin_id = reqBody["bin_id"]

    if "tide_level_name" in reqBody:
        tide_level_name = reqBody["tide_level_name"]

    if "tide_level_code" in reqBody:
        tide_level_code = reqBody["tide_level_code"]

    if "wave_heigh_name" in reqBody:
        wave_heigh_name = reqBody["wave_heigh_name"]

    if "wave_heigh_code" in reqBody:
        wave_heigh_code = reqBody["wave_heigh_code"]

    if "wave_direction_name" in reqBody:
        wave_direction_name = reqBody["wave_direction_name"]

    if "wave_direction_code" in reqBody:
        wave_direction_code = reqBody["wave_direction_code"]

    if "port" in reqBody:
        Port = reqBody["port"]

    try:
        deviceObj = RTSPDeviceDB.objects.get(id=deviceID)
    except Exception as err:
        return Response(
            {
                "result": 11002007,
                "msg": getErrMsgByCode(11002007, err)
            },
            content_type="application/json")

    if deviceName is not None:
        deviceObj.name = deviceName

    if deviceIP is not None:
        deviceObj.ip = deviceIP

    if longitude is not None:
        deviceObj.longitude = longitude

    if latitude is not None:
        deviceObj.latitude = latitude

    if address is not None:
        deviceObj.address = address

    if observation_area is not None:
        deviceObj.observation_area = observation_area

    if observation_target is not None:
        deviceObj.observation_target = observation_target

    # if enable is not None:
    #     deviceObj.enable = enable

    if bin_id is not None:
        deviceObj.bin_id = bin_id

    if tide_level_name is not None:
        deviceObj.tide_level_name = tide_level_name

    if tide_level_code is not None:
        deviceObj.tide_level_code = tide_level_code

    if wave_heigh_name is not None:
        deviceObj.wave_heigh_name = wave_heigh_name

    if wave_heigh_code is not None:
        deviceObj.wave_heigh_code = wave_heigh_code

    if wave_direction_name is not None:
        deviceObj.wave_direction_name = wave_direction_name

    if wave_direction_code is not None:
        deviceObj.wave_direction_code = wave_direction_code

    if Port is not None:
        deviceObj.port = Port

    try:
        deviceObj.save()
    except Exception as err:
        return Response(
            {
                "result": 11002008,
                "msg": getErrMsgByCode(11002008, err)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 18
0
def querySMSLogInfo(request):
    """
    SMS信息记录--查询
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 19006001,
                "msg": getErrMsgByCode(19006001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=19006001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=19006001)

    deptID = None

    if "dept" in reqBody:
        deptID = reqBody["dept"]

    if "user_id_list" in reqBody:
        userIDList = reqBody["user_id_list"]
    else:
        userIDList = getAllDeptMemberList(deptID)

    afterTime = None
    beforeTime = None

    indexPage = None
    countInfo = None
    orderInfo = None

    if "after" in reqBody:
        afterTime = reqBody["after"]

    if "before" in reqBody:
        beforeTime = reqBody["before"]

    if "page" in reqBody:
        indexPage = reqBody["page"]

    if "count" in reqBody:
        countInfo = reqBody["count"]

    if "order" in reqBody:
        orderInfo = reqBody["order"]

    resData = {}
    try:
        if afterTime and beforeTime:
            smsLogObjs = smsLogDB.objects.filter(user_id__in=userIDList,
                                                 time__gt=afterTime,
                                                 time__lt=beforeTime)
        else:
            smsLogObjs = smsLogDB.objects.filter(user_id__in=userIDList)

        if orderInfo == 1:
            smsLogObjs = smsLogObjs.order_by("-time")
        else:
            smsLogObjs = smsLogObjs.order_by("time")

        if indexPage and countInfo:
            indexStart = (indexPage - 1) * countInfo

            if indexStart < 0:
                indexStart = 0

            indexEnd = indexStart + countInfo

            if indexEnd >= smsLogObjs.count():
                indexEnd = smsLogObjs.count()

            resultObjList = smsLogObjs[indexStart:indexEnd]
        else:
            resultObjList = smsLogObjs

        resultInfoList = []

        print(format(resultObjList))
        for obj in resultObjList:
            smsInfo = {}

            smsInfo["id"] = obj.id
            smsInfo["user_id"] = obj.user_id
            smsInfo["name"] = obj.name
            smsInfo["phone"] = obj.phone
            smsInfo["content"] = obj.content
            smsInfo["type"] = obj.type
            smsInfo["time"] = obj.time

            resultInfoList.append(smsInfo)

        resData["total"] = smsLogObjs.count()
        resData["info"] = resultInfoList
    except Exception as err:
        return Response(
            {
                "result": 19006006,
                "msg": getErrMsgByCode(19006006, err)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")
Esempio n. 19
0
def sendSMSInfo(request):
    """
    发送手机短信
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 19001001,
                "msg": getErrMsgByCode(19001001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=19001001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=19001001)

    if "user_list" not in reqBody:
        return Response(
            {
                "result": 19001006,
                "msg": getErrMsgByCode(19001006, None)
            },
            content_type="application/json")
    else:
        userList = reqBody["user_list"]

    if "content" not in reqBody:
        return Response(
            {
                "result": 19001007,
                "msg": getErrMsgByCode(19001007, None)
            },
            content_type="application/json")
    else:
        contentText = reqBody["content"]

    numList = ""
    for user in userList:
        if len(numList) > 0:
            numList += ","
        userPhone = user["phone"]
        numList += userPhone

    paramData = {}
    paramData["SpCode"] = smsRequestID
    paramData["LoginName"] = smsSysAccount
    paramData["Password"] = smsSysAuth
    paramData["MessageContent"] = contentText.encode("gb2312")
    paramData["SerialNumber"] = str(time.time())
    paramData["ScheduleTime"] = ""
    paramData["ExtendAccessNum"] = ""
    paramData["f"] = "1"
    paramData["UserNumber"] = numList

    try:
        resultResponse = requests.get(smsSystemUrl,
                                      params=paramData,
                                      timeout=2)
    except Exception as err:
        return Response(
            {
                "result": 19001008,
                "msg": getErrMsgByCode(19001008, err)
            },
            content_type="application/json")
    else:
        resultDict = parse.parse_qs(resultResponse.text)
        result = resultDict["result"][0]
        if int(result) != 0:
            print(int(result))
            print(resultDict["description"][0])
            return Response(
                {
                    "result": 19001009,
                    "msg": getErrMsgByCode(19001009,
                                           resultDict["description"][0])
                },
                content_type="application/json")
        else:
            fallList = []
            if "faillist" in resultDict.keys():
                fallList = resultDict["faillist"][0].split(",")

            logList = []
            for user in userList:
                logObj = {}
                logObj["user_id"] = user["id"]
                logObj["name"] = user["name"]
                logObj["phone"] = user["phone"]
                logObj["content"] = contentText

                if user["phone"] in fallList:
                    logObj["type"] = 0
                else:
                    logObj["type"] = 1

                logList.append(logObj)

            savePoint = transaction.savepoint()
            try:
                for item in logList:
                    logInfoObj = smsLogDB()

                    logInfoObj.user_id = item["user_id"]
                    logInfoObj.name = item["name"]
                    logInfoObj.phone = item["phone"]
                    logInfoObj.content = item["content"]
                    logInfoObj.type = item["type"]

                    logInfoObj.save()
            except Exception as err:
                transaction.savepoint_rollback(savePoint)
                return Response(
                    {
                        "result": 19001010,
                        "msg": getErrMsgByCode(19001010, err)
                    },
                    content_type="application/json")
            transaction.savepoint_commit(savePoint)

    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 20
0
def userInfoQuery(request):
    """
    用户信息--查询
    :return:
    """
    print(format(request.body))
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 10004001,
                "msg": getErrMsgByCode(10004001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=10004001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=10004001)

    tokenInfo = tokenDecode(reqBody["token"])

    if "id" not in reqBody:
        userID = tokenInfo["id"]
    else:
        userID = reqBody["id"]

    if (tokenInfo["role"] < 9) and (tokenInfo["id"] != reqBody["id"]):
        return Response(
            {
                "result": 10004006,
                "msg": getErrMsgByCode(10004006, None)
            },
            content_type="application/json")

    try:
        userObj = userDB.objects.get(id=userID)
    except Exception as err:
        return Response(
            {
                "result": 10004007,
                "msg": getErrMsgByCode(10004007, err)
            },
            content_type="application/json")

    resData = {}

    resData["id"] = userObj.id
    resData["login"] = userObj.login
    resData["nickname"] = userObj.nickname
    resData["dept"] = userObj.dept
    resData["email"] = userObj.email
    resData["enable"] = userObj.enable
    resData["height"] = userObj.height
    resData["latitude"] = userObj.latitude

    resData["level"] = userObj.level
    resData["locate"] = userObj.locate
    resData["longitude"] = userObj.longitude
    resData["mobile"] = userObj.mobile
    resData["phone"] = userObj.phone
    resData["register"] = userObj.register
    resData["role"] = userObj.role
    resData["position"] = userObj.position

    addOperationLog(userObj.login, "查询用户信息", "查询用户信息成功", "查询用户信息成功")
    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")
Esempio n. 21
0
def rtspDeviceRollingAdd(request):
    """
    Rtsp设备轮询列表--增加
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 17007001,
                "msg": getErrMsgByCode(17007001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=17007001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=17007001)

    if "user" not in reqBody:
        return Response(
            {
                "result": 17007006,
                "msg": getErrMsgByCode(17007006, None)
            },
            content_type="application/json")
    else:
        userID = reqBody["user"]

    if "devices" not in reqBody:
        return Response(
            {
                "result": 17007007,
                "msg": getErrMsgByCode(17007007, None)
            },
            content_type="application/json")
    else:
        deviceList = reqBody["devices"]

    savePoint = transaction.savepoint()

    try:
        RTSPRollingDB.objects.filter(user=userID).delete()
    except Exception as err:
        transaction.savepoint_rollback(savePoint)
        return Response(
            {
                "result": 17007008,
                "msg": getErrMsgByCode(17007008, err)
            },
            content_type="application/json")

    try:
        for device in deviceList:
            rollObj = RTSPRollingDB()
            rollObj.user = userID
            rollObj.ipc = device
            rollObj.enable = 1

            rollObj.save()
    except Exception as err:
        transaction.savepoint_rollback(savePoint)
        return Response(
            {
                "result": 17007009,
                "msg": getErrMsgByCode(17007009, err)
            },
            content_type="application/json")

    transaction.savepoint_commit(savePoint)

    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 22
0
def rtspDeviceInfoAdd(request):
    """
    Rtsp设备信息--新增
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 11001001,
                "msg": getErrMsgByCode(11001001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=17001001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=17001001)

    if "ip" not in reqBody:
        return Response(
            {
                "result": 11001006,
                "msg": getErrMsgByCode(11001006, None)
            },
            content_type="application/json")
    else:
        deviceIp = reqBody["ip"]

    if "name" not in reqBody:
        return Response(
            {
                "result": 11001007,
                "msg": getErrMsgByCode(11001007, None)
            },
            content_type="application/json")
    else:
        deviceName = reqBody["name"]

    # if "longitude" not in reqBody:
    #     return Response({"result": 11001008, "msg": getErrMsgByCode(11001008, None)}, content_type="application/json")
    # else:
    #     longitude = reqBody["longitude"]

    # if "latitude" not in reqBody:
    #     return Response({"result": 11001009, "msg": getErrMsgByCode(11001009, None)}, content_type="application/json")
    # else:
    #     latitude = reqBody["latitude"]

    if "address" not in reqBody:
        return Response(
            {
                "result": 11001010,
                "msg": getErrMsgByCode(11001010, None)
            },
            content_type="application/json")
    else:
        address = reqBody["address"]

    if "observation_area" not in reqBody:
        return Response(
            {
                "result": 11001011,
                "msg": getErrMsgByCode(11001011, None)
            },
            content_type="application/json")
    else:
        observation_area = reqBody["observation_area"]

    if "observation_target" not in reqBody:
        return Response(
            {
                "result": 11001012,
                "msg": getErrMsgByCode(11001012, None)
            },
            content_type="application/json")
    else:
        observation_target = reqBody["observation_target"]

    # if "enable" not in reqBody:
    #     return Response({"result": 11001013, "msg": getErrMsgByCode(11001013, None)}, content_type="application/json")
    # else:
    #     enable = reqBody["enable"]
    #
    # if "bin_id" not in reqBody:
    #     return Response({"result": 11001014, "msg": getErrMsgByCode(11001014, None)}, content_type="application/json")
    # else:
    #     bin_id = reqBody["bin_id"]
    longitude = None
    latitude = None
    bin_id = None
    tide_level_name = None
    tide_level_code = None
    wave_heigh_name = None
    wave_heigh_code = None
    wave_direction_name = None
    wave_direction_code = None
    port = None

    if "tide_level_name" in reqBody:
        tide_level_name = reqBody["tide_level_name"]

    if "tide_level_code" in reqBody:
        tide_level_code = reqBody["tide_level_code"]

    if "wave_heigh_name" in reqBody:
        wave_heigh_name = reqBody["wave_heigh_name"]

    if "wave_heigh_code" in reqBody:
        wave_heigh_code = reqBody["wave_heigh_code"]

    if "wave_direction_name" in reqBody:
        wave_direction_name = reqBody["wave_direction_name"]

    if "wave_direction_code" in reqBody:
        wave_direction_code = reqBody["wave_direction_code"]

    if "port" in reqBody:
        port = reqBody["port"]

    if "longitude" in reqBody:
        longitude = reqBody["longitude"]

    if "latitude" in reqBody:
        latitude = reqBody["latitude"]

    if "bin_id" in reqBody:
        bin_id = reqBody["bin_id"]

    deviceObj = RTSPDeviceDB()
    deviceObj.ip = deviceIp
    deviceObj.name = deviceName
    deviceObj.address = address
    deviceObj.observation_area = observation_area
    deviceObj.observation_target = observation_target

    if longitude:
        deviceObj.longitude = longitude
    if latitude:
        deviceObj.latitude = latitude
    if bin_id:
        deviceObj.bin_id = bin_id
    if tide_level_name:
        deviceObj.tide_level_name = tide_level_name
    if tide_level_code:
        deviceObj.tide_level_code = tide_level_code
    if wave_heigh_name:
        deviceObj.wave_heigh_name = wave_heigh_name
    if wave_heigh_code:
        deviceObj.wave_heigh_code = wave_heigh_code
    if wave_direction_name:
        deviceObj.wave_direction_name = wave_direction_name
    if wave_direction_code:
        deviceObj.wave_direction_code = wave_direction_code
    if port:
        deviceObj.port = port

    try:
        deviceObj.save()

    except Exception as err:
        Response({
            "result": 11001015,
            "msg": getErrMsgByCode(11001015, err)
        },
                 content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 23
0
def queryDeptDevice(request):
    """
    部门设备信息--查询
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 11008001,
                "msg": getErrMsgByCode(11008001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=11008001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=11008001)

    tokenInfo = tokenDecode(reqBody["token"])

    if "id" not in reqBody:
        return Response(
            {
                "result": 11008006,
                "msg": getErrMsgByCode(11008006, None)
            },
            content_type="application/json")
    else:
        deptID = reqBody["id"]

    deptList = getSubDeptList(deptID)
    if deptList:
        deptList.insert(0, deptID)
    else:
        deptList = [].append(deptID)

    resData = {}
    try:
        ipcObjList = rtspDeviceDB.objects.filter(
            dept__in=deptList).order_by("position")
        iotObjList = iotDeviceDB.objects.filter(dept__in=deptList)

        if ipcObjList:
            ipcInfoList = []
            for ipcObj in ipcObjList:
                ipcInfo = {}
                ipcInfo["id"] = ipcObj.id
                ipcInfo["name"] = ipcObj.name
                ipcInfo["dept"] = ipcObj.dept
                ipcInfo["type"] = ipcObj.type
                ipcInfo["server"] = ipcObj.server
                ipcInfo["channel"] = ipcObj.channel
                ipcInfo["longitude"] = ipcObj.longitude
                ipcInfo["latitude"] = ipcObj.latitude
                ipcInfo["height"] = ipcObj.height
                ipcInfo["locate"] = ipcObj.locate
                ipcInfo["enable"] = ipcObj.enable

                ipcInfoList.append(ipcInfo)

            resData["ipc"] = ipcInfoList

        if iotObjList:
            iotInfoList = []
            for iotObj in iotObjList:
                iotInfo = {}
                iotInfo["id"] = iotObj.id
                iotInfo["name"] = iotObj.name
                iotInfo["dept"] = iotObj.dept
                iotInfo["code"] = iotObj.code
                iotInfo["type"] = iotObj.type
                iotInfo["type_name"] = iotObj.type_name
                iotInfo["ipc"] = iotObj.ipc
                iotInfo["generic_plan"] = iotObj.generic_plan
                iotInfo["sms_level_1"] = iotObj.sms_level_1
                iotInfo["sms_level_2"] = iotObj.sms_level_2
                iotInfo["longitude"] = iotObj.longitude
                iotInfo["latitude"] = iotObj.latitude
                iotInfo["height"] = iotObj.height
                iotInfo["locate"] = iotObj.locate
                iotInfo["enable"] = iotObj.enable

                iotInfoList.append(iotInfo)

            resData["iot"] = iotInfoList
    except Exception as err:
        return Response(
            {
                "result": 11008007,
                "msg": getErrMsgByCode(11008007, err)
            },
            content_type="application/json")

    addOperationLog(tokenInfo["login"], "查询部门设备信息", "查询部门设备信息成功", "查询部门设备信息成功")
    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")
Esempio n. 24
0
def rtspDeviceInfoQueryAll(request):
    """
    Rtsp设备信息--全部
    :return:
    """
    print(format(request.body))
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 11003001,
                "msg": getErrMsgByCode(11003001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=11003001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=17003001)

    indexPage = None
    countInfo = None
    Type = None
    if "page" in reqBody:
        indexPage = reqBody["page"]

    if "count" in reqBody:
        countInfo = reqBody["count"]

    if "type" in reqBody:
        Type = reqBody["type"]

    resData = {}

    try:
        if Type:
            if Type == 0:
                rtspDeviceObjs = RTSPDeviceDB.objects.filter(
                    bin_id_isnull=True)
            else:
                rtspDeviceObjs = RTSPDeviceDB.objects.filter(
                    bin_id_isnull=False)
        else:
            rtspDeviceObjs = RTSPDeviceDB.objects.all()

        resultObjList = rtspDeviceObjs
        resultInfoList = []

        for item in resultObjList:
            deviceObj = {}

            deviceObj["id"] = item.id
            deviceObj["ip"] = item.ip
            deviceObj["name"] = item.name
            deviceObj["longitude"] = item.longitude
            deviceObj["latitude"] = item.latitude
            deviceObj["address"] = item.address
            deviceObj["observation_area"] = item.observation_area
            deviceObj["observation_target"] = item.observation_target
            deviceObj["bin_id"] = item.bin_id
            deviceObj["tide_level_name"] = item.tide_level_name
            deviceObj["tide_level_code"] = item.tide_level_code
            deviceObj["wave_heigh_name"] = item.wave_heigh_name
            deviceObj["wave_heigh_code"] = item.wave_heigh_code
            deviceObj["wave_direction_name"] = item.wave_direction_name
            deviceObj["wave_direction_code"] = item.wave_direction_code
            deviceObj["port"] = item.port

            resultInfoList.append(deviceObj)

        if indexPage and countInfo:
            indexStart = (indexPage - 1) * countInfo

            if indexStart < 0:
                indexStart = 0

            indexEnd = indexStart + countInfo

            if indexEnd >= rtspDeviceObjs.count():
                indexEnd = rtspDeviceObjs.count()

            resultInfoList = resultInfoList[indexStart:indexEnd]
        else:
            resultInfoList = resultInfoList

        resData["info"] = resultInfoList
    except Exception as err:
        return Response(
            {
                "result": 11003006,
                "msg": getErrMsgByCode(11003006, err)
            },
            content_type="application/json")

    resData["total"] = resultObjList.count()

    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")
Esempio n. 25
0
def rtspDeviceInfoQuery(request):
    """
    Rtsp设备信息--按设备查询
    :return:
    """
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 17004001,
                "msg": getErrMsgByCode(17004001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=17004001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=17004001)

    if "id" not in reqBody:
        return Response(
            {
                "result": 17004005,
                "msg": getErrMsgByCode(17004005, None)
            },
            content_type="application/json")
    else:
        deviceID = reqBody["id"]

    deviceInfo = {}

    try:
        deviceObj = RTSPDeviceDB.objects.get(id=deviceID)

        deviceInfo["id"] = deviceObj.id
        deviceInfo["name"] = deviceObj.name
        deviceInfo["dept"] = deviceObj.dept
        deviceInfo["type"] = deviceObj.type
        deviceInfo["server"] = deviceObj.server
        deviceInfo["channel"] = deviceObj.channel
        deviceInfo["longitude"] = deviceObj.longitude
        deviceInfo["latitude"] = deviceObj.latitude
        deviceInfo["height"] = deviceObj.height
        deviceInfo["locate"] = deviceObj.locate
        deviceInfo["enable"] = deviceObj.enable
        deviceInfo["position"] = deviceObj.position
        deviceInfo["manufacturer_type"] = deviceObj.manufacturer_type
        deviceInfo["permissions_info"] = deviceObj.permissions_info
        deviceInfo["channel_type"] = deviceObj.channel_type
        deviceInfo["inter_code_SN"] = deviceObj.inter_code_SN
        deviceInfo["multicast_ip"] = deviceObj.multicast_ip
        deviceInfo["multicast_port"] = deviceObj.multicast_port
    except Exception as err:
        return Response(
            {
                "result": 17004006,
                "msg": getErrMsgByCode(17004006, err)
            },
            content_type="application/json")

    return Response({
        "result": 0,
        "msg": "OK",
        "data": deviceInfo
    },
                    content_type="application/json")
Esempio n. 26
0
def rtspDeviceInfoBatchAdd(request):
    """
    Rtsp设备信息--批量新增
    :return:
    """
    try:
        reqBodys = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 11001001,
                "msg": getErrMsgByCode(11001001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBodys, err_code=17001001) is None:
        pass
    else:
        return reqbody_verify(reqBodys, err_code=17001001)

    if "infoList" not in reqBodys:
        return Response(
            {
                "result": 11001016,
                "msg": getErrMsgByCode(11001016, None)
            },
            content_type="application/json")
    else:
        infoList = reqBodys["infoList"]

    for reqBody in infoList:

        if "ip" not in reqBody:
            return Response(
                {
                    "result": 11001006,
                    "msg": getErrMsgByCode(11001006, None)
                },
                content_type="application/json")
        else:
            deviceIp = reqBody["ip"]

        if "name" not in reqBody:
            return Response(
                {
                    "result": 11001007,
                    "msg": getErrMsgByCode(11001007, None)
                },
                content_type="application/json")
        else:
            deviceName = reqBody["name"]

        if "address" not in reqBody:
            return Response(
                {
                    "result": 11001010,
                    "msg": getErrMsgByCode(11001010, None)
                },
                content_type="application/json")
        else:
            address = reqBody["address"]

        if "observation_area" not in reqBody:
            return Response(
                {
                    "result": 11001011,
                    "msg": getErrMsgByCode(11001011, None)
                },
                content_type="application/json")
        else:
            observation_area = reqBody["observation_area"]

        if "observation_target" not in reqBody:
            return Response(
                {
                    "result": 11001012,
                    "msg": getErrMsgByCode(11001012, None)
                },
                content_type="application/json")
        else:
            observation_target = reqBody["observation_target"]

        longitude = None
        latitude = None
        bin_id = None
        tide_level_name = None
        tide_level_code = None
        wave_heigh_name = None
        wave_heigh_code = None
        wave_direction_name = None
        wave_direction_code = None
        port = None

        if "tide_level_name" in reqBody:
            tide_level_name = reqBody["tide_level_name"]

        if "tide_level_code" in reqBody:
            tide_level_code = reqBody["tide_level_code"]

        if "wave_heigh_name" in reqBody:
            wave_heigh_name = reqBody["wave_heigh_name"]

        if "wave_heigh_code" in reqBody:
            wave_heigh_code = reqBody["wave_heigh_code"]

        if "wave_direction_name" in reqBody:
            wave_direction_name = reqBody["wave_direction_name"]

        if "wave_direction_code" in reqBody:
            wave_direction_code = reqBody["wave_direction_code"]

        if "port" in reqBody:
            port = reqBody["port"]

        if "longitude" in reqBody:
            longitude = reqBody["longitude"]

        if "latitude" in reqBody:
            latitude = reqBody["latitude"]

        if "bin_id" in reqBody:
            bin_id = reqBody["bin_id"]
        savePoint = transaction.savepoint()
        try:
            deviceObj = RTSPDeviceDB()
            deviceObj.ip = deviceIp
            deviceObj.name = deviceName
            deviceObj.address = address
            deviceObj.observation_area = observation_area
            deviceObj.observation_target = observation_target

            if longitude:
                deviceObj.longitude = longitude
            if latitude:
                deviceObj.latitude = latitude
            if bin_id:
                deviceObj.bin_id = bin_id
            if tide_level_name:
                deviceObj.tide_level_name = tide_level_name
            if tide_level_code:
                deviceObj.tide_level_code = tide_level_code
            if wave_heigh_name:
                deviceObj.wave_heigh_name = wave_heigh_name
            if wave_heigh_code:
                deviceObj.wave_heigh_code = wave_heigh_code
            if wave_direction_name:
                deviceObj.wave_direction_name = wave_direction_name
            if wave_direction_code:
                deviceObj.wave_direction_code = wave_direction_code
            if port:
                deviceObj.port = port
            deviceObj.save()

        except Exception as err:
            transaction.savepoint_rollback(savePoint)
            Response(
                {
                    "result": 11001015,
                    "msg": getErrMsgByCode(11001015, err)
                },
                content_type="application/json")

        transaction.savepoint_commit(savePoint)

    return Response({
        "result": 0,
        "msg": "OK"
    },
                    content_type="application/json")
Esempio n. 27
0
def rtspDeviceInfoQueryAll(request):
    """
    Rtsp设备信息--全部
    :return:
    """
    print(format(request.body))
    try:
        reqBody = json.loads(request.body)
    except Exception as err:
        return Response(
            {
                "result": 17003001,
                "msg": getErrMsgByCode(17003001, err)
            },
            content_type="application/json")

    if reqbody_verify(reqBody, err_code=17003001) is None:
        pass
    else:
        return reqbody_verify(reqBody, err_code=17003001)

    indexPage = None
    countInfo = None

    if "page" in reqBody:
        indexPage = reqBody["page"]

    if "count" in reqBody:
        countInfo = reqBody["count"]

    resData = {}

    try:
        rtspDeviceObjs = RTSPDeviceDB.objects.all().order_by("position")

        resultObjList = rtspDeviceObjs
        resultInfoList = []

        for item in resultObjList:
            deviceObj = {}

            deviceObj["id"] = item.id
            deviceObj["name"] = item.name
            deviceObj["dept"] = item.dept
            deviceObj["type"] = item.type
            deviceObj["server"] = item.server
            deviceObj["channel"] = item.channel
            deviceObj["longitude"] = item.longitude
            deviceObj["latitude"] = item.latitude
            deviceObj["height"] = item.height
            deviceObj["locate"] = item.locate
            deviceObj["enable"] = item.enable
            deviceObj["position"] = item.position
            deviceObj["manufacturer_type"] = item.manufacturer_type
            deviceObj["permissions_info"] = item.permissions_info
            deviceObj["channel_type"] = item.channel_type
            deviceObj["inter_code_SN"] = item.inter_code_SN
            deviceObj["multicast_ip"] = item.multicast_ip
            deviceObj["multicast_port"] = item.multicast_port

            resultInfoList.append(deviceObj)

        if indexPage and countInfo:
            indexStart = (indexPage - 1) * countInfo

            if indexStart < 0:
                indexStart = 0

            indexEnd = indexStart + countInfo

            if indexEnd >= rtspDeviceObjs.count():
                indexEnd = rtspDeviceObjs.count()

            resultInfoList = resultInfoList[indexStart:indexEnd]
        else:
            resultInfoList = resultInfoList

        resData["info"] = resultInfoList
    except Exception as err:
        return Response(
            {
                "result": 17003006,
                "msg": getErrMsgByCode(17003006, err)
            },
            content_type="application/json")

    resData["total"] = resultObjList.count()

    return Response({
        "result": 0,
        "msg": "OK",
        "data": resData
    },
                    content_type="application/json")