// File: hzy1754785321[P]warehouse-manage-system/product.cpp
// Function: Products::search()
void Products::search()
{
		int flag,id,flag1;
		char name[32];
		char type[32];
		Products s;
		Product *p;
		cout << "\t\t\t\t\t1:by the name." << endl << "\t\t\t\t\t2:by the id." << endl << "\t\t\t\t\t3:by the type." << endl << "\t\t\t\t\t4:exit." << endl << "\t\t\t\t\tplease choice the search way:" ;
		cin >> flag;
		switch(flag)
		{
				case 1:cout << "\t\t\t\t\tpleae input the name:" ;
					   cin >> name;
					   p=searchName(name);
					   if(p!=NULL)
					   {
							   p->show();
							   break;
					   }
					   else
					   {
							   cout << "\t\t\t\t\twithout the name!" << endl;
							   break;
					   }
				case 2:cout << "\t\t\t\t\tplease input the id:" ;
					   cin >> id;
					   p=searchId(id);
					   if(p!=NULL)
					   {
							   p->show();
							   break;
					   }
					   else
					   {
							   cout << "\t\t\t\t\twithout the id!" << endl;
							   break;
					   }
				case 3:cout << "\t\t\t\t\t1:food" << endl << "\t\t\t\t\t2:clothes" << endl << "\t\t\t\t\t3:commodity" << endl << "\t\t\t\t\t4:exit" << endl << "\t\t\t\t\tplease choice the type:" ;
					   cin >> flag1;
					   switch(flag)
					   {
							   case 1:strcpy(type,"food");
									  s=searchType(type);
									  s.showAll();
									  break;
							   case 2:strcpy(type,"clothes");
									  s=searchType(type);
									  s.showAll();
									  break;
							   case 3:strcpy(type,"commodity");
									  s=searchType(type);
									  s.showAll();
									  break;
							   case 4:break;
							   default:cout << "\t\t\t\t\tinput error!" << endl;
									   break;
					   }
					   break;
				case 4:return ;
				default:
					   cout << "\t\t\t\t\tinput error!" << endl;
					   break;
		}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1e0, %rsp            # imm = 0x1E0
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0xf0(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x8710
movq 0xbdf6(%rip), %rdi      # 0x14fd0
leaq 0x50ae(%rip), %rsi      # 0xe28f
callq 0x21e0
movq %rax, -0xe8(%rbp)
jmp 0x91ef
movq -0xe8(%rbp), %rdi
movq 0xbdc3(%rip), %rsi      # 0x14fc0
callq 0x2210
movq %rax, -0xf8(%rbp)
jmp 0x920b
movq -0xf8(%rbp), %rdi
leaq 0x508a(%rip), %rsi      # 0xe2a3
callq 0x21e0
movq %rax, -0x100(%rbp)
jmp 0x9227
movq -0x100(%rbp), %rdi
movq 0xbd8b(%rip), %rsi      # 0x14fc0
callq 0x2210
movq %rax, -0x108(%rbp)
jmp 0x9243
movq -0x108(%rbp), %rdi
leaq 0x544f(%rip), %rsi      # 0xe6a0
callq 0x21e0
movq %rax, -0x110(%rbp)
jmp 0x925f
movq -0x110(%rbp), %rdi
movq 0xbd53(%rip), %rsi      # 0x14fc0
callq 0x2210
movq %rax, -0x118(%rbp)
jmp 0x927b
movq -0x118(%rbp), %rdi
leaq 0x542b(%rip), %rsi      # 0xe6b4
callq 0x21e0
movq %rax, -0x120(%rbp)
jmp 0x9297
movq -0x120(%rbp), %rdi
movq 0xbd1b(%rip), %rsi      # 0x14fc0
callq 0x2210
movq %rax, -0x128(%rbp)
jmp 0x92b3
movq -0x128(%rbp), %rdi
leaq 0x50b3(%rip), %rsi      # 0xe374
callq 0x21e0
jmp 0x92c8
movq 0xbd11(%rip), %rdi      # 0x14fe0
leaq -0xc(%rbp), %rsi
callq 0x20f0
jmp 0x92da
movl -0xc(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x130(%rbp)
subl $0x3, %eax
ja 0x96fd
movq -0x130(%rbp), %rax
leaq 0x5201(%rip), %rcx      # 0xe500
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x88(%rbp)
movl %eax, -0x8c(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x9ee0
jmp 0x974c
movq 0xbca1(%rip), %rdi      # 0x14fd0
leaq 0x538b(%rip), %rsi      # 0xe6c1
callq 0x21e0
jmp 0x933d
movq 0xbc9c(%rip), %rdi      # 0x14fe0
leaq -0x40(%rbp), %rsi
callq 0x5510
jmp 0x934f
movq -0xf0(%rbp), %rdi
leaq -0x40(%rbp), %rsi
callq 0x8f30
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
je 0x937a
movq -0x80(%rbp), %rdi
callq 0x8410
jmp 0x9375
jmp 0x9730
movq 0xbc4f(%rip), %rdi      # 0x14fd0
leaq 0x5354(%rip), %rsi      # 0xe6dc
callq 0x21e0
movq %rax, -0x138(%rbp)
jmp 0x9396
movq -0x138(%rbp), %rdi
movq 0xbc1c(%rip), %rsi      # 0x14fc0
callq 0x2210
jmp 0x93ab
jmp 0x9730
movq 0xbc19(%rip), %rdi      # 0x14fd0
leaq 0x5025(%rip), %rsi      # 0xe3e3
callq 0x21e0
jmp 0x93c5
movq 0xbc14(%rip), %rdi      # 0x14fe0
leaq -0x10(%rbp), %rsi
callq 0x20f0
jmp 0x93d7
movq -0xf0(%rbp), %rdi
leaq -0x10(%rbp), %rsi
callq 0x8e80
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
je 0x9402
movq -0x80(%rbp), %rdi
callq 0x8410
jmp 0x93fd
jmp 0x9730
movq 0xbbc7(%rip), %rdi      # 0x14fd0
leaq 0x52e3(%rip), %rsi      # 0xe6f3
callq 0x21e0
movq %rax, -0x140(%rbp)
jmp 0x941e
movq -0x140(%rbp), %rdi
movq 0xbb94(%rip), %rsi      # 0x14fc0
callq 0x2210
jmp 0x9433
jmp 0x9730
movq 0xbb91(%rip), %rdi      # 0x14fd0
leaq 0x52c2(%rip), %rsi      # 0xe708
callq 0x21e0
movq %rax, -0x148(%rbp)
jmp 0x9454
movq -0x148(%rbp), %rdi
movq 0xbb5e(%rip), %rsi      # 0x14fc0
callq 0x2210
movq %rax, -0x150(%rbp)
jmp 0x9470
movq -0x150(%rbp), %rdi
leaq 0x5296(%rip), %rsi      # 0xe714
callq 0x21e0
movq %rax, -0x158(%rbp)
jmp 0x948c
movq -0x158(%rbp), %rdi
movq 0xbb26(%rip), %rsi      # 0x14fc0
callq 0x2210
movq %rax, -0x160(%rbp)
jmp 0x94a8
movq -0x160(%rbp), %rdi
leaq 0x50b7(%rip), %rsi      # 0xe56d
callq 0x21e0
movq %rax, -0x168(%rbp)
jmp 0x94c4
movq -0x168(%rbp), %rdi
movq 0xbaee(%rip), %rsi      # 0x14fc0
callq 0x2210
movq %rax, -0x170(%rbp)
jmp 0x94e0
movq -0x170(%rbp), %rdi
leaq 0x4d15(%rip), %rsi      # 0xe203
callq 0x21e0
movq %rax, -0x178(%rbp)
jmp 0x94fc
movq -0x178(%rbp), %rdi
movq 0xbab6(%rip), %rsi      # 0x14fc0
callq 0x2210
movq %rax, -0x180(%rbp)
jmp 0x9518
movq -0x180(%rbp), %rdi
leaq 0x5058(%rip), %rsi      # 0xe57e
callq 0x21e0
jmp 0x952d
movq 0xbaac(%rip), %rdi      # 0x14fe0
leaq -0x14(%rbp), %rsi
callq 0x20f0
jmp 0x953f
movl -0xc(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x188(%rbp)
subl $0x3, %eax
ja 0x96bc
movq -0x188(%rbp), %rax
leaq 0x4fac(%rip), %rcx      # 0xe510
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x519b(%rip), %rsi      # 0xe70f
leaq -0x60(%rbp), %rdi
movq %rdi, -0x190(%rbp)
callq 0x21c0
movq -0xf0(%rbp), %rsi
movq -0x190(%rbp), %rdx
leaq -0xa8(%rbp), %rdi
callq 0x8fe0
jmp 0x95a0
leaq -0x78(%rbp), %rdi
movq %rdi, -0x198(%rbp)
leaq -0xa8(%rbp), %rsi
movq %rsi, -0x1a0(%rbp)
callq 0x9f00
movq -0x1a0(%rbp), %rdi
callq 0x9ee0
movq -0x198(%rbp), %rdi
callq 0x9760
jmp 0x95d8
jmp 0x96ef
leaq 0x4f75(%rip), %rsi      # 0xe559
leaq -0x60(%rbp), %rdi
movq %rdi, -0x1a8(%rbp)
callq 0x21c0
movq -0xf0(%rbp), %rsi
movq -0x1a8(%rbp), %rdx
leaq -0xc0(%rbp), %rdi
callq 0x8fe0
jmp 0x9610
leaq -0x78(%rbp), %rdi
movq %rdi, -0x1b0(%rbp)
leaq -0xc0(%rbp), %rsi
movq %rsi, -0x1b8(%rbp)
callq 0x9f00
movq -0x1b8(%rbp), %rdi
callq 0x9ee0
movq -0x1b0(%rbp), %rdi
callq 0x9760
jmp 0x9648
jmp 0x96ef
leaq 0x4f20(%rip), %rsi      # 0xe574
leaq -0x60(%rbp), %rdi
movq %rdi, -0x1c0(%rbp)
callq 0x21c0
movq -0xf0(%rbp), %rsi
movq -0x1c0(%rbp), %rdx
leaq -0xd8(%rbp), %rdi
callq 0x8fe0
jmp 0x9680
leaq -0x78(%rbp), %rdi
movq %rdi, -0x1c8(%rbp)
leaq -0xd8(%rbp), %rsi
movq %rsi, -0x1d0(%rbp)
callq 0x9f00
movq -0x1d0(%rbp), %rdi
callq 0x9ee0
movq -0x1c8(%rbp), %rdi
callq 0x9760
jmp 0x96b8
jmp 0x96ef
jmp 0x96ef
movq 0xb90d(%rip), %rdi      # 0x14fd0
leaq 0x4adf(%rip), %rsi      # 0xe1a9
callq 0x21e0
movq %rax, -0x1d8(%rbp)
jmp 0x96d8
movq -0x1d8(%rbp), %rdi
movq 0xb8da(%rip), %rsi      # 0x14fc0
callq 0x2210
jmp 0x96ed
jmp 0x96ef
jmp 0x9730
movl $0x1, -0xdc(%rbp)
jmp 0x973a
movq 0xb8cc(%rip), %rdi      # 0x14fd0
leaq 0x4a9e(%rip), %rsi      # 0xe1a9
callq 0x21e0
movq %rax, -0x1e0(%rbp)
jmp 0x9719
movq -0x1e0(%rbp), %rdi
movq 0xb899(%rip), %rsi      # 0x14fc0
callq 0x2210
jmp 0x972e
jmp 0x9730
movl $0x0, -0xdc(%rbp)
leaq -0x78(%rbp), %rdi
callq 0x9ee0
addq $0x1e0, %rsp            # imm = 0x1E0
popq %rbp
retq
movq -0x88(%rbp), %rdi
callq 0x2350
nopl (%rax,%rax)