<template>
  <view class="content">
    <view
      style="margin-top: 50rpx; display: flex; align-items: center; padding-right: 50rpx"
    >
      <view style="margin-right: 50rpx">账号</view>
      <u-input v-model="phone" border placeholder="账号"></u-input>
    </view>
    <view
      style="margin-top: 50rpx; display: flex; align-items: center; padding-right: 50rpx"
    >
      <view style="margin-right: 50rpx">账号</view>
      <u-input v-model="pwd" border placeholder="密码"></u-input>
    </view>
    <u-button type="primary" @click="loginFn" style="margin-top: 50rpx">登陆</u-button>
    <u-button type="primary" @click="login1Fn" style="margin-top: 50rpx"
      >登陆13800451500清洁工</u-button
    >
    <u-button type="primary" @click="login2Fn" style="margin-top: 50rpx"
      >登陆18174010562管理员</u-button
    >
  </view>
</template>
<script>
import bcrypt from "bcryptjs";
import { loginApi } from "@/api/apiList";
export default {
  data() {
    return {
      phone: "13800451500",
      pwd: "123456",
    };
  },
  mounted() {
    // console.log("%c%s", "color:red", "mounted--");
    uni.hideLoading(); // 关闭 Loading
  },
  onLoad() {},
  methods: {
    login1Fn() {
      this.phone = "13800451500";
      this.pwd = "123456";

      const normalTabBar = [
        {
          pagePath: "/pages/index/planList",
          iconPath: "/static/tab/list.png",
          selectedIconPath: "/static/tab/list_cur.png",
          text: "计划",
        },
        {
          pagePath: "/pages/index/index",
          iconPath: "/static/tab/home.png",
          selectedIconPath: "/static/tab/home_cur.png",
          text: "首页",
        },
        {
          pagePath: "/pages/user/index",
          iconPath: "/static/tab/my.png",
          selectedIconPath: "/static/tab/my_cur.png",
          text: "设置",
        },
      ];
      this.$u.vuex("vuex_tabbar", normalTabBar);
      this.loginFn("user");
    },
    login2Fn() {
      this.phone = "18174010562";
      this.pwd = "123456";

      const adminTabBar = [
        {
          pagePath: "/pages/adminHome/index",
          iconPath: "/static/tab/list.png",
          selectedIconPath: "/static/tab/list_cur.png",
          text: "首页",
        },
        {
          pagePath: "/pages/adminNfc/index",
          iconPath: "/static/tab/list.png",
          selectedIconPath: "/static/tab/list_cur.png",
          text: "nfc写入",
        },
        {
          pagePath: "/pages/adminMy/index",
          iconPath: "/static/tab/list.png",
          selectedIconPath: "/static/tab/list_cur.png",
          text: "我的",
        },
      ];
      this.$u.vuex("vuex_tabbar", adminTabBar);
      this.loginFn("admin");
    },
    async loginFn(type) {
      let salt = bcrypt.genSaltSync(12);
      let req = {
        phone: this.phone,
        password: bcrypt.hashSync(this.pwd, salt),
      };
      const res = await loginApi(req);
      if (!res.succeed) {
        uni.showToast({
          title: res.error || "登录失败",
          icon: "none",
        });
        return;
      }
      let token = res.data;
      uni.setStorageSync("token", "Bearer " + token);
      console.log(type, "type--");
      if (type === "user") {
        uni.switchTab({
          url: `/pages/index/planList`,
        });
      }
      if (type === "admin") {
        uni.switchTab({
          url: `/pages/adminHome/index`,
        });
      }
    },
  },
};
</script>
<style lang="scss" scoped>
.content {
  height: 100vh; // 确保容器有明确高度
  // background-color: skyblue;
  overflow: hidden;
  padding-bottom: 100rpx;
}
</style>
