Карточка товара. Вкладка характеристики

Last modified by Vladislav Eleseev on 2024/01/12 06:53

Карточка товара. Вкладка Характеристики.

image-20240112095255-1.png

Управляющие элементы:
1. Список характеристик группы.

2. Список индивидуальных характеристик.

3. Список комплектация.

4. Список внутренних характеристик.

5. Свойство товара – состав.

6. Свойство товара – срок годности.

7. Свойство товара – гарантийный срок.

8. Свойство товара - знак сертификации.

9. Свойство товара  - группа в сертификате.

10. Свойство товара - технические регламенты.

11. Свойство товара – техническое описание (ВЭД).

12. Кнопка копирующая всем товарам в группе техническое описание.

Общая работа с вкладкой должна быть схожа с работой карточки. Изменения в базу попадают после сохранения или нажатия ок. В случае нажатия отмена изменения не сохраняются. Исключение может составлять кнопка скопировать группе.

Подробное описание элементов!

  1. Список характеристик группы.

Отображение в таблице характеристик группы. Значение характеристики может быть индивидуальное, может быть дефолтное от группы. Характеристики наследуются до главного родителя. В данную таблицу нельзя вставлять связь с характеристикой и нельзя удалять связь. Можно изменять значение, добавив таким образом индивидуальное значение для характеристики у данного товара. Так же можно менять порядковый номер характеристики.

Как берутся данные:

  with a as

  (

   select

   g.id, g.id parent_id

   from

   dbo.[product_group] g

   union all

   select

   a.id, g.parent_id

   from

   dbo.[product_group] g

       join a on a.parent_id = g.id

   where

    g.parent_id is not null

  )

Select pr.id, pr.name, coalesce(v.val,pb.defval,pr.defval) val, coalesce(v.sernum,pb.sernum) sernum

From products p

join a on a.id=p.group_id

join product_group pg on pg.id=a.parent_id--p.group_id

join propbind pb on pb.group_id=pg.id

left join propvalues v on v.product_id=p.id and v.property_id=pb.property_id

left join properties pr on pr.id=pb.property_id

where airus_id=34143

Вычисление групп можно сделать иначе, через код на делфи, на пример. Значения берутся с начала уникальное, потом дефолтное для группы, после дефолтное для всех характеристики. Порядковый номер так де берется индивидуальный если есть, потом дефолтный группы.

  1. Список индивидуальных характеристик.

Отображение в таблице индивидуальных характеристик. Характеристика считается индивидуальной если её нет у группы товара или в родительских группах. Индивидуальные характеристики должна быть возможность добавить, удалить, изменить порядковый номер, изменить значение характеристики. Добавление характеристики лучше сделать через диалог выбора или отдельный фрейм.

Как берутся данные:

              
with a as

  (

   select

   g.id, g.id parent_id

   from

   dbo.[product_group] g

   union all

   select

   a.id, g.parent_id

   from

   dbo.[product_group] g

       join a on a.parent_id = g.id

   where

    g.parent_id is not null

  )

Select distinct  pr.id, pr.name, coalesce(v.val,pr.defval) val, v.sernum ,pr.NTecdoc 'Crit No.',pr.NDescription 'Crit No. Description'

From products p

join propvalues v on v.product_id=p.id

join properties pr on pr.id=v.property_id

left join (Select distinct pb.property_id id From products p join a on a.id=p.group_id

       join product_group pg on pg.id=a.parent_id

       join propbind pb on pb.group_id=pg.id where airus_id=34143  ) t on t.id = v.property_id

where airus_id=34143 and t.id is null

Вычисление групп можно сделать иначе, через код на делфи, на пример. Значения берутся с начала уникальное, после дефолтное для всех характеристики.

3. Список комплектация.

Комплектация это набор строк. Должны быть функции добавления строки, удаления, редактирования и изменения порядкового номера.

Как берутся данные:

SELECT id, product_id, name ,NN FROM product_items  where product_id = 911

4. Список внутренних характеристик.

Внутренние характеристики это список пар строк связанных с товаром. Таблица содержит две колонки характеристика – значение. Должны быть функции добавления характеристики, удаления, редактирования характеристики и значения и изменения порядкового номера строки.

Как берутся данные:

Select id_product, n_prop, property, val From input_propetry where id_product = %1

5. Свойство товара – состав. Строка, должна быть возможность редактирования.

Select composition From products where airus_id=34143

6. Свойство товара – срок годности. Строка, должна быть возможность редактирования.

Select life From products where airus_id=34143

7. Свойство товара – гарантийный срок. Строка, должна быть возможность редактирования.

Select garant From products where airus_id=34143

8. Свойство товара - знак сертификации. Строка. Только для чтения.

Select sert_image From products where airus_id=17463     

9. Свойство товара  - группа в сертификате. Строка. Только для чтения.

Select sert_grp From products where airus_id=17463

10. Свойство товара - технические регламенты. Строка. Только для чтения.

Select tehreg_name From products where airus_id=17463

11. Свойство товара – техническое описание (ВЭД). Большой текст. Должна быть возможность редактирования.

Select ved From products where airus_id=34143

12. Кнопка копирующая всем товарам в группе техническое описание.

       Нажатие кнопки копирует свойство товара техническое описание (ВЭД) всем товарам из той же группы что и данный товар. Т.е. все товары с тем же group_id.

Tags:
Created by Vladislav Eleseev on 2024/01/12 06:52
    

Tips

You can click on the arrows next to the breadcrumb elements to quickly navigate to sibling and children pages.

My Recent Modifications

Need help?

If you need help with XWiki you can contact: