<template>
    <Cn-page :loading="loading">
        <view class="mine" slot="body">
            <view class="mine-nav" style="margin-top: 20rpx">
                <view class="mine-nav-label">功能调试</view>
                <switch
                    style="transform: scale(0.8)"
                    color="#376cf3"
                    @change="change('feature')"
                    :checked="config.feature"
                />
            </view>
            <view class="mine-nav" style="border-bottom: none">
                <view class="mine-nav-label">出厂调试</view>
                <switch
                    style="transform: scale(0.8)"
                    color="#376cf3"
                    @change="change('factory')"
                    :checked="config.factory"
                />
            </view>
        </view>
    </Cn-page>
</template>

<script>
export default {
    data() {
        return {
            loading: true,
            config: {
                feature: true,
                factory: true,
            },
        }
    },
    methods: {
        init() {
            let serverConfig = uni.getStorageSync(this.$cacheKey.serverConfig)
            serverConfig && (this.config = serverConfig)
            this.loading = false
        },
        change(type) {
            this.config[type] = !this.config[type]
            let str = ''
            switch (type) {
                case 'feature':
                    str = '功能调试'
                    break
                case 'factory':
                    str = '出厂调试'
                    break
            }
            this.$util.toast(`${str}首页入口${this.config[type] ? '开启' : '关闭'}`, 2500)
            uni.setStorage({
                key: this.$cacheKey.serverConfig,
                data: this.config,
            })
        },
    },
    onLoad() {
        this.init()
    },
}
</script>

<style lang="scss">
.mine {
    .title {
        padding: 0 20rpx;
        font-size: 28rpx;
        font-weight: 500;
    }

    .mine-header {
        padding: 200rpx 34rpx 34rpx;
        display: flex;
        align-items: center;
        background: $uni-theme-white;
        margin-bottom: 20rpx;
        box-shadow: 0 4rpx 8rpx #e7e7e74c;

        .mine-header-head {
            margin-right: 30rpx;
            height: 128rpx;
            width: 128rpx;
            border-radius: $uni-theme-radius;
            overflow: hidden;
        }

        .mine-header-name {
            margin-right: 30rpx;
            flex: 1;
            font-size: 36rpx;
            color: #111;
            font-weight: 700;
        }
    }

    .mine-nav {
        padding: 34rpx;
        display: flex;
        align-items: center;
        background: $uni-theme-white;
        border-bottom: 1rpx solid #e8e8e8;

        &-icon {
            margin-right: 30rpx;
            height: 44rpx;
            width: 44rpx;
            border-radius: $uni-theme-radius;
            overflow: hidden;
        }

        &-label {
            margin-right: 30rpx;
            flex: 1;
            font-size: 28rpx;
            color: #111;
        }
    }
}
</style>
