Add company-scoped brand and company settings API.
brand now carries a NOT NULL company_id (unique per (company_id, name)) with brand.list/upsert/delete backed by resolveCompanyAccess. Adds companysetting key-value store (list/get/set/delete, frontend flag).
This commit is contained in:
@@ -212,8 +212,11 @@ IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'brand')
|
||||
BEGIN
|
||||
CREATE TABLE brand (
|
||||
id INT IDENTITY(1,1) PRIMARY KEY,
|
||||
company_id INT NOT NULL,
|
||||
name NVARCHAR(255) NOT NULL,
|
||||
gsprpinfo NVARCHAR(MAX) NULL
|
||||
gsprpinfo NVARCHAR(MAX) NULL,
|
||||
CONSTRAINT UQ_brand_company_name UNIQUE (company_id, name),
|
||||
CONSTRAINT FK_brand_company FOREIGN KEY (company_id) REFERENCES company(id) ON DELETE NO ACTION
|
||||
);
|
||||
END
|
||||
`;
|
||||
@@ -550,6 +553,21 @@ BEGIN
|
||||
END
|
||||
`;
|
||||
|
||||
export const INIT_COMPANYSETTING = `
|
||||
IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'companysetting')
|
||||
BEGIN
|
||||
CREATE TABLE companysetting (
|
||||
id INT IDENTITY(1,1) PRIMARY KEY,
|
||||
company_id INT NOT NULL,
|
||||
[key] NVARCHAR(255) NOT NULL,
|
||||
value NVARCHAR(MAX) NOT NULL,
|
||||
frontend BIT NOT NULL CONSTRAINT DF_companysetting_frontend DEFAULT 0,
|
||||
CONSTRAINT UQ_companysetting_company_key UNIQUE (company_id, [key]),
|
||||
CONSTRAINT FK_companysetting_company FOREIGN KEY (company_id) REFERENCES company(id) ON DELETE CASCADE
|
||||
);
|
||||
END
|
||||
`;
|
||||
|
||||
/** DDL scripts in dependency order for schema init. */
|
||||
export const SCHEMA_SCRIPTS = [
|
||||
INIT_META,
|
||||
@@ -585,4 +603,5 @@ export const SCHEMA_SCRIPTS = [
|
||||
INIT_GET_NEXT_NUMBER_WITH_PREFIX_AND_PADDING,
|
||||
INIT_COMPANYUSER,
|
||||
INIT_SYNCPOS,
|
||||
INIT_COMPANYSETTING,
|
||||
];
|
||||
|
||||
Reference in New Issue
Block a user