from tortoise import BaseDBAsyncClient async def upgrade(db: BaseDBAsyncClient) -> str: return """ ALTER TABLE `Warehouses` DROP INDEX `is_activeidx`; ALTER TABLE `Warehouses` DROP INDEX `is_valididx`; ALTER TABLE `Warehouses` DROP INDEX `numidx`; ALTER TABLE `Warehouses` DROP INDEX `nameidx`; ALTER TABLE `Vacancys` DROP INDEX `numberidx`; ALTER TABLE `Vacancys` DROP INDEX `is_valididx`; ALTER TABLE `Vacancys` DROP INDEX `traynumidx`; ALTER TABLE `Vacancys` DROP INDEX `is_connectidx`; ALTER TABLE `Vacancys` DROP INDEX `is_shelfidx`; ALTER TABLE `Vacancys` DROP INDEX `is_activeidx`; ALTER TABLE `users` DROP INDEX `emailidx`; ALTER TABLE `users` DROP INDEX `is_adminidx`; ALTER TABLE `users` DROP INDEX `is_staffidx`; ALTER TABLE `users` DROP INDEX `is_lockedidx`; ALTER TABLE `users` DROP INDEX `phoneidx`; ALTER TABLE `users` DROP INDEX `usernameidx`; ALTER TABLE `users` DROP INDEX `nameidx`; ALTER TABLE `users` DROP INDEX `is_activeidx`; ALTER TABLE `users` DROP INDEX `is_valididx`; ALTER TABLE `Tasks` DROP INDEX `task_traynumidx`; ALTER TABLE `Tasks` DROP INDEX `is_valididx`; ALTER TABLE `Tasks` DROP INDEX `numidx`; ALTER TABLE `Tasks` DROP INDEX `task_is_canceledidx`; ALTER TABLE `Tasks` DROP INDEX `is_activeidx`; ALTER TABLE `Tasks` DROP INDEX `task_ordertimeidx`; ALTER TABLE `Tasks` DROP INDEX `task_is_doneidx`; ALTER TABLE `Tasks` DROP INDEX `task_coordinatesidx`; ALTER TABLE `Tasks` DROP INDEX `orderididx`; ALTER TABLE `Subtasks` DROP INDEX `is_activeidx`; ALTER TABLE `Subtasks` DROP INDEX `subtask_is_canceledidx`; ALTER TABLE `Subtasks` DROP INDEX `subtask_ordertimeidx`; ALTER TABLE `Subtasks` DROP INDEX `numidx`; ALTER TABLE `Subtasks` DROP INDEX `orderididx`; ALTER TABLE `Subtasks` DROP INDEX `subtask_traynumidx`; ALTER TABLE `Subtasks` DROP INDEX `subtask_is_doneidx`; ALTER TABLE `Subtasks` DROP INDEX `subtask_coordinatesidx`; ALTER TABLE `Subtasks` DROP INDEX `is_valididx`; ALTER TABLE `Schelves` DROP INDEX `is_valididx`; ALTER TABLE `Schelves` DROP INDEX `is_activeidx`; ALTER TABLE `Schelves` DROP INDEX `numidx`; ALTER TABLE `Schelves` DROP INDEX `nameidx`; ALTER TABLE `Orders` DROP INDEX `order_is_canceledidx`; ALTER TABLE `Orders` DROP INDEX `is_failedidx`; ALTER TABLE `Orders` DROP INDEX `is_activeidx`; ALTER TABLE `Orders` DROP INDEX `is_doneidx`; ALTER TABLE `Orders` DROP INDEX `is_finishidx`; ALTER TABLE `Orders` DROP INDEX `is_valididx`; ALTER TABLE `Orders` DROP INDEX `numidx`; ALTER TABLE `Orders` DROP INDEX `order_ordertimeidx`; ALTER TABLE `Orders` DROP INDEX `orderididx`; ALTER TABLE `Connections` DROP INDEX `numidx`; ALTER TABLE `Connections` DROP INDEX `is_activeidx`; ALTER TABLE `Connections` DROP INDEX `nameidx`; ALTER TABLE `Connections` DROP INDEX `is_valididx`; ALTER TABLE `Assignments` DROP INDEX `assignment_is_canceledidx`; ALTER TABLE `Assignments` DROP INDEX `is_valididx`; ALTER TABLE `Assignments` DROP INDEX `is_activeidx`; ALTER TABLE `Assignments` DROP INDEX `agvid`; ALTER TABLE `Assignments` DROP INDEX `is_processingidx`; ALTER TABLE `Assignments` DROP INDEX `assignment_is_doneidx`; ALTER TABLE `Assignments` DROP INDEX `num`; ALTER TABLE `Assignments` DROP INDEX `is_failedidx`; ALTER TABLE `Assignments` DROP INDEX `orderididx`; ALTER TABLE `Agvs` DROP INDEX `is_activeidx`; ALTER TABLE `Agvs` DROP INDEX `agvs_is_busy`; ALTER TABLE `Agvs` DROP INDEX `agvs_is_charging`; ALTER TABLE `Agvs` DROP INDEX `agvid`; ALTER TABLE `Agvs` DROP INDEX `agvs_is_abnormal`; ALTER TABLE `Agvs` DROP INDEX `num`; ALTER TABLE `Agvs` DROP INDEX `is_valididx`; ALTER TABLE `Agvs` DROP INDEX `agvs_is_done`; CREATE INDEX `num` ON `Agvs` (`num`); CREATE INDEX `agvs_is_abnormal` ON `Agvs` (`is_abnormal`); CREATE INDEX `agvs_is_busy` ON `Agvs` (`is_busy`); CREATE INDEX `is_valididx` ON `Agvs` (`is_valid`); CREATE INDEX `agvs_is_done` ON `Agvs` (`is_done`); CREATE INDEX `agvid` ON `Agvs` (`agvid`); CREATE INDEX `agvs_is_charging` ON `Agvs` (`is_charging`); CREATE INDEX `is_activeidx` ON `Agvs` (`is_active`); CREATE INDEX `num` ON `Assignments` (`num`); CREATE INDEX `assignment_is_canceledidx` ON `Assignments` (`is_canceled`); CREATE INDEX `is_processingidx` ON `Assignments` (`is_processing`); CREATE INDEX `agvid` ON `Assignments` (`agvid`); CREATE INDEX `orderididx` ON `Assignments` (`orderid`); CREATE INDEX `is_failedidx` ON `Assignments` (`is_failed`); CREATE INDEX `assignment_is_doneidx` ON `Assignments` (`is_done`); CREATE INDEX `is_valididx` ON `Assignments` (`is_valid`); CREATE INDEX `is_activeidx` ON `Assignments` (`is_active`); CREATE INDEX `is_activeidx` ON `Connections` (`is_active`); CREATE INDEX `nameidx` ON `Connections` (`name`); CREATE INDEX `numidx` ON `Connections` (`num`); CREATE INDEX `is_valididx` ON `Connections` (`is_valid`); CREATE INDEX `orderididx` ON `Orders` (`orderid`); CREATE INDEX `order_is_canceledidx` ON `Orders` (`is_canceled`); CREATE INDEX `is_failedidx` ON `Orders` (`is_failed`); CREATE INDEX `is_doneidx` ON `Orders` (`is_done`); CREATE INDEX `order_ordertimeidx` ON `Orders` (`ordertime`); CREATE INDEX `is_finishidx` ON `Orders` (`is_finish`); CREATE INDEX `numidx` ON `Orders` (`num`); CREATE INDEX `is_valididx` ON `Orders` (`is_valid`); CREATE INDEX `is_activeidx` ON `Orders` (`is_active`); CREATE INDEX `numidx` ON `Schelves` (`num`); CREATE INDEX `nameidx` ON `Schelves` (`name`); CREATE INDEX `is_valididx` ON `Schelves` (`is_valid`); CREATE INDEX `is_activeidx` ON `Schelves` (`is_active`); CREATE INDEX `is_activeidx` ON `Subtasks` (`is_active`); CREATE INDEX `subtask_is_canceledidx` ON `Subtasks` (`is_canceled`); CREATE INDEX `subtask_traynumidx` ON `Subtasks` (`traynum`); CREATE INDEX `orderididx` ON `Subtasks` (`orderid`); CREATE INDEX `subtask_ordertimeidx` ON `Subtasks` (`ordertime`); CREATE INDEX `is_valididx` ON `Subtasks` (`is_valid`); CREATE INDEX `numidx` ON `Subtasks` (`num`); CREATE INDEX `subtask_is_doneidx` ON `Subtasks` (`is_done`); CREATE INDEX `subtask_coordinatesidx` ON `Subtasks` (`coordinates`); CREATE INDEX `numidx` ON `Tasks` (`num`); CREATE INDEX `task_is_canceledidx` ON `Tasks` (`is_canceled`); CREATE INDEX `is_activeidx` ON `Tasks` (`is_active`); CREATE INDEX `task_traynumidx` ON `Tasks` (`traynum`); CREATE INDEX `is_valididx` ON `Tasks` (`is_valid`); CREATE INDEX `task_is_doneidx` ON `Tasks` (`is_done`); CREATE INDEX `task_coordinatesidx` ON `Tasks` (`coordinates`); CREATE INDEX `orderididx` ON `Tasks` (`orderid`); CREATE INDEX `task_ordertimeidx` ON `Tasks` (`ordertime`); CREATE INDEX `is_valididx` ON `users` (`is_valid`); CREATE INDEX `emailidx` ON `users` (`email`); CREATE INDEX `is_lockedidx` ON `users` (`is_locked`); CREATE INDEX `usernameidx` ON `users` (`username`); CREATE INDEX `nameidx` ON `users` (`name`); CREATE INDEX `is_staffidx` ON `users` (`is_staff`); CREATE INDEX `phoneidx` ON `users` (`phone`); CREATE INDEX `is_adminidx` ON `users` (`is_admin`); CREATE INDEX `is_activeidx` ON `users` (`is_active`); CREATE INDEX `is_connectidx` ON `Vacancys` (`is_connect`); CREATE INDEX `traynumidx` ON `Vacancys` (`traynum`); CREATE INDEX `is_valididx` ON `Vacancys` (`is_valid`); CREATE INDEX `is_activeidx` ON `Vacancys` (`is_active`); CREATE INDEX `numberidx` ON `Vacancys` (`number`); CREATE INDEX `is_shelfidx` ON `Vacancys` (`is_shelf`); CREATE INDEX `is_activeidx` ON `Warehouses` (`is_active`); CREATE INDEX `is_valididx` ON `Warehouses` (`is_valid`); CREATE INDEX `nameidx` ON `Warehouses` (`name`); CREATE INDEX `numidx` ON `Warehouses` (`num`);""" async def downgrade(db: BaseDBAsyncClient) -> str: return """ ALTER TABLE `Connections` DROP INDEX `is_valididx`; ALTER TABLE `Connections` DROP INDEX `numidx`; ALTER TABLE `Connections` DROP INDEX `nameidx`; ALTER TABLE `Connections` DROP INDEX `is_activeidx`; ALTER TABLE `Assignments` DROP INDEX `is_activeidx`; ALTER TABLE `Assignments` DROP INDEX `is_valididx`; ALTER TABLE `Assignments` DROP INDEX `assignment_is_doneidx`; ALTER TABLE `Assignments` DROP INDEX `is_failedidx`; ALTER TABLE `Assignments` DROP INDEX `orderididx`; ALTER TABLE `Assignments` DROP INDEX `agvid`; ALTER TABLE `Assignments` DROP INDEX `is_processingidx`; ALTER TABLE `Assignments` DROP INDEX `assignment_is_canceledidx`; ALTER TABLE `Assignments` DROP INDEX `num`; ALTER TABLE `Warehouses` DROP INDEX `numidx`; ALTER TABLE `Warehouses` DROP INDEX `nameidx`; ALTER TABLE `Warehouses` DROP INDEX `is_valididx`; ALTER TABLE `Warehouses` DROP INDEX `is_activeidx`; ALTER TABLE `Vacancys` DROP INDEX `is_shelfidx`; ALTER TABLE `Vacancys` DROP INDEX `numberidx`; ALTER TABLE `Vacancys` DROP INDEX `is_activeidx`; ALTER TABLE `Vacancys` DROP INDEX `is_valididx`; ALTER TABLE `Vacancys` DROP INDEX `traynumidx`; ALTER TABLE `Vacancys` DROP INDEX `is_connectidx`; ALTER TABLE `Subtasks` DROP INDEX `subtask_coordinatesidx`; ALTER TABLE `Subtasks` DROP INDEX `subtask_is_doneidx`; ALTER TABLE `Subtasks` DROP INDEX `numidx`; ALTER TABLE `Subtasks` DROP INDEX `is_valididx`; ALTER TABLE `Subtasks` DROP INDEX `subtask_ordertimeidx`; ALTER TABLE `Subtasks` DROP INDEX `orderididx`; ALTER TABLE `Subtasks` DROP INDEX `subtask_traynumidx`; ALTER TABLE `Subtasks` DROP INDEX `subtask_is_canceledidx`; ALTER TABLE `Subtasks` DROP INDEX `is_activeidx`; ALTER TABLE `Schelves` DROP INDEX `is_activeidx`; ALTER TABLE `Schelves` DROP INDEX `is_valididx`; ALTER TABLE `Schelves` DROP INDEX `nameidx`; ALTER TABLE `Schelves` DROP INDEX `numidx`; ALTER TABLE `Orders` DROP INDEX `is_activeidx`; ALTER TABLE `Orders` DROP INDEX `is_valididx`; ALTER TABLE `Orders` DROP INDEX `numidx`; ALTER TABLE `Orders` DROP INDEX `is_finishidx`; ALTER TABLE `Orders` DROP INDEX `order_ordertimeidx`; ALTER TABLE `Orders` DROP INDEX `is_doneidx`; ALTER TABLE `Orders` DROP INDEX `is_failedidx`; ALTER TABLE `Orders` DROP INDEX `order_is_canceledidx`; ALTER TABLE `Orders` DROP INDEX `orderididx`; ALTER TABLE `users` DROP INDEX `is_activeidx`; ALTER TABLE `users` DROP INDEX `is_adminidx`; ALTER TABLE `users` DROP INDEX `phoneidx`; ALTER TABLE `users` DROP INDEX `is_staffidx`; ALTER TABLE `users` DROP INDEX `nameidx`; ALTER TABLE `users` DROP INDEX `usernameidx`; ALTER TABLE `users` DROP INDEX `is_lockedidx`; ALTER TABLE `users` DROP INDEX `emailidx`; ALTER TABLE `users` DROP INDEX `is_valididx`; ALTER TABLE `Tasks` DROP INDEX `task_ordertimeidx`; ALTER TABLE `Tasks` DROP INDEX `orderididx`; ALTER TABLE `Tasks` DROP INDEX `task_coordinatesidx`; ALTER TABLE `Tasks` DROP INDEX `task_is_doneidx`; ALTER TABLE `Tasks` DROP INDEX `is_valididx`; ALTER TABLE `Tasks` DROP INDEX `task_traynumidx`; ALTER TABLE `Tasks` DROP INDEX `is_activeidx`; ALTER TABLE `Tasks` DROP INDEX `task_is_canceledidx`; ALTER TABLE `Tasks` DROP INDEX `numidx`; ALTER TABLE `Agvs` DROP INDEX `is_activeidx`; ALTER TABLE `Agvs` DROP INDEX `agvs_is_charging`; ALTER TABLE `Agvs` DROP INDEX `agvid`; ALTER TABLE `Agvs` DROP INDEX `agvs_is_done`; ALTER TABLE `Agvs` DROP INDEX `is_valididx`; ALTER TABLE `Agvs` DROP INDEX `agvs_is_busy`; ALTER TABLE `Agvs` DROP INDEX `agvs_is_abnormal`; ALTER TABLE `Agvs` DROP INDEX `num`; CREATE INDEX `agvs_is_done` ON `Agvs` (`is_done`); CREATE INDEX `is_valididx` ON `Agvs` (`is_valid`); CREATE INDEX `num` ON `Agvs` (`num`); CREATE INDEX `agvs_is_abnormal` ON `Agvs` (`is_abnormal`); CREATE INDEX `agvid` ON `Agvs` (`agvid`); CREATE INDEX `agvs_is_charging` ON `Agvs` (`is_charging`); CREATE INDEX `agvs_is_busy` ON `Agvs` (`is_busy`); CREATE INDEX `is_activeidx` ON `Agvs` (`is_active`); CREATE INDEX `orderididx` ON `Tasks` (`orderid`); CREATE INDEX `task_coordinatesidx` ON `Tasks` (`coordinates`); CREATE INDEX `task_is_doneidx` ON `Tasks` (`is_done`); CREATE INDEX `task_ordertimeidx` ON `Tasks` (`ordertime`); CREATE INDEX `is_activeidx` ON `Tasks` (`is_active`); CREATE INDEX `task_is_canceledidx` ON `Tasks` (`is_canceled`); CREATE INDEX `numidx` ON `Tasks` (`num`); CREATE INDEX `is_valididx` ON `Tasks` (`is_valid`); CREATE INDEX `task_traynumidx` ON `Tasks` (`traynum`); CREATE INDEX `is_valididx` ON `users` (`is_valid`); CREATE INDEX `is_activeidx` ON `users` (`is_active`); CREATE INDEX `nameidx` ON `users` (`name`); CREATE INDEX `usernameidx` ON `users` (`username`); CREATE INDEX `phoneidx` ON `users` (`phone`); CREATE INDEX `is_lockedidx` ON `users` (`is_locked`); CREATE INDEX `is_staffidx` ON `users` (`is_staff`); CREATE INDEX `is_adminidx` ON `users` (`is_admin`); CREATE INDEX `emailidx` ON `users` (`email`); CREATE INDEX `orderididx` ON `Orders` (`orderid`); CREATE INDEX `order_ordertimeidx` ON `Orders` (`ordertime`); CREATE INDEX `numidx` ON `Orders` (`num`); CREATE INDEX `is_valididx` ON `Orders` (`is_valid`); CREATE INDEX `is_finishidx` ON `Orders` (`is_finish`); CREATE INDEX `is_doneidx` ON `Orders` (`is_done`); CREATE INDEX `is_activeidx` ON `Orders` (`is_active`); CREATE INDEX `is_failedidx` ON `Orders` (`is_failed`); CREATE INDEX `order_is_canceledidx` ON `Orders` (`is_canceled`); CREATE INDEX `nameidx` ON `Schelves` (`name`); CREATE INDEX `numidx` ON `Schelves` (`num`); CREATE INDEX `is_activeidx` ON `Schelves` (`is_active`); CREATE INDEX `is_valididx` ON `Schelves` (`is_valid`); CREATE INDEX `is_valididx` ON `Subtasks` (`is_valid`); CREATE INDEX `subtask_coordinatesidx` ON `Subtasks` (`coordinates`); CREATE INDEX `subtask_is_doneidx` ON `Subtasks` (`is_done`); CREATE INDEX `subtask_traynumidx` ON `Subtasks` (`traynum`); CREATE INDEX `orderididx` ON `Subtasks` (`orderid`); CREATE INDEX `numidx` ON `Subtasks` (`num`); CREATE INDEX `subtask_ordertimeidx` ON `Subtasks` (`ordertime`); CREATE INDEX `subtask_is_canceledidx` ON `Subtasks` (`is_canceled`); CREATE INDEX `is_activeidx` ON `Subtasks` (`is_active`); CREATE INDEX `is_activeidx` ON `Vacancys` (`is_active`); CREATE INDEX `is_shelfidx` ON `Vacancys` (`is_shelf`); CREATE INDEX `is_connectidx` ON `Vacancys` (`is_connect`); CREATE INDEX `traynumidx` ON `Vacancys` (`traynum`); CREATE INDEX `is_valididx` ON `Vacancys` (`is_valid`); CREATE INDEX `numberidx` ON `Vacancys` (`number`); CREATE INDEX `nameidx` ON `Warehouses` (`name`); CREATE INDEX `numidx` ON `Warehouses` (`num`); CREATE INDEX `is_valididx` ON `Warehouses` (`is_valid`); CREATE INDEX `is_activeidx` ON `Warehouses` (`is_active`); CREATE INDEX `orderididx` ON `Assignments` (`orderid`); CREATE INDEX `is_failedidx` ON `Assignments` (`is_failed`); CREATE INDEX `num` ON `Assignments` (`num`); CREATE INDEX `assignment_is_doneidx` ON `Assignments` (`is_done`); CREATE INDEX `is_processingidx` ON `Assignments` (`is_processing`); CREATE INDEX `agvid` ON `Assignments` (`agvid`); CREATE INDEX `is_activeidx` ON `Assignments` (`is_active`); CREATE INDEX `is_valididx` ON `Assignments` (`is_valid`); CREATE INDEX `assignment_is_canceledidx` ON `Assignments` (`is_canceled`); CREATE INDEX `is_valididx` ON `Connections` (`is_valid`); CREATE INDEX `nameidx` ON `Connections` (`name`); CREATE INDEX `is_activeidx` ON `Connections` (`is_active`); CREATE INDEX `numidx` ON `Connections` (`num`);"""