177 lines
8.0 KiB
SQL
177 lines
8.0 KiB
SQL
-- @package Depot.SQL MariaDB
|
|
-- @subpackage com_depot
|
|
-- @author Thomas Kuschel <thomas@kuschel.at>
|
|
-- @copyright (C) 2023 KW4NZ, <https://www.kuschel.at>
|
|
-- @license GNU General Public License version 2 or later; see LICENSE.md
|
|
-- @since 0.0.2
|
|
|
|
DROP TABLE IF EXISTS `#__depot`;
|
|
CREATE TABLE `#__depot` (
|
|
`id` SERIAL,
|
|
`component_name` VARCHAR(1024) CHARACTER SET ascii COLLATE ascii_general_ci NULL DEFAULT NULL
|
|
COMMENT 'unique component name (ASCII characters only)',
|
|
`alias` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`description` VARCHAR(4000) NOT NULL DEFAULT '',
|
|
`quantity` INT(10) UNSIGNED NOT NULL DEFAULT 0,
|
|
`quantity_exp` INT(11) NOT NULL DEFAULT 0
|
|
COMMENT 'Exponent of the quantity (10^x of the number, usually 0 i.e. 10⁰)',
|
|
`asset_id` INT(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT 'FK to the #__assets table.',
|
|
`created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
`created_by` INT(10) UNSIGNED NOT NULL DEFAULT 0,
|
|
`checked_out` INT(11) NOT NULL DEFAULT 0,
|
|
`checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
`modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
`modified_by` INT(10) UNSIGNED NOT NULL DEFAULT 0,
|
|
`path` VARCHAR(400) NOT NULL DEFAULT '',
|
|
`state` TINYINT(4) NOT NULL DEFAULT 0
|
|
COMMENT 'Published=1,Unpublished=0,Archived=2,Trashed=-2',
|
|
`access` TINYINT(4) NOT NULL DEFAULT 0,
|
|
`params` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`image` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`ordering` INT(11) NOT NULL DEFAULT 0,
|
|
`version` int unsigned NOT NULL DEFAULT 1,
|
|
-- references to other tables:
|
|
`category_id` INT(11) NOT NULL DEFAULT 0,
|
|
`datasheet_id` INT(11) NOT NULL DEFAULT 0,
|
|
`datasheet_alt` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`manufacturer_id` INT(11) NOT NULL DEFAULT 0,
|
|
`package_id` INT(11) NOT NULL DEFAULT 0,
|
|
`stock_id` INT(11) NOT NULL DEFAULT 0,
|
|
PRIMARY KEY (`id`),
|
|
KEY `idx_state` (`state`),
|
|
KEY `idx_stock_id` (`stock_id`),
|
|
KEY `idx_manufacturer` (`manufacturer_id`),
|
|
UNIQUE KEY `aliasindex` (`alias`,`manufacturer_id`,`stock_id`)
|
|
) ENGINE=InnoDB
|
|
AUTO_INCREMENT=0
|
|
DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
|
|
|
INSERT INTO `#__depot` (`component_name`,`alias`,`description`,`quantity`,`created`,
|
|
`ordering`,`state`,`manufacturer_id`,`stock_id`,`package_id`) VALUES
|
|
('1N5404','1n5404','diode, rectifier 3A',9,'2023-09-25 15:00:00',1,1,1,1,9),
|
|
('1N4148','1n4148','diode, general purpose',1234,'2023-09-25 15:15:15',2,1,2,1,8);
|
|
|
|
DROP TABLE IF EXISTS `#__depot_manufacturer`;
|
|
CREATE TABLE `#__depot_manufacturer` (
|
|
`id` SERIAL,
|
|
`name_short` CHAR(25) CHARACTER SET ascii COLLATE ascii_general_ci NULL DEFAULT NULL
|
|
COMMENT 'unique manufacturer name or abbriviation',
|
|
`alias` VARCHAR(127) NOT NULL DEFAULT '',
|
|
`name_long` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`url` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
`created_by` INT(10) UNSIGNED NOT NULL DEFAULT 0,
|
|
`checked_out` INT(11) NOT NULL DEFAULT 0,
|
|
`checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
`modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
`modified_by` INT(10) UNSIGNED NOT NULL DEFAULT 0,
|
|
`description` VARCHAR(4000) NOT NULL DEFAULT '',
|
|
`state` TINYINT(4) NOT NULL DEFAULT 0,
|
|
`image` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`access` TINYINT(4) NOT NULL DEFAULT 0,
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `name_short` (`name_short`)
|
|
) ENGINE=InnoDB
|
|
AUTO_INCREMENT=0
|
|
DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
|
|
|
INSERT INTO `#__depot_manufacturer` (`name_short`, `name_long`, `url`,
|
|
`description`, `image`, `state`) VALUES
|
|
('TSC','Taiwan Semiconductor','https://www.taiwansemi.com',
|
|
'Diodes, ECAD Models, ICs, MOSFETs, Protection Devices, AEC-Q qualified','',1),
|
|
('ST','STMicroelectronics','https://www.st.com',
|
|
'Microprocessors, Audio ICs, OPamps, Diodes, Memories, MEMS, NFCs, Transistors, Wireless, Automotive electronics, etc.','',1);
|
|
|
|
DROP TABLE IF EXISTS `#__depot_stock`;
|
|
CREATE TABLE `#__depot_stock` (
|
|
`id` SERIAL,
|
|
`name` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`alias` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`owner` INT(10) UNSIGNED NOT NULL DEFAULT 0,
|
|
`created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
`created_by` INT(10) UNSIGNED NOT NULL DEFAULT 0,
|
|
`checked_out` INT(11) NOT NULL DEFAULT 0,
|
|
`checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
`modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
`modified_by` INT(10) UNSIGNED NOT NULL DEFAULT 0,
|
|
`description` VARCHAR(4000) NOT NULL DEFAULT '',
|
|
`params` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`location` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`latitude` DECIMAL(9,7) NOT NULL DEFAULT 48.31738798930856,
|
|
`longitude` DECIMAL(10,7) NOT NULL DEFAULT 16.313504251028924,
|
|
`state` TINYINT(4) NOT NULL DEFAULT 0,
|
|
`access` TINYINT(4) NOT NULL DEFAULT 0,
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `nameindex` (`name`,`owner`)
|
|
)
|
|
ENGINE=InnoDB
|
|
AUTO_INCREMENT=0
|
|
DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
|
|
|
INSERT INTO `#__depot_stock`(`name`, `location`, `description`, `state`, `access`) VALUES
|
|
('Semiconductors workshop cabinet depot', 'Tom''s office, Martinstr. 58a, 3400 Klosterneuburg',
|
|
'MARS Svratka Workshop Depot 5x12 (60) compartments à 54 x 35 x 140 mm',1,0),
|
|
('Resistors workshop cabinet depot', 'Tom''s office, Martinstr. 58a, 3400 Klosterneuburg',
|
|
'MARS Svratka Workshop Depot 2x5x12 + 1x5x7+3 (158) compartments à 54 x 35 x 140 mm',1,0),
|
|
('Capacitors/Inductors workshop cabinet depot', 'Tom''s office, Martinstr. 58a, 3400 Klosterneuburg',
|
|
'MARS Svratka Workshop Depot 5x12 (60) compartments à 54 x 35 x 140 mm',1,0),
|
|
('Plugs/Sockets/other workshop cabinet depot', 'Tom''s office, Martinstr. 58a, 3400 Klosterneuburg',
|
|
'MARS Svratka Workshop Depot 5x12 (60) compartments à 54 x 35 x 140 mm',1,0),
|
|
('SMD cabinet', 'Tom''s office, Martinstr. 58a, 3400 Klosterneuburg',
|
|
'SMD cabinet, conductive, 6-times cabinet with inlays, 6 x 7*6 (252) round boxes, each ø 27 x 13 mm',1,0);
|
|
|
|
DROP TABLE IF EXISTS `#__depot_package`;
|
|
CREATE TABLE `#__depot_package` (
|
|
`id` SERIAL,
|
|
`name` VARCHAR(400) NOT NULL DEFAULT '',
|
|
`description` VARCHAR(4000) NOT NULL DEFAULT '',
|
|
`alias` VARCHAR(400) NOT NULL DEFAULT '',
|
|
`image` VARCHAR(1024) NOT NULL DEFAULT '',
|
|
`state` TINYINT(4) NOT NULL DEFAULT 0
|
|
COMMENT 'Published=1,Unpublished=0,Archived=2,Trashed=-2',
|
|
`mounting_style_id` TINYINT(4) NOT NULL DEFAULT 0
|
|
COMMENT 'Unknown=0,Through_Hole=1,SMD/SMT=2',
|
|
`created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
`created_by` INT(10) UNSIGNED NOT NULL DEFAULT 0,
|
|
`checked_out` INT(11) NOT NULL DEFAULT 0,
|
|
`checked_out_time` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE = InnoDB
|
|
AUTO_INCREMENT=0
|
|
DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
|
|
|
INSERT INTO `#__depot_package` (`name`,`description`,`state`,`mounting_style_id`) VALUES
|
|
('R_0603_1608Metric','1.6 x 0.8 mm',1,1),
|
|
('R_0805_2012Metric','2.0 x 1.2 mm',1,1),
|
|
('DIP8','dual inline package 8 pins',1,2),
|
|
('DIP14','dual inline package 14 pins',1,2),
|
|
('DIP16','dual inline package 16 pins',1,2),
|
|
('DIP20','dual inline package 20 pins',1,2),
|
|
('DIP28_SMALL','dual inline package 28 pins, small',1,2),
|
|
('DO-35','DO-204-AH, SOD27, 3.05-5.08 x ø1.53-ø2.28 mm diode axial package',1,2),
|
|
('DO-201AD','DO-27, 7.2-9.5 x ø4.8-ø5.3 mm diode axial package',1,2),
|
|
('QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mm','Ultra thin Fine pitch Quad Flat Package No-leads, 7 x 7 mm, 0.5 mm pitch, 48 pins',1,1),
|
|
('R_TH_0207','axial 6xø2.3mm typ. 0.25W',1,2),
|
|
('R_TH_0104','axial 3.3xø1.8mm typ 0.125W',1,2),
|
|
('R_TH_0309','axial 9xø3.2mm typ. 0.5W',1,2),
|
|
('R_TH_0412','axial 11.5xø4.5mm typ. 1W',1,2),
|
|
('R_TH_0516','axial 15.5xø5mm typ. 2W',1,2);
|
|
|
|
DROP TABLE IF EXISTS `#__depot_mounting_style`;
|
|
CREATE TABLE `#__depot_mounting_style` (
|
|
`id` SERIAL,
|
|
`title` VARCHAR(100) NOT NULL DEFAULT '',
|
|
`ordering` INT(11) NOT NULL DEFAULT 0,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE = InnoDB
|
|
AUTO_INCREMENT=0
|
|
DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
|
|
|
INSERT INTO `#__depot_mounting_style` (`id`,`title`,`ordering`) VALUES
|
|
-- (0,'UNKNOWN',0),
|
|
(1,'SMD',1),
|
|
(2,'THD',2),
|
|
(3,'CHASSIS_MOUNT',3),
|
|
(4,'PRESS_FIT',4),
|
|
(5,'SCREW_MOUNT',5);
|