summaryrefslogtreecommitdiff
path: root/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs
blob: aa5e273dfcff8a417a0d735c2d97d118eac066d3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
using RhSolutions.QueryModifiers.DrinkingWaterHeatingFittings;
using RhSolutions.QueryModifiers.DrinkingWaterHeatingPipes;

namespace RhSolutions.QueryModifiers;

public class ProductQueryModifierFactory
{
	public IProductQueryModifier GetModifier(string productTypeName)
	{
		switch (productTypeName)
		{
			case "Монтажная гильза":
				return new Sleeve();
			case "Тройник RAUTITAN":
				return new TPiece();
			case "Тройник RAUTITAN резьбовой наружный":
				return new ThreadTPieceExternal();
			case "Тройник RAUTITAN резьбовой внутренний":
				return new ThreadTPieceInternal();
			case "Переходник на наружную резьбу":
				return new AdapterExternal();
			case "Переходник на внутреннюю резьбу":
				return new AdapterInternal();
			case "Переходник с накидной гайкой":
				return new AdapterScrewcap();
			case "Угольник с наружной резьбой":
				return new ThreadElbowExternal();
			case "Угольник с внутренней резьбой":
				return new ThreadElbowInternal();
			case "Угольник с накидной гайкой":
				return new ScrewcapElbow();
			case "Муфта соединительная":
				return new Coupling();
			case "Угольник RAUTITAN":
				return new ElbowModifier();
			case "Фиксатор поворота отопление":
				return new BendFormerHeating();
			case "Фиксатор поворота водоснабжение":
				return new BendFormerSanitary();
			case "Flex":
				return new FlexPipe();
			case "Pink":
				return new PinkPipe();
			case "Stabil":
				return new StabilPipe();
			case "Black":
				return new BlackPipe();
			default:
				return new BypassQueryModifier();
		}
	}
}