Changes for page Карточка товара. Вкладка характеристики
Last modified by Vladislav Eleseev on 2024/01/12 06:53
From version 1.1
edited by Vladislav Eleseev
on 2024/01/12 06:52
on 2024/01/12 06:52
To version 1.2
edited by Vladislav Eleseev
on 2024/01/12 06:53
on 2024/01/12 06:53
Change comment: There is no comment for this version
Summary
-
Page properties (3 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,0 +1,1 @@ 1 +Карточка товара. Вкладка характеристики - Parent
-
... ... @@ -1,0 +1,1 @@ 1 +Main.НПР.WebHome - Content
-
... ... @@ -1,0 +1,214 @@ 1 +Карточка товара. Вкладка Характеристики. 2 + 3 +[[image:image-20240112095255-1.png||height="945" width="1377"]] 4 + 5 +Управляющие элементы: 6 +~1. Список характеристик группы. 7 + 8 +2. Список индивидуальных характеристик. 9 + 10 +3. Список комплектация. 11 + 12 +4. Список внутренних характеристик. 13 + 14 +5. Свойство товара – состав. 15 + 16 +6. Свойство товара – срок годности. 17 + 18 +7. Свойство товара – гарантийный срок. 19 + 20 +8. Свойство товара - знак сертификации. 21 + 22 +9. Свойство товара - группа в сертификате. 23 + 24 +10. Свойство товара - технические регламенты. 25 + 26 +~11. Свойство товара – техническое описание (ВЭД). 27 + 28 +12. Кнопка копирующая всем товарам в группе техническое описание. 29 + 30 + 31 +Общая работа с вкладкой должна быть схожа с работой карточки. Изменения в базу попадают после сохранения или нажатия ок. В случае нажатия отмена изменения не сохраняются. Исключение может составлять кнопка скопировать группе. 32 + 33 + 34 +Подробное описание элементов! 35 + 36 +1. Список характеристик группы. 37 + 38 +Отображение в таблице характеристик группы. Значение характеристики может быть индивидуальное, может быть дефолтное от группы. Характеристики наследуются до главного родителя. В данную таблицу нельзя вставлять связь с характеристикой и нельзя удалять связь. Можно изменять значение, добавив таким образом индивидуальное значение для характеристики у данного товара. Так же можно менять порядковый номер характеристики. 39 + 40 +Как берутся данные: 41 + 42 + with a as 43 + 44 + ( 45 + 46 + select 47 + 48 + g.id, g.id parent_id 49 + 50 + from 51 + 52 + dbo.[product_group] g 53 + 54 + 55 + union all 56 + 57 + 58 + select 59 + 60 + a.id, g.parent_id 61 + 62 + from 63 + 64 + dbo.[product_group] g 65 + 66 + join a on a.parent_id = g.id 67 + 68 + where 69 + 70 + g.parent_id is not null 71 + 72 + ) 73 + 74 + 75 +Select pr.id, pr.name, coalesce(v.val,pb.defval,pr.defval) val, coalesce(v.sernum,pb.sernum) sernum 76 + 77 +From products p 78 + 79 +join a on a.id=p.group_id 80 + 81 +join product_group pg on pg.id=a.parent_id~-~-p.group_id 82 + 83 +join propbind pb on pb.group_id=pg.id 84 + 85 +left join propvalues v on v.product_id=p.id and v.property_id=pb.property_id 86 + 87 +left join properties pr on pr.id=pb.property_id 88 + 89 +where airus_id=34143 90 + 91 + 92 + 93 +Вычисление групп можно сделать иначе, через код на делфи, на пример. Значения берутся с начала уникальное, потом дефолтное для группы, после дефолтное для всех характеристики. Порядковый номер так де берется индивидуальный если есть, потом дефолтный группы. 94 + 95 + 96 + 97 + 98 + 99 +1. Список индивидуальных характеристик. 100 + 101 +Отображение в таблице индивидуальных характеристик. Характеристика считается индивидуальной если её нет у группы товара или в родительских группах. Индивидуальные характеристики должна быть возможность **добавить, удалить, изменить порядковый номер, изменить значение характеристики**. Добавление характеристики лучше сделать через диалог выбора или отдельный фрейм. 102 + 103 +Как берутся данные: 104 + 105 + 106 +with a as 107 + 108 + ( 109 + 110 + select 111 + 112 + g.id, g.id parent_id 113 + 114 + from 115 + 116 + dbo.[product_group] g 117 + 118 + 119 + union all 120 + 121 + 122 + select 123 + 124 + a.id, g.parent_id 125 + 126 + from 127 + 128 + dbo.[product_group] g 129 + 130 + join a on a.parent_id = g.id 131 + 132 + where 133 + 134 + g.parent_id is not null 135 + 136 + ) 137 + 138 + 139 +Select distinct pr.id, pr.name, coalesce(v.val,pr.defval) val, v.sernum ,pr.NTecdoc 'Crit No.',pr.NDescription 'Crit No. Description' 140 + 141 +From products p 142 + 143 +join propvalues v on v.product_id=p.id 144 + 145 +join properties pr on pr.id=v.property_id 146 + 147 +left join (Select distinct pb.property_id id From products p join a on a.id=p.group_id 148 + 149 + join product_group pg on pg.id=a.parent_id 150 + 151 + join propbind pb on pb.group_id=pg.id where airus_id=34143 ) t on t.id = v.property_id 152 + 153 +where airus_id=34143 and t.id is null 154 + 155 + 156 + 157 +Вычисление групп можно сделать иначе, через код на делфи, на пример. Значения берутся с начала уникальное, после дефолтное для всех характеристики. 158 + 159 + 160 + 161 + 162 +3. Список комплектация. 163 + 164 +Комплектация это набор строк. Должны быть функции добавления строки, удаления, редактирования и изменения порядкового номера. 165 + 166 + 167 +Как берутся данные: 168 + 169 +SELECT id, product_id, name ,NN FROM product_items where product_id = 911 170 + 171 + 172 + 173 + 174 +4. Список внутренних характеристик. 175 + 176 +Внутренние характеристики это список пар строк связанных с товаром. Таблица содержит две колонки характеристика – значение. Должны быть функции добавления характеристики, удаления, редактирования характеристики и значения и изменения порядкового номера строки. 177 + 178 +Как берутся данные: 179 + 180 +Select id_product, n_prop, property, val From input_propetry where id_product = %1 181 + 182 + 183 + 184 +5. Свойство товара – состав. Строка, должна быть возможность редактирования. 185 + 186 +Select composition From products where airus_id=34143 187 + 188 +6. Свойство товара – срок годности. Строка, должна быть возможность редактирования. 189 + 190 +Select life From products where airus_id=34143 191 + 192 +7. Свойство товара – гарантийный срок. Строка, должна быть возможность редактирования. 193 + 194 +Select garant From products where airus_id=34143 195 + 196 +8. Свойство товара - знак сертификации. Строка. Только для чтения. 197 + 198 +Select sert_image From products where airus_id=17463 199 + 200 +9. Свойство товара - группа в сертификате. Строка. Только для чтения. 201 + 202 +Select sert_grp From products where airus_id=17463 203 + 204 +10. Свойство товара - технические регламенты. Строка. Только для чтения. 205 + 206 +Select tehreg_name From products where airus_id=17463 207 + 208 +~11. Свойство товара – техническое описание (ВЭД). Большой текст. Должна быть возможность редактирования. 209 + 210 +Select ved From products where airus_id=34143 211 + 212 +12. Кнопка копирующая всем товарам в группе техническое описание. 213 + 214 + Нажатие кнопки копирует свойство товара техническое описание (ВЭД) всем товарам из той же группы что и данный товар. Т.е. все товары с тем же group_id.