File size: 4,208 Bytes
03f956d
0eeeb9f
c6f07c7
d855c8d
30323a9
d855c8d
 
 
 
 
 
c35efa3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
d855c8d
c35efa3
 
5f44f4a
e0fe043
 
 
 
 
 
d038571
5f44f4a
c35efa3
 
d038571
5f44f4a
 
 
 
d038571
 
 
c35efa3
 
d038571
 
c35efa3
d038571
 
 
6a43cac
30323a9
 
 
d038571
d855c8d
 
d038571
 
f40d4b1
6a43cac
f40d4b1
 
6a43cac
d855c8d
f40d4b1
d855c8d
 
8729d96
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
import os
import glob
import pandas as pd
import gradio as gr

type_list = ['اسپرت', 'راحتی', 'پوتون', 'طبی', 'گوندارا', 'کالج', 'مجلسی', 'دمپایی', 'پاشنه دار', 'تابستانه', 'جورابی']
color_list = ['مشکی', 'سفید', 'قهوه ای', 'کرمی', 'خاکستری', 'طوسی', 'سبز', 'آبی', 'رنگارنگ']
shoelace_list  = ['کشی', 'چسب دار', 'بند دار', 'بدون بند', 'زیپ دار']
sex_list   = ['بزرگسال', 'بزرگسال زنانه', 'بزرگسال مردانه', 'بچگانه', 'بچگانه دختر', 'بچگانه پسر']
sizes = [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]

# shoes_data = pd.read_excel('Book1.xlsx')

# def show_shoes(sizes, types, colors, shoelaces, genders):
#     shoes_arr = []
#     selection = [list(map(int, sizes)), genders, colors, types, shoelaces]
#     for i in range(len(shoes_data['code'].values)):
#         Flag = True
#         shoe_code,shoe_name,shoe_company,shoe_sizes,shoe_colors,shoe_shoelaces,shoe_sexes,shoe_types = shoes_data.iloc[i].values
#         shoes =  [shoe_sizes.split('-'), shoe_sexes.split('-'), shoe_colors.split('-'), shoe_types.split('-'), shoe_shoelaces.split('-')]
#         for select_details, shoe_details in zip(selection, shoes):
#             if not select_details:
#                 continue
#             for shoe_d in shoe_details:
#                 if shoe_d not in select_details:
#                     Flag = False
#                     break
    
#             if not Flag:
#                 break
#         if Flag:
#             shoes_arr.append((f'./Img/{shoe_code}.jpg', f'Name: {shoe_name} ***** Code: {shoe_code} ***** Sizes: {shoe_sizes}'))

#     if len(shoes_arr)==0:
#         shoes_arr.append(('./Img/Empty.png', 'این کالا موجود نمی باشد'))
#     return shoes_arr


shoes_data = pd.read_excel('Book1.xlsx')
def show_shoes(types, genders, colors, shoelaces, sizes):
    print('sizes', sizes)
    print('types', types)
    print('colors', colors)
    print('shoelaces', shoelaces)
    print('genders', genders)
    
    shoes_arr = []
    selection = [types, genders, colors, shoelaces, sizes]
    print(selection)
    for i in range(len(shoes_data)):
        Flag = True
        shoe_code,shoe_name,_,shoe_sizes,shoe_colors,shoe_shoelaces,shoe_sexes,shoe_types = shoes_data.iloc[i].values
        shoes =  [shoe_types.split('-'), shoe_sexes.split('-'), shoe_colors.split('-'), shoe_shoelaces.split('-'), shoe_sizes.split('-')]
        # shoes =  [shoe_sizes.split('-'), shoe_sexes.split('-'), shoe_colors.split('-'), shoe_types.split('-'), shoe_shoelaces.split('-')]
        
        for select_details, shoe_details in zip(selection, shoes):
            if not select_details:
                continue
            for shoe_d in select_details:
                if shoe_d not in shoe_details:
                    Flag = False
                    break

            if not Flag:
                break
        if Flag:
            shoes_arr.append((f'./Img/{shoe_code}.jpg', f'Name: {shoe_name} ***** Code: {shoe_code} ***** Sizes: {shoe_sizes}'))

    if len(shoes_arr)==0:
        shoes_arr.append(('./Img/Empty.png', 'این کالا موجود نمی باشد'))
    return shoes_arr

demo = gr.Interface(
    fn=show_shoes,
    inputs=[
      gr.CheckboxGroup(type_list, label="types", info="لطفا نوع کفش دلخواه را انتخاب کنید"),
      gr.CheckboxGroup(sex_list, label="genders", info="لطفا جنسیت خود را انتخاب کنید"),
      gr.CheckboxGroup(color_list, label="colors", info="لطفا رنگ کفش دلخواه را انتخاب کنید"),
      gr.CheckboxGroup(shoelace_list, label="shoelaces", info="لطفا نوع بند کفش دلخواه را انتخاب کنید"),
      gr.Dropdown(sizes, multiselect=True, label="sizes", info="لطفا اندازه پای خود را انتخاب کنید"),
    ],
    outputs=gr.Gallery(label="Selected Shoes", columns=[2], allow_preview=True, preview=True, show_label=True),
)

demo.launch(share=True)