import { Router } from "express";
import bank from "../controllers/bank.controller";
import validateData from "../middlewares/validation.middleware";
import {
  addBankSchema,
  removeBankSchema,
  setAsBankSettlementSchema,
  toggleBankSchema,
} from "../schemas/bankAccount.schema";
import authorize from "../middlewares/authorization.middleware";

const router = Router();

router.get("/list", authorize, bank.List);

router.post("/add", authorize, validateData(addBankSchema), bank.AddBank);
router.post("/add/cashfree", authorize, bank.AddBankCashfree);
router.post(
  "/remove",
  authorize,
  validateData(removeBankSchema),
  bank.RemoveBank
);

router.post(
  "/toggle",
  authorize,
  validateData(toggleBankSchema),
  bank.toggleBank
);
router.post(
  "/settlement/change",
  authorize,
  validateData(setAsBankSettlementSchema),
  bank.SetAccountForProperty
);

router.get("/prop/list/:bankId", authorize, bank.LinkedProperties);

export default router;
