コード例 #1
0
def recover_devices_recycles(ids):
    devices = Device.objects(Q(id__in=ids) & Q(is_template=False))
    devices.update(is_deleted=False)

    equipments = [equipment.id for equipment in devices.values_list('_parent_equipment')]
    Equipment.objects(id__in=equipments).update(is_deleted=False)

    return jsonify(ok=True, msg='success')
コード例 #2
0
def delete_all():
    Sample.objects.all().delete()
    Collect.objects().all().delete()
    LoanHistory.objects().all().delete()
    Equipment.objects().all().delete()
    Sensor.objects().all().delete()
    Patient.objects().all().delete()
    return jsonify({'message': 'deleted with success.'})
コード例 #3
0
async def create_equipment(equipment: Equipment, user: User = Depends(is_current_active_user_admin)):
    if hasattr(equipment, 'id'):
        delattr(equipment, 'id')

    _equipment = db.equipments.insert_one(equipment.dict(by_alias=True))

    equipment.id = _equipment.inserted_id

    return equipment
コード例 #4
0
 def get(self):
     _id = request.args.get("id")
     equip = Equipment()
     try:
         equip.payload = hdb.get(equip, _id)
         return equip.payload
     except Exception as error:
         gunicorn_logger.error(error)
         return "Could not retrieve equipment", 400
コード例 #5
0
def create_vessel():
    """
        
    """''

    record = json.loads(request.data)
    name, code, location, status, vessel = (record['name'] if "name" in record.keys() else None), (record['code'] if "code" in record.keys() else None), (record['location'] if "location" in record.keys() else None),(record['status'] if "status" in record.keys() else None), (record['vessel'] if "vessel" in record.keys() else None)
    equipment = Equipment(name=name, code=code,location=location,status= vessel, vessel= vessel)
    equipment.save()
    return jsonify(equipment.to_json()), 201
コード例 #6
0
 def post(self):
     new_equipment = Equipment()
     valid = new_equipment.create(request.json)
     if valid:
         response = hdb.insert(new_equipment)
         return {
             "id": new_equipment._id,
             "status": response,
             "equipment": new_equipment.payload,
         }
     else:
         return "Could not create equipment", 400
コード例 #7
0
ファイル: interface.py プロジェクト: Mirrorystal/example
def recover_interfaces_recycles(ids):
    interfaces = Interface.objects(Q(id__in=ids) & Q(is_template=False))
    interfaces.update(is_deleted=False)  # 恢复接口自身

    devices = [
        device.id for device in interfaces.values_list('_parent_device')
    ]
    equipments = [
        equipment.id
        for equipment in interfaces.values_list('_parent_equipment')
    ]

    Device.objects(id__in=devices).update(is_deleted=False)
    Equipment.objects(id__in=equipments).update(is_deleted=False)
    return jsonify(ok=True, msg='success')
コード例 #8
0
def create_equipment():
    request_data = request.get_json()
    for sensor in request_data['sensors']:
        sensor['_id'] = ObjectId(sensor['$oid'])
        del sensor['$oid']
    equipment = Equipment(**request_data).save()
    return jsonify(equipment)
コード例 #9
0
def get_equipments():
    form = SearchForm(request.args)
    query = Equipment.objects(is_deleted=False, is_template=False)

    # 简单搜索
    if form.searchKey.data:
        search_key = form.searchKey.data
        query = query.filter(Q(name__contains=search_key) | Q(note__contains=search_key))
        return build_order_by(query, form.orderBy.data), 200

    # 高级搜索
    if form.name.data:
        query = query.filter(name__contains=form.name.data)
    if form.type.data:
        query = query.filter(type=form.type.data)
    if form.location.data:
        query = query.filter(location=form.location.data)
    if form.sn.data:
        query = query.filter(sn=form.sn.data)
    if form.manufacturer.data:
        query = query.filter(manufacturer=form.manufacturer.data)
    if form.note.data:
        query = query.filter(note__contains=form.note.data)
    if form.createUserId.data:
        query = query.filter(_create_user=form.createUserId.data)
    if form.createdAtStart.data:
        query = query.filter(created_at__gte=form.createdAtStart.data)
    if form.createdAtEnd.data:
        query = query.filter(created_at__lte=form.createdAtEnd.data)

    current_user.update(inc__search_num=1)
    return build_order_by(query, form.orderBy.data)
コード例 #10
0
def get_users_meta():
    data = Equipment.objects(is_deleted=False, is_template=False).fields(id=1, name=1).all()
    meta = [{
        'id': str(item.id),
        'name': item.name,
    } for item in data]
    return jsonify(ok=True, data=meta)
コード例 #11
0
 def get(self):
     equip_type = request.args.get("equip_type")
     try:
         response = hdb.get_list(Equipment(), equip_type, "equip_type")
         return {"equipment": response}
     except Exception as error:
         gunicorn_logger.error(error)
         return "Could not retrieve equipment", 400
コード例 #12
0
def get_child(oid):
    equipment = Equipment.objects(id=oid).count()
    if not equipment:
        return jsonify(ok=True, msg='not found'), 404
    child_device = Device.objects(_parent_equipment=oid).count()
    child_interface = Interface.objects(_parent_equipment=oid).count()
    child_cable = Cable.objects(Q(_start_equipment=oid) | Q(_end_equipment=oid)).count()
    return jsonify(ok=True, msg={'device': child_device, 'interface': child_interface,
                                 'cable': child_cable})
