コード例 #1
0
        public List <ModelViewFailures> GetListCodeFailure(ModelViewUserG objCred)
        {
            var NegocioUsuario = new BusinessUsers();
            var dataUsuario    = NegocioUsuario.GetUserByToken(objCred.TokenUser);

            if (objCred.TokenApp != GlobalConfiguration.TokenWEB)
            {
                if (objCred.TokenApp != GlobalConfiguration.TokenMobile)
                {
                    throw new Exception("TokenInvalid");
                }
            }

            if (dataUsuario == null)
            {
                throw new Exception("UserPasswordInvalid");
            }
            var NegocioOrdenes     = new BusinessOrder();
            var NegocioEmpleado    = new BusinessEmployee();
            var NegocioCodigoFalla = new BusinessCodeFailure();
            var NegocioBase        = new BusinessInstalledBase();
            var codefailure        = NegocioCodigoFalla.GetAll();
            var empleado           = NegocioEmpleado.GetByUserID(dataUsuario.UserID);

            if (objCred.ProductID == 0)
            {
                //var ordenes = NegocioOrdenes.GetAll().Where(p => empleado.Select(q => q.PK_EmployeeID).ToArray<int>().Contains(p.FK_EmployeeID.Value) && p.OrderExecuteDate >= objCred.Date.Value.Date);
                //var prod = NegocioBase.GetAll();
                //var modelos = (from c in ordenes
                //               join p in prod on c.FK_InstalledBaseID equals p.PK_InstalledBaseID
                //               select p.FK_ProductID).Distinct().ToList();
                //modelos = modelos.Where(x => x != null).ToList();
                var        ordenes       = NegocioOrdenes.GetAll(empleado.Select(q => q.PK_EmployeeID).ToList(), objCred.Date.Value, false);
                List <int> baseInstalada = ordenes.Select(p => p.FK_InstalledBaseID).ToList();
                var        modelos       = NegocioBase.GetAllByBI(baseInstalada).Select(p => p.FK_ProductID).Distinct();
                modelos = modelos.Where(x => x != null).ToList();
                List <int> modelo    = modelos.Where(x => x != null).Cast <int>().ToList();
                var        codfallas = new List <ModelViewFailures>();
                foreach (var item in modelos)
                {
                    var x = (from c in GetByProductID(item.Value)
                             join p in codefailure on c.FK_CodeFailureID equals p.PK_CodeFailureID
                             select new ModelViewFailures()
                    {
                        CodeFailureID = p.PK_CodeFailureID,
                        ProductID = c.FK_ProductID,
                        CodeFailure = p.CodeFailure1,
                        Failure = p.Failure,
                        Complexity = c.Complexity.GetValueOrDefault(),
                        Status = c.Status
                    }).ToList();

                    codfallas.AddRange(x);
                }
                return(codfallas);
                //return (from c in modelos
                //        join p in GetAll() on c equals p.FK_ProductID
                //        join d in  codefailure on p.FK_CodeFailureID equals d.PK_CodeFailureID
                //        select new ModelViewFailures()
                //        {
                //            CodeFailureID = p.FK_CodeFailureID,
                //            ProductID = p.FK_ProductID,
                //            CodeFailure = d.CodeFailure1,
                //            Failure = d.Failure,
                //            Complexity = p.Complexity.GetValueOrDefault(),
                //            Status = p.Status
                //        }).ToList();
            }
            else
            {
                return((from c in GetByProductID(objCred.ProductID)
                        join p in codefailure on c.FK_CodeFailureID equals p.PK_CodeFailureID
                        select new ModelViewFailures()
                {
                    CodeFailureID = p.PK_CodeFailureID,
                    ProductID = c.FK_ProductID,
                    CodeFailure = p.CodeFailure1,
                    Failure = p.Failure,
                    Complexity = c.Complexity.GetValueOrDefault(),
                    Status = c.Status
                }).ToList());
            }
        }
