6 changed files with 282 additions and 13 deletions
@ -0,0 +1,132 @@ |
|||
import tui from './httpRequest' |
|||
|
|||
function unwrap(res) { |
|||
if (!res) return null |
|||
if (res.success === false) { |
|||
uni.showToast({ title: res.message || '请求失败', icon: 'none', duration: 3200 }) |
|||
return null |
|||
} |
|||
return res.result !== undefined ? res.result : res |
|||
} |
|||
|
|||
function extractUploadUrl(fileObj) { |
|||
if (!fileObj) return '' |
|||
if (typeof fileObj === 'string') return fileObj |
|||
return fileObj.url || fileObj.fileUrl || fileObj.path || fileObj.fullPath || '' |
|||
} |
|||
|
|||
function buildQuery(data = {}) { |
|||
const query = Object.keys(data) |
|||
.filter(key => data[key] !== undefined && data[key] !== null && data[key] !== '') |
|||
.map(key => encodeURIComponent(key) + '=' + encodeURIComponent(data[key])) |
|||
.join('&') |
|||
return query ? '?' + query : '' |
|||
} |
|||
|
|||
export function uploadFishImage(path) { |
|||
return tui.uploadFile('/upload/file', path).then(extractUploadUrl) |
|||
} |
|||
|
|||
export function pageFishGoods(data = {}) { |
|||
return tui.request('/app/fishmarket/goods/page', 'POST', data, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function pageFishWants(data = {}) { |
|||
return tui.request('/app/fishmarket/wants/page', 'POST', data, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function getFishGoodsDetail(id) { |
|||
return tui.request(`/app/fishmarket/goods/${id}`, 'GET', {}, false, true, true).then(unwrap) |
|||
} |
|||
|
|||
export function publishFishGoods(data) { |
|||
return tui.request('/app/fishmarket/goods', 'POST', data, false, false, false).then(unwrap) |
|||
} |
|||
|
|||
export function publishFishWant(data) { |
|||
return tui.request('/app/fishmarket/wants', 'POST', data, false, false, false).then(unwrap) |
|||
} |
|||
|
|||
export function listFishCategories(regionId = '') { |
|||
return tui.request('/app/fishmarket/categories', 'GET', { regionId }, false, true, true).then(unwrap) |
|||
} |
|||
|
|||
export function toggleFishFavorite(goodsId) { |
|||
return tui.request(`/app/fishmarket/goods/${goodsId}/favorite`, 'POST', {}, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function toggleFishLike(data) { |
|||
return tui.request('/app/fishmarket/like' + buildQuery(data), 'POST', {}, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function addFishComment(data) { |
|||
return tui.request('/app/fishmarket/comments', 'POST', data, false, false, false).then(unwrap) |
|||
} |
|||
|
|||
export function pageFishComments(goodsId, pageNum = 1, pageSize = 10) { |
|||
return tui.request('/app/fishmarket/comments/page', 'GET', { goodsId, pageNum, pageSize }, false, true, true).then(unwrap) |
|||
} |
|||
|
|||
export function deleteFishComment(id) { |
|||
return tui.request(`/app/fishmarket/comments/${id}`, 'DELETE', {}, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function submitFishComplaint(data) { |
|||
return tui.request('/app/fishmarket/complaints', 'POST', data, false, false, false).then(unwrap) |
|||
} |
|||
|
|||
export function createFishChatSession(goodsId) { |
|||
return tui.request(`/app/fishmarket/goods/${goodsId}/chat`, 'POST', {}, false, false, false).then(unwrap) |
|||
} |
|||
|
|||
export function getFishChatSession(sessionId) { |
|||
return tui.request(`/app/fishmarket/chat/sessions/${sessionId}`, 'GET', {}, false, true, true).then(unwrap) |
|||
} |
|||
|
|||
export function pageFishChatMessages(sessionId, pageNum = 1, pageSize = 20) { |
|||
return tui.request(`/app/fishmarket/chat/sessions/${sessionId}/messages/page`, 'GET', { pageNum, pageSize }, false, true, true).then(unwrap) |
|||
} |
|||
|
|||
export function sendFishChatMessage(data) { |
|||
return tui.request('/app/fishmarket/chat/messages', 'POST', data, false, false, false).then(unwrap) |
|||
} |
|||
|
|||
export function pageMyFishGoods(data = {}) { |
|||
return tui.request('/app/fishmarket/my/goods', 'POST', data, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function pageMyFishWants(data = {}) { |
|||
return tui.request('/app/fishmarket/my/wants', 'POST', data, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function updateMyFishGoodsStatus(data) { |
|||
return tui.request('/app/fishmarket/my/goods/status', 'POST', data, false, false, false).then(unwrap) |
|||
} |
|||
|
|||
export function updateMyFishWantStatus(data) { |
|||
return tui.request('/app/fishmarket/my/wants/status', 'POST', data, false, false, false).then(unwrap) |
|||
} |
|||
|
|||
export function pageMyFishFavorites(data = {}) { |
|||
return tui.request('/app/fishmarket/my/favorites', 'POST', data, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function pageMyFishBrowse(data = {}) { |
|||
return tui.request('/app/fishmarket/my/browse', 'POST', data, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function pageMyFishSessions(data = {}) { |
|||
return tui.request('/app/fishmarket/my/sessions', 'POST', data, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function pageMyFishComments(data = {}) { |
|||
return tui.request('/app/fishmarket/my/comments', 'POST', data, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function pageMyFishLikes(data = {}) { |
|||
return tui.request('/app/fishmarket/my/likes', 'POST', data, false, false, true).then(unwrap) |
|||
} |
|||
|
|||
export function pageMyFishComplaints(data = {}) { |
|||
return tui.request('/app/fishmarket/my/complaints', 'POST', data, false, false, true).then(unwrap) |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
import ieSocket from './ieSocket' |
|||
|
|||
export default { |
|||
connect() { return ieSocket.connect() }, |
|||
close() { return ieSocket.close() }, |
|||
resetHandlers() { return ieSocket.resetHandlers() }, |
|||
subscribeSession(sessionId) { return ieSocket.subscribeFishSession(sessionId) }, |
|||
unsubscribeSession(sessionId) { return ieSocket.unsubscribeFishSession(sessionId) }, |
|||
sendMessage(data) { return ieSocket.sendFishMessage(data) }, |
|||
onMessage(handler) { return ieSocket.onFishMessage(handler) } |
|||
} |
|||
Loading…
Reference in new issue