コード例 #13
0
def index(vessel):
    equipments = Equipment.objects(vessel=vessel)
    print(equipments)
    response = []
    for equipment in equipments:
        response.append(equipment.to_json())
    if not equipments:
        return jsonify({'error': 'data not found'})
    else:
        return jsonify(response)
コード例 #14
0
def get_equipments_child():
    form = ObjectIdListForm(request.args)
    ids = form.ids.data
    equipment = Equipment.objects(id__in=ids).count()
    if not equipment:
        return jsonify(ok=True, msg='not found'), 404
    child_device = Device.objects(_parent_equipment__in=ids).count()
    child_interface = Interface.objects(_parent_equipment__in=ids).count()
    child_cable = Cable.objects(Q(_start_equipment__in=ids) | Q(_end_equipment__in=ids)).count()
    return jsonify(ok=True, msg={'device': child_device, 'interface': child_interface,
                                 'cable': child_cable})
コード例 #15
0
def deleteVessel(code):
    equipment = Equipment.objects(code=code).first()
    if not equipment:
        return jsonify({'error': 'data not found'}), 404
    else:
        try:
            equipment.delete()
            return jsonify(), 204
        except Exception as e:
            print(e)
    return jsonify(), 204
コード例 #16
0
def deactivateEquipment():
    listOfEquipments = json.loads(request.data)

    if not listOfEquipments: return jsonify({'error': 'data not found'}), 404

    for equipment in listOfEquipments:
        equipments_doc = Equipment.objects(code=equipment).first()
        if not equipments_doc:
            return jsonify({'error': 'data not found'}), 404
        else:
            equipments_doc.update(status=False)
        return jsonify(equipments_doc.to_json())
コード例 #17
0
def recover_cables_recycles(ids):
    cables = Cable.objects(Q(id__in=ids) & Q(is_template=False))
    cables.update(is_deleted=False)  # 恢复线缆自身

    interfaces = [
        interface.id for interface in cables.values_list(
            '_start_interface', '_end_interface')[0]
    ]
    devices = [
        device.id
        for device in cables.values_list('_start_device', '_end_interface')[0]
    ]
    equipments = [
        equipment.id for equipment in cables.values_list(
            '_start_equipment', '_end_interface')[0]
    ]

    Interface.objects(id__in=interfaces).update(is_deleted=False)
    Device.objects(id__in=devices).update(is_deleted=False)
    Equipment.objects(id__in=equipments).update(is_deleted=False)

    return jsonify(ok=True, msg='success')
コード例 #18
0
ファイル: device.py プロジェクト: Mirrorystal/example
 def load(self, device):
     device.name = self.name.data
     device.type = self.type.data
     device.location = self.location.data
     device.system = self.system.data
     device.sn = self.sn.data
     device.manufacturer = self.manufacturer.data
     device.note = self.note.data
     try:
         parent_equipment = Equipment.objects().get(id=self.parentEquipmentId.data)
     except Equipment.DoesNotExist:
         raise FormLoadException('装置不存在,id: ' + str(self.parentEquipmentId.data))
     else:
         device.parent_equipment = parent_equipment.id
コード例 #19
0
def recover_equipments_recycles(ids):
    Equipment.objects(id__in=ids).update(is_deleted=False)
    return jsonify(ok=True, msg='success')
コード例 #20
0
from models.camera import Camera
from models.equipment import Equipment
from models.event import Event
from models.floor import Floor
from models.person import Person
from models.room import Room
from models.section import Section
from models.typeofequipments import Type_Of_Equipments

type1 = Type_Of_Equipments("Tables")
print(type1)
print("\n")

q1 = Equipment(34, type1)
print(q1)
print("\n")

f1 = Floor(1)

p1 = Person("Иванов Иван Иванович", 1234)
print(p1)
print("\n")

r1 = Room(101)
r1.add_equipment(q1)

f1.add_room_on_floor(r1)
print(f1)
print("\n")

s1 = Section(11)
コード例 #21
0
    weapons = csv.DictReader(weapons_csv)
    print(weapons.fieldnames)
    # This should be the general format:
    # {
    # 	"name":"Padded Armor",
    # 	"equip_type":"light-armor",
    # 	"base_cost":5,
    # 	"weight":8,
    # 	"base_attributes":{
    # 		"armor_class":11,
    # 		"stealth":"disadvantage"
    # 	}
    # }

    for row in weapons:
        new_equip = Equipment()
        payload = {
            "name": row["name"],
            "equip_type": row["equip_type"],
            "base_cost": float(row["base_cost"]),
            "weight": int(row["weight"]),
            "base_attributes": {
                "damage": row["damage"],
                "damage_type": row["damage_type"],
                "properties": row["properties"],
                "range": row["range"],
                "hands": row["hands"],
            },
        }

        is_valid = new_equip.create(payload)
コード例 #22
0
    armor = csv.DictReader(armor_csv)
    print(armor.fieldnames)
    # This should be the general format:
    # {
    # 	"name":"Padded Armor",
    # 	"equip_type":"light-armor",
    # 	"base_cost":5,
    # 	"weight":8,
    # 	"base_attributes":{
    # 		"armor_class":11,
    # 		"stealth":"disadvantage"
    # 	}
    # }

    for row in armor:
        new_armor = Equipment()
        payload = {
            "name": row["name"],
            "equip_type": row["equip_type"],
            "base_cost": float(row["base_cost"]),
            "weight": int(row["weight"]),
            "base_attributes": {
                "armor_class": row["armor_class"],
                "stealth": row["stealth"],
            },
        }

        is_valid = new_armor.create(payload)
        if is_valid:
            response = database.insert(new_armor)
            print(response)