From d492850f1cc64ddcfaf43798af9c76c2505414fd Mon Sep 17 00:00:00 2001 From: renkang <8417338+k94314517@user.noreply.gitee.com> Date: 星期五, 24 一月 2025 18:24:31 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1 --- admin/src/views/roomStatus/index.vue | 1286 ++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 808 insertions(+), 478 deletions(-) diff --git a/admin/src/views/roomStatus/index.vue b/admin/src/views/roomStatus/index.vue index bff1757..3ef5bef 100644 --- a/admin/src/views/roomStatus/index.vue +++ b/admin/src/views/roomStatus/index.vue @@ -2,37 +2,58 @@ <div class="box"> <div class="box_content"> <div class="left"> - <el-input v-model="input" placeholder="璇疯緭鍏ュ唴瀹�"></el-input> + <el-input v-model="filterText" placeholder="鎼滅储"></el-input> <div style="width: 100%; height: 20px;"></div> - <el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick"></el-tree> + <el-tree + ref="tree" + :data="houseList" + node-key="id" + :default-expanded-keys="ids" + highlight-current + @node-click="nodeClick" + :default-checked-keys="ids" + :filter-node-method="filterNode" + :props="{ children: 'projectDataVOList', label: 'name' }"> + <span class="custom-tree-node" style="width: 100%; display: flex; align-items: center; justify-content: space-between;" slot-scope="{ node, data }"> + <span>{{ data.name }}</span> + <span style="color: #2080f7;" v-if="data.lv === 3"> + {{data.leaseStatus === 0 ? '寰呯璧�' : data.leaseStatus === 1 ? '宸茬璧�' : data.leaseStatus === 2 ? '鏈紑鍚璧�' : ''}} + </span> + </span> + </el-tree> </div> <div class="right"> - <div class="right_head">椤圭洰鍚嶇О</div> + <div class="right_head"> + {{title}} + <el-tag type="info" v-if="leaseStatus === 0" style="margin-left: 10px;">寰呯璧�</el-tag> + <el-tag type="success" v-if="leaseStatus === 1" style="margin-left: 10px;">宸茬璧�</el-tag> + <el-tag type="warning" v-if="leaseStatus === 2" style="margin-left: 10px;">鏈紑鍚璧�</el-tag> + </div> <div class="right_cate"> <el-tabs v-model="activeName" @tab-click="handleClick"> - <el-tab-pane label="椤圭洰姒傚喌" name="first"> + <el-tab-pane label="椤圭洰姒傚喌" name="first" v-if="lv === 0"> <div class="xm"> <el-card> <div class="xm_one"> <div class="xm_one_row"> <span>鍦ㄧ鍚堝悓鏁�</span> - <span>4</span> - <span>鍦ㄧ鎴挎簮鏁帮細5</span> + <span>{{projectNums.leaseContractAmount}}</span> + <span>鍦ㄧ鎴挎簮鏁帮細{{projectNums.leaseRoomAmount}}</span> </div> <div class="xm_one_row"> <span>鍙嫑鍟嗛潰绉�</span> - <span>50000銕�</span> - <span>鍙嫑鍟嗘埧婧愭暟锛�15</span> + <span>{{projectNums.investmentArea}}銕�</span> + <span>鍙嫑鍟嗘埧婧愭暟锛歿{projectNums.investmentRoomAmount}}</span> </div> <div class="xm_one_row"> <span>鍦ㄧ瀹炴椂鍧囦环</span> - <span>145.75鍏�/m虏路澶�</span> - <span>鍦ㄧ闈㈢Н锛�900.00m虏</span> + <span>{{projectNums.leasePrice}}鍏�/m虏路澶�</span> + <span>鍦ㄧ闈㈢Н锛歿{projectNums.leaseArea}}m虏</span> </div> <div class="xm_one_row"> <span>鍑虹鐜�</span> - <span>50.00%</span> - <span>寰呯闈㈢Н锛�700.00m虏</span> + <span>{{(projectNums.leaseRoomAmount / projectNums.investmentRoomAmount).toFixed(2)}}%</span> + <span>寰呯闈㈢Н锛歿{projectNums.investmentArea - projectNums.leaseArea}}m虏</span> </div> </div> </el-card> @@ -43,19 +64,19 @@ <div class="xm_info"> <div class="xm_info_row" style="width: 25%;"> <span>椤圭洰鍚嶇О</span> - <span>XXXXXXXXXX</span> + <span>{{projectInfo.name}}</span> </div> <div class="xm_info_row" style="width: 25%;"> <span>鎵�灞炲湴鍖�</span> - <span>瀹夊窘鐪�-鍚堣偉甯�-铚�灞卞尯</span> + <span>{{projectInfo.provinceName}}-{{projectInfo.cityName}}-{{projectInfo.areaName}}</span> </div> <div class="xm_info_row" style="width: 50%;"> <span>璇︾粏鍦板潃</span> - <span>Lorem ipsum dolor sit amet, consectetur</span> + <span>{{projectInfo.addr}}</span> </div> <div class="xm_info_row" style="width: 100%; margin-top: 15px;"> <span>椤圭洰绠�浠�</span> - <span>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum</span> + <span>{{projectInfo.remark}}</span> </div> </div> </el-card> @@ -64,34 +85,53 @@ <span>褰撳墠鍦ㄧ鍚堝悓</span> </div> <div class="xm_table"> - <el-input v-model="input" style="width: 300px; margin-bottom: 15px;" placeholder="璇疯緭鍏ュ唴瀹�"></el-input> + <div style="display: flex; align-items: center; margin-bottom: 15px;"> + <el-input v-model="form.code" style="width: 150px; margin-right: 15px;" placeholder="璇疯緭鍏ュ悎鍚岀紪鍙�"></el-input> + <el-button type="primary" @click="getFetchList">鎼滅储</el-button> + <el-button @click="clear">閲嶇疆</el-button> + </div> <el-table :data="tableData" border + v-loading="loading" style="width: 100%"> <el-table-column - prop="date" label="鍚堝悓缂栧彿"> + <template slot-scope="{row}"> + <el-button type="text">{{row.code}}</el-button> + </template> </el-table-column> <el-table-column - prop="name" + prop="renterName" label="绉熷"> </el-table-column> <el-table-column - prop="address" label="绉熻祦鍗曚环"> + <template slot-scope="{row}"> + <div style="display: flex; align-items: center;"> + <span>{{row.leasePrice || 0}}鍏�/銕÷峰ぉ</span> + </div> + </template> </el-table-column> <el-table-column - prop="address" + prop="leaseDays" label="绉熻祦澶╂暟"> </el-table-column> <el-table-column - prop="address" label="绉熻祦闈㈢Н"> + <template slot-scope="{row}"> + {{row.totalArea}}銕� + </template> </el-table-column> <el-table-column - prop="address" label="鎴挎簮"> + <template slot-scope="{row}"> + <div style="display: flex; flex-direction: column;"> + <span v-for="(item, index) in row.roomList" :key="index"> + {{item.projectName}}/{{item.buildingName}}/{{item.floorName}}/{{item.roomNum}} + </span> + </div> + </template> </el-table-column> </el-table> <div class="xm_table_f"> @@ -109,7 +149,7 @@ </el-card> </div> </el-tab-pane> - <el-tab-pane label="鎴挎簮淇℃伅" name="houseinfo"> + <el-tab-pane label="鎴挎簮淇℃伅" name="houseinfo" v-if="[3].includes(lv)"> <div class="xm"> <el-card style="margin-top: 20px;"> <div slot="header" class="clearfix"> @@ -118,91 +158,99 @@ <div class="xm_info"> <div class="xm_info_row" style="width: 25%;"> <span>鎵�灞為」鐩�</span> - <span>XXXXXXXXXX</span> + <span>{{roomInfo.projectName}}</span> </div> <div class="xm_info_row" style="width: 25%;"> <span>妤煎畤</span> - <span>缁煎悎妤�</span> + <span>{{roomInfo.buildingName}}</span> </div> <div class="xm_info_row" style="width: 25%;"> <span>妤煎眰</span> - <span>1</span> + <span>{{roomInfo.floorName}}</span> </div> <div class="xm_info_row" style="width: 25%;"> <span>鎴垮彿</span> - <span>101娲诲姩瀹�</span> + <span>{{roomInfo.roomNum}}</span> </div> <div class="xm_info_row" style="width: 25%; margin-top: 15px;"> <span>鎴块棿缂栧彿</span> - <span>101</span> + <span>{{roomInfo.code}}</span> </div> <div class="xm_info_row" style="width: 25%; margin-top: 15px;"> <span>鏄惁鎷涘晢</span> - <span>鍚�</span> + <span v-if="roomInfo.isInvestment === 0">鍚�</span> + <span v-if="roomInfo.isInvestment === 1">鏄�</span> </div> <div class="xm_info_row" style="width: 25%; margin-top: 15px;"> <span>寤虹瓚闈㈢Н</span> - <span>50銕�</span> + <span>{{roomInfo.area}}銕�</span> </div> <div class="xm_info_row" style="width: 25%; margin-top: 15px;"> <span>璁$闈㈢Н</span> - <span>50銕�</span> + <span>{{roomInfo.rentArea}}銕�</span> </div> <div class="xm_info_row" style="width: 25%; margin-top: 15px;"> <span>璁¤垂闈㈢Н</span> - <span>45銕�</span> + <span>{{roomInfo.feeArea}}銕�</span> </div> </div> </el-card> </div> </el-tab-pane> - <el-tab-pane label="绉熷鍚堝悓" name="project"> + <el-tab-pane label="绉熷鍚堝悓" name="project" v-if="[3].includes(lv)"> <div class="xm"> <el-card style="margin-top: 20px;"> <div slot="header" class="clearfix"> <span>褰撳墠鍦ㄧ鍚堝悓</span> </div> <div class="xm_table"> - <el-input v-model="input" style="width: 300px; margin-bottom: 15px;" placeholder="璇疯緭鍏ュ悎鍚岀紪鍙�"></el-input> + <div style="display: flex; align-items: center; margin-bottom: 15px;"> + <el-input v-model="form.code" style="width: 150px; margin-right: 15px;" placeholder="璇疯緭鍏ュ悎鍚岀紪鍙�"></el-input> + <el-button type="primary" @click="getFetchList">鎼滅储</el-button> + <el-button @click="clear">閲嶇疆</el-button> + </div> <el-table :data="tableData" border + v-loading="loading" style="width: 100%"> <el-table-column - prop="date" label="鍚堝悓缂栧彿"> + <template slot-scope="{row}"> + <el-button type="text">{{row.code}}</el-button> + </template> </el-table-column> <el-table-column - prop="name" - label="瀹㈡埛鍚嶇О"> + prop="renterName" + label="绉熷"> </el-table-column> <el-table-column - prop="address" - label="寮�濮嬫棩鏈�"> - </el-table-column> - <el-table-column - prop="address" - label="缁撴潫鏃ユ湡"> - </el-table-column> - <el-table-column - prop="address" label="绉熻祦鍗曚环"> + <template slot-scope="{row}"> + <div style="display: flex; align-items: center;"> + <span>{{row.leasePrice || 0}}鍏�/銕÷峰ぉ</span> + </div> + </template> </el-table-column> <el-table-column - prop="address" - label="绉熻祦闈㈢Н锛堛帯锛�"> + prop="leaseDays" + label="绉熻祦澶╂暟"> </el-table-column> <el-table-column - prop="address" - label="绛捐鏃�"> + label="绉熻祦闈㈢Н"> + <template slot-scope="{row}"> + {{row.totalArea}}銕� + </template> </el-table-column> <el-table-column - prop="address" - label="鍚堝悓鏉ユ簮"> - </el-table-column> - <el-table-column - prop="address" - label="鍚堝悓鐘舵��"> + label="鎴挎簮"> + <template slot-scope="{row}"> + <div style="display: flex; flex-direction: column;"> + <span v-for="(item, index) in row.roomList" :key="index"> + {{item.projectName}}/{{item.buildingName}}/{{item.floorName}}/{{item.roomNum}} + </span> + </div> + </template> </el-table-column> </el-table> <div class="xm_table_f"> @@ -220,29 +268,70 @@ </el-card> </div> </el-tab-pane> - <el-tab-pane label="妤煎畤姒傚喌" name="louyu"> + <el-tab-pane label="鎴挎�佺鐞�" name="house" v-if="[1,2].includes(lv)"> + <div class="xm"> + <div class="xm_house"> + <div class="xm_house_tips"> + <div class="xm_house_tips_row"> + <div class="xm_house_tips_row_d" style="background: rgba(0,186,146,0.1);"></div> + <span>宸插嚭绉�</span> + </div> + <div class="xm_house_tips_row"> + <div class="xm_house_tips_row_d" style="background: #F7F7F7;"></div> + <span>鏈嚭绉�</span> + </div> + <div class="xm_house_tips_row"> + <div class="xm_house_tips_row_d" style="background: rgba(255,158,0,0.14);"></div> + <span>90鏃ュ唴鍒版湡</span> + </div> + </div> + <div class="xm_house_list" v-for="(item, index) in roomStatus" :key="index"> + <div class="xm_house_list_left"> + <div class="xm_house_list_left_row"> + <span>{{item.floorName}}</span> + <span>{{item.floorArea}}銕�</span> + </div> + </div> + <div class="xm_house_list_right"> + <div class="xm_house_list_right_row" :style="{ width: ifWidth(child.roomRentArea), backgroundColor: ifBackground(child.roomStatus) }" v-for="(child, i) in item.ywRoomStatusDataVOList" :key="i"> + <div class="ft"> + <span>{{child.roomCode}}</span> + <span>锛坽{child.roomRentArea}}銕★級</span> + </div> + <div class="xm_house_list_right_row_info" v-if="child.roomStatus !== 0"> + <span>{{child.customerName}}</span> + <span>{{child.overData.substring(0, 10)}}鍒版湡</span> + </div> + <div class="xm_house_list_right_row_day" v-if="child.roomStatus === 0">鏈嚭绉燂綔绌虹疆{{child.freeDayAmount}}澶�</div> + </div> + </div> + </div> + </div> + </div> + </el-tab-pane> + <el-tab-pane label="妤煎畤姒傚喌" name="louyu" v-if="lv === 1"> <div class="xm"> <el-card> <div class="xm_one"> <div class="xm_one_row"> <span>鍦ㄧ鍚堝悓鏁�</span> - <span>4</span> - <span>鍦ㄧ鎴挎簮鏁帮細5</span> + <span>{{projectNums.leaseContractAmount}}</span> + <span>鍦ㄧ鎴挎簮鏁帮細{{projectNums.leaseRoomAmount}}</span> </div> <div class="xm_one_row"> <span>鍙嫑鍟嗛潰绉�</span> - <span>50000銕�</span> - <span>鍙嫑鍟嗘埧婧愭暟锛�15</span> + <span>{{projectNums.investmentArea}}銕�</span> + <span>鍙嫑鍟嗘埧婧愭暟锛歿{projectNums.investmentRoomAmount}}</span> </div> <div class="xm_one_row"> <span>鍦ㄧ瀹炴椂鍧囦环</span> - <span>145.75鍏�/m虏路澶�</span> - <span>鍦ㄧ闈㈢Н锛�900.00m虏</span> + <span>{{projectNums.leasePrice}}鍏�/m虏路澶�</span> + <span>鍦ㄧ闈㈢Н锛歿{projectNums.leaseArea}}m虏</span> </div> <div class="xm_one_row"> <span>鍑虹鐜�</span> - <span>50.00%</span> - <span>寰呯闈㈢Н锛�700.00m虏</span> + <span>{{(projectNums.leaseRoomAmount / projectNums.investmentRoomAmount).toFixed(2)}}%</span> + <span>寰呯闈㈢Н锛歿{projectNums.investmentArea - projectNums.leaseArea}}m虏</span> </div> </div> </el-card> @@ -253,43 +342,43 @@ <div class="xm_info"> <div class="xm_info_row" style="width: 25%;"> <span>鎵�灞為」鐩�</span> - <span>闃滃畞鏂囦綋涓績</span> + <span>{{buildingInfo.projectName}}</span> </div> <div class="xm_info_row" style="width: 25%;"> <span>妤煎畤鍚嶇О</span> - <span>A搴�</span> + <span>{{buildingInfo.name}}</span> </div> <div class="xm_info_row" style="width: 25%;"> <span>妤煎畤缂栫爜</span> - <span>A-</span> + <span>{{buildingInfo.code}}</span> </div> <div class="xm_info_row" style="width: 25%;"> <span>璇︾粏鍦板潃</span> - <span>闃滃畞鏂囦綋涓績瑗垮崡瑙�</span> + <span>{{buildingInfo.addr}}</span> </div> <div class="xm_info_row" style="width: 100%; margin-top: 15px;"> - <span>璇︾粏鍦板潃</span> - <span>闃滃畞鏂囦綋涓績瑗垮崡瑙�</span> + <span>妤煎畤绠�浠�</span> + <span>{{buildingInfo.remark}}</span> </div> <div class="xm_info_row" style="width: 25%; margin-top: 15px;"> <span>寤虹瓚闈㈢Н</span> - <span>1000銕�</span> + <span>{{buildingInfo.cqArea}}銕�</span> </div> <div class="xm_info_row" style="width: 25%; margin-top: 15px;"> <span>璁$闈㈢Н</span> - <span>1000銕�</span> + <span>{{buildingInfo.roomRentArea}}銕�</span> </div> <div class="xm_info_row" style="width: 50%; margin-top: 15px;"> <span>璁¤垂闈㈢Н</span> - <span>1000銕�</span> + <span>{{buildingInfo.roomFeeArea}}銕�</span> </div> <div class="xm_info_row" style="width: 25%; margin-top: 15px;"> <span>鍦颁笂灞傛暟</span> - <span>5</span> + <span>{{buildingInfo.onFloor}}</span> </div> <div class="xm_info_row" style="width: 25%; margin-top: 15px;"> <span>鍦颁笅灞傛暟</span> - <span>2</span> + <span>{{buildingInfo.underFloor}}</span> </div> </div> </el-card> @@ -298,184 +387,53 @@ <span>褰撳墠鍦ㄧ鍚堝悓</span> </div> <div class="xm_table"> - <el-input v-model="input" style="width: 300px; margin-bottom: 15px;" placeholder="璇疯緭鍏ュ唴瀹�"></el-input> - <el-table - :data="tableData" - border - style="width: 100%"> - <el-table-column - prop="date" - label="鍚堝悓缂栧彿"> - </el-table-column> - <el-table-column - prop="name" - label="绉熷"> - </el-table-column> - <el-table-column - prop="address" - label="绉熻祦鍗曚环"> - </el-table-column> - <el-table-column - prop="address" - label="绉熻祦澶╂暟"> - </el-table-column> - <el-table-column - prop="address" - label="绉熻祦闈㈢Н"> - </el-table-column> - <el-table-column - prop="address" - label="鎴挎簮"> - </el-table-column> - </el-table> - <div class="xm_table_f"> - <el-pagination - @size-change="handleSizeChange" - @current-change="handleCurrentChange" - :current-page="page" - :page-sizes="[10, 20, 30, 40]" - :page-size="pageTotal" - layout="total, sizes, prev, pager, next, jumper" - :total="total"> - </el-pagination> - </div> - </div> - </el-card> - </div> - </el-tab-pane> - <el-tab-pane label="鎴挎�佺鐞�" name="house"> - <div class="xm"> - <div class="xm_house"> - <div class="xm_house_tips"> - <div class="xm_house_tips_row"> - <div class="xm_house_tips_row_d"></div> - <span>宸插嚭绉�</span> - </div> - <div class="xm_house_tips_row"> - <div class="xm_house_tips_row_d"></div> - <span>鏈嚭绉�</span> - </div> - <div class="xm_house_tips_row"> - <div class="xm_house_tips_row_d"></div> - <span>90鏃ュ唴鍒版湡</span> - </div> - </div> - <div class="xm_house_list"> - <div class="xm_house_list_left"> - <div class="xm_house_list_left_row"> - <span>1F</span> - <span>600銕�</span> - </div> - </div> - <div class="xm_house_list_right"> - <div class="item"> - <div class="xm_house_list_right_row"> - <span>101锛�600銕★級</span> - <div class="xm_house_list_right_row_info"> - <span>绉熷鍚嶇О</span> - <span>2024-08-16鍒版湡</span> - </div> - </div> - <div class="xm_house_list_right_row"> - <span>101锛�600銕★級</span> - <div class="xm_house_list_right_row_info"> - <span>绉熷鍚嶇О</span> - <span>2024-08-16鍒版湡</span> - </div> - </div> - <div class="xm_house_list_right_row"> - <span>101锛�600銕★級</span> - <div class="xm_house_list_right_row_info"> - <span>绉熷鍚嶇О</span> - <span>2024-08-16鍒版湡</span> - </div> - </div> - <div class="xm_house_list_right_row"> - <span>101锛�600銕★級</span> - <div class="xm_house_list_right_row_info"> - <span>绉熷鍚嶇О</span> - <span>2024-08-16鍒版湡</span> - </div> - </div> - </div> - </div> - </div> - </div> - </div> - </el-tab-pane> - <el-tab-pane label="宸ュ崟璁板綍" name="second"> - <div class="xm"> - <el-card> - <div class="xm_one1"> - <div class="xm_one_row"> - <span>寰呮寚娲炬暟閲�</span> - <span>15</span> - </div> - <div class="xm_one_row"> - <span>寰呭鐞嗘暟閲�</span> - <span>15</span> - </div> - <div class="xm_one_row"> - <span>鏈湀宸ュ崟鏁�</span> - <span>15</span> - </div> - <div class="xm_one_row"> - <span>绱宸ュ崟鏁�</span> - <span>15</span> - </div> - </div> - </el-card> - <el-card style="margin-top: 20px;"> - <div class="xm_table"> - <div class="xm_table_search"> - <el-select v-model="value" style="width: 300px; margin-right: 15px;" placeholder="浣嶇疆绫诲瀷"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - <el-select v-model="value" style="width: 300px;" placeholder="宸ュ崟鍒嗙被"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> + <div style="display: flex; align-items: center; margin-bottom: 15px;"> + <el-input v-model="form.code" style="width: 150px; margin-right: 15px;" placeholder="璇疯緭鍏ュ悎鍚岀紪鍙�"></el-input> + <el-button type="primary" @click="getFetchList">鎼滅储</el-button> + <el-button @click="clear">閲嶇疆</el-button> </div> <el-table :data="tableData" border + v-loading="loading" style="width: 100%"> <el-table-column - prop="date" - label="宸ュ崟鍒嗙被"> + label="鍚堝悓缂栧彿"> + <template slot-scope="{row}"> + <el-button type="text">{{row.code}}</el-button> + </template> </el-table-column> <el-table-column - prop="name" - label="鎶ヤ慨鍖哄煙"> + prop="renterName" + label="绉熷"> </el-table-column> <el-table-column - prop="address" - label="涓婃姤浜�"> + label="绉熻祦鍗曚环"> + <template slot-scope="{row}"> + <div style="display: flex; align-items: center;"> + <span>{{row.leasePrice || 0}}鍏�/銕÷峰ぉ</span> + </div> + </template> </el-table-column> <el-table-column - prop="address" - label="涓婃姤鏃堕棿"> + prop="leaseDays" + label="绉熻祦澶╂暟"> </el-table-column> <el-table-column - prop="address" - label="澶勭悊浜�"> + label="绉熻祦闈㈢Н"> + <template slot-scope="{row}"> + {{row.totalArea}}銕� + </template> </el-table-column> <el-table-column - prop="address" - label="宸ュ崟鐘舵��"> - </el-table-column> - <el-table-column - prop="address" - label="鎿嶄綔"> + label="鎴挎簮"> + <template slot-scope="{row}"> + <div style="display: flex; flex-direction: column;"> + <span v-for="(item, index) in row.roomList" :key="index"> + {{item.projectName}}/{{item.buildingName}}/{{item.floorName}}/{{item.roomNum}} + </span> + </div> + </template> </el-table-column> </el-table> <div class="xm_table_f"> @@ -493,7 +451,107 @@ </el-card> </div> </el-tab-pane> - <el-tab-pane label="璁惧淇℃伅" name="third"> + <el-tab-pane label="宸ュ崟璁板綍" name="second" v-if="[0,2,3].includes(lv)"> + <div class="xm"> + <el-card> + <div class="xm_one1"> + <div class="xm_one_row"> + <span>寰呮寚娲炬暟閲�</span> + <span>{{workOrderNums.waitAssignAmount || 0}}</span> + </div> + <div class="xm_one_row"> + <span>寰呭鐞嗘暟閲�</span> + <span>{{workOrderNums.waitDealAmount || 0}}</span> + </div> + <div class="xm_one_row"> + <span>鏈湀宸ュ崟鏁�</span> + <span>{{workOrderNums.monthAmount || 0}}</span> + </div> + <div class="xm_one_row"> + <span>绱宸ュ崟鏁�</span> + <span>{{workOrderNums.amount || 0}}</span> + </div> + </div> + </el-card> + <el-card style="margin-top: 20px;"> + <div class="xm_table"> + <div class="xm_table_search"> + <div> + <el-cascader style="width: 150px; margin-right: 15px;" v-model="form.areaIds" @change="changeSel" placeholder="璇烽�夋嫨宸ュ崟鍒嗙被" clearable + :options="cateList" :props="{ + label: 'name', + value: 'id', + children: 'childCategoryList' + }" /> + <el-select v-model="form.dealStatus" style="width: 150px; margin-right: 15px;" placeholder="宸ュ崟鐘舵��"> + <el-option label="寰呮寚娲�" :value="0"></el-option> + <el-option label="宸叉寚娲�" :value="1"></el-option> + <el-option label="宸插鐞�" :value="2"></el-option> + </el-select> + <el-button type="primary" @click="getWorkOrderList">鏌ヨ</el-button> + <el-button @click="clear">娓呯┖</el-button> + </div> + <el-button type="primary" @click="$refs.operaYwWorkorderWindow.open('鏂板缓宸ュ崟')">鏂板宸ュ崟</el-button> + </div> + <el-table + :data="tableData" + border + v-lading="loading" + style="width: 100%"> + <el-table-column + prop="categoryName" + label="宸ュ崟鍒嗙被"> + </el-table-column> + <el-table-column + label="鎶ヤ慨鍖哄煙"> + <template v-slot="scope"> + <span>{{ scope.row.buildingName }} / {{ scope.row.areaType == 0 ? scope.row.roomNum : scope.row.floorName + }}</span> + </template> + </el-table-column> + <el-table-column + prop="creatorName" + label="涓婃姤浜�"> + </el-table-column> + <el-table-column + prop="createDate" + label="涓婃姤鏃堕棿"> + </el-table-column> + <el-table-column + prop="dealUserName" + label="澶勭悊浜�"> + </el-table-column> + <el-table-column + label="宸ュ崟鐘舵��"> + <template slot-scope="{row}"> + <span v-if="row.dealStatus === 0">寰呮寚娲�</span> + <span v-if="row.dealStatus === 1">宸叉寚娲�</span> + <span v-if="row.dealStatus === 2">宸插鐞�</span> + </template> + </el-table-column> + <el-table-column + label="鎿嶄綔"> + <template slot-scope="{row}"> + <el-button type="text" @click="handleDetail(row)">鏌ョ湅璇︽儏</el-button> + </template> + </el-table-column> + </el-table> + <div class="xm_table_f"> + <el-pagination + @size-change="handleSizeChange" + @current-change="handleCurrentChange" + :current-page="page" + :page-sizes="[10, 20, 30, 40]" + :page-size="pageTotal" + layout="total, sizes, prev, pager, next, jumper" + :total="total"> + </el-pagination> + </div> + </div> + </el-card> + </div> + </el-tab-pane> + <el-tab-pane label="璁惧淇℃伅" name="third" v-if="[0,1,2,3].includes(lv)"> <div class="xm"> <div class="xm_chat"> <el-card class="xm_chat_row"> @@ -507,122 +565,55 @@ <div class="xm_table"> <div class="xm_table_search"> <div class="xm_table_search_left"> - <el-input v-model="input" placeholder="璇疯緭鍏ヨ澶囧悕绉�/缂栫爜" style="width: 200px; margin-right: 15px;"></el-input> - <el-select v-model="value" style="width: 200px; margin-right: 15px;" placeholder="璁惧鐘舵��"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> + <el-input v-model="form.name" placeholder="璇疯緭鍏ヨ澶囧悕绉�/缂栫爜" style="width: 150px; margin-right: 15px;"></el-input> + <el-select v-model="form.status" style="width: 150px; margin-right: 15px;" placeholder="璁惧鐘舵��"> + <el-option label="姝e父" :value="0"></el-option> + <el-option label="鎹熷潖" :value="1"></el-option> + <el-option label="鎶ュ簾" :value="2"></el-option> </el-select> - <el-button type="primary">鏌ヨ</el-button> - <el-button>娓呯┖</el-button> + <el-button type="primary" @click="getDevicePage">鏌ヨ</el-button> + <el-button @click="clear">娓呯┖</el-button> </div> - <el-button type="primary">鏂板</el-button> + <el-button type="primary" @click="handleEdit">鏂板</el-button> </div> <el-table :data="tableData" border + v-loading="loading" style="width: 100%"> <el-table-column - prop="date" - label="宸ュ崟鍒嗙被"> + label="璁惧缂栫爜"> + <template slot-scope="{row}"> + <el-button type="text">{{row.code}}</el-button> + </template> </el-table-column> <el-table-column prop="name" - label="鎶ヤ慨鍖哄煙"> + label="璁惧鍚嶇О"> </el-table-column> <el-table-column - prop="address" - label="涓婃姤浜�"> + prop="categoryName" + label="璁惧鍒嗙被"> </el-table-column> <el-table-column - prop="address" - label="涓婃姤鏃堕棿"> + prop="modelNo" + label="璁惧鍨嬪彿"> </el-table-column> <el-table-column - prop="address" - label="澶勭悊浜�"> + prop="realName" + label="璁惧绠$悊鍛�"> </el-table-column> <el-table-column - prop="address" - label="宸ュ崟鐘舵��"> + prop="supplier" + label="璁惧渚涘簲鍟�"> </el-table-column> <el-table-column - prop="address" - label="鎿嶄綔"> - </el-table-column> - </el-table> - <div class="xm_table_f"> - <el-pagination - @size-change="handleSizeChange" - @current-change="handleCurrentChange" - :current-page="page" - :page-sizes="[10, 20, 30, 40]" - :page-size="pageTotal" - layout="total, sizes, prev, pager, next, jumper" - :total="total"> - </el-pagination> - </div> - </div> - </el-card> - </div> - </el-tab-pane> - <el-tab-pane label="璧勪骇淇℃伅" name="fourth"> - <div class="xm"> - <el-card> - <div slot="header" class="clearfix"> - <span>璧勪骇娓呭崟</span> - </div> - <div class="xm_table"> - <div class="xm_table_search"> - <div class="xm_table_search_left"> - <el-input v-model="input" placeholder="璇疯緭鍏ヨ祫浜у悕绉�/缂栫爜" style="width: 200px; margin-right: 15px;"></el-input> - <el-select v-model="value" style="width: 200px; margin-right: 15px;" placeholder="璧勪骇鍒嗙被"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - <el-button type="primary">鏌ヨ</el-button> - <el-button>娓呯┖</el-button> - </div> - <el-button type="primary">鏂板</el-button> - </div> - <el-table - :data="tableData" - border - style="width: 100%"> - <el-table-column - prop="date" - label="璧勪骇缂栫爜"> - </el-table-column> - <el-table-column - prop="name" - label="璧勪骇鍚嶇О"> - </el-table-column> - <el-table-column - prop="address" - label="鏉$爜"> - </el-table-column> - <el-table-column - prop="address" - label="鍝佺墝"> - </el-table-column> - <el-table-column - prop="address" - label="瑙勬牸鍨嬪彿"> - </el-table-column> - <el-table-column - prop="address" - label="鍗曚綅"> - </el-table-column> - <el-table-column - prop="address" - label="搴撳瓨鏁伴噺"> + label="璁惧鐘舵��"> + <template slot-scope="{row}"> + <span v-if="row.status === 0">姝e父</span> + <span v-if="row.status === 1">鎹熷潖</span> + <span v-if="row.status === 2">鎶ュ簾</span> + </template> </el-table-column> </el-table> <div class="xm_table_f"> @@ -644,56 +635,37 @@ </div> </div> </div> + <!-- 鏂板缓宸ュ崟 --> + <OperaYwWorkorderWindow ref="operaYwWorkorderWindow" /> + <!-- 宸ュ崟璇︽儏 --> + <Detail v-if="showDetail" ref="DetailRef" @close="showDetail = false" /> + <!-- 鏂板缓璁惧 --> + <Edit v-if="showEdit1" ref="EditRef" @success="getDevicePage" @close="showEdit1 = false" /> </div> </template> <script> import * as echarts from 'echarts'; + import { tree, getProjectById } from '@/api/project/ywProject' + import { getRoomContract, getRoomStatusList, detailById as roomDetailById } from '@/api/project/ywRoom' + import { fetchList } from '@/api/contract' + import OperaYwWorkorderWindow from '../workorder/components/OperaYwWorkorderWindow' + import { fetchList as getCateList } from '@/api/business/category' + import { getDataVO, fetchList as workderList } from '@/api/workorder/ywWorkorder' + import { detailById } from '@/api/project/ywBuilding' + import Detail from '../workorder/components/detail' + import { fetchList as devicePage, getDeviceCateData, getDeviceStatus } from '@/api/Inspection/device' + import Edit from '../operation/components/deviceEdit' export default { name: 'index', + components: { OperaYwWorkorderWindow, Detail, Edit }, data() { return { - input: '', + showDetail: false, + showEdit1: false, + filterText: '', tableData: [], - data: [{ - label: '涓�绾� 1', - children: [{ - label: '浜岀骇 1-1', - children: [{ - label: '涓夌骇 1-1-1' - }] - }] - }, { - label: '涓�绾� 2', - children: [{ - label: '浜岀骇 2-1', - children: [{ - label: '涓夌骇 2-1-1' - }] - }, { - label: '浜岀骇 2-2', - children: [{ - label: '涓夌骇 2-2-1' - }] - }] - }, { - label: '涓�绾� 3', - children: [{ - label: '浜岀骇 3-1', - children: [{ - label: '涓夌骇 3-1-1' - }] - }, { - label: '浜岀骇 3-2', - children: [{ - label: '涓夌骇 3-2-1' - }] - }] - }], - defaultProps: { - children: 'children', - label: 'label' - }, + houseList: [], activeName: 'first', total: 0, pageTotal: 10, @@ -701,66 +673,357 @@ options: [{ value: '閫夐」1', label: '榛勯噾绯�' - }, { - value: '閫夐」2', - label: '鍙岀毊濂�' - }, { - value: '閫夐」3', - label: '铓典粩鐓�' - }, { - value: '閫夐」4', - label: '榫欓』闈�' - }, { - value: '閫夐」5', - label: '鍖椾含鐑ら腑' }], - value: '' + value: '', + form: { + name: '', + status: '', + project: '', + buildingId: '', + floorId: '', + roomId: '', + code: '', + areaIds: [], + cateId: '', + dealStatus: '' + }, + title: '', + cateList: [], + deviceList: [], + categaryList: [], + roomStatus: [], + projectInfo: {}, + projectNums: {}, + workOrderNums: {}, + buildingInfo: {}, + roomInfo: {}, + loading: false, + lv: 0, + leaseStatus: '' } }, created () { - this.$nextTick(() => { - this.reand() - this.reand1() - }) + this.getHouseTree() + }, + watch: { + filterText(val) { + this.$refs.tree.filter(val); + } }, methods: { + nodeClick(e) { + this.tableData = [] + this.pageSize = 10 + this.page = 1 + this.form.project = '' + this.form.buildingId = '' + this.form.floorId = '' + this.form.roomId = '' + this.leaseStatus = '' + this.lv = e.lv + this.title = e.name + if (e.lv === 0) { + this.activeName = 'first' + this.form.project = e.id + this.getProjectByIds() + } else if (e.lv === 1) { + this.activeName = 'house' + this.form.buildingId = e.id + this.getRoomStatusLists() + } else if (e.lv === 2) { + this.activeName = 'house' + this.form.floorId = e.id + this.getRoomStatusLists() + } else if (e.lv === 3) { + this.activeName = 'houseinfo' + this.form.roomId = e.id + this.leaseStatus = e.leaseStatus + this.roomDetailByIds() + } + }, + // 鎼滅储鏍� + filterNode(value, data) { + if (!value) return true; + return data.name.indexOf(value) !== -1; + }, + // 鍒ゆ柇鎴挎�佸搴� + ifWidth(num) { + if (num >= 0 && num <= 100) { + return '150px' + } else if (num >= 101 && num <= 200) { + return '180px' + } else if (num >= 201 && num <= 300) { + return '210px' + } else if (num >= 301 && num <= 400) { + return '240px' + } else if (num >= 401 && num <= 500) { + return '270px' + } else { + return '300px' + } + }, + // 鍒ゆ柇鎴挎�佽儗鏅壊 + ifBackground(type) { + if (type === 0) { + return '#F7F7F7' + } else if (type === 1) { + return 'rgba(0,186,146,0.14)' + } else if (type === 2) { + return 'rgba(255,158,0,0.14)' + } + }, + // 鑾峰彇鎴挎簮璇︽儏 + roomDetailByIds() { + roomDetailById(this.form.roomId) + .then(res => { + this.roomInfo = res + }) + }, + // 鑾峰彇妤煎畤璇︽儏 + getDetailById() { + detailById(this.form.buildingId) + .then(res => { + console.log(res) + this.buildingInfo = res + }) + }, + // 鎴挎�佹暟鎹� + getRoomStatusLists() { + getRoomStatusList({ + buildingId: this.form.buildingId, + floor: this.form.floorId + }).then(res => { + this.roomStatus = res + }) + }, + // 鑾峰彇璁惧鐘舵�� + getDevice() { + getDeviceStatus({ + projectId: this.form.project, + buildingId: this.form.buildingId, + floorId: this.form.floorId, + roomId: this.form.roomId + }) + .then(res => { + this.$nextTick(() => { + this.deviceList = [ + { value: res.workAmount || 0, name: '姝e父' }, + { value: res.exceptionAmount || 0, name: '寮傚父' }, + { value: res.errAmount || 0, name: '鎶ュ簾' } + ] + this.reand() + }) + }) + }, + // 璁惧鏁伴噺鍒嗗竷缁熻 + getDeviceCateDatas() { + getDeviceCateData({ + projectId: this.form.project, + buildingId: this.form.buildingId, + floorId: this.form.floorId, + roomId: this.form.roomId + }).then(res => { + this.categaryList = res + this.$nextTick(() => { + this.reand1() + }) + }) + }, + handleEdit(row) { + this.showEdit1 = true + this.$nextTick(() => { + this.$refs.EditRef.isShowModal = true + }) + }, + // 鑾峰彇璁惧鍒嗛〉 + getDevicePage() { + this.loading = true + devicePage({ + capacity: this.pageTotal, + page: this.page, + model: { + projectId: this.form.project, + buildingId: this.form.buildingId, + floorId: this.form.floorId, + roomId: this.form.roomId, + status: this.form.status, + name: this.form.name + } + }).then(res => { + this.tableData = res.records + this.total = res.total + }).finally(() => { + this.loading = false + }) + }, + handleDetail(row) { + this.showDetail = true + this.$nextTick(() => { + this.$refs.DetailRef.visible = true + this.$refs.DetailRef.id = row.id + this.$refs.DetailRef.getDetail() + }) + }, + // 鑾峰彇宸ュ崟鍒楄〃 + getWorkOrderList() { + this.loading = true + workderList({ + capacity: this.pageTotal, + page: this.page, + model: { + projectId: this.form.project, + buildingId: this.form.buildingId, + floorId: this.form.floorId, + roomId: this.form.roomId, + dealStatus: this.form.dealStatus, + cateId: this.form.cateId + } + }).then(res => { + this.tableData = res.records + this.total = res.total + }).finally(() => { + this.loading = false + }) + }, + getCate() { + getCateList({ + model: { type: 3 }, + capacity: 1000, + page: 1, + }).then(res => { + this.cateList = res.records || [] + }) + }, + // 鑾峰彇椤圭洰淇℃伅 + getProjectByIds() { + getProjectById(this.form.project) + .then(res => { + this.projectInfo = res + }) + this.getGK() + this.getFetchList() + }, + //椤圭洰姒傚喌 + getGK() { + getRoomContract({ + projectId: this.form.project, + buildingId: this.form.buildingId, + floorId: this.form.floorId, + roomId: this.form.roomId, + }).then(res => { + this.projectNums = res + }) + }, + changeSel(e) { + if (e && e.length == 2) { + this.$set(this.form, 'cateId', e[1]) + } else { + this.$set(this.form, 'cateId', '') + } + }, + // 鑾峰彇宸ュ崟鏁伴噺 + getDataVOs() { + let queryType = '' + let queryId = '' + if (this.lv === 0) { + queryType = 1 + queryId = this.form.project + } else if (this.lv === 2) { + queryType = 2 + queryId = this.form.floorId + } else if (this.lv === 3) { + queryType = 3 + queryId = this.form.roomId + } + getDataVO({ + queryType, + queryId + }).then(res => { + this.workOrderNums = res + }) + }, + clear() { + this.form.code = '' + this.form.name = '' + this.form.status = '' + this.form.dealStatus = '' + this.form.cateId = '' + this.form.areaIds = [] + if (['first', 'louyu', 'houseinfo'].includes(this.activeName)) { + this.getFetchList() + } else if (this.activeName === 'second') { + this.getWorkOrderList() + } else if (this.activeName === 'third') { + this.getDevicePage() + } + }, + // 鑾峰彇褰撳墠鍦ㄧ鍚堝悓 + getFetchList() { + this.loading = true + fetchList({ + capacity: this.pageSize, + page: this.page, + model: { + projectId: this.form.project, + buildingId: this.form.buildingId, + floorId: this.form.floorId, + roomId: this.form.roomId, + code: this.form.code + } + }).then(res => { + this.tableData = res.records + this.total = res.total + }).finally(() => { + this.loading = false + }) + }, + getHouseTree() { + tree({}) + .then(res => { + this.addParamToArray(res) + this.form.project = res[0].id + this.title = res[0].name + this.houseList = res + this.getProjectByIds() + }) + }, + addParamToArray(arr) { + for (let i = 0; i < arr.length; i++) { + const currentItem = arr[i].projectDataVOList + arr[i].idd = arr[i].lv + '-' + arr[i].id + if (currentItem.length > 0) { + this.addParamToArray(currentItem) + } + } + }, reand() { var chartDom = document.getElementById('chat1'); var myChart = echarts.init(chartDom); var option; option = { + title: { + text: '璁惧鐘舵��' + }, tooltip: { trigger: 'item' }, legend: { - top: '5%', - left: 'center' + left: 'right', + top: 'middle', + width: '80' }, series: [ { - name: 'Access From', + name: '璁惧鐘舵��', type: 'pie', radius: ['40%', '80%'], - avoidLabelOverlap: false, label: { - show: false, - position: 'center' + show: true, + position: 'center', + fontWeight: 'bold', + fontSize: 22 }, - emphasis: { - label: { - show: true, - fontSize: 40, - fontWeight: 'bold' - } - }, - labelLine: { - show: false - }, - data: [ - { value: 1048, name: '姝e父' }, - { value: 735, name: '寮傚父' }, - { value: 580, name: '鎶ュ簾' } - ] + data: this.deviceList } ] }; @@ -770,7 +1033,6 @@ var chartDom = document.getElementById('chat2'); var myChart = echarts.init(chartDom); var option; - // There should not be negative values in rawData const rawData = [ [100, 302, 301, 334, 390, 330, 320], [320, 132, 101, 134, 90, 230, 210], @@ -786,12 +1048,6 @@ } totalData.push(sum); } - const grid = { - left: 100, - right: 100, - top: 50, - bottom: 50 - }; const series = [ 'Direct', 'Mail Ad', @@ -804,43 +1060,100 @@ type: 'bar', stack: 'total', barWidth: '60%', - label: { - show: true, - formatter: (params) => Math.round(params.value * 1000) / 10 + '%' - }, data: rawData[sid].map((d, did) => totalData[did] <= 0 ? 0 : d / totalData[did] ) }; }); + let seriesArr = this.categaryList.map(item => { + return { + name: item.cateName, + type: 'bar', + stack: 'total', + barWidth: '60%', + data: item.ywDeviceCateDataVOList.map((child) => + child.deviceAmount + ) + } + }) + let xAxisData = this.categaryList.map(item => item.cateName) + console.log(series) + console.log(seriesArr) + console.log(xAxisData) option = { - legend: { - selectedMode: false + title: { + text: '璁惧鏁伴噺鍒嗙被缁熻' }, - grid, + grid: { + left: 50, + right: 50, + top: 50, + bottom: 50 + }, + tooltip: { + trigger: 'axis', + axisPointer: { + type: 'shadow' + } + }, yAxis: { type: 'value' }, xAxis: { type: 'category', - data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] + data: xAxisData }, - series + series: seriesArr }; option && myChart.setOption(option); }, handleCurrentChange(page) { this.page = page + if (['first', 'louyu', 'houseinfo'].includes(this.activeName)) { + this.getFetchList() + } else if (this.activeName === 'second') { + this.getWorkOrderList() + } else if (tab.name === 'third') { + this.getDevicePage() + } }, handleSizeChange(pageTotal) { this.pageTotal = pageTotal + if (['first', 'louyu', 'houseinfo'].includes(this.activeName)) { + this.getFetchList() + } else if (this.activeName === 'second') { + this.getWorkOrderList() + } else if (tab.name === 'third') { + this.getDevicePage() + } }, - handleNodeClick(data) { - console.log(data); - }, - handleClick(tab, event) { - console.log(tab, event); + handleClick(tab) { + this.page = 1 + this.pageSize = 10 + this.activeName = tab.name + this.tableData = [] + if (tab.name === 'first') { + this.getFetchList() + } else if (tab.name === 'second') { + this.getDataVOs() + this.getCate() + this.getWorkOrderList() + } else if (tab.name === 'third') { + this.getDevicePage() + this.getDevice() + this.getDeviceCateDatas() + } else if (tab.name === 'louyu') { + this.getGK() + this.getFetchList() + this.getDetailById() + } else if (tab.name === 'house') { + this.getRoomStatusLists() + } else if (tab.name === 'houseinfo') { + this.roomDetailByIds() + } else if (tab.name === 'project') { + this.getFetchList() + } } } } @@ -866,6 +1179,10 @@ display: flex; flex-direction: column; background: #ffffff; + ::v-deep .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{ + background-color: #f0f7ff; + color: rgb(65, 107, 255) + } } .right { flex: 1; @@ -875,10 +1192,12 @@ width: 100%; padding: 20px; box-sizing: border-box; + display: flex; + align-items: center; + background: #ffffff; font-size: 16px; font-weight: bold; color: black; - background: #ffffff; } .right_cate { width: 100%; @@ -893,7 +1212,6 @@ width: 100%; display: flex; flex-direction: column; - align-items: self-end; .xm_house_list { width: 100%; display: flex; @@ -903,12 +1221,12 @@ flex-shrink: 0; width: 100px; display: flex; - margin-right: 20px; + margin-right: 15px; flex-direction: column; .xm_house_list_left_row { width: 100px; height: 100px; - background: rgba(242, 242, 242, 1); + background: #F4F7FC; padding: 20px 0; box-sizing: border-box; margin-bottom: 20px; @@ -921,56 +1239,66 @@ } span { &:nth-child(1) { + font-weight: 500; font-size: 18px; - color: #333333; - font-weight: 400; + color: #000000; } &:nth-child(2) { - font-size: 12px; - color: #929292; + font-weight: 400; + font-size: 14px; + color: #999999; + margin-top: 10px; } } } } .xm_house_list_right { - width: calc(100% - 130px); display: flex; - flex-direction: column; - .item { - width: calc(100% - 130px); + align-items: center; + .xm_house_list_right_row { + height: 100px; + padding: 12px 15px; + box-sizing: border-box; display: flex; - align-items: center; - margin-bottom: 20px; + flex-direction: column; + justify-content: space-between; + margin-right: 10px; &:last-child { - margin-bottom: 0; + margin: 0 !important; } - .xm_house_list_right_row { - height: 100px; - width: 300px; - background: rgba(198, 224, 167, 0.34509803921568627); - padding: 10px 0; - box-sizing: border-box; + .ft { display: flex; align-items: center; - flex-direction: column; - justify-content: space-between; span { - font-size: 14px; - color: #000000; + &:nth-child(1) { + font-weight: 500; + font-size: 18px; + color: #000000; + } + &:nth-child(2) { + font-weight: 400; + font-size: 14px; + color: #999999; + } } - .xm_house_list_right_row_info { - display: flex; - flex-direction: column; - span { - &:nth-child(1) { - color: #000000; - font-size: 14px; - } - &:nth-child(2) { - color: #A5A5A5; - font-size: 12px; - margin-top: 3px; - } + } + .xm_house_list_right_row_day { + font-weight: 400; + font-size: 13px; + color: #999999; + } + .xm_house_list_right_row_info { + display: flex; + flex-direction: column; + span { + &:nth-child(1) { + color: #000000; + font-size: 14px; + } + &:nth-child(2) { + color: #A5A5A5; + font-size: 12px; + margin-top: 3px; } } } @@ -981,18 +1309,20 @@ display: flex; align-items: center; .xm_house_tips_row { - margin-left: 30px; display: flex; align-items: center; + margin-right: 30px; .xm_house_tips_row_d { - width: 10px; - height: 10px; + width: 20px; + height: 20px; background: orange; - margin-right: 5px; + margin-right: 8px; + border-radius: 2px; } span { - font-size: 16px; - color: black; + font-weight: 400; + font-size: 13px; + color: #333333; } } } -- Gitblit v1.9.3