window.onload = function () {
  // 在页面加载完成后执行
  // 执行你的代码
  const currentDate = gemhoUtil.getTargetDateYM()
  new Vue({
    el: '#app',
    data() {
      return {
        showPopup4completionDate: false,
        // 控制日期选择器弹窗的显示与隐藏
        showPicker: false,
        // 存储选择的日期
        selectedDate: currentDate, // '', // gemhoUtil.formatDate(new Date(value)),
        //显示的日期
        showDate: currentDate,
        // 日期选择的最小范围，这里设置为当前日期的前 10 年
        minDate: new Date(new Date().getFullYear() - 10, 0),
        // 日期选择的最大范围，这里设置为当前日期的后 10 年
        maxDate: new Date(new Date().getFullYear() + 10, 11),
        checkModules: [
          {
            intro: '提交检查反馈',
          },
          {
            intro: '查看检查历史记录',
          },
          {
            intro: '提交检查反馈',
          },
          {
            intro: '下载检查报告',
          },
          {
            intro: '查看隐患详情',
          },
          {
            intro: '设置检查提醒',
          },
        ],
        userInfo: {
          userType: 'sj1', // 登录用户type
          userId: '1', // 登录用户id
          userName: '张三', // 登录用户name
          deptId: '1', // 登录用户部门id
          deptName: '部门1', // 登录用户部门name
          role: 'dudao',
          roleName: '督导',
        },
        // 登录用户type
        defaultMenuList: [
          {
            className: 'saoma',
            title: '扫码检查',
            remark: '',
            navTo: false,
          },
          {
            className: 'jiancha',
            title: '检查记录',
            remark: '',
            navTo: 'checkrecord',
          },
          {
            className: 'yinhuan',
            title: '隐患审核',
            remark: '',
            navTo: 'yinhuanshenhe',
          },
          {
            className: 'yinhuan',
            title: '隐患整改',
            remark: '',
            navTo: 'yinhuanzhenggai',
          },
          {
            className: 'shangjia',
            title: '商家信息',
            remark: '',
            navTo: 'shanghu_detail',
          },
          {
            className: 'zicha',
            title: '安全自查',
            remark: '',
            navTo: 'checkrecord',
          },
        ],
        // 修改默认菜单结构为最小化配置
        menuList: [],
        // 初始化为空数组，等待接口数据填充
        userData: {
          checkCount: 0, //检查数
          checkSelfCount: 0, //自查数
          hiddenCount: 0, //隐患数
          hiddenNoReCount: 0, //未整改数
        },
      }
    },
    mounted() {
      // 在组件挂载后执行
      // 调用你的方法
      this.init()
    },
    computed: {},
    methods: {
      scanCode(toData) {
        if (toData === false) {
          lightAppJssdk.device.scan({
            success: function (data) {
              // 获取到data为二维码的url路径，从这里取请求参数，商户id，在下面跳转本地系统路径
              // alert('扫码成功'+JSON.stringify(data))

              // location.href = 'shanghu_home.html'
              gemhoUtil.navigatePage(`src/_checkrecord.html`)
              //成功回调
            },
            fail: function (data) {
              //错误返回
              alert('扫码失败')
            },
          })
        } else {
          this.userInfo.userType === 'sj'
            ? (toData = 'checkrecord')
            : (toData = 'shanghu_list')

          gemhoUtil.navigatePage(`src/_${toData}.html`)
        }
      },
      navTo(url) {
        // gemhoUtil.nav2asd(url)
      },

      init() {
        // 在组件挂载后执行
        // 调用你的方法
        this.getUserInfo()
        this.getUserData()
      },
      showPopup() {
        this['showPopup4completionDate'] = true
      },
      confirm4completionDate(value) {
        this.selectedDate = gemhoUtil.getTargetDateYMByPara(value)
        this.showDate = gemhoUtil.getTargetDateYMByPara(value)
        this.showPopup4completionDate = false
        this.getUserData()
      },

      // 格式化日期显示的函数，根据需要自定义
      needData(type, val) {
        if (type === 'year') {
          return `${val}`
        } else if (type === 'month') {
          return `${val}`
        }
        return val
      },
      // 取消选择日期时的回调函数
      onCancel() {
        this.showPicker = false
      },
      getUserInfo() {
        http.get('/gq/information/getAll/1 ').then((res) => {
          if (res.code !== 200 && res.data == null) {
            return
          }
          if (
            res.data.roleDeptNameVo.roleName == '超级管理员' ||
            res.data.roleDeptNameVo.roleName == '超级管理员'
          ) {
            this.userInfo = {
              userType: 'gl', // 登录用户type
              userId: '1', // 登录用户id
              userName: '张三', // 登录用户name
              deptId: '1', // 登录用户部门id
              deptName: res.data.roleDeptNameVo.deptName, // 登录用户部门name
              role: 'dudao',
              roleName: '督导人员',
            }
          } else if (res.data.roleDeptNameVo.roleName == '行业管理') {
            this.userInfo = {
              userType: 'gl', // 登录用户type
              userId: '1', // 登录用户id
              userName: '张三', // 登录用户name
              deptId: '1', // 登录用户部门id
              deptName: res.data.roleDeptNameVo.deptName, // 登录用户部门name
              role: 'dudao',
              roleName: '行业检查',
            }
          } else if (res.data.roleDeptNameVo.roleName == '街道主管') {
            this.userInfo = {
              userType: 'gl', // 登录用户type
              userId: '1', // 登录用户id
              userName: '张三', // 登录用户name
              deptId: '1', // 登录用户部门id
              deptName: res.data.roleDeptNameVo.deptName, // 登录用户部门name
              role: 'dudao',
              roleName: '行业检查',
            }
          } else if (res.data.roleDeptNameVo.roleName == '日常管理') {
            this.userInfo = {
              userType: 'gl', // 登录用户type
              userId: '1', // 登录用户id
              userName: '张三', // 登录用户name
              deptId: '1', // 登录用户部门id
              deptName: res.data.roleDeptNameVo.deptName, // 登录用户部门name
              role: 'dudao',
              roleName: '日常检查',
            }
          } else if (res.data.roleDeptNameVo.roleName == '商户') {
            this.userInfo = {
              userType: 'sj', // 登录用户type
              userId: '1', // 登录用户id
              userName: '张三', // 登录用户name
              deptId: '1', // 登录用户部门id
              deptName: res.data.roleDeptNameVo.deptName, // 登录用户部门name
              businessAddress: res.data.merchantInfoNumVo.businessAddress, //
              smallPlaceTypeName: res.data.merchantInfoNumVo.smallPlaceTypeName, //
              unitName: res.data.merchantInfoNumVo.unitName, //
              role: 'dudao',
              roleName: '商家',
            }
          }
          console.log(this.userInfo)

          // 生成最终菜单列表
          this.menuList = (res.data.modules || []).map((moduleItem) => ({
            ...(this.defaultMenuList.find(
              (d) => d.title === moduleItem.title
            ) || {}),
            ...moduleItem,
            remark: moduleItem.remark || '',
          }))
        })
      },
      // 获取用户数据的方法
      getUserData() {
        http
          .get(
            '/gq/checkRecord/merHomeStatistics?merId=1&date=' +
              this.selectedDate
          )
          .then((res) => {
            if (res.code == 200) {
              this.userData = res.data
            }
          })
      },
    },
    //过滤器
    filters: {
      //格式化日期显示的函数，根据需要自定义
      formatterData(val) {
        if (!val) return ''
        const [year, month] = val.split('-')
        return `${year}年${month}月`
      },
    },
  })
}
