예제 #1
0
        ///////INTERVENTION Type//////////////
        public FactInterventionType(cindy_okino_dbContext db)
        {
            Name = "Intervention";

            Field(x => x.Id);
            Field(x => x.BuildingId, nullable: true);
            Field(x => x.StartDateIntervention, nullable: true);
            Field(x => x.EndDateIntervention, nullable: true);
            Field <BuildingType>(
                "building",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var building = db.Buildings
                               .Include(_ => _.Address)
                               //.Include(_ => _.Customer)
                               .FirstOrDefault(i => i.Id == context.Source.BuildingId);

                return(building);
            });
        }
예제 #2
0
        public ElevatorType(cindy_okino_dbContext _db)
        {
            Name = "Elevator";

            Field(x => x.Id);
            Field(x => x.SerialNumber);
            Field(x => x.Model);
            Field(x => x.DateLastInspection, nullable: true);
            Field(x => x.DateCommissioning, nullable: true);
            Field(x => x.TypeBuilding);
            Field(x => x.Status);
            Field(x => x.CertOpe);
            Field(x => x.ColumnId, nullable: true);
            Field <CustomerType>(
                "customer",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var column = _db.Columns
                             .FirstOrDefault(i => i.Id == context.Source.ColumnId);
                var customer = _db.Customers
                               .FirstOrDefault(i => i.Id == column.Battery.Building.CustomerId);

                return(customer);
            });
            Field <ColumnType>(
                "column",
                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var column = _db.Columns
                             .FirstOrDefault(i => i.Id == context.Source.ColumnId);

                return(column);
            });
        }
 public EmployeesController(cindy_okino_dbContext context)
 {
     _context = context;
 }
        public FactInterventionQuery(cindy_okino_warehouseContext db, cindy_okino_dbContext _db)
        {
            Field <FactInterventionType>(
                "interventionQuery",

                arguments: new QueryArguments(
                    new QueryArgument <IdGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var id           = context.GetArgument <long>("id");
                var intervention = db
                                   .FactInterventions
                                   .FirstOrDefault(i => i.Id == id);

                return(intervention);
            });

            Field <EmployeeType>(
                "employeeQuery",

                arguments: new QueryArguments(
                    new QueryArgument <IdGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var id       = context.GetArgument <long>("id");
                var employee = _db
                               .Employees
                               .ToListAsync();

                return(employee);
            });

            Field <ListGraphType <EmployeeType> >(
                "allemployeesQuery",

                //arguments:// new QueryArguments(
                //  new QueryArgument<IdGraphType> { Name = "id"}),

                resolve: context =>
            {
                //var id = context.GetArgument<long>("id");
                var employees = _db
                                .Employees
                                .ToListAsync();

                return(employees);
            });

            Field <BuildingType>(
                "buildingQuery",

                arguments: new QueryArguments(
                    new QueryArgument <IdGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var id       = context.GetArgument <long>("id");
                var building = _db
                               .Buildings
                               .Include(x => x.Address)
                               //.Include(x => x.Customer)
                               .FirstOrDefault(i => i.Id == id);

                return(building);
            });

            Field <ListGraphType <ElevatorType> >(
                "elevatorQuery",

                arguments: new QueryArguments(
                    new QueryArgument <IdGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var id        = context.GetArgument <long>("id");
                var elevators = _db
                                .Elevators
                                .Where(_ => _.ColumnId == id)
                                .ToListAsync();

                return(elevators);
            });

            Field <ListGraphType <ColumnType> >(
                "columnQuery",

                arguments: new QueryArguments(
                    new QueryArgument <IdGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var id      = context.GetArgument <long>("id");
                var columns = _db
                              .Columns
                              .Where(_ => _.BatteryId == id)
                              .ToListAsync();

                return(columns);
            });

            Field <ListGraphType <BatteryType> >(
                "batteryQuery",

                arguments: new QueryArguments(
                    new QueryArgument <IdGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var id        = context.GetArgument <long>("id");
                var batteries = _db
                                .Batteries
                                .Where(_ => _.BuildingId == id)
                                .ToListAsync();

                return(batteries);
            });

            Field <CustomerType>(
                "customerQuery",

                arguments: new QueryArguments(
                    new QueryArgument <IdGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var id        = context.GetArgument <long>("id");
                var customers = _db
                                .Customers
                                .FirstOrDefault(i => i.Id == id);

                return(customers);
            });
        }
