| | |
| | | NODE_ENV = 'production' |
| | | |
| | | # VUE_APP_API_URL = 'http://192.168.5.13/gateway_interface' |
| | | |
| | | VUE_APP_API_URL = 'http://192.168.0.162:10010/' |
| | |
| | | "integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=", |
| | | "dev": true |
| | | }, |
| | | "ansi-styles": { |
| | | "version": "4.3.0", |
| | | "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", |
| | | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "color-convert": "^2.0.1" |
| | | } |
| | | }, |
| | | "chalk": { |
| | | "version": "4.1.2", |
| | | "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", |
| | | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "ansi-styles": "^4.1.0", |
| | | "supports-color": "^7.1.0" |
| | | } |
| | | }, |
| | | "color-convert": { |
| | | "version": "2.0.1", |
| | | "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", |
| | | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "color-name": "~1.1.4" |
| | | } |
| | | }, |
| | | "color-name": { |
| | | "version": "1.1.4", |
| | | "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", |
| | | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", |
| | | "dev": true, |
| | | "optional": true |
| | | }, |
| | | "has-flag": { |
| | | "version": "4.0.0", |
| | | "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", |
| | | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", |
| | | "dev": true, |
| | | "optional": true |
| | | }, |
| | | "loader-utils": { |
| | | "version": "2.0.4", |
| | | "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", |
| | | "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "big.js": "^5.2.2", |
| | | "emojis-list": "^3.0.0", |
| | | "json5": "^2.1.2" |
| | | } |
| | | }, |
| | | "ssri": { |
| | | "version": "8.0.1", |
| | | "resolved": "https://registry.npm.taobao.org/ssri/download/ssri-8.0.1.tgz?cache=0&sync_timestamp=1617826515595&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fssri%2Fdownload%2Fssri-8.0.1.tgz", |
| | |
| | | "dev": true, |
| | | "requires": { |
| | | "minipass": "^3.1.1" |
| | | } |
| | | }, |
| | | "supports-color": { |
| | | "version": "7.2.0", |
| | | "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", |
| | | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "has-flag": "^4.0.0" |
| | | } |
| | | }, |
| | | "vue-loader-v16": { |
| | | "version": "npm:vue-loader@16.8.3", |
| | | "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-16.8.3.tgz", |
| | | "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "chalk": "^4.1.0", |
| | | "hash-sum": "^2.0.0", |
| | | "loader-utils": "^2.0.0" |
| | | } |
| | | } |
| | | } |
| | |
| | | "resolved": "https://registry.npm.taobao.org/hash-sum/download/hash-sum-1.0.2.tgz", |
| | | "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=", |
| | | "dev": true |
| | | } |
| | | } |
| | | }, |
| | | "vue-loader-v16": { |
| | | "version": "npm:vue-loader@16.8.3", |
| | | "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.8.3.tgz", |
| | | "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "chalk": "^4.1.0", |
| | | "hash-sum": "^2.0.0", |
| | | "loader-utils": "^2.0.0" |
| | | }, |
| | | "dependencies": { |
| | | "ansi-styles": { |
| | | "version": "4.3.0", |
| | | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", |
| | | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "color-convert": "^2.0.1" |
| | | } |
| | | }, |
| | | "chalk": { |
| | | "version": "4.1.2", |
| | | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", |
| | | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "ansi-styles": "^4.1.0", |
| | | "supports-color": "^7.1.0" |
| | | } |
| | | }, |
| | | "color-convert": { |
| | | "version": "2.0.1", |
| | | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", |
| | | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "color-name": "~1.1.4" |
| | | } |
| | | }, |
| | | "color-name": { |
| | | "version": "1.1.4", |
| | | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", |
| | | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", |
| | | "dev": true, |
| | | "optional": true |
| | | }, |
| | | "has-flag": { |
| | | "version": "4.0.0", |
| | | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", |
| | | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", |
| | | "dev": true, |
| | | "optional": true |
| | | }, |
| | | "loader-utils": { |
| | | "version": "2.0.4", |
| | | "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", |
| | | "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "big.js": "^5.2.2", |
| | | "emojis-list": "^3.0.0", |
| | | "json5": "^2.1.2" |
| | | } |
| | | }, |
| | | "supports-color": { |
| | | "version": "7.2.0", |
| | | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", |
| | | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", |
| | | "dev": true, |
| | | "optional": true, |
| | | "requires": { |
| | | "has-flag": "^4.0.0" |
| | | } |
| | | } |
| | | } |
| | | }, |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import request from '@/utils/request' |
| | | |
| | | // æ¥è¯¢ |
| | | export function fetchList (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/ywContractBill/page', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | |
| | | // å建 |
| | | export function create (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/ywContractBill/create', data) |
| | | } |
| | |
| | | <div class="tab" :class="{ active: activeTabs == 1 }" @click="tabsClick(1)">仿¬¾è´¦å</div> |
| | | </div> |
| | | <div class="btns"> |
| | | <el-button type="primary" @click="handleEdit()" icon="el-icon-plus" |
| | | <el-button type="primary" @click="$refs.EditRef.open('åå»ºæ¶æ¬¾è´¦å')" icon="el-icon-plus" |
| | | v-permissions="['business:ywpatrolline:create']">æ°å»º</el-button> |
| | | <el-button @click="handleEx" v-permissions="['business:ywpatrolline:create']">导åº</el-button> |
| | | <el-button @click="handleDetail" v-permissions="['business:ywpatrolline:create']">导åº</el-button> |
| | | </div> |
| | | </div> |
| | | <el-table v-loading="loading" :data="list" stripe> |
| | |
| | | <el-table-column prop="remark" label="ç»æ¸
ç¶æ" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="createTime" label="è´¦åéé¢" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="createTime" label="åºæ¶éé¢" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="createTime" label="ååç¶æ" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="createTime" label="宿¶éé¢" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="createTime" label="éæ¶éé¢" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="createTime" label="è´¹ç¨ç±»å" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="createTime" label="æ¯å¦é¾æ" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="createTime" label="è®¡è´¹å¨æ" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="createTime" label="åºæ¶æ¥æ" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="createTime" label="è´¦åæ¥æº" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="statusName" label="ååç¶æ" min-width="100" fixed="right" show-overflow-tooltip /> |
| | | <el-table-column label="æä½" min-width="120" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="handleDetail(row)" icon="el-icon-edit" |
| | | v-permissions="['business:category:update']">æ¥ç详æ
</el-button> |
| | | <el-button type="text" @click="handleDetail(row)" icon="el-icon-edit" v-permissions="['business:category:update']">æ¥ç详æ
</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div class="mt20"> |
| | | <Pagination @size-change="handleSizeChange" @current-change="getList" :pagination="pagination" /> |
| | | </div> |
| | | <Edit v-if="showEdit" ref="EditRef" @success="getList" @close="showEdit = false" /> |
| | | <Detail ref="DetailRef" @success="getList" @close="showEdit = false" /> |
| | | <Edit ref="EditRef" @success="getList" /> |
| | | <Detail ref="DetailRef" @success="getList" /> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | import QueryForm from '@/components/common/QueryForm' |
| | | import Edit from './components/bullEdit.vue' |
| | | import Detail from './components/bullDetail.vue' |
| | | import { fetchList, deleteById } from '@/api/Inspection/device' |
| | | import { fetchList } from '@/api/bill' |
| | | export default { |
| | | components: { |
| | | Pagination, |
| | |
| | | data() { |
| | | return { |
| | | loading: false, |
| | | showEdit: false, |
| | | pagination: { |
| | | pageSize: 10, |
| | | page: 1, |
| | |
| | | this.getList() |
| | | }, |
| | | methods: { |
| | | getList(page) { |
| | | getList (page) { |
| | | const { pagination, filters } = this |
| | | this.loading = true |
| | | fetchList({ |
| | | model: { |
| | | ...filters, |
| | | ...filters |
| | | }, |
| | | capacity: pagination.pageSize, |
| | | page: page || pagination.page, |
| | | page: page || pagination.page |
| | | }).then(res => { |
| | | console.log(res) |
| | | this.loading = false |
| | | this.list = res.records || [] |
| | | this.list.forEach(item => { |
| | | item.stautsName = item.status == 0 ? 'æ£å¸¸' : item.status == 1 ? 'æå' : 'æ¥åº' |
| | | item.statusName = item.status === 1 ? 'æå' : item.status === 2 ? 'æ¥åº' : 'æ£å¸¸' |
| | | }) |
| | | this.pagination.total = res.total || 0 |
| | | }, () => { |
| | | this.loading = false |
| | | }) |
| | | }, |
| | | handleEx() { |
| | | |
| | | }, |
| | | tabsClick(val) { |
| | | this.activeTabs = val |
| | | }, |
| | | handleEdit(row) { |
| | | this.showEdit = true |
| | | this.$nextTick(() => { |
| | | this.$refs.EditRef.isShowModal = true |
| | | if (row && row.id) { |
| | | this.$refs.EditRef.getDetail(row.id) |
| | | } |
| | | }) |
| | | |
| | | }, |
| | | handleDetail() { |
| | | |
| | | }, |
| | | handleDel(row) { |
| | | let message = `确认å é¤è¯¥è®°å½å?` |
| | | this.$dialog.deleteConfirm(message) |
| | | .then(() => { |
| | | this.isWorking.delete = true |
| | | deleteById(row.id) |
| | | .then(() => { |
| | | this.$tip.apiSuccess('å 餿å') |
| | | this.getList() |
| | | }) |
| | | }) |
| | | .catch(() => { }) |
| | | handleDetail(row) { |
| | | this.$refs.DetailRef.open() |
| | | }, |
| | | clear() { |
| | | this.filters = {} |
| | |
| | | @import '@/assets/style/variables.scss'; |
| | | |
| | | .tabs { |
| | | border-bottom: 1px solid #DFE2E8; |
| | | display: flex; |
| | | margin-bottom: 20px; |
| | | display: flex; |
| | |
| | | <div class="home_title"> |
| | | <div class="left"> |
| | | <span class="mr10">仿¬¾æ¹ï¼xxx</span> |
| | | <span class="status">status</span> |
| | | <el-tag type="success">status</el-tag> |
| | | </div> |
| | | <el-button plain type="primary">æ°å»ºæ¶æ¯æµæ°´</el-button> |
| | | <el-button plain type="primary" @click="$refs.flowingWater.open('åå»ºæ¶æ¯æµæ°´')">æ°å»ºæ¶æ¯æµæ°´</el-button> |
| | | </div> |
| | | <div class="remark"> |
| | | <div class="item"> |
| | | <div class="la">è´¦åç¶æ</div> |
| | | <div class="val">å·²ç»æ¸
</div> |
| | | <div class="line"></div> |
| | | <div class="main"> |
| | | <div class="list" style="background: rgba(0,0,0,0); padding: 0; margin-bottom: 0;"> |
| | | <div class="item" style="flex: 1;"> |
| | | <div class="la">ç»æ¸
ç¶æ</div> |
| | | <div class="val" style="margin-top: 10px;">å·²ç»æ¸
</div> |
| | | </div> |
| | | <div class="item" style="flex: 1;"> |
| | | <div class="la">åºæ¶éé¢ï¼å
ï¼</div> |
| | | <div class="val" style="margin-top: 10px;">1,000.00</div> |
| | | </div> |
| | | <div class="item" style="flex: 1;"> |
| | | <div class="la">宿¶éé¢ï¼å
ï¼</div> |
| | | <div class="val" style="margin-top: 10px;">1,000.00</div> |
| | | </div> |
| | | <div class="item" style="flex: 1;"> |
| | | <div class="la">éä»éé¢ï¼å
ï¼</div> |
| | | <div class="val" style="margin-top: 10px;">1,000.00</div> |
| | | </div> |
| | | <div class="item" style="flex: 1;"> |
| | | <div class="la">åºæ¶æ¥æ</div> |
| | | <div class="val" style="margin-top: 10px;">2024-11-16</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="tabs"> |
| | | <div class="tab" :class="{ active: activeTabs == 0 }" @click="tabsClick(0)">ååä¿¡æ¯</div> |
| | | <div class="tab" :class="{ active: activeTabs == 1 }" @click="tabsClick(1)">å
³èè´¦å</div> |
| | | <div class="tab" :class="{ active: activeTabs == 2 }" @click="tabsClick(2)">æä½è®°å½</div> |
| | | <div class="tab" :class="{ active: activeTabs == 0 }" @click="tabsClick(0)">åºç¡ä¿¡æ¯</div> |
| | | <div class="tab" :class="{ active: activeTabs == 1 }" @click="tabsClick(1)">è´¦åæç»</div> |
| | | <div class="tab" :class="{ active: activeTabs == 2 }" @click="tabsClick(2)">æ¶æ¯æµæ°´</div> |
| | | </div> |
| | | <div class="main"> |
| | | <div class="title">åºç¡ä¿¡æ¯</div> |
| | | <div class="list"> |
| | | <div class="list" style="background: rgba(0,0,0,0); padding: 0;"> |
| | | <div class="item"> |
| | | <div class="la">è´¦åç±»å</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | <div class="val">ç§é</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">è®¡è´¹å¨æ</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | <div class="val">2024-11-17 ~ 2025-11-17</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">è´¦åéé¢(å
)</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | <div class="val">10000.00</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">è´¦åç¼å·</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | <div class="val">ZD20241117-0002</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">ååç¼å·</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | <div class="val">202411-0017</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">å建æ¶é´</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | <div class="val">2024-11-16 15:17:01</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">仿¬¾æ¹</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | <div class="val">XXå
¬å¸</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">ç»å人</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | <div class="val">å¼ ä¸</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">æå±å
¬å¸</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | <div class="val">XXXæéå
¬å¸</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">è´¦å夿³¨</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | <div class="val">è¿æ¯å¤æ³¨å
容</div> |
| | | </div> |
| | | <div class="item"></div> |
| | | <div class="item"></div> |
| | | </div> |
| | | <div class="title">æ¿æºä¿¡æ¯</div> |
| | | <div class="list"> |
| | | <div class="item"> |
| | | <div class="la">项ç®åç§°</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">楼å®åç§°</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">楼å±/æ¿å·</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">é¢ç§¯</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | </div> |
| | | <div class="list" style="background: rgba(0,0,0,0); padding: 0;"> |
| | | <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> |
| | | </div> |
| | | <div class="title">ç§å®¢ä¿¡æ¯</div> |
| | | <div class="list"> |
| | | <div class="item"> |
| | | <div class="la">ç§å®¢</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">ç»å人</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | </div> |
| | | <div class="title">è´¦åæç»</div> |
| | | <div class="list" style="background: rgba(0,0,0,0); padding: 0;"> |
| | | <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="夿³¨"> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | <div class="title">ç§èµæ¡æ¬¾</div> |
| | | <div class="list"> |
| | | <div class="item"> |
| | | <div class="la">æ¼ééé¢</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">仿¬¾æ¹å¼</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="la">å
ç§æ</div> |
| | | <div class="val">{{ info.aaa }}</div> |
| | | </div> |
| | | <div class="title">æ¶æ¯æµæ°´</div> |
| | | <div class="list" style="background: rgba(0,0,0,0); padding: 0;"> |
| | | <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="夿³¨"> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | <el-table :data="info.list" stripe> |
| | | <el-table-column prop="" label="å¼å§æ¥æ" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="ç»ææ¥æ" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="åååä»·" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="仿¬¾æå天æ°" min-width="100" show-overflow-tooltip /> |
| | | </el-table> |
| | | </div> |
| | | <!-- åå»ºæµæ°´ --> |
| | | <FlowingWater ref="flowingWater" /> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import FlowingWater from './flowingWater' |
| | | export default { |
| | | components: { |
| | | GlobalWindow |
| | | GlobalWindow, |
| | | FlowingWater |
| | | }, |
| | | extends: BaseOpera, |
| | | data() { |
| | | return { |
| | | id: '', |
| | | visible: true, |
| | | visible: false, |
| | | activeTabs: '', |
| | | info: {} |
| | | info: {}, |
| | | tableData: [] |
| | | } |
| | | }, |
| | | methods: { |
| | |
| | | } |
| | | } |
| | | |
| | | .line { |
| | | width: 100%; |
| | | margin: 15px 0; |
| | | border-bottom: 1px dashed #eaeaea; |
| | | } |
| | | |
| | | .main { |
| | | .title { |
| | | font-weight: 500; |
| | |
| | | .list { |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | background: #F7F7F7; |
| | | /*background: #F7F7F7;*/ |
| | | border-radius: 2px; |
| | | padding: 15px 20px; |
| | | padding: 0 20px; |
| | | margin-bottom: 20px; |
| | | |
| | | .item { |
| | | width: 25%; |
| | | margin-bottom: 16px; |
| | | flex: 25%; |
| | | margin-bottom: 20px; |
| | | |
| | | .la { |
| | | color: #7f7f7f; |
| | | margin-top: 2px; |
| | | margin-bottom: 5px; |
| | | } |
| | | } |
| | | } |
| | |
| | | <template> |
| | | <GlobalWindow width="1100px" :title="title" :visible.sync="isShowModal" :confirm-working="isWorking" @close="close" |
| | | <GlobalWindow width="100%" :title="title" :visible.sync="visible" :confirm-working="isWorking" @close="close" |
| | | @confirm="confirm"> |
| | | <template v-if="activeTabs == 0"> |
| | | <div class="main"> |
| | | <div class="main_content"> |
| | | <el-form :model="param" label-position="top" ref="paramRef" :rules="rules"> |
| | | <div class="head"> |
| | | <div class="m_title">åºç¡ä¿¡æ¯</div> |
| | | <div class="tabs"> |
| | | <div class="tab" :class="{ active: timeTab == 0 }" @click="timeTabClick('0')">å¨æè´¹ç¨</div> |
| | | <div class="tab" :class="{ active: timeTab == 1 }" @click="timeTabClick('1')">䏿¬¡æ§è´¹ç¨</div> |
| | | </div> |
| | | <div class="main"> |
| | | <div class="main_content"> |
| | | <el-form :model="param" label-position="top" ref="form" :rules="rules"> |
| | | <div class="head"> |
| | | <div class="m_title">åºç¡ä¿¡æ¯</div> |
| | | <div class="tabs"> |
| | | <div class="tab" :class="{ active: form.feeType === 0 }" @click="timeTabClick(0)">å¨æè´¹ç¨</div> |
| | | <div class="tab" :class="{ active: form.feeType === 1 }" @click="timeTabClick(1)">䏿¬¡æ§è´¹ç¨</div> |
| | | </div> |
| | | <div class="list"> |
| | | <el-form-item label="å
³èåå" prop="type"> |
| | | <el-select v-model="param.type" placeholder="è¯·éæ©" clearable> |
| | | <el-option v-for="item in types" :value="item.value" :label="item.name"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="仿¬¾æ¹" prop="code"> |
| | | <el-input v-model="param.code" placeholder="请è¾å
¥ååç¼å·" v-trim /> |
| | | </el-form-item> |
| | | <el-form-item label="è´¹ç¨ç±»å" prop="aaa"> |
| | | <el-select v-model="param.aaa" placeholder="è¯·éæ©" clearable> |
| | | <el-option v-for="item in agentList" :value="item.id" :label="item.name"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="è®¡è´¹å¨æ" prop=""> |
| | | <el-date-picker type="date" v-model="param.getDate" value-format="yyyy-MM-dd" placeholder="è¯·éæ©" /> |
| | | </el-form-item> |
| | | <el-form-item label="åºæ¶éé¢" prop=""> |
| | | <el-date-picker type="date" v-model="param.getDate" value-format="yyyy-MM-dd" placeholder="è¯·éæ©" /> |
| | | </el-form-item> |
| | | <el-form-item label="åºæ¶æ¥æ" prop=""> |
| | | <el-date-picker type="date" v-model="param.getDate" value-format="yyyy-MM-dd" placeholder="è¯·éæ©" /> |
| | | </el-form-item> |
| | | <el-form-item label="æå±å
¬å¸" prop=""> |
| | | <el-select v-model="param.aaa" placeholder="è¯·éæ©" clearable> |
| | | <el-option v-for="item in comparyList" :value="item.id" :label="item.name"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item style="width: 100%;" label="è´¦å夿³¨" prop=""> |
| | | <el-input type="textarea" :rows="4" v-model="param.content" placeholder="请è¾å
¥" /> |
| | | </el-form-item> |
| | | </div> |
| | | </el-form> |
| | | </div> |
| | | <div class="main_house"> |
| | | <div class="title">è¯·éæ©æ¿æº</div> |
| | | <el-cascader style="width: 300px" v-model="value" @change="houseChange" :options="options" |
| | | :props="{ multiple: true }" collapse-tags clearable /> |
| | | </div> |
| | | </div> |
| | | <div class="list"> |
| | | <el-form-item label="å
³èåå" prop="contractId"> |
| | | <el-select v-model="form.contractId" placeholder="è¯·éæ©" clearable> |
| | | <el-option v-for="(item, index) in contract" :key="index" :value="item.value" :label="item.name"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="仿¬¾æ¹" prop="customerName"> |
| | | <el-select v-model="form.customerName" filterable placeholder="è¯·éæ©"> |
| | | <el-option |
| | | v-for="(item, index) in payerList" |
| | | :key="index" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="è´¹ç¨ç±»å" prop="costType"> |
| | | <el-select v-model="form.costType" placeholder="è¯·éæ©"> |
| | | <el-option :value="0" label="ç§èµè´¹"></el-option> |
| | | <el-option :value="1" label="ç©ä¸è´¹"></el-option> |
| | | <el-option :value="2" label="ç§èµæ¼é"></el-option> |
| | | <el-option :value="3" label="ç©ä¸è¯é"></el-option> |
| | | <el-option :value="4" label="æ°´çµè´¹"></el-option> |
| | | <el-option :value="5" label="æé¡¹è´¹"></el-option> |
| | | <el-option :value="6" label="å
¶ä»"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="è®¡è´¹å¨æ" prop="startDate" v-if="form.feeType !== 1"> |
| | | <el-date-picker |
| | | type="daterange" |
| | | range-separator="è³" |
| | | v-model="date" |
| | | @change="changeDate" |
| | | start-placeholder="å¼å§æ¥æ" |
| | | end-placeholder="ç»ææ¥æ" |
| | | value-format="yyyy-MM-dd" |
| | | placeholder="è¯·éæ©" /> |
| | | </el-form-item> |
| | | <el-form-item label="åºæ¶éé¢" prop="receivableFee"> |
| | | <el-input v-model="form.receivableFee" placeholder="请è¾å
¥åºæ¶éé¢" v-trim /> |
| | | </el-form-item> |
| | | <el-form-item label="åºæ¶æ¥æ" prop="planPayDate"> |
| | | <el-date-picker type="date" v-model="form.planPayDate" value-format="yyyy-MM-dd" placeholder="è¯·éæ©" /> |
| | | </el-form-item> |
| | | <el-form-item label="æå±å
¬å¸" prop="companyId"> |
| | | <el-select v-model="form.companyId" placeholder="è¯·éæ©" clearable> |
| | | <el-option |
| | | v-for="(item, index) in comparyList" |
| | | :key="index" |
| | | :value="item.id" |
| | | :label="item.name" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item style="width: 100%;" label="è´¦å夿³¨" prop="remark"> |
| | | <el-input type="textarea" :rows="5" v-model="param.remark" placeholder="请è¾å
¥" /> |
| | | </el-form-item> |
| | | </div> |
| | | </el-form> |
| | | </div> |
| | | <div class="file_wrap"> |
| | | <div class="head"> |
| | | <div>è´¦åéä»¶</div> |
| | | <el-upload class="upload-demo" :show-file-list="false" :data="uploadData" :action="uploadImgUrl" |
| | | :on-success="uploadAvatarSuccess" :before-upload="beforeUpload" :on-error="uploadError"> |
| | | <el-button icon="el-icon-plus" plain>æ·»å éä»¶</el-button> |
| | | </el-upload> |
| | | </div> |
| | | <el-table :data="param.list" stripe> |
| | | <el-table-column prop="" label="éä»¶åç§°" align="center" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="æä½äºº" align="center" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="æä½æ¶é´" align="center" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="æä½" align="center" min-width="100"> |
| | | <template v-slot="scope"> |
| | | <span class="cu red">å é¤</span> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div class="main_house"> |
| | | <div class="title">è¯·éæ©æ¿æº</div> |
| | | <el-tree |
| | | :data="houseList" |
| | | show-checkbox |
| | | node-key="id" |
| | | :default-expanded-keys="[2, 3]" |
| | | :default-checked-keys="[5]" |
| | | :props="defaultProps"> |
| | | </el-tree> |
| | | </div> |
| | | </template> |
| | | </div> |
| | | <div class="file_wrap"> |
| | | <div class="head"> |
| | | <div>è´¦åéä»¶</div> |
| | | <el-upload class="upload-demo" :show-file-list="false" :data="uploadData" :action="uploadImgUrl" |
| | | :on-success="uploadAvatarSuccess" :before-upload="beforeUpload" :on-error="uploadError"> |
| | | <el-button icon="el-icon-plus" plain>æ·»å éä»¶</el-button> |
| | | </el-upload> |
| | | </div> |
| | | <el-table :data="param.list" stripe> |
| | | <el-table-column prop="" label="éä»¶åç§°" align="center" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="æä½äºº" align="center" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="æä½æ¶é´" align="center" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="æä½" align="center" min-width="100"> |
| | | <template v-slot="{ scope }"> |
| | | <span class="cu red">å é¤</span> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | <!-- --> |
| | | <MemberSearch ref="MemberSearchRef" /> |
| | | </GlobalWindow> |
| | |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import MemberSearch from '@/components/common/MemberSearch' |
| | | import { rules } from './config' |
| | | import { create } from '@/api/bill' |
| | | import { Message, Loading } from 'element-ui' |
| | | export default { |
| | | components: { |
| | |
| | | extends: BaseOpera, |
| | | data() { |
| | | return { |
| | | isShowModal: false, |
| | | title: '', |
| | | activeTabs: '0', |
| | | form: { |
| | | contractId: '', |
| | | customerName: '', |
| | | costType: '', |
| | | type: '', |
| | | companyId: '', |
| | | remark: '', |
| | | startDate: '', |
| | | endDate: '', |
| | | receivableFee: '', |
| | | feeType: 0, |
| | | planPayDate: '' |
| | | }, |
| | | date: [], |
| | | |
| | | param: {}, |
| | | rules, |
| | | timeTab: '0', |
| | |
| | | uploadData: { |
| | | folder: 'HIDDEN_DANGER_FILE' |
| | | }, |
| | | |
| | | types: [ |
| | | { name: 'ç©ä¸+ç§èµåå', value: 0 }, |
| | | { name: 'ç§èµåå', value: 1 }, |
| | | { name: 'ç©ä¸åå', value: 2 }, |
| | | ], |
| | | agentList: [], //ç»å人 |
| | | contract: [], |
| | | payerList: [], |
| | | |
| | | projectList: [], |
| | | comparyList: [], // å
¬å¸ |
| | | renterList: [], // ç§å®¢ |
| | |
| | | { name: 'å
/m²·年', value: 5 }, |
| | | { name: 'å
/åº', value: 6 }, |
| | | ], |
| | | houseList: [{ |
| | | id: 1, |
| | | label: 'ä¸çº§ 1', |
| | | children: [{ |
| | | id: 4, |
| | | label: 'äºçº§ 1-1', |
| | | children: [{ |
| | | id: 9, |
| | | label: 'ä¸çº§ 1-1-1' |
| | | }, { |
| | | id: 10, |
| | | label: 'ä¸çº§ 1-1-2' |
| | | }] |
| | | }] |
| | | }, { |
| | | id: 2, |
| | | label: 'ä¸çº§ 2', |
| | | children: [{ |
| | | id: 5, |
| | | label: 'äºçº§ 2-1' |
| | | }, { |
| | | id: 6, |
| | | label: 'äºçº§ 2-2' |
| | | }] |
| | | }, { |
| | | id: 3, |
| | | label: 'ä¸çº§ 3', |
| | | children: [{ |
| | | id: 7, |
| | | label: 'äºçº§ 3-1' |
| | | }, { |
| | | id: 8, |
| | | label: 'äºçº§ 3-2' |
| | | }] |
| | | }], |
| | | defaultProps: { |
| | | children: 'children', |
| | | label: 'label' |
| | | } |
| | | } |
| | | }, |
| | | created() { |
| | | const { param } = this |
| | | this.title = param.id ? 'ç¼è¾æ¶æ¬¾è´¦å' : 'åå»ºæ¶æ¬¾è´¦å' |
| | | }, |
| | | methods: { |
| | | tabsClick(val) { |
| | | this.activeTabs = val |
| | | }, |
| | | timeTabClick(val) { |
| | | this.timeTab = val |
| | | this.form.feeType = val |
| | | if (val === 1) { |
| | | this.form.startDate = '' |
| | | this.form.endDate = '' |
| | | } |
| | | }, |
| | | getDetail() { |
| | | |
| | | changeDate(e) { |
| | | if (!e || e.length === 0) { |
| | | this.form.startDate = '' |
| | | this.form.endDate = '' |
| | | } else { |
| | | this.form.startDate = e[0] |
| | | this.form.endDate = e[1] |
| | | } |
| | | }, |
| | | handleRent() { |
| | | this.$refs.MemberSearchRef.openModal() |
| | | }, |
| | | houseChange(e) { |
| | | console.log(e) |
| | | console.log(this.value) |
| | | |
| | | }, |
| | | beforeUpload(file) { |
| | | // if (['video/mp4', 'video/ogg', 'video/flv', 'video/avi', 'video/wmv', 'video/rmvb', 'image/jpeg', 'image/jpg', 'image/png', 'image/gif'].indexOf(file.type) == -1) { |
| | | // this.$message.error('请ä¸ä¼ æ£ç¡®çè§é¢/å¾çæ ¼å¼') |
| | | // return false |
| | | // } |
| | | this.loadingInstance = Loading.service({ |
| | | lock: true, |
| | | text: 'Loading', |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <GlobalWindow width="100%" :title="title" :visible.sync="isShowModal" :confirm-working="isWorking" @close="close" |
| | | @confirm="confirm"> |
| | | <div class="main"> |
| | | <div class="main_content"> |
| | | <el-form :model="param" label-position="top" ref="paramRef" :rules="rules"> |
| | | <div class="head"> |
| | | <div class="m_title">æµæ°´ä¿¡æ¯</div> |
| | | </div> |
| | | <div class="list"> |
| | | <el-form-item label="å
³èåå" prop="type"> |
| | | <el-select v-model="param.type" placeholder="è¯·éæ©" clearable> |
| | | <el-option v-for="item in types" :value="item.value" :label="item.name"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="è´¹ç¨ç±»å" prop="code"> |
| | | <el-input v-model="param.code" placeholder="请è¾å
¥ååç¼å·" v-trim /> |
| | | </el-form-item> |
| | | <el-form-item label="è´¹å卿" prop="aaa"> |
| | | <el-select v-model="param.code" placeholder="è¯·éæ©" clearable> |
| | | <el-option v-for="item in agentList" :value="item.id" :label="item.name"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="åºæ¶éé¢" prop=""> |
| | | <el-input v-model="param.code" placeholder="请è¾å
¥å®æ¶éé¢" v-trim /> |
| | | </el-form-item> |
| | | <el-form-item label="宿¶éé¢" prop=""> |
| | | <el-input v-model="param.code" placeholder="请è¾å
¥å®æ¶éé¢" v-trim /> |
| | | </el-form-item> |
| | | <el-form-item label="å
¥è´¦æ¥æ" prop=""> |
| | | <el-date-picker type="date" v-model="param.getDate" value-format="yyyy-MM-dd" placeholder="è¯·éæ©" /> |
| | | </el-form-item> |
| | | <el-form-item label="æ¶æ¬¾æ¹å¼" prop=""> |
| | | <el-select v-model="param.content" placeholder="è¯·éæ©"> |
| | | <el-option label="ç°é" :value="1"></el-option> |
| | | <el-option label="ç½é¶è½¬è´¦" :value="2"></el-option> |
| | | <el-option label="POSæº" :value="3"></el-option> |
| | | <el-option label="æ¯ä»å®" :value="4"></el-option> |
| | | <el-option label="微信" :value="5"></el-option> |
| | | <el-option label="转账æ¯ç¥¨" :value="6"></el-option> |
| | | <el-option label="å
¶å®æ¹å¼" :value="7"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="æå±å
¬å¸" prop=""> |
| | | <el-select v-model="param.code" placeholder="è¯·éæ©" clearable> |
| | | <el-option v-for="item in agentList" :value="item.id" :label="item.name"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="æ¶æ¯è´¦æ·" prop=""> |
| | | <el-select v-model="param.code" placeholder="è¯·éæ©" clearable> |
| | | <el-option v-for="item in agentList" :value="item.id" :label="item.name"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="夿³¨" prop="" style="width: 100%;"> |
| | | <el-input type="textarea" :rows="6" v-model="param.content" placeholder="请è¾å
¥" /> |
| | | </el-form-item> |
| | | </div> |
| | | </el-form> |
| | | </div> |
| | | </div> |
| | | <div class="file_wrap"> |
| | | <div class="head"> |
| | | <div>è´¦åéä»¶</div> |
| | | <el-upload class="upload-demo" :show-file-list="false" :data="uploadData" :action="uploadImgUrl" |
| | | :on-success="uploadAvatarSuccess" :before-upload="beforeUpload" :on-error="uploadError"> |
| | | <el-button icon="el-icon-plus" plain>æ·»å éä»¶</el-button> |
| | | </el-upload> |
| | | </div> |
| | | <el-table :data="param.list" stripe> |
| | | <el-table-column prop="" label="éä»¶åç§°" align="center" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="æä½äºº" align="center" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="æä½æ¶é´" align="center" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="" label="æä½" align="center" min-width="100"> |
| | | <template v-slot="scope"> |
| | | <span class="cu red">å é¤</span> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import { rules } from './config' |
| | | import { Message, Loading } from 'element-ui' |
| | | export default { |
| | | name: "flowingWater", |
| | | components: { |
| | | GlobalWindow |
| | | }, |
| | | extends: BaseOpera, |
| | | data() { |
| | | return { |
| | | isShowModal: false, |
| | | title: '', |
| | | activeTabs: '0', |
| | | param: {}, |
| | | rules, |
| | | timeTab: '0', |
| | | |
| | | loadingInstance: null, |
| | | uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/visitsAdmin/cloudService/public/uploadBatch', |
| | | fileList: [], |
| | | uploadData: { |
| | | folder: 'HIDDEN_DANGER_FILE' |
| | | }, |
| | | |
| | | types: [ |
| | | { name: 'ç©ä¸+ç§èµåå', value: 0 }, |
| | | { name: 'ç§èµåå', value: 1 }, |
| | | { name: 'ç©ä¸åå', value: 2 }, |
| | | ], |
| | | agentList: [], //ç»å人 |
| | | projectList: [], |
| | | comparyList: [], // å
¬å¸ |
| | | renterList: [], // ç§å®¢ |
| | | contacts: [], // è系人 |
| | | value: [], |
| | | options: [ |
| | | { |
| | | value: 1, |
| | | label: 'ä¸å', |
| | | children: [{ |
| | | value: 2, |
| | | label: '䏿µ·', |
| | | children: [ |
| | | { value: 3, label: 'æ®é' }, |
| | | { value: 4, label: 'é»å' }, |
| | | { value: 5, label: '徿±' } |
| | | ] |
| | | }, { |
| | | value: 7, |
| | | label: 'æ±è', |
| | | children: [ |
| | | { value: 8, label: 'å京' }, |
| | | { value: 9, label: 'èå·' }, |
| | | { value: 10, label: 'æ é¡' } |
| | | ] |
| | | }, { |
| | | value: 12, |
| | | label: 'æµæ±', |
| | | children: [ |
| | | { value: 13, label: 'æå·' }, |
| | | { value: 14, label: '宿³¢' }, |
| | | { value: 15, label: 'åå
´' } |
| | | ] |
| | | }] |
| | | }, |
| | | { |
| | | value: 17, |
| | | label: '西å', |
| | | children: [{ |
| | | value: 18, |
| | | label: 'é西', |
| | | children: [ |
| | | { value: 19, label: '西å®' }, |
| | | { value: 20, label: 'å»¶å®' } |
| | | ] |
| | | }, { |
| | | value: 21, |
| | | label: 'æ°çç»´å¾å°æèªæ²»åº', |
| | | children: [ |
| | | { value: 22, label: 'ä¹é²æ¨é½' }, |
| | | { value: 23, label: 'å
æçä¾' } |
| | | ] |
| | | }] |
| | | } |
| | | ], |
| | | cactiveTabs: 0, |
| | | paramCost: {}, |
| | | payMethods: [ |
| | | { name: '䏿¬¡æ§ä»æ¬¾', value: 0 }, |
| | | { name: '3个æä¸ä»', value: 1 }, |
| | | { name: '6个æä¸ä»', value: 2 }, |
| | | { name: '1å¹´ä¸ä»', value: 2 }, |
| | | ], |
| | | unitOps: [ |
| | | { name: 'å
/m²·天', value: 0 }, |
| | | { name: 'å
/m²·æ', value: 1 }, |
| | | { name: 'å
/天', value: 2 }, |
| | | { name: 'å
/æ', value: 3 }, |
| | | { name: 'å
/å¹´', value: 4 }, |
| | | { name: 'å
/m²·年', value: 5 }, |
| | | { name: 'å
/åº', value: 6 }, |
| | | ], |
| | | } |
| | | }, |
| | | created() { |
| | | const { param } = this |
| | | this.title = param.id ? 'ç¼è¾æ¶æ¬¾è´¦å' : 'åå»ºæ¶æ¬¾è´¦å' |
| | | }, |
| | | methods: { |
| | | tabsClick(val) { |
| | | this.activeTabs = val |
| | | }, |
| | | timeTabClick(val) { |
| | | this.timeTab = val |
| | | }, |
| | | getDetail() { |
| | | |
| | | }, |
| | | handleRent() { |
| | | this.$refs.MemberSearchRef.openModal() |
| | | }, |
| | | houseChange(e) { |
| | | console.log(e) |
| | | console.log(this.value) |
| | | |
| | | }, |
| | | beforeUpload(file) { |
| | | // if (['video/mp4', 'video/ogg', 'video/flv', 'video/avi', 'video/wmv', 'video/rmvb', 'image/jpeg', 'image/jpg', 'image/png', 'image/gif'].indexOf(file.type) == -1) { |
| | | // this.$message.error('请ä¸ä¼ æ£ç¡®çè§é¢/å¾çæ ¼å¼') |
| | | // return false |
| | | // } |
| | | this.loadingInstance = Loading.service({ |
| | | lock: true, |
| | | text: 'Loading', |
| | | spinner: 'el-icon-loading', |
| | | background: 'rgba(0, 0, 0, 0.7)' |
| | | }) |
| | | }, |
| | | uploadError() { |
| | | this.$nextTick(() => { // 以æå¡çæ¹å¼è°ç¨ç Loading éè¦å¼æ¥å
³é |
| | | if (this.loadingInstance) { |
| | | this.loadingInstance.close() |
| | | } |
| | | }) |
| | | }, |
| | | uploadAvatarSuccess(file) { |
| | | this.$nextTick(() => { // 以æå¡çæ¹å¼è°ç¨ç Loading éè¦å¼æ¥å
³é |
| | | if (this.loadingInstance) { |
| | | this.loadingInstance.close() |
| | | } |
| | | }) |
| | | console.log('file', file) |
| | | const item = file.data[0] |
| | | if (['.mp4', '.avi', '.flv', '.wmv'].some(char => item.imgaddr.includes(char))) { |
| | | this.fileList.push({ |
| | | type: 1, |
| | | fileurl: item.imgaddr, |
| | | fileurlFull: item.url |
| | | }) |
| | | } else { |
| | | this.fileList.push({ |
| | | type: 0, |
| | | fileurl: item.imgaddr, |
| | | fileurlFull: item.url |
| | | }) |
| | | } |
| | | console.log('file', this.fileList) |
| | | // this.$set(this.param, 'faceImg', file.imgurl) |
| | | // this.$set(this.param, 'faceImgUrl', file.imgurlfull) |
| | | }, |
| | | close() { |
| | | this.isShowModal = false |
| | | this.$emit('close') |
| | | }, |
| | | open(title, target) { |
| | | this.title = title |
| | | this.isShowModal = true |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @import '@/assets/style/variables.scss'; |
| | | |
| | | |
| | | .cost_tabs { |
| | | justify-content: flex-start; |
| | | border: none; |
| | | |
| | | .tab { |
| | | height: 36px; |
| | | line-height: 36px; |
| | | font-size: 14px; |
| | | } |
| | | } |
| | | |
| | | .main { |
| | | display: flex; |
| | | margin-bottom: 20px; |
| | | |
| | | .main_content { |
| | | flex: 1; |
| | | margin-right: 20px; |
| | | |
| | | .head { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | |
| | | .tabs { |
| | | display: flex; |
| | | margin-bottom: 20px; |
| | | display: flex; |
| | | justify-content: center; |
| | | |
| | | .tab { |
| | | height: 14px; |
| | | line-height: 14px; |
| | | cursor: pointer; |
| | | border: 1px solid #ebebeb; |
| | | padding: 12px 24px; |
| | | } |
| | | |
| | | .active { |
| | | font-weight: 500; |
| | | color: $primary-color; |
| | | border: 1px solid $primary-color; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .list { |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | |
| | | .el-form-item { |
| | | width: 33.33%; |
| | | box-sizing: border-box; |
| | | padding: 0 12px; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .main_house { |
| | | width: 320px; |
| | | padding: 24px 12px; |
| | | border: 1px solid #c3c6cd; |
| | | border-radius: 2px; |
| | | |
| | | .title { |
| | | font-size: 16px; |
| | | font-weight: 500; |
| | | margin-bottom: 30px; |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | .total { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | height: 32px; |
| | | background-color: #e7e9f5; |
| | | |
| | | span { |
| | | width: 160px; |
| | | text-align: center; |
| | | } |
| | | } |
| | | |
| | | .file_wrap { |
| | | |
| | | .head { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | } |
| | | } |
| | | |
| | | .m_title { |
| | | font-weight: 500; |
| | | font-size: 14px; |
| | | margin-bottom: 15px; |
| | | margin-top: 10px; |
| | | } |
| | | </style> |