eden-web/pc/src/api/room.js
2025-04-25 09:14:41 +08:00

199 lines
3.6 KiB
JavaScript

import request from '@/utils/request'
// 查询房源列表
export function listRoom(query) {
return request({
url: '/room/list',
method: 'get',
params: query
})
}
// 查询房源详细信息
export function getRoom(id) {
return request({
url: '/room/' + id,
method: 'get'
})
}
// 新增房源
export function addRoom(data) {
return request({
url: '/room/add',
method: 'post',
data: data
})
}
// 修改房源
export function updateRoom(data) {
return request({
url: '/room/edit',
method: 'post',
data: data
})
}
// 删除房源
export function delRoom(id) {
return request({
url: '/room/remove/' + id,
method: 'post'
})
}
// 批量删除房源
export function delRoomBatch(ids) {
return request({
url: '/room/batch/remove/' + ids,
method: 'post'
})
}
// 导出房源
export function exportRoom(query) {
return request({
url: '/room/template/export/batch',
method: 'post',
data: query,
responseType: 'blob'
})
}
// 下载导入模板
export function downloadTemplate() {
return request({
url: '/room/template/download',
method: 'get',
responseType: 'blob'
})
}
// 导入房源数据
export function importRoom(file) {
const formData = new FormData()
formData.append('file', file)
return request({
url: '/room/import',
method: 'post',
data: formData,
headers: {
'Content-Type': 'multipart/form-data'
}
})
}
// 查询房源标签列表
export function listRoomTags() {
return request({
url: '/room/tags',
method: 'get'
})
}
// 获取项目列表
export function listProjects() {
return request({
url: '/project/list',
method: 'get'
})
}
// 获取楼宇列表
export function listBuildings(projectId) {
return request({
url: '/building/list',
method: 'get',
params: { projectId }
})
}
// 获取楼层列表
export function listFloors(buildingId) {
return request({
url: '/building/floors',
method: 'get',
params: { buildingId }
})
}
// 远程调用 - 获取业户列表
export function listOwners(query) {
return request({
url: '/customer/owners',
method: 'get',
params: query
})
}
// 远程调用 - 检查房源合同状态
export function checkRoomContractStatus(roomId) {
return request({
url: '/contract/check/room/' + roomId,
method: 'get'
})
}
// 修改房源租赁状态
export function updateRoomLeaseStatus(id, status) {
return request({
url: '/room/lease-status',
method: 'post',
data: { id, status }
})
}
// 检查房号是否存在
export function checkRoomNumberExists(params) {
return request({
url: '/room/check-number',
method: 'get',
params: params
})
}
// 获取房源图片列表
export function listRoomImages(params) {
return request({
url: '/room/images',
method: 'get',
params: params
})
}
// 上传房源图片
export function uploadRoomImage(roomId, imageType, file, sortOrder) {
const formData = new FormData()
formData.append('roomId', roomId)
formData.append('imageType', imageType)
formData.append('file', file)
if (sortOrder !== undefined) {
formData.append('sortOrder', sortOrder)
}
return request({
url: '/room/upload',
method: 'post',
data: formData,
headers: {
'Content-Type': 'multipart/form-data'
}
})
}
// 删除房源图片
export function deleteRoomImage(id) {
return request({
url: '/room/image/' + id,
method: 'post'
})
}
// 批量删除房源图片
export function batchDeleteRoomImages(ids) {
return request({
url: '/room/images/batch',
method: 'post',
data: { ids }
})
}