From 4394f87d1dc433b8e1792e3c03634c33a34f2f6d Mon Sep 17 00:00:00 2001 From: ultrageese Date: Fri, 26 Jun 2026 10:45:29 +1000 Subject: [PATCH] q --- code/database.sql | 191 +++++++++++++++++++++++++--------------------- 1 file changed, 106 insertions(+), 85 deletions(-) diff --git a/code/database.sql b/code/database.sql index 769aaf1..6f50f3d 100644 --- a/code/database.sql +++ b/code/database.sql @@ -25,10 +25,10 @@ DROP TABLE IF EXISTS `client`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `client` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `name` varchar(50) DEFAULT NULL, - `address` varchar(50) DEFAULT NULL, + `name` varchar(50) NOT NULL, + `address` varchar(50) NOT NULL, PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; +) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- @@ -38,6 +38,8 @@ CREATE TABLE `client` ( SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; LOCK TABLES `client` WRITE; /*!40000 ALTER TABLE `client` DISABLE KEYS */; +INSERT INTO `client` VALUES +(9,'ООО \"Три О\"','ул. Пушкина, 4'); /*!40000 ALTER TABLE `client` ENABLE KEYS */; UNLOCK TABLES; COMMIT; @@ -52,15 +54,15 @@ DROP TABLE IF EXISTS `equipment`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `equipment` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `inv_number` varchar(20) DEFAULT NULL, - `maintenance_date` datetime DEFAULT NULL, - `worker_id` int(11) DEFAULT NULL, - `name` varchar(100) DEFAULT NULL, - `is_written_off` tinyint(1) NOT NULL DEFAULT 0, + `inv_number` varchar(20) NOT NULL, + `maintenance_date` datetime NOT NULL, + `worker_id` int(11) NOT NULL, + `name` varchar(100) NOT NULL, + `is_written_off` tinyint(1) NOT NULL, PRIMARY KEY (`id`), KEY `fk_worker1` (`worker_id`), CONSTRAINT `fk_worker1` FOREIGN KEY (`worker_id`) REFERENCES `worker` (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; +) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- @@ -71,12 +73,14 @@ SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; LOCK TABLES `equipment` WRITE; /*!40000 ALTER TABLE `equipment` DISABLE KEYS */; INSERT INTO `equipment` VALUES -(3,'ПВ-11','2026-06-19 14:00:00',6,'Пивоварня \"Моисей\"',0), -(4,'ПВ-12','2001-04-30 13:00:00',5,'Пивоварня \"Дружба\"',0), +(3,'ПВ-11','2026-06-19 14:00:00',8,'Пивоварня \"Моисей\"',1), +(4,'ПВ-12','2001-04-30 13:00:00',2,'Пивоварня \"Дружба\"',0), (5,'СД-1','2005-05-24 13:00:00',7,'Солододробилка',0), (6,'СД-2','2006-06-25 13:00:00',2,'Солододробилка',0), (7,'КТЛ-5','1991-02-01 14:00:00',1,'Сусловарный котёл',0), -(8,'КТЛ-10','2026-02-01 14:00:00',5,'Сусловарный котёл',0); +(8,'КТЛ-10','2026-02-01 14:00:00',5,'Сусловарный котёл',0), +(9,'qweqwe','2036-02-22 14:00:00',3,'qweqweq',1), +(10,'qweqew','1970-01-01 00:00:00',6,'qweqwe',0); /*!40000 ALTER TABLE `equipment` ENABLE KEYS */; UNLOCK TABLES; COMMIT; @@ -91,9 +95,9 @@ DROP TABLE IF EXISTS `material`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `material` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `name` varchar(50) DEFAULT NULL, - `quantity` int(11) DEFAULT NULL, - `category_id` int(11) DEFAULT NULL, + `name` varchar(50) NOT NULL, + `quantity` int(11) NOT NULL, + `category_id` int(11) NOT NULL, PRIMARY KEY (`id`), KEY `fk_material_category` (`category_id`), CONSTRAINT `fk_material_category` FOREIGN KEY (`category_id`) REFERENCES `material_category` (`id`) @@ -125,7 +129,7 @@ DROP TABLE IF EXISTS `material_category`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `material_category` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `name` varchar(50) DEFAULT NULL, + `name` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; @@ -156,13 +160,14 @@ DROP TABLE IF EXISTS `order`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `order` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `client_id` int(11) DEFAULT NULL, - `order_date` datetime DEFAULT NULL, - `total_amount` decimal(10,0) DEFAULT NULL, + `client_id` int(11) NOT NULL, + `order_date` datetime NOT NULL, + `total_price` decimal(10,0) NOT NULL, + `is_incoming` tinyint(1) NOT NULL, PRIMARY KEY (`id`), KEY `fk_client` (`client_id`), CONSTRAINT `fk_client` FOREIGN KEY (`client_id`) REFERENCES `client` (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; +) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- @@ -172,6 +177,8 @@ CREATE TABLE `order` ( SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; LOCK TABLES `order` WRITE; /*!40000 ALTER TABLE `order` DISABLE KEYS */; +INSERT INTO `order` VALUES +(7,9,'1970-01-01 00:00:00',0,1); /*!40000 ALTER TABLE `order` ENABLE KEYS */; UNLOCK TABLES; COMMIT; @@ -186,16 +193,16 @@ DROP TABLE IF EXISTS `order_element`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `order_element` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `order_id` int(11) DEFAULT NULL, - `product_id` int(11) DEFAULT NULL, - `quantity` int(11) DEFAULT NULL, - `total_amount` decimal(10,0) DEFAULT NULL, + `order_id` int(11) NOT NULL, + `product_id` int(11) NOT NULL, + `quantity` int(11) NOT NULL, + `total_price` decimal(10,0) NOT NULL, PRIMARY KEY (`id`), KEY `fk_order` (`order_id`), KEY `fk_product` (`product_id`), CONSTRAINT `fk_order` FOREIGN KEY (`order_id`) REFERENCES `order` (`id`), CONSTRAINT `fk_product` FOREIGN KEY (`product_id`) REFERENCES `product` (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; +) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- @@ -219,9 +226,9 @@ DROP TABLE IF EXISTS `position`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `position` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `name` varchar(50) DEFAULT NULL, - `wage` decimal(10,0) DEFAULT NULL, - `is_admin` tinyint(1) NOT NULL DEFAULT 0, + `name` varchar(50) NOT NULL, + `wage` decimal(10,0) NOT NULL, + `is_admin` tinyint(1) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; @@ -234,7 +241,7 @@ SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; LOCK TABLES `position` WRITE; /*!40000 ALTER TABLE `position` DISABLE KEYS */; INSERT INTO `position` VALUES -(1,'Уборщик',20000,0), +(1,'Уборщик',20001,0), (2,'Кладовщик',32000,0), (3,'Пивовар',65000,0), (4,'Менеджер',70000,1); @@ -252,13 +259,13 @@ DROP TABLE IF EXISTS `product`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `product` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `recipe_id` int(11) DEFAULT NULL, - `volume` float DEFAULT NULL, - `price_per_unit` decimal(10,0) DEFAULT NULL, + `recipe_id` int(11) NOT NULL, + `volume` float NOT NULL, + `price_per_unit` decimal(10,0) NOT NULL, PRIMARY KEY (`id`), KEY `fk_recipe1` (`recipe_id`), CONSTRAINT `fk_recipe1` FOREIGN KEY (`recipe_id`) REFERENCES `recipe` (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; +) ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- @@ -268,6 +275,8 @@ CREATE TABLE `product` ( SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; LOCK TABLES `product` WRITE; /*!40000 ALTER TABLE `product` DISABLE KEYS */; +INSERT INTO `product` VALUES +(36,1,61,17); /*!40000 ALTER TABLE `product` ENABLE KEYS */; UNLOCK TABLES; COMMIT; @@ -282,8 +291,8 @@ DROP TABLE IF EXISTS `profile`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `profile` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `login` varchar(100) DEFAULT NULL, - `password` varchar(100) DEFAULT NULL, + `login` varchar(100) NOT NULL, + `password` varchar(100) NOT NULL, `worker_id` int(11) NOT NULL, PRIMARY KEY (`id`), KEY `profile_worker_FK` (`worker_id`), @@ -306,6 +315,43 @@ UNLOCK TABLES; COMMIT; SET AUTOCOMMIT=@OLD_AUTOCOMMIT; +-- +-- Table structure for table `promotion` +-- + +DROP TABLE IF EXISTS `promotion`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8mb4 */; +CREATE TABLE `promotion` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `worker_id` int(11) NOT NULL, + `from_position_id` int(11) NOT NULL, + `to_position_id` int(11) NOT NULL, + `date` datetime NOT NULL, + PRIMARY KEY (`id`), + KEY `promotion_worker_FK` (`worker_id`), + KEY `promotion_position_FK` (`from_position_id`), + KEY `promotion_position_FK_1` (`to_position_id`), + CONSTRAINT `promotion_position_FK` FOREIGN KEY (`from_position_id`) REFERENCES `position` (`id`), + CONSTRAINT `promotion_position_FK_1` FOREIGN KEY (`to_position_id`) REFERENCES `position` (`id`), + CONSTRAINT `promotion_worker_FK` FOREIGN KEY (`worker_id`) REFERENCES `worker` (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `promotion` +-- + +SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; +LOCK TABLES `promotion` WRITE; +/*!40000 ALTER TABLE `promotion` DISABLE KEYS */; +INSERT INTO `promotion` VALUES +(2,1,1,2,'2026-06-25 01:13:46'); +/*!40000 ALTER TABLE `promotion` ENABLE KEYS */; +UNLOCK TABLES; +COMMIT; +SET AUTOCOMMIT=@OLD_AUTOCOMMIT; + -- -- Table structure for table `recipe` -- @@ -315,7 +361,7 @@ DROP TABLE IF EXISTS `recipe`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `recipe` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `name` varchar(50) DEFAULT NULL, + `name` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; @@ -343,10 +389,10 @@ DROP TABLE IF EXISTS `recipe_element`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `recipe_element` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `recipe_id` int(11) DEFAULT NULL, - `material_id` int(11) DEFAULT NULL, - `equipment_id` int(11) DEFAULT NULL, - `quantity` int(11) DEFAULT NULL, + `recipe_id` int(11) NOT NULL DEFAULT 1, + `material_id` int(11) NOT NULL DEFAULT 1, + `equipment_id` int(11) NOT NULL DEFAULT 1, + `quantity` int(11) NOT NULL DEFAULT 0, PRIMARY KEY (`id`), KEY `fk_recipe` (`recipe_id`), KEY `fk_material` (`material_id`), @@ -378,10 +424,10 @@ DROP TABLE IF EXISTS `salary`; /*!40101 SET character_set_client = utf8mb4 */; CREATE TABLE `salary` ( `id` int(11) NOT NULL AUTO_INCREMENT, - `worker_id` int(11) DEFAULT NULL, - `salary_size` decimal(10,0) DEFAULT NULL, - `salary_date` datetime DEFAULT NULL, - `comment` varchar(100) DEFAULT NULL, + `worker_id` int(11) NOT NULL, + `salary_size` decimal(10,0) NOT NULL, + `salary_date` datetime NOT NULL, + `comment` varchar(100) NOT NULL, PRIMARY KEY (`id`), KEY `fk_worker` (`worker_id`), CONSTRAINT `fk_worker` FOREIGN KEY (`worker_id`) REFERENCES `worker` (`id`) @@ -407,32 +453,6 @@ UNLOCK TABLES; COMMIT; SET AUTOCOMMIT=@OLD_AUTOCOMMIT; --- --- Table structure for table `salary_cluster` --- - -DROP TABLE IF EXISTS `salary_cluster`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8mb4 */; -CREATE TABLE `salary_cluster` ( - `id` int(11) NOT NULL, - `name` varchar(100) DEFAULT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `salary_cluster` --- - -SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; -LOCK TABLES `salary_cluster` WRITE; -/*!40000 ALTER TABLE `salary_cluster` DISABLE KEYS */; -/*!40000 ALTER TABLE `salary_cluster` ENABLE KEYS */; -UNLOCK TABLES; -COMMIT; -SET AUTOCOMMIT=@OLD_AUTOCOMMIT; - -- -- Table structure for table `worker` -- @@ -443,9 +463,10 @@ DROP TABLE IF EXISTS `worker`; CREATE TABLE `worker` ( `id` int(11) NOT NULL AUTO_INCREMENT, `position_id` int(11) NOT NULL, - `hire_date` datetime DEFAULT NULL, - `is_fired` tinyint(1) DEFAULT NULL, - `full_name` varchar(100) DEFAULT NULL, + `hire_date` datetime NOT NULL, + `is_fired` tinyint(1) NOT NULL, + `full_name` varchar(100) NOT NULL, + `fire_date` datetime DEFAULT NULL, PRIMARY KEY (`id`), KEY `fk_position` (`position_id`), CONSTRAINT `fk_position` FOREIGN KEY (`position_id`) REFERENCES `position` (`id`) @@ -460,17 +481,17 @@ SET @OLD_AUTOCOMMIT=@@AUTOCOMMIT, @@AUTOCOMMIT=0; LOCK TABLES `worker` WRITE; /*!40000 ALTER TABLE `worker` DISABLE KEYS */; INSERT INTO `worker` VALUES -(1,1,'1997-02-23 14:00:00',0,'Иван Петров'), -(2,1,'2021-06-11 14:00:00',0,'Петр Иванов'), -(3,1,'2010-02-11 14:00:00',0,'Pupue!'), -(4,1,'2003-01-26 14:00:00',0,'Никита Булаников'), -(5,2,'2009-01-06 14:00:00',0,'Никитин Олег'), -(6,1,'2009-09-08 13:00:00',0,'Авраамов Моисей'), -(7,2,'2018-04-21 14:00:00',0,'Беридзе Игнат'), -(8,4,'2026-04-24 00:00:00',0,'Иванов Иван'), -(9,3,'2024-04-21 14:00:00',0,'Власов Иннокентий'), -(10,2,'1970-01-19 14:00:00',0,'Петров Пётр Петрович'), -(11,2,'2003-02-01 14:00:00',0,'Никитин Олег Михайлович'); +(1,2,'1997-02-23 14:00:00',0,'Иван Петров','2026-06-26 00:09:14'), +(2,1,'2021-06-11 14:00:00',1,'Петр Иванов','2026-06-26 00:15:05'), +(3,1,'2010-02-11 14:00:00',0,'Pupue!','2026-06-26 00:09:23'), +(4,1,'2003-01-26 14:00:00',0,'Никита Булаников','0000-00-00 00:00:00'), +(5,2,'2009-01-06 14:00:00',0,'Никитин Олег','0000-00-00 00:00:00'), +(6,1,'2009-09-08 13:00:00',0,'Авраамов Моисей','0000-00-00 00:00:00'), +(7,2,'2018-04-21 14:00:00',0,'Беридзе Игнат','0000-00-00 00:00:00'), +(8,4,'2026-04-24 00:00:00',0,'Иванов Иван','0000-00-00 00:00:00'), +(9,3,'2024-04-21 14:00:00',0,'Власов Иннокентий','0000-00-00 00:00:00'), +(10,2,'1970-01-19 14:00:00',0,'Петров Пётр Петрович','0000-00-00 00:00:00'), +(11,2,'2003-02-01 14:00:00',0,'Никитин Олег Михайлович','0000-00-00 00:00:00'); /*!40000 ALTER TABLE `worker` ENABLE KEYS */; UNLOCK TABLES; COMMIT; @@ -485,4 +506,4 @@ SET AUTOCOMMIT=@OLD_AUTOCOMMIT; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */; --- Dump completed on 2026-06-22 8:47:40 +-- Dump completed on 2026-06-26 10:45:24