| | |
| | | <div class="data-item"> |
| | | <img src="@/assets/center-top-right.png" alt=""> |
| | | <div> |
| | | <div class="label">本月应补偿总额(万元)</div> |
| | | <div class="label">本季应补偿总额(万元)</div> |
| | | <div class="value">{{ data.monthCompensationAmount }} <span>环比</span><span |
| | | class="value-change value-change-down">{{ data.monthCompensationAmountRate }}</span></div> |
| | | </div> |
| | |
| | | <div class="data-item"> |
| | | <img src="@/assets/center-top-right.png" alt=""> |
| | | <div> |
| | | <div class="label">下月应补偿总额(万元)</div> |
| | | <div class="label">下季应补偿总额(万元)</div> |
| | | <div class="value">{{ data.nextMonthCompensationAmount }} <span>环比</span><span |
| | | class="value-change value-change-up">{{ data.nextMonthCompensationAmountRate }}</span></div> |
| | | </div> |
| | |
| | | </div> |
| | | |
| | | <!-- 中间下部数据 --> |
| | | <div class="center-bottom panel-item"> |
| | | <div class="compensation-table"> |
| | | <div class="table-header"> |
| | | <div class="batch-number txt-center">安置批次</div> |
| | | <div class="household-count txt-center">户主名称</div> |
| | | <div class="people-count txt-center">安置人数</div> |
| | | <div class="progress-wrapper txt-center">补偿阶段</div> |
| | | <div class="center-bott"> |
| | | <div class="bottom-search"> |
| | | <div class="search-box"> |
| | | <input type="text" placeholder="请输入户主名称进行搜索" v-model="searchText" @keydown="searchForText($event)"> |
| | | <img src="@/assets/search.png" class="search-icon" alt=""> |
| | | </div> |
| | | <div class="table-content"> |
| | | <div class="table-row" v-for="(item, index) in data.quarterProcessResponses" :key="index"> |
| | | <div class="batch-number text-center">{{ item.batchNumber }}</div> |
| | | <div class="household-count text-center">{{ item.householdHead }}</div> |
| | | <div class="people-count text-center">{{ item.currentCount }}</div> |
| | | <div class="progress-wrapper"> |
| | | <div class="progress-bar"> |
| | | <div class="progress-fill"> |
| | | <div class="progress-color" |
| | | :class="item.process <= 5 ? 'progress-yellow' : item.process <= 10&&item.process>5 ? 'progress-green' : item.process <= 15&&item.process>10 ? 'progress-blue' : 'progress-gray'"> |
| | | </div> |
| | | <div class="center-bottom panel-item"> |
| | | <div class="compensation-table"> |
| | | <div class="table-header"> |
| | | <div class="batch-number txt-center">安置批次</div> |
| | | <div class="household-count txt-center">户主名称</div> |
| | | <div class="people-count txt-center">安置人数</div> |
| | | <div class="progress-wrapper txt-center">补偿阶段</div> |
| | | </div> |
| | | <div class="table-content"> |
| | | <div class="table-row" v-for="(item, index) in data.quarterProcessResponses" :key="index"> |
| | | <div class="batch-number text-center">{{ item.batchNumber }}</div> |
| | | <div class="household-count text-center">{{ item.householdHead }}</div> |
| | | <div class="people-count text-center">{{ item.currentCount }}</div> |
| | | <div class="progress-wrapper"> |
| | | <div class="progress-bar"> |
| | | <div class="progress-fill"> |
| | | <div class="progress-color" :style="{ width: item.process*5 + '%' }" |
| | | :class="item.process <= 5 ? 'progress-yellow' : item.process <= 10 && item.process > 5 ? 'progress-green' : item.process <= 15 && item.process > 10 ? 'progress-blue' : 'progress-gray'"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="progress-text">{{ item.process }}/20</div> |
| | | </div> |
| | | <div class="progress-text">{{ item.process }}/20</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | props: { |
| | | data: { |
| | | type: Object, |
| | | default: () => { } |
| | | default: () => { }, |
| | | }, |
| | | searchText: { |
| | | type: String, |
| | | default: '', |
| | | } |
| | | }, |
| | | components: { |
| | |
| | | { label: '已审核', value: '2021103000002', percentage: 70 }, |
| | | { label: '已完成', value: '2021103000003', percentage: 50 } |
| | | ], |
| | | // searchText: '', // 搜索文本 |
| | | compensationList: [ |
| | | |
| | | ] |
| | | }; |
| | | }, |
| | | methods: { |
| | | searchForText(event) { |
| | | if (event.key === 'Enter') { // 监听回车键事件 |
| | | this.$emit('searchForText', this.searchText); // 触发搜索事件并传递搜索文本 |
| | | } |
| | | } |
| | | } |
| | | }; |
| | | </script> |
| | |
| | | <style lang="less" scoped> |
| | | .pl-20 { |
| | | padding-left: 20px; |
| | | } |
| | | |
| | | .bottom-search { |
| | | display: flex; |
| | | justify-content: flex-end; |
| | | margin-bottom: 8px; |
| | | } |
| | | |
| | | .search-box { |
| | | width: 180px; |
| | | display: flex; |
| | | align-items: center; |
| | | height: 30px; |
| | | background: rgba(2, 0, 77, 0.4); |
| | | box-shadow: inset 0px 0px 34px 0px rgba(17, 40, 255, 0.66); |
| | | border-radius: 4px; |
| | | border: 2px solid #0D53B7; |
| | | |
| | | } |
| | | |
| | | input { |
| | | height: 30px; |
| | | width: 100%; |
| | | line-height: 30px; |
| | | padding-left: 9px; |
| | | background: transparent; |
| | | border: none; |
| | | font-size: 12px; |
| | | font-family: SourceHanSansCN, SourceHanSansCN; |
| | | font-weight: 400; |
| | | font-size: 12px; |
| | | color: rgba(255, 255, 255, 0.7); |
| | | outline: none; |
| | | } |
| | | |
| | | .search-icon { |
| | | width: 14px; |
| | | height: 14px; |
| | | margin-left: 17px; |
| | | } |
| | | |
| | | .text-center { |
| | |
| | | } |
| | | |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | // justify-content: space-between; |
| | | |
| | | .table-row { |
| | | display: flex; |
| | |
| | | |
| | | .progress-yellow { |
| | | height: 100%; |
| | | background: #FEDB65; |
| | | background: #FEDB65 !important; |
| | | } |
| | | |
| | | .progress-blue { |
| | | height: 100%; |
| | | background: #00C6FF; |
| | | background: #00C6FF !important; |
| | | } |
| | | |
| | | .progress-green { |
| | | height: 100%; |
| | | background: rgba(0, 220, 171, 1); |
| | | background: rgba(0, 220, 171, 1) !important; |
| | | } |
| | | |
| | | .progress-gray { |
| | | height: 100%; |
| | | background: rgba(0, 242, 240, 1); |
| | | background: rgba(0, 242, 240, 1) !important; |
| | | } |
| | | |
| | | |