flying-monkey/pages/project/projectList.vue

286 lines
6.9 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<view class="content" :style="{paddingTop: statusHeight + 'px'}">
<statusNav navBarTitle="项目列表" :ifReturn="false"></statusNav>
<container-subgroup-two>
<view slot="content" style="margin: -100rpx -30rpx;">
<view class="project-list-input">
<input type="text" class="int" value="" placeholder="请输入关键字" />
<view class="xian"></view>
<image class="search" src="../../static/iocn/ss.png" mode="aspectFill" lazy-load></image>
</view>
<view class="screen bbot mar-sx20">
<picker @change="bindPickerChange" :value="index" :range="array">
<view class="li">
<view class="text">产品类型</view>
<image class="img" src="../../static/iocn/xla.png" mode="aspectFill" lazy-load></image>
</view>
</picker>
<picker mode="date" :value="date" @change="bindDateChange">
<view class="li">
<view class="text">竣工日期</view>
<image class="img" src="../../static/iocn/xla.png" mode="aspectFill" lazy-load></image>
</view>
</picker>
<view class="li">
<view class="text">筛选</view>
<image class="imgA" src="../../static/iocn/sx.png" mode="aspectFill" lazy-load></image>
</view>
</view>
<view class="project-list">
<view class="li" @click="projectDetailsFun()" v-for="(item,index) in 10" :key="index">
<view class="message">
<image class="img" src="../../static/del/img001.png" mode="aspectFill" lazy-load></image>
<view class="text disjb fc" style="height: 180rpx;">
<view class="clips1 fon24 bold">湖南工业大学化工学院会议室P2.5全彩LED显示屏</view>
<view class="disjb fc" style="margin-left: -20rpx;height: 80%;">
<view class="serial-number scal09">项目编号20220108-1001</view>
<view class="specification scal09">规格型号DS-CK25FI/H</view>
<view class="specification scal09">产品尺寸3.94*2.02</view>
<view class="installation-site scal09">安装位置xxx综合楼2楼会议室</view>
</view>
</view>
</view>
<view class="project-list-address col6 mar-s20 disjbac">
<view class="address">
<image class="img flexs" src="../../static/iocn/im.png" mode="scaleToFill" lazy-load></image>
<view class="text scal09" style="margin-left: -26rpx;">湖南省长沙市高新开发区谷园路109号像素大厦1205</view>
</view>
<view class="date scal09">2022/01/08</view>
</view>
<!-- <view class="icon iconBera">质保中</view> -->
<view class="icon iconBer">质保到期</view>
</view>
</view>
</view>
</container-subgroup-two>
<footTabOne :current="1"></footTabOne>
</view>
</template>
<script>
import statusNav from '../../components/status-nav.vue';
import footTabOne from "../../components/foot-tabs/foot-tab-one.vue"
import containerSubgroupTwo from '@/components/containers/container-subgroup-two.vue';
export default {
components: {
footTabOne,
statusNav,
containerSubgroupTwo
},
data() {
const currentDate = this.getDate({
format: true
})
return {
date: currentDate,
array: ['类型', '类型', '类型', '类型'],
index: 0,
statusHeight: uni.getSystemInfoSync().statusBarHeight + 40
}
},
methods: {
projectDetailsFun() {
uni.navigateTo({
url: "/pages/project/details"
})
},
bindPickerChange(data) {
console.log(data)
},
bindDateChange(date) {
console.log(date)
},
getDate(type) {
const date = new Date();
let year = date.getFullYear();
let month = date.getMonth() + 1;
let day = date.getDate();
if (type === 'start') {
year = year - 60;
} else if (type === 'end') {
year = year + 2;
}
month = month > 9 ? month : '0' + month;
day = day > 9 ? day : '0' + day;
console.log(year, month, day)
return `${year}-${month}-${day}`;
}
}
}
</script>
<style scoped>
page {
background-color: #F7F7F7;
}
.project-list-input {
width: 100%;
height: 114rpx;
position: relative;
padding: 20rpx 16rpx;
box-sizing: border-box;
background-color: #FFFFFF
}
.project-list-input .int {
width: 100%;
height: 100%;
background-color: #F7F7F7;
padding: 0 25rpx;
padding-right: 100rpx;
box-sizing: border-box;
border-radius: 36rpx;
}
.project-list-input .xian {
width: 3rpx;
height: 35rpx;
position: absolute;
background-color: #EAEAEA;
right: 100rpx;
top: 50%;
margin-top: -14rpx;
}
.project-list-input .search {
width: 28rpx;
height: 28rpx;
position: absolute;
right: 43rpx;
top: 50%;
margin-top: -14rpx;
}
.screen {
display: flex;
justify-content: space-around;
padding: 26rpx 20rpx;
border-top: 1rpx solid #EEEEEE;
}
.screen .li {
display: flex;
align-items: center;
}
.screen .li .text {
font-size: 26rpx;
color: #333333;
margin-right: 10rpx;
}
.screen .li .img {
width: 14rpx;
height: 8rpx;
}
.screen .li .imgA {
width: 24rpx;
height: 23rpx;
}
.project-list .li {
box-sizing: border-box;
background-color: #FFFFFF;
position: relative;
margin: 0 20rpx;
border-radius: 10rpx;
margin-bottom: 20rpx;
padding: 40rpx 20rpx 20rpx 20rpx;
}
.project-list .li .icon {
display: flex;
justify-content: center;
align-items: center;
width: 135rpx;
height: 40rpx;
position: absolute;
font-size: 22rpx;
color: #FFFFFF;
right: 23rpx;
text-align: center;
background-size: 100% 100%;
top: -10rpx;
}
.project-list .li .iconBer {
background-image: url(../../static/iocn/za.png);
}
.project-list .li .iconBera {
background-image: url(../../static/iocn/zaa.png);
}
.project-list .li .message {
display: flex;
}
.project-list .li .message .img {
width: 230rpx;
margin-right: 11rpx;
height: 180rpx;
}
.project-list .li .message .text {
flex: 1;
}
.project-list .li .message .serial-number {
color: #ff8800;
font-size: 22rpx;
/* margin-bottom: 15rpx; */
}
.project-list .li .message .specification {
color: #00b1ff;
font-size: 22rpx;
/* margin-bottom: 15rpx; */
}
.project-list .li .message .installation-site {
color: #6b6a6a;
font-size: 22rpx;
/* margin-bottom: 15rpx; */
}
.project-list-address {
display: flex;
/* justify-content: space-between; */
}
.project-list-address .text {
font-size: 22rpx;
}
.project-list-address .date {
font-size: 22rpx;
text-align: right;
/* margin-left: 20rpx; */
}
.project-list-address .img {
width: 20rpx;
height: 28rpx;
margin-right: 10rpx;
}
.project-list-address .address {
display: flex;
align-items: center;
}
.pickerDate {
width: 300rpx;
height: 300rpx;
}
</style>