Esempio n. 1
0
        public MenuDTO GetPipeMasterCurrentMenu(int UnitID)
        {
            MenuDTO           currentItem  = new MenuDTO();
            PipeMasterMenuDTO nextMenuData = new PipeMasterMenuDTO();

            nextMenuData = (from m in _unitOfWork.PipeMaster.GenerateEntityAsIQueryable()
                            join p in _unitOfWork.Plant.GenerateEntityAsIQueryable() on m.PlantCode equals p.Code
                            join c in _unitOfWork.Company.GenerateEntityAsIQueryable() on p.CompanyID equals c.ID
                            join pp in _unitOfWork.Plant.GenerateEntityAsIQueryable() on p.ParentPlantID equals pp.ID
                            //  into pm from pmm in pm.DefaultIfEmpty()
                            where m.ID == UnitID
                            select new PipeMasterMenuDTO()
            {
                CompanyID = p.CompanyID,
                CompanyName = c.Name,
                PlantID = p.ID,
                PlantCode = p.Code,
                PlantName = p.Name,
                ParentPlantID = p.ParentPlantID.Value,
                ParentPlantName = pp.Name,
                Fluid = m.Fluid,
                PipeMasterID = m.ID,
                EquipmentNo = m.EquipmentNo,
            }).Distinct().FirstOrDefault();

            if (nextMenuData != null)
            {
                currentItem = new MenuDTO()
                {
                    ID         = nextMenuData.PipeMasterID.ToString(),
                    ParentID   = nextMenuData.PlantID.ToString() + "_" + nextMenuData.Fluid,
                    Code       = nextMenuData.EquipmentNo,
                    Name       = nextMenuData.EquipmentNo,
                    Icon       = "",
                    Path       = nextMenuData.EquipmentNo,
                    BreadCrumb = nextMenuData.ParentPlantName + " » " + nextMenuData.PlantName + " » " + nextMenuData.Fluid + " » " + nextMenuData.EquipmentNo
                };
            }

            return(currentItem);
        }
Esempio n. 2
0
        public MenuDTO GetPipeMasterPreviousMenu(int UnitID)
        {
            MenuDTO previousItem = new MenuDTO();
            List <PipeMasterMenuDTO> menuData        = new List <PipeMasterMenuDTO>();
            PipeMasterMenuDTO        currentMenuData = (from m in _unitOfWork.PipeMaster.GenerateEntityAsIQueryable()
                                                        join p in _unitOfWork.Plant.GenerateEntityAsIQueryable() on m.PlantCode equals p.Code
                                                        join c in _unitOfWork.Company.GenerateEntityAsIQueryable() on p.CompanyID equals c.ID
                                                        join pp in _unitOfWork.Plant.GenerateEntityAsIQueryable() on p.ParentPlantID equals pp.ID
                                                        //  into pm from pmm in pm.DefaultIfEmpty()
                                                        where m.ID == UnitID
                                                        select new PipeMasterMenuDTO()
            {
                CompanyID = p.CompanyID,
                CompanyName = c.Name,
                PlantID = p.ID,
                PlantCode = p.Code,
                PlantName = p.Name,
                ParentPlantID = p.ParentPlantID.Value,
                ParentPlantName = pp.Name,
                Fluid = m.Fluid,
                PipeMasterID = m.ID,
                EquipmentNo = m.EquipmentNo,
            }).Distinct().FirstOrDefault();

            menuData = (from m in _unitOfWork.PipeMaster.GenerateEntityAsIQueryable()
                        join p in _unitOfWork.Plant.GenerateEntityAsIQueryable() on m.PlantCode equals p.Code
                        join c in _unitOfWork.Company.GenerateEntityAsIQueryable() on p.CompanyID equals c.ID
                        join pp in _unitOfWork.Plant.GenerateEntityAsIQueryable() on p.ParentPlantID equals pp.ID
                        //  into pm from pmm in pm.DefaultIfEmpty()
                        where
                        p.CompanyID == currentMenuData.CompanyID &&
                        p.ParentPlantID == currentMenuData.ParentPlantID &&
                        p.ID == currentMenuData.PlantID &&
                        m.Fluid == currentMenuData.Fluid
                        select new PipeMasterMenuDTO()
            {
                CompanyID = p.CompanyID,
                CompanyName = c.Name,
                PlantID = p.ID,
                PlantCode = p.Code,
                PlantName = p.Name,
                ParentPlantID = p.ParentPlantID.Value,
                ParentPlantName = pp.Name,
                Fluid = m.Fluid,
                PipeMasterID = m.ID,
                EquipmentNo = m.EquipmentNo,
            }).ToList();

            if (menuData != null)
            {
                menuData = menuData.OrderBy(p => p.PlantName).ThenBy(p => p.Fluid).ThenBy(p => p.EquipmentNo).ToList();
                bool flag = false;
                PipeMasterMenuDTO tempData = new PipeMasterMenuDTO();
                int itemOrder = 0;
                foreach (PipeMasterMenuDTO nextMenuData in menuData)
                {
                    if (nextMenuData.PipeMasterID == UnitID)
                    {
                        if (itemOrder == 0)
                        {
                            break;
                        }
                        else
                        {
                            previousItem = new MenuDTO()
                            {
                                ID         = tempData.PipeMasterID.ToString(),
                                ParentID   = tempData.PlantID.ToString() + "_" + nextMenuData.Fluid,
                                Code       = tempData.EquipmentNo,
                                Name       = tempData.EquipmentNo,
                                Icon       = "",
                                Path       = tempData.EquipmentNo,
                                BreadCrumb = tempData.ParentPlantName + " » " + tempData.PlantName + " » " + tempData.Fluid + " » " + tempData.EquipmentNo
                            };
                            return(previousItem);
                        }
                    }
                    else
                    {
                        tempData = new PipeMasterMenuDTO()
                        {
                            CompanyID       = nextMenuData.CompanyID,
                            CompanyName     = nextMenuData.CompanyName,
                            PlantID         = nextMenuData.PlantID,
                            PlantCode       = nextMenuData.PlantCode,
                            PlantName       = nextMenuData.PlantName,
                            ParentPlantID   = nextMenuData.ParentPlantID,
                            ParentPlantName = nextMenuData.ParentPlantName,
                            Fluid           = nextMenuData.Fluid,
                            PipeMasterID    = nextMenuData.PipeMasterID,
                            EquipmentNo     = nextMenuData.EquipmentNo
                        };

                        itemOrder = itemOrder + 1;
                    }
                }
            }

            if (currentMenuData != null)
            {
                previousItem = new MenuDTO()
                {
                    ID         = currentMenuData.PipeMasterID.ToString(),
                    ParentID   = currentMenuData.PlantID.ToString() + "_" + currentMenuData.Fluid,
                    Code       = currentMenuData.EquipmentNo,
                    Name       = currentMenuData.EquipmentNo,
                    Icon       = "",
                    Path       = currentMenuData.EquipmentNo,
                    BreadCrumb = currentMenuData.ParentPlantName + " » " + currentMenuData.PlantName + " » " + currentMenuData.Fluid + " » " + currentMenuData.EquipmentNo
                };
            }

            return(previousItem);
        }