예제 #5
0
        public BuildingType(cindy_okino_warehouseContext _db, cindy_okino_dbContext db)
        {
            Name = "Building";

            Field(x => x.Id);
            Field(x => x.TectContactPhone);
            Field(x => x.TectContactEmail);
            Field(x => x.TectContactName);
            Field(x => x.AdmContactPhone);
            Field(x => x.AdmContactMail);
            Field(x => x.AdmContactName);
            Field(x => x.AddressId, nullable: true);
            Field(x => x.CustomerId, nullable: true);

            //Field(x => x.Address, type: typeof(AddressType));
            Field <AddressType>(
                "address",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var address = db.Addresses
                              .FirstOrDefault(i => i.Id == context.Source.AddressId);

                return(address);
            });
            Field <ListGraphType <FactInterventionType> >(
                "interventions",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var interventions = _db.FactInterventions
                                    .Where(ss => ss.BuildingId == context.Source.Id)
                                    .ToListAsync();

                return(interventions);
            });
            Field <ListGraphType <BatteryType> >(
                "batteries",

                // arguments:
                //   new QueryArguments(
                //     new QueryArgument<IntGraphType> { Name = "id" }),

                resolve: context =>
            {
                var batteries = db.Batteries
                                .Where(ss => ss.BuildingId == context.Source.Id)
                                .ToListAsync();

                return(batteries);
            });

            Field <ListGraphType <BuildingsDetailType> >(
                "buildingsDetails",

                arguments:

                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var buildingDetails = db.BuildingsDetails
                                      .Where(ss => ss.BuildingId == context.Source.Id)
                                      .ToListAsync();

                return(buildingDetails);
            });
        }
예제 #6
0
        public ColumnType(cindy_okino_dbContext _db)
        {
            Name = "Column";

            Field(x => x.Id);
            Field(x => x.TypeBuilding);
            Field(x => x.AmountFloorsServed, nullable: true);
            Field(x => x.Status);
            Field(x => x.Information);
            Field(x => x.Notes);
            Field(x => x.BatteryId, nullable: true);
            Field <CustomerType>(
                "customer",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var battery = _db.Batteries
                              .FirstOrDefault(i => i.Id == context.Source.BatteryId);
                var customer = _db.Customers
                               .FirstOrDefault(i => i.Id == battery.Building.CustomerId);

                return(customer);
            });
            Field <BatteryType>(
                "battery",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var battery = _db.Batteries
                              .FirstOrDefault(i => i.Id == context.Source.BatteryId);

                return(battery);
            });
            Field <ListGraphType <ElevatorType> >(
                "elevators",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var elevators = _db.Elevators
                                .Where(_ => _.ColumnId == context.Source.Id)
                                .ToListAsync();

                return(elevators);
            });
        }
예제 #7
0
        public BatteryType(cindy_okino_dbContext _db)
        {
            Name = "Battery";

            Field(x => x.Id);
            Field(x => x.TypeBuilding);
            Field(x => x.Status);
            Field(x => x.DateCommissioning, nullable: true);
            Field(x => x.DateLastInspection, nullable: true);
            Field(x => x.CertOpe);
            Field(x => x.BuildingId, nullable: true);
            Field <CustomerType>(
                "customer",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var building = _db.Buildings
                               .FirstOrDefault(i => i.Id == context.Source.BuildingId);
                var customer = _db.Customers.FirstOrDefault(i => i.Id == building.CustomerId);

                return(customer);
            });
            Field <BuildingType>(
                "building",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var building = _db.Buildings
                               .FirstOrDefault(i => i.Id == context.Source.BuildingId);

                return(building);
            });
            Field <ListGraphType <ColumnType> >(
                "columns",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var columns = _db.Columns
                              .Where(_ => _.BatteryId == context.Source.Id)
                              .ToListAsync();

                return(columns);
            });
        }
예제 #8
0
        public CustomerType(cindy_okino_dbContext _db)
        {
            Name = "Customer";

            Field(x => x.Id);
            Field(x => x.CpyContactName);
            Field(x => x.CpyContactPhone);
            Field(x => x.CpyContactEmail);
            Field(x => x.CpyDescription);
            Field(x => x.StaName);
            Field(x => x.StaPhone);
            Field(x => x.StaMail);

            Field <ListGraphType <BuildingType> >(
                "buildings",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var buildings = _db.Buildings
                                // .Include(_ => _.Batteries)
                                .Where(ss => ss.CustomerId == context.Source.Id)
                                .ToListAsync();


                return(buildings);
            });
            Field <ListGraphType <BatteryType> >(
                "batteries",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var batteries = _db.Batteries
                                .Where(_ => _.Building.CustomerId == context.Source.Id)
                                .ToListAsync();

                return(batteries);
            });
            Field <ListGraphType <ColumnType> >(
                "columns",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var columns = _db.Columns
                              .Where(_ => _.Battery.Building.CustomerId == context.Source.Id)
                              .ToListAsync();

                return(columns);
            });
            Field <ListGraphType <ElevatorType> >(
                "elevators",

                arguments:
                new QueryArguments(
                    new QueryArgument <IntGraphType> {
                Name = "id"
            }),

                resolve: context =>
            {
                var elevators = _db.Elevators
                                .Where(_ => _.Column.Battery.Building.CustomerId == context.Source.Id)
                                .ToListAsync();

                return(elevators);
            });
        }