<template>
    <view :loading="loading">
        <!-- <uni-nav-bar left-icon="left" right-icon="cart" title="标题" /> -->
        <uni-nav-bar dark :fixed="true" status-bar left-icon="left" :rightIcon="userInfo.authorities === 'app_vip_user' || userInfo.authorities === 'engineering_user'
            ? 'plusempty'
            : ''
            " background-color="#fff" color="#111" title="项目管理" @clickLeft="back" @clickRight="add" />
        <uni-search-bar v-model="store.params.searchValue" clearButton="none" bgColor="#fff" placeholder="请输入关键词"
            @input="store.search()"></uni-search-bar>
        <view class="message">
            <!-- extra="🔍" -->
            <uni-card class="boxClick" :title="item.name" @click="jump(item)"
                v-for="(item, index) in store.data" :key="index" :style="{ marginTop: index === 0 ? '0' : '' }">
                <view class="term-list-bottom">
                    <view class="term-list-bottom-item">
                        <view>设备个数</view>
                        <view>{{ item.devNum }}</view>
                    </view>
                    <view class="term-list-bottom-item">
                        <view>所属工程</view>
                        <view>{{ item.engineeringName }}</view>
                    </view>
                </view>
            </uni-card>
            <Cn-empty v-if="store.empty" style="padding-top: 400rpx"></Cn-empty>
            <uni-load-more v-if="store.status == 'loading' || (store.data && store.data.length > 0)"
                :status="store.status"></uni-load-more>
        </view>
    </view>
</template>

<script>
import list from '../../common/js/list'

export default {
    mixins: [list],
    data() {
        return {
            loading: false,
            userInfo: {},
        }
    },
    methods: {
        init(engineeringId) {
            this.userInfo = uni.getStorageSync(this.$cacheKey.userInfo)
            this.store = this.DataSource('/cs-device-boot/project/queryProject')
            this.store.params.searchValue = ''
            this.store.params.engineeringId = engineeringId || ''
            this.store.reload()
        },
        back() {
            uni.navigateBack()
        },
        add() {
            if (this.userInfo.authorities === 'app_vip_user' || this.userInfo.authorities === 'engineering_user') {
                if (!uni.getStorageSync('engineering')) {
                    return uni.showToast({
                        title: '请先创建一个工程',
                        icon: 'none',
                    })
                }
                uni.navigateTo({
                    url: `/pages/project/new`,
                })
            }
        },
        upgrade(code) {
            console.log(code)
            uni.showToast({
                title: '升级成功',
                icon: 'none',
            })
        },
        jump(project) {
            console.log(project)
            uni.navigateTo({
                url: `/pages/project/detail?project=${encodeURIComponent(JSON.stringify(project))}`,
            })
        },
    },
    onLoad({ engineeringId }) {
        this.init(engineeringId)
    },
}
</script>

<style lang="scss">
.message {
    .message-header {
        padding: 200rpx 34rpx 34rpx;
        display: flex;
        align-items: center;
        background: $uni-theme-white;
        margin-bottom: 20rpx;
        box-shadow: 0 4rpx 8rpx #e7e7e74c;

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

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

            .tag {
                margin-top: 10rpx;
                font-size: 24rpx;
                color: #aaa;
            }
        }
    }

    .message-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;
        }
    }
}

.term-list-bottom {
    .term-list-bottom-item {
        font-size: 28rpx;
        // margin-bottom: 20rpx;
        display: flex;
        justify-content: space-between;
        // view:first-of-type{
        //     color: #111;
        // }
    }

    .term-list-bottom-item:last-of-type {
        margin-bottom: 0;
    }
}

/deep/ .uni-card__content {
    padding: 5px 10px 10px !important;
}

/deep/ .uni-card__header-content-title {
    font-weight: 700;
}
</style>
