liwei2496 2 years ago
parent
commit
a4e0d7421c
2 changed files with 197 additions and 7 deletions
  1. 2 2
      pages.json
  2. 195 5
      pages/Workorder/Tenantbill/Tenantbill.vue

+ 2 - 2
pages.json

@@ -41,7 +41,7 @@
 		{
 			"path": "pages/Workorder/Workorder",
 			"style": {
-				"navigationBarTitleText": "管理"
+				"navigationBarTitleText": "工作台"
 			//	"navigationStyle": "custom" ,// 隐藏系统导航栏
 					//		"navigationBarTextStyle": "white" 
 			}
@@ -192,7 +192,7 @@
 				"pagePath": "pages/Workorder/Workorder",
 				"iconPath": "static/tab/w1.png",
 							"selectedIconPath": "static/tab/w2.png",
-				"text": "管理"
+				"text": "工作台"
 			},			
 			// {
 			// 	"pagePath": "pages/Energyconsumption/Energyconsumption",

+ 195 - 5
pages/Workorder/Tenantbill/Tenantbill.vue

@@ -1,19 +1,209 @@
 <template>
-	<view>
-		
+	<view class="billall">
+		<u-cell-group>
+			<u-cell :title="mytitle" value="修改" :isLink="true" @click="floorchange">
+				<u-icon slot="icon" size="40" name="map"></u-icon>
+			</u-cell>
+		</u-cell-group>
+		<view class="topbill">
+			<view class="topbilledit">
+				<view class="changetime1">
+					<picker mode="date" :value="myday" fields="month" @change="dateChange">
+						<view class="selestDate">{{myday}}</view>
+					</picker>
+				</view>
+				<view class="changetime2">
+					<u-icon name="arrow-down-fill" color="#666666" size="20"></u-icon>
+				</view>
+			</view>
+			<view class="topbilledit" @click="typechange">
+				<view class="changetime1">
+					{{mytype}}
+				</view>
+				<view class="changetime2">
+					<u-icon name="arrow-down-fill" color="#666666" size="20"></u-icon>
+				</view>
+			</view>
+		</view>
+
+
+		<u-picker :show="showtype" :columns="columnstype" keyName="label" @confirm="confirmtype" @cancel='canceltype'>
+		</u-picker>
+		<!-- 
+         <mx-date-picker :show="showPicker" type="range" :value="dayrange" :show-tips="true" :begin-text="'开始日期'" :end-text="'结束日期'" :show-seconds="true" @confirm="ed" @cancel="ec" /> -->
+
+		<u-picker :show="showfloor" ref="uPicker" :loading="loading" @confirm="confirmfloor" @cancel='cancelfloor'
+			:columns="columns" keyName="orgName" @change="changeHandler"></u-picker>
+		<u-notify ref="uNotify" :show="showdct" message="服务器请求失败"></u-notify>
 	</view>
 </template>
 
 <script>
+	// import MxDatePicker from "@/components/mx-datepicker/mx-datepicker.vue";
+
 	export default {
+		components: {
+			//    MxDatePicker
+		},
 		data() {
+			const currentDate = this.getDate({
+				format: 'yyyy-mm'
+			})
 			return {
-				
-			};
+				showtype: false,
+				showdct: false,
+				mytitle: '',
+				alldata: [],
+				showfloor: false,
+				loading: false,
+				columns: [],
+				columnData: [],
+				myday: '',
+				mytype: '全部',
+				showPicker: false,
+				myday: currentDate,
+				columnstype: [
+					[{
+							label: '全部',
+							id: ''
+						}, {
+							label: '未结清',
+							id: 0
+						},
+						{
+							label: '已结清',
+							id: 1
+						}
+					]
+				],
+
+				//    dayrange: ['2019/01/01','2019/01/06'],
+
+			}
+		},
+		//监听页面加载,其参数为上个页面传递的数据,参数类型为 Object(用于页面传参
+		onLoad() {
+			this.getfloor();
+
+		},
+		//监听页面初次渲染完成。注意如果渲染速度快,会在页面进入动画完成前触发
+		onReady() {
+			// 微信小程序需要用此写法
+
+		},
+
+		//监听页面隐藏
+		onHide() {},
+		//监听窗口尺寸变化
+		onResize() {},
+		//监听页面卸载
+		onUnload() {},
+		//监听用户下拉动作,一般用于下拉刷新
+		onPullDownRefresh() {},
+
+
+		methods: {
+			canceltype() {
+				this.showtype = false;
+			},
+			confirmtype(e) {
+ // console.log('111111111111111111',e.value[0])
+  this.showtype = false;
+				this.mytype=e.value[0].label
+			},
+			typechange() {
+				this.showtype = true;
+			},
+			dateChange(e) {
+				this.myday = e.target.value;
+			},
+			getDate(type) {
+				const date = new Date();
+				let year = date.getFullYear();
+				let month = date.getMonth() + 1;
+				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;
+				return `${year}-${month}`;
+			},
+			getfloor() {
+				this.$api.get('/control/getOrgStructureTree/', {})
+					.then(res => {
+
+						if (res.data.code == 0) {
+							this.mytitle = res.data.data[0].orgName;
+							this.alldata = res.data.data[0].childrenList;
+							//console.log('111111111111111111',  res.data.data[0].childrenList)			
+							this.columns = [
+								res.data.data[0].childrenList,
+								res.data.data[0].childrenList[0].childrenList
+							]
+							let allfloor = [];
+							for (let i = 0; i < res.data.data[0].childrenList.length; i++) {
+								allfloor.push(res.data.data[0].childrenList[i].childrenList)
+							}
+							//  console.log('111111111111111111',allfloor)
+							this.columnData = allfloor
+						} else {
+							this.showdct = true
+						}
+					})
+			},
+
+			floorchange() {
+				this.showfloor = true;
+			},
+			changeHandler(e) {
+				const {
+					columnIndex,
+					index,
+					// 微信小程序无法将picker实例传出来,只能通过ref操作
+					picker = this.$refs.uPicker
+				} = e
+				if (columnIndex === 0) {
+					this.loading = true
+					picker.setColumnValues(1, this.columnData[index])
+					this.loading = false
+				}
+			},
+			confirmfloor(e) {
+				console.log('222222', e.value)
+
+				this.mytitle = e.value[0].orgName + e.value[1].orgName;
+
+				this.showfloor = false;
+			},
+			cancelfloor() {
+				this.showfloor = false;
+			},
+
+
 		}
 	}
 </script>
 
-<style lang="scss">
+<style>
+	.billall {}
 
+	.topbill {
+		display: flex;
+		justify-content: space-around;
+		align-items: center;
+		height: 100rpx;
+		background-color: #e6e6e6;
+	}
+
+	.topbilledit {
+		display: flex;
+		justify-content: space-around;
+		align-items: center;
+	}
+
+	.changetime1 {
+		padding-right: 10rpx;
+	}
 </style>