Example #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')
Example #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.'})
Example #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
Example #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
Example #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
Example #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
Example #7
0
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')
Example #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)
Example #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)
Example #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)
Example #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
Example #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})
Example #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)
Example #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})
Example #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
Example #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())
Example #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')
Example #18
0
 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
Example #19
0
def recover_equipments_recycles(ids):
    Equipment.objects(id__in=ids).update(is_deleted=False)
    return jsonify(ok=True, msg='success')
Example #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)
Example #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)
Example #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)