Ejemplo n.º 1
0
 public OsServiceController(IFactoryConnection connection)
 {
     _connection   = connection;
     _OsServiceApp = new OsServiceApp(connection);
 }
Ejemplo n.º 2
0
        //TotalOs = (c.OsContractorProducts.Any() ? c.OsContractorProducts.Sum(d => d.ValueTotal) : 0) +
        //           (c.OsContractorServices.Any() ? c.OsContractorServices.Sum(d => d.ValueService) : 0) +
        //           (c.OsProducts.Any() ? c.OsProducts.Sum(d => d.ValueTotal) : 0) +
        //           (c.OsServices.Any() ? c.OsServices.Sum(d => d.ValueService) : 0) +
        //           (c.OsServices.Any() ? c.OsServices.Sum(d => d.ValueService) : 0)

        public object QueryCapaOrdemServico(Expression <Func <OrderOfService, bool> > expression)
        {
            var vehicle = new OsVehicleApp(_connection);
            var OsContractorServices = new OsContractorServiceApp(_connection);
            var Contractor           = new PersonApp(_connection);
            var osServiceapp         = new OsServiceApp(_connection);
            var osProdutos           = new OsProductApp(_connection);

            var osService = _OrderOfServiceApp.Search(expression)
                            .Include(c => c.OsVehicles)
                            .Include(c => c.OsContractorServices)
                            .Include(c => c.Contractor)
                            .Include(c => c.OsProducts)
                            .Include(c => c.OsServices);

            var result = (from objeto in osService
                          select new
            {
                objeto.Id,
                objeto.NumberOs,
                DateOs = objeto.DateOfIssure,
                TimeOs = objeto.DateOfIssure,
                objeto.DeadName,
                objeto.ResponsibleName,
                objeto.PlaceOfDead,
                objeto.BurialPlace,
                objeto.WakeLocation,
                objeto.Phone1,
                objeto.Phone2,
                PlanDescription = objeto.Plan.Description,
                objeto.Sinister,
                DateOfDead = objeto.DateOfDead,
                BurialDate = objeto.BurialDate,
                BurialTime = objeto.BurialTime,
                objeto.GeneralInformation,
                objeto.Contractor.PersonName,
                objeto.Contractor.Cnpj,
                ContractorId = objeto.Contractor.Id,
                CodigoContratada = objeto.Contractor.Id,
                ContractorName = objeto.Contractor.PersonName,
                ComercialPhone = objeto.Contractor.CommercialPhone,
                objeto.Contractor.CellPhone,
                ValueTotalServices = (
                    (objeto.OsServices.Any() ? objeto.OsServices.Sum(c => c.ValueService) : 0) +
                    (objeto.OsProducts.Any() ? objeto.OsProducts.Sum(c => c.ValueTotal) : 0) +
                    (objeto.OsVehicles.Any() ? objeto.OsVehicles.Sum(C => C.ValueService) : 0) +
                    (objeto.OsContractorServices.Any() ? objeto.OsContractorServices.Sum(c => c.ValueService) : 0)
                    ),
                objeto.Contractor.Street,
                objeto.Contractor.Neighborhood,
                objeto.Contractor.City.CityName,
                StateInitials = objeto.Contractor.State.Initials,
                objeto.Contractor.ZipCode
            }
                          );

            //var resultLinq = (from objeto in osService
            //                  join t2 in vehicle.Search() on objeto.Id equals t2.OrderOfServiceId into t6
            //                  join t3 in OsContractorServices.Search() on objeto.Id equals t3.OrderOfServiceId into t7
            //                  join t5 in Contractor.Search() on objeto.Contractor.Id equals t5.Id into t9
            //                  join t10 in osProdutos.Search() on objeto.Id equals t10.OrderOfServiceId into t11
            //                  join t12 in osServiceapp.Search() on objeto.Id equals t12.OrderOfServiceId into t13
            //                  from t2 in t6.DefaultIfEmpty()
            //                  from t3 in t7.DefaultIfEmpty()
            //                  from t5 in t9.DefaultIfEmpty()
            //                  from t10 in t11.DefaultIfEmpty()
            //                  from t12 in t13.DefaultIfEmpty()
            //                  select new
            //                  {
            //                      objeto.Id,
            //                      objeto.NumberOs,
            //                      DateOs = objeto.DateOfIssure,
            //                      TimeOs = objeto.DateOfIssure,
            //                      objeto.DeadName,
            //                      objeto.ResponsibleName,
            //                      objeto.PlaceOfDead,
            //                      objeto.BurialPlace,
            //                      objeto.WakeLocation,
            //                      objeto.Phone1,
            //                      objeto.Phone2,
            //                      PlanDescription = objeto.Plan.Description,
            //                      objeto.Sinister,
            //                      DateOfDead = objeto.DateOfDead,
            //                      BurialDate = objeto.BurialDate,
            //                      BurialTime = objeto.BurialTime,
            //                      objeto.GeneralInformation,
            //                      objeto.Contractor.PersonName,
            //                      objeto.Contractor.Cnpj,
            //                      ContractorId = objeto.Contractor.Id,
            //                      t2.Drive.DriveName,
            //                      t2.VehiclePlate.Plate,
            //                      ServiceDescription = t2.Service.Description,
            //                      CodigoContratada = t3.Contractor.Id,
            //                      ContractorName = t3.Contractor.PersonName,
            //                      ComercialPhone = t3.Contractor.CommercialPhone,
            //                      t3.Contractor.CellPhone,
            //                      ValueTotalServices = (
            //                                  (objeto.OsServices.Any() ? objeto.OsServices.Sum(c => c.ValueService) : 0) +
            //                                  (objeto.OsProducts.Any() ? objeto.OsProducts.Sum(c => c.ValueTotal) : 0) +
            //                                  (objeto.OsVehicles.Any() ? objeto.OsVehicles.Sum(C => C.ValueService) : 0) +
            //                                  (objeto.OsContractorServices.Any() ? objeto.OsContractorServices.Sum(c => c.ValueService) : 0)
            //                              ),
            //                      t3.Contractor.Street,
            //                      t3.Contractor.Neighborhood,
            //                      t3.Contractor.City.CityName,
            //                      StateInitials = t3.Contractor.State.Initials,
            //                      t3.Contractor.ZipCode
            //                  });

            return(result.ToList());
        }