コード例 #2
0
        //public List<ModelViewSpareParts> GetListSparePartsComplete(ModelViewUserG objCred)
        //{
        //    return new RepositoryBuildOfMaterial().GetList(objCred);
        //}


        public List <ModelViewSpareParts> GetListSpareParts(ModelViewUserG objCred)
        {
            var NegocioBase     = new BusinessInstalledBase();
            var NegocioUsuario  = new BusinessUsers();
            var NegocioOrdenes  = new BusinessOrder();
            var NegocioEmpleado = new BusinessEmployee();
            var NegocioManoObra = new BusinessWorkforce();
            var user            = NegocioUsuario.GetUserByToken(objCred.TokenUser);
            var empleado        = NegocioEmpleado.GetByUserID(user.UserID);


            var lista = new List <ModelViewSpareParts>();

            if (objCred.ProductID == 0)
            {
                //var ordenes1 = NegocioOrdenes.GetAll().Where(p => empleado.Select(q => q.PK_EmployeeID).ToArray<int>().Contains(p.FK_EmployeeID.Value) && p.OrderExecuteDate >= objCred.Date);
                var        ordenes       = NegocioOrdenes.GetAll(empleado.Select(q => q.PK_EmployeeID).ToList(), objCred.Date.Value, false);
                List <int> baseInstalada = ordenes.Select(p => p.FK_InstalledBaseID).ToList();
                //var prod = NegocioBase.GetAll();
                //var modelos = (from c in ordenes
                //               join p in prod on c.FK_InstalledBaseID equals p.PK_InstalledBaseID
                //               select p.FK_ProductID).Distinct();
                var modelos = NegocioBase.GetAllByBI(baseInstalada).Select(p => p.FK_ProductID).Distinct();
                modelos = modelos.Where(x => x != null).ToList();
                List <int> modelo = modelos.Where(x => x != null).Cast <int>().ToList();
                lista = GetListSparePartsByModel(modelo);
                //lista = (from c in modelos
                //         join p in GetAll() on c equals p.FK_ProductID
                //         select new ModelViewSpareParts()
                //         {
                //             BuildOfMaterialsID = p.PK_BuildOfMaterialsID,
                //             ProductID = p.FK_ProductID,
                //             Model = p.Model,
                //             SparePartsID = p.SparePartsID,
                //             Quantity = p.Quantity,
                //             SpartePartDescription = p.SparePartDescription,
                //             StatusBOM = p.StatusBOM,
                //             Status = p.Status
                //         }).ToList<ModelViewSpareParts>();
            }
            else
            {
                lista = GetAll().Where(p => p.FK_ProductID == objCred.ProductID).Select(p => new ModelViewSpareParts()
                {
                    BuildOfMaterialsID = p.PK_BuildOfMaterialsID,
                    ProductID          = p.FK_ProductID,
                    Model                 = p.Model,
                    SparePartsID          = p.SparePartsID,
                    Quantity              = p.Quantity,
                    SpartePartDescription = p.SparePartDescription,
                    StatusBOM             = p.StatusBOM,
                    Status                = p.Status
                }).ToList <ModelViewSpareParts>();
            }
            var demo2 = NegocioManoObra.GetAll().Where(p => p.WorkforceID == "8011161600000031").Select(p => new ModelViewSpareParts
            {
                BuildOfMaterialsID = 0,
                ProductID          = 0,
                Model                 = "",
                SparePartsID          = p.WorkforceID,
                Quantity              = 1,
                SpartePartDescription = p.Description,
                StatusBOM             = "",
                Status                = p.Status,
            }).First();

            var demo3 = NegocioManoObra.GetAll().Where(p => p.WorkforceID == "8011161600000032").Select(p => new ModelViewSpareParts
            {
                BuildOfMaterialsID = 0,
                ProductID          = 0,
                Model                 = "",
                SparePartsID          = p.WorkforceID,
                Quantity              = 1,
                SpartePartDescription = p.Description,
                StatusBOM             = "",
                Status                = p.Status,
            }).First();

            lista.Add(demo2);
            lista.Add(demo3);

            return(lista);
        }