JhHardwareWRS_BackPoint/scripts/create_manager.py
2026-06-24 15:19:14 +08:00

32 lines
1.0 KiB
Python

from argparse import ArgumentParser
from pathlib import Path
import sys
ROOT = Path(__file__).resolve().parents[1]
sys.path.insert(0, str(ROOT))
from app.database import SessionLocal # noqa: E402
from app.models import PersonRole, Personnel, Role # noqa: E402
def main() -> None:
parser = ArgumentParser(description="Create or update the first manager account.")
parser.add_argument("--phone", required=True, help="经理手机号")
parser.add_argument("--name", required=True, help="经理姓名")
args = parser.parse_args()
with SessionLocal() as db:
person = db.get(Personnel, args.phone)
if person is None:
person = Personnel(phone=args.phone)
db.add(person)
person.name = args.name
if db.get(PersonRole, {"phone": args.phone, "role": Role.manager}) is None:
db.add(PersonRole(phone=args.phone, role=Role.manager))
db.commit()
print(f"manager ready: {args.name} {args.phone}")
if __name__ == "__main__":
main()