diff --git a/README.md b/README.md
index 8eb7336..3503106 100644
--- a/README.md
+++ b/README.md
@@ -122,6 +122,7 @@ Backend mapping:
| `createUnderParent` | `({ googleAuthId, parentId, name })` | `{ id, parentId, sort, name }` |
| `delete` | `({ googleAuthId, id })` | `void` — blocked by FK if `categoryarticle` or child categories remain |
| `getTreeForCompany` | `(googleAuthId, companyId)` | `{ languageId, tree, articles }` |
+| `getCategoryArticles` | `(googleAuthId, categoryId)` | `{ id, sku, name, slug, net, taxRate, optionsCount, articleListCount, childCount, thumbW, thumbH, thumbHash }[]` |
### `createUnderParent` (transaction)
diff --git a/generate-schema-graph.js b/generate-schema-graph.js
index e3813c3..7cd76be 100644
--- a/generate-schema-graph.js
+++ b/generate-schema-graph.js
@@ -269,6 +269,7 @@ const CLUSTERS = [
'meta',
'google_auth',
'companyuser',
+ 'syncpos',
'company',
'customergroup',
'entity',
diff --git a/schema-graph.dot b/schema-graph.dot
index f5f050a..bc60456 100644
--- a/schema-graph.dot
+++ b/schema-graph.dot
@@ -9,11 +9,12 @@ digraph schema {
label="Identity & Company"; labeljust="l"; fontsize=15;
style="rounded,filled"; fillcolor="#ffffff60"; color="#a0aec0";
fontcolor="#1a365d"; margin=14;
+ numbers [label=<
>];
meta [label=<>];
entity [label=<>];
- numbers [label=<>];
+ syncpos [label=<>];
companyuser [label=<>];
- company [label=< |
|
| poscustomergroup_id? | INT FK |
|
|
|
|
| default_language_id? | INT FK |
|
|
|
>];
+ company [label=< |
|
| poscustomergroup_id? | INT FK |
|
|
|
|
| default_language_id? | INT FK |
|
|
|
>];
google_auth [label=<>];
customergroup [label=<>];
}
@@ -30,14 +31,14 @@ digraph schema {
label="Catalog"; labeljust="l"; fontsize=15;
style="rounded,filled"; fillcolor="#ffffff60"; color="#a0aec0";
fontcolor="#1a365d"; margin=14;
- category [label=<>];
- categoryarticle [label=<>];
articlehistory [label=<>];
- article [label=<>];
+ category [label=<>];
articleean [label=<>];
+ article [label=<>];
+ categoryarticle [label=<>];
articlelist [label=<>];
- articlelistarticle [label=<>];
optionslist [label=<>];
+ articlelistarticle [label=<>];
brand [label=<>];
optionslistarticle [label=<>];
}
@@ -68,14 +69,14 @@ digraph schema {
__legend [label=<| Legend |
| PK | primary key |
| FK | foreign key |
| ? | nullable column |
| — | FOREIGN KEY constraint |
| - - | naming convention only, no constraint |
>];
- google_auth:selected_company:sw -> company:in2:n [color="#c53030", fontcolor="#c53030", tooltip="FK_google_auth_selected_company"];
+ google_auth:selected_company:sw -> company:in3:n [color="#c53030", fontcolor="#c53030", tooltip="FK_google_auth_selected_company"];
category:parent_id:e -> category:id:e [color="#2f855a", fontcolor="#2f855a", tooltip="FK_category_parent"];
company:root_category_id:e -> category:in0:n [color="#2b6cb0", fontcolor="#2b6cb0", tooltip="FK_company_root_category"];
company:default_language_id:e -> language:in0:n [color="#b7791f", fontcolor="#b7791f", tooltip="FK_company_default_language"];
company:taxrate:se -> tax:in2:n [color="#6b46c1", fontcolor="#6b46c1", tooltip="FK_company_taxrate"];
company:reducedtaxrate:se -> tax:in0:n [color="#c05621", fontcolor="#c05621", tooltip="FK_company_reducedtaxrate"];
company:taxfreerate:se -> tax:in1:n [color="#319795", fontcolor="#319795", tooltip="FK_company_taxfreerate"];
- customergroup:company_id:nw -> company:in3:n [color="#97266d", fontcolor="#97266d", tooltip="FK_customergroup_company"];
+ customergroup:company_id:nw -> company:in4:n [color="#97266d", fontcolor="#97266d", tooltip="FK_customergroup_company"];
company:poscustomergroup_id:se -> customergroup:in1:n [color="#4c51bf", fontcolor="#4c51bf", tooltip="FK_company_poscustomergroup"];
entity:customergroup_id:se -> customergroup:in0:n [color="#276749", fontcolor="#276749", tooltip="FK_entity_customergroup"];
unittext:unit_id:se -> unit:in0:n [color="#9c4221", fontcolor="#9c4221", tooltip="FK_unittext_unit"];
@@ -85,8 +86,8 @@ digraph schema {
article:articlelist_id:se -> articlelist:in0:n [color="#22543d", fontcolor="#22543d", tooltip="FK_article_articlelist"];
article:optionslist_id:se -> optionslist:in0:n [color="#1a365d", fontcolor="#1a365d", tooltip="FK_article_optionslist"];
article:fatherarticle_id:e -> article:id:e [color="#702459", fontcolor="#702459", tooltip="FK_article_fatherarticle"];
- articlehistory:article_id:se -> article:in4:n [color="#744210", fontcolor="#744210", tooltip="FK_articlehistory_article"];
- articleean:article_id:sw -> article:in6:n [color="#285e61", fontcolor="#285e61", tooltip="FK_articleean_article"];
+ articlehistory:article_id:se -> article:in3:n [color="#744210", fontcolor="#744210", tooltip="FK_articlehistory_article"];
+ articleean:article_id:se -> article:in4:n [color="#285e61", fontcolor="#285e61", tooltip="FK_articleean_article"];
articlepic:article_id:w -> article:in9:n [color="#d53f8c", fontcolor="#d53f8c", tooltip="FK_articlepic_article"];
articlepic:pic_id:sw -> pic:in1:n [color="#dd6b20", fontcolor="#dd6b20", tooltip="FK_articlepic_pic"];
brandpic:brand_id:sw -> brand:in1:n [color="#38a169", fontcolor="#38a169", tooltip="FK_brandpic_brand"];
@@ -94,9 +95,9 @@ digraph schema {
articlelistarticle:articlelist_id:sw -> articlelist:in1:n [color="#805ad5", fontcolor="#805ad5", tooltip="FK_articlelistarticle_articlelist"];
articlelistarticle:article_id:sw -> article:in7:n [color="#c53030", fontcolor="#c53030", tooltip="FK_articlelistarticle_article"];
optionslistarticle:optionslist_id:sw -> optionslist:in1:n [color="#2f855a", fontcolor="#2f855a", tooltip="FK_optionslistarticle_optionslist"];
- optionslistarticle:article_id:sw -> article:in8:n [color="#2b6cb0", fontcolor="#2b6cb0", tooltip="FK_optionslistarticle_article"];
+ optionslistarticle:article_id:w -> article:in8:n [color="#2b6cb0", fontcolor="#2b6cb0", tooltip="FK_optionslistarticle_article"];
categoryarticle:category_id:sw -> category:in3:n [color="#b7791f", fontcolor="#b7791f", tooltip="FK_categoryarticle_category"];
- categoryarticle:article_id:se -> article:in3:n [color="#6b46c1", fontcolor="#6b46c1", tooltip="FK_categoryarticle_article"];
+ categoryarticle:article_id:sw -> article:in6:n [color="#6b46c1", fontcolor="#6b46c1", tooltip="FK_categoryarticle_article"];
categorypic:category_id:w -> category:in4:n [color="#c05621", fontcolor="#c05621", tooltip="FK_categorypic_category"];
categorypic:pic_id:se -> pic:in0:n [color="#319795", fontcolor="#319795", tooltip="FK_categorypic_pic"];
categorytext:category_id:se -> category:in1:n [color="#97266d", fontcolor="#97266d", tooltip="FK_categorytext_category"];
@@ -109,7 +110,8 @@ digraph schema {
manifestarticle:manifest_id:sw -> manifest:in0:n [color="#22543d", fontcolor="#22543d", tooltip="FK_manifestarticle_manifest"];
manifestarticle:article_id:e -> article:in1:n [color="#1a365d", fontcolor="#1a365d", tooltip="FK_manifestarticle_article"];
manifestarticle:tax_id:sw -> tax:in4:n [color="#702459", fontcolor="#702459", tooltip="FK_manifestarticle_tax"];
- numbers:company_id:se -> company:in0:n [color="#744210", fontcolor="#744210", tooltip="FK_numbers_company"];
+ numbers:company_id:e -> company:in0:n [color="#744210", fontcolor="#744210", tooltip="FK_numbers_company"];
companyuser:google_auth_id:se -> google_auth:in0:n [color="#285e61", fontcolor="#285e61", tooltip="FK_companyuser_google_auth"];
- companyuser:company_id:se -> company:in1:n [color="#d53f8c", fontcolor="#d53f8c", tooltip="FK_companyuser_company"];
+ companyuser:company_id:se -> company:in2:n [color="#d53f8c", fontcolor="#d53f8c", tooltip="FK_companyuser_company"];
+ syncpos:company_id:se -> company:in1:n [color="#dd6b20", fontcolor="#dd6b20", tooltip="FK_syncpos_company"];
}
\ No newline at end of file
diff --git a/schema-graph.svg b/schema-graph.svg
index b43fd1a..15c1333 100644
--- a/schema-graph.svg
+++ b/schema-graph.svg
@@ -4,276 +4,311 @@
-