完善delivery端状态bug

This commit is contained in:
2026-05-26 18:39:43 +08:00
parent 2f528c049f
commit c26f2c5431
5 changed files with 460 additions and 30 deletions

View File

@@ -11,6 +11,7 @@ ALTER TABLE public.ml_delivery_stations ENABLE ROW LEVEL SECURITY;
-- 清理旧策略
DROP POLICY IF EXISTS delivery_staff_self_select ON public.ml_delivery_staff;
DROP POLICY IF EXISTS delivery_staff_assignable_select ON public.ml_delivery_staff;
DROP POLICY IF EXISTS delivery_staff_self_update ON public.ml_delivery_staff;
DROP POLICY IF EXISTS delivery_stations_select_active ON public.ml_delivery_stations;
@@ -29,7 +30,20 @@ CREATE POLICY delivery_staff_self_select
)
);
-- 2. 执行人员本人可更新自己的在线状态等自有档案字段
-- 2. 已登录用户仅可读取可派单的在线服务人员,用于自动派单
CREATE POLICY delivery_staff_assignable_select
ON public.ml_delivery_staff
FOR SELECT
TO authenticated
USING (
deleted_at IS NULL
AND status = 1
AND COALESCE(is_active, true) = true
AND online_status = 'online'
AND uid IS NOT NULL
);
-- 3. 执行人员本人可更新自己的在线状态等自有档案字段
CREATE POLICY delivery_staff_self_update
ON public.ml_delivery_staff
FOR UPDATE
@@ -53,11 +67,11 @@ CREATE POLICY delivery_staff_self_update
)
);
-- 3. 提货点/机构对前台保持只读,仅返回启用且未删除数据
-- 4. 提货点/机构对前台保持只读,仅返回启用且未删除数据
CREATE POLICY delivery_stations_select_active
ON public.ml_delivery_stations
FOR SELECT
TO anon, authenticated
USING (status = 1 AND deleted_at IS NULL);
-- 4. 其余直连写操作默认不开放,管理端统一走 SECURITY DEFINER RPC
-- 5. 其余直连写操作默认不开放,管理端统一走 SECURITY DEFINER RPC

View File

@@ -79,6 +79,7 @@ ALTER TABLE public.ml_delivery_staff ENABLE ROW LEVEL SECURITY;
ALTER TABLE public.ml_delivery_stations ENABLE ROW LEVEL SECURITY;
DROP POLICY IF EXISTS delivery_staff_self_select ON public.ml_delivery_staff;
DROP POLICY IF EXISTS delivery_staff_assignable_select ON public.ml_delivery_staff;
DROP POLICY IF EXISTS delivery_staff_self_update ON public.ml_delivery_staff;
CREATE POLICY delivery_staff_self_select
ON public.ml_delivery_staff
@@ -94,6 +95,18 @@ CREATE POLICY delivery_staff_self_select
)
);
CREATE POLICY delivery_staff_assignable_select
ON public.ml_delivery_staff
FOR SELECT
TO authenticated
USING (
deleted_at IS NULL
AND status = 1
AND COALESCE(is_active, true) = true
AND online_status = 'online'
AND uid IS NOT NULL
);
CREATE POLICY delivery_staff_self_update
ON public.ml_delivery_staff
FOR UPDATE

View File

@@ -152,7 +152,7 @@
</view>
</view>
<button class="save-button" :disabled="isSaving" :loading="isSaving" @click="saveProfile">
<button class="save-button" :disabled="isSaving" :loading="isSaving" @click="saveProfile(true)">
保存修改
</button>
</view>
@@ -1260,7 +1260,7 @@ const buildProfileUpdatePayload = (): UTSJSONObject => {
return payload
}
const saveProfile = async (): Promise<void> => {
const saveProfile = async (shouldReturn: boolean = false): Promise<void> => {
const userid: string = profileRowId.value != '' ? profileRowId.value : (profile.value.id ?? '')
const updatePayload = buildProfileUpdatePayload()
if (UTSJSONObject.keys(updatePayload).length == 0) {
@@ -1289,6 +1289,13 @@ const saveProfile = async (): Promise<void> => {
title: '保存成功',
icon: 'success'
})
if (shouldReturn) {
setTimeout((): void => {
uni.navigateBack({
delta: 1
})
}, 500)
}
} else {
console.log('saveProfile update ak_users error:', JSON.stringify(result.error))
uni.showToast({

View File

@@ -207,6 +207,18 @@ function hasMissingColumnError(error: any, columnName: string): boolean {
return errorText.indexOf('could not find the') >= 0 && errorText.indexOf(columnName.toLowerCase()) >= 0
}
let ecServiceRequestCreateUnavailable = false
function shouldBypassEcServiceRequestCreate(error: any): boolean {
if (error == null) {
return false
}
return hasMissingColumnError(error, 'address_snapshot')
|| hasMissingColumnError(error, 'address_snapshot_json')
|| hasMissingColumnError(error, 'contact_name')
|| hasMissingColumnError(error, 'contact_phone')
}
function shouldUseCareTaskPath(orderId: string): boolean {
return isUuidLike(orderId)
}
@@ -244,8 +256,9 @@ function getStaffPriority(staff: any): number {
async function getAutoAssignableStaff(): Promise<any | null> {
const staffResponse = await supa
.from('ml_delivery_staff')
.select('id, uid, station_id, nickname, phone, status, deleted_at, is_active, online_status, updated_at, created_at')
.select('id, uid, station_id, status, deleted_at, is_active, online_status, updated_at, created_at')
.eq('status', 1)
.eq('online_status', 'online')
.execute()
if (staffResponse.error != null || staffResponse.data == null) {
return null
@@ -259,6 +272,9 @@ async function getAutoAssignableStaff(): Promise<any | null> {
if (!isStaffActive(staff)) {
continue
}
if (readString(staff, 'uid') == '') {
continue
}
const score = getStaffPriority(staff)
const timeMark = readFirstString(staff, ['updated_at', 'created_at'])
if (selected == null || score > bestScore || (score == bestScore && timeMark > bestTime)) {
@@ -740,6 +756,9 @@ async function getCareTaskDetail(taskId: string): Promise<ServiceOrderType | nul
}
async function tryCreateCareTask(params: CreateServiceOrderParams): Promise<ServiceOrderType | null> {
if (ecServiceRequestCreateUnavailable) {
return null
}
const userId = getCurrentUserId()
if (userId == '') {
return null
@@ -752,16 +771,28 @@ async function tryCreateCareTask(params: CreateServiceOrderParams): Promise<Serv
let requestResponse = await supa.from('ec_service_requests').insert(
buildEcServiceRequestPayload(params, userId, requestId, createdAt, appointmentTime, true)
).execute()
if (shouldBypassEcServiceRequestCreate(requestResponse.error)) {
ecServiceRequestCreateUnavailable = true
return null
}
if (requestResponse.error != null) {
requestResponse = await supa.from('ec_service_requests').insert(
buildEcServiceRequestPayload(params, userId, requestId, createdAt, appointmentTime, false)
).execute()
}
if (shouldBypassEcServiceRequestCreate(requestResponse.error)) {
ecServiceRequestCreateUnavailable = true
return null
}
if (requestResponse.error != null) {
requestResponse = await supa.from('ec_service_requests').insert(
buildEcServiceRequestPayloadWithoutAddress(params, userId, requestId, createdAt, appointmentTime)
).execute()
}
if (shouldBypassEcServiceRequestCreate(requestResponse.error)) {
ecServiceRequestCreateUnavailable = true
return null
}
if (requestResponse.error != null) {
return null
}

View File

@@ -1,24 +1,389 @@
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ml_delivery_staff filter: uid=eq.67251404-ad43-4118-a6d4-74ca16351427
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/ml_delivery_staff?select=*%2C%20station%3Aml_delivery_stations(id%2C%20name)&limit=1&uid=eq.67251404-ad43-4118-a6d4-74ca16351427
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...-2B0 | auth-mode: pre-set | prefer: count=exact
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ml_delivery_staff filter: id=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] PATCH http://119.146.131.237:9126/rest/v1/ml_delivery_staff?id=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...-2B0 | auth-mode: pre-set | prefer: return=representation
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ml_delivery_staff filter: uid=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/ml_delivery_staff?select=*%2C%20station%3Aml_delivery_stations(id%2C%20name)&limit=1&uid=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...-2B0 | auth-mode: pre-set | prefer: count=exact
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ml_delivery_staff filter: id=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/ml_delivery_staff?select=*%2C%20station%3Aml_delivery_stations(id%2C%20name)&limit=1&id=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...-2B0 | auth-mode: pre-set | prefer: count=exact
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ml_delivery_staff filter: uid=eq.67251404-ad43-4118-a6d4-74ca16351427
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/ml_delivery_staff?select=*%2C%20station%3Aml_delivery_stations(id%2C%20name)&limit=1&uid=eq.67251404-ad43-4118-a6d4-74ca16351427
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...-2B0 | auth-mode: pre-set | prefer: count=exact
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ml_delivery_staff filter: id=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] PATCH http://119.146.131.237:9126/rest/v1/ml_delivery_staff?id=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...-2B0 | auth-mode: pre-set | prefer: return=representation
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ml_delivery_staff filter: uid=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/ml_delivery_staff?select=*%2C%20station%3Aml_delivery_stations(id%2C%20name)&limit=1&uid=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...-2B0 | auth-mode: pre-set | prefer: count=exact
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ml_delivery_staff filter: id=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/ml_delivery_staff?select=*%2C%20station%3Aml_delivery_stations(id%2C%20name)&limit=1&id=eq.399bc088-ab36-4f68-a993-e34aec421e8c
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...-2B0 | auth-mode: pre-set | prefer: count=exact
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ak_users filter: auth_id=eq.b653fded-7d5e-4950-aa0d-725595543e3c
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/ak_users?select=*&auth_id=eq.b653fded-7d5e-4950-aa0d-725595543e3c
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
mp.esm.js:529 Profile Load Result: AkReqResponse {status: 200, data: Array(1), headers: Proxy, error: null, total: 1, …}
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_catalog filter: status=eq.1&deleted_at=is.null
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_catalog?select=id%2C%20name%2C%20category%2C%20price%2C%20duration_text%2C%20summary%2C%20tags_json%2C%20suitable_for%2C%20sort_no&order=sort_no.asc&status=eq.1&deleted_at=is.null
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ec_service_requests filter: null
mp.esm.js:529 [ak-req] POST http://119.146.131.237:9126/rest/v1/ec_service_requests
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: return=representation
uni.api.esm.js:1042 POST http://119.146.131.237:9126/rest/v1/ec_service_requests 400 (Bad Request)(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ uni.api.esm.js:1042
invokeApi @ uni.api.esm.js:330
promiseApi @ uni.api.esm.js:889
(anonymous) @ ak-req.uts:214
doOnce @ ak-req.uts:213
_loop$ @ ak-req.uts:328
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
s @ regeneratorRuntime.js?forceSync=true:1
_ @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
request @ ak-req.uts:148
_callee19$ @ aksupa.uts:1290
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
requestWithAutoRefresh @ aksupa.uts:1289
_callee13$ @ aksupa.uts:1109
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
insert @ aksupa.uts:1084
_callee$ @ aksupa.uts:469
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
execute @ aksupa.uts:369
_callee5$ @ serviceOrderService.uts:754
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
tryCreateCareTask @ serviceOrderService.uts:742
_callee7$ @ serviceOrderService.uts:874
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
createServiceOrder @ serviceOrderService.uts:873
_callee4$ @ homeServiceService.uts:440
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
createHomeServiceApplication @ homeServiceService.uts:430
_callee3$ @ service-detail.uvue:860
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
submitBooking @ service-detail.uvue:813
callWithErrorHandling @ vue.runtime.esm.js:1356
callWithAsyncErrorHandling @ vue.runtime.esm.js:1363
invoke @ vue.runtime.esm.js:6223
setTimeout (async)
invoker @ vue.runtime.esm.js:6232
Show 28 more frames
mp.esm.js:529 [ak-req] HTTP error response(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:304
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [ak-req] status: 400(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:305
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [ak-req] url: http://119.146.131.237:9126/rest/v1/ec_service_requests(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:306
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [ak-req] body: {"code":"PGRST204","details":null,"hint":null,"message":"Could not find the 'address_snapshot' column of 'ec_service_requests' in the schema cache"}(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:307
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ec_service_requests filter: null
mp.esm.js:529 [ak-req] POST http://119.146.131.237:9126/rest/v1/ec_service_requests
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: return=representation
uni.api.esm.js:1042 POST http://119.146.131.237:9126/rest/v1/ec_service_requests 400 (Bad Request)(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ uni.api.esm.js:1042
invokeApi @ uni.api.esm.js:330
promiseApi @ uni.api.esm.js:889
(anonymous) @ ak-req.uts:214
doOnce @ ak-req.uts:213
_loop$ @ ak-req.uts:328
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
s @ regeneratorRuntime.js?forceSync=true:1
_ @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
request @ ak-req.uts:148
_callee19$ @ aksupa.uts:1290
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
requestWithAutoRefresh @ aksupa.uts:1289
_callee13$ @ aksupa.uts:1109
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
insert @ aksupa.uts:1084
_callee$ @ aksupa.uts:469
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
execute @ aksupa.uts:369
_callee5$ @ serviceOrderService.uts:758
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
tryCreateCareTask @ serviceOrderService.uts:742
_callee7$ @ serviceOrderService.uts:874
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
createServiceOrder @ serviceOrderService.uts:873
_callee4$ @ homeServiceService.uts:440
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
createHomeServiceApplication @ homeServiceService.uts:430
_callee3$ @ service-detail.uvue:860
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
submitBooking @ service-detail.uvue:813
callWithErrorHandling @ vue.runtime.esm.js:1356
callWithAsyncErrorHandling @ vue.runtime.esm.js:1363
invoke @ vue.runtime.esm.js:6223
setTimeout (async)
invoker @ vue.runtime.esm.js:6232
mp.esm.js:529 [ak-req] HTTP error response(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:304
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [ak-req] status: 400(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:305
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [ak-req] url: http://119.146.131.237:9126/rest/v1/ec_service_requests(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:306
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [ak-req] body: {"code":"PGRST204","details":null,"hint":null,"message":"Could not find the 'address_snapshot_json' column of 'ec_service_requests' in the schema cache"}(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:307
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ec_service_requests filter: null
mp.esm.js:529 [ak-req] POST http://119.146.131.237:9126/rest/v1/ec_service_requests
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: return=representation
uni.api.esm.js:1042 POST http://119.146.131.237:9126/rest/v1/ec_service_requests 400 (Bad Request)(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ uni.api.esm.js:1042
invokeApi @ uni.api.esm.js:330
promiseApi @ uni.api.esm.js:889
(anonymous) @ ak-req.uts:214
doOnce @ ak-req.uts:213
_loop$ @ ak-req.uts:328
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
s @ regeneratorRuntime.js?forceSync=true:1
_ @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
request @ ak-req.uts:148
_callee19$ @ aksupa.uts:1290
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
requestWithAutoRefresh @ aksupa.uts:1289
_callee13$ @ aksupa.uts:1109
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
insert @ aksupa.uts:1084
_callee$ @ aksupa.uts:469
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
execute @ aksupa.uts:369
_callee5$ @ serviceOrderService.uts:763
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
tryCreateCareTask @ serviceOrderService.uts:742
_callee7$ @ serviceOrderService.uts:874
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
createServiceOrder @ serviceOrderService.uts:873
_callee4$ @ homeServiceService.uts:440
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
createHomeServiceApplication @ homeServiceService.uts:430
_callee3$ @ service-detail.uvue:860
s @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
(anonymous) @ regeneratorRuntime.js?forceSync=true:1
fulfilled @ uni.mp.esm.js:1134
Promise.then (async)
step @ uni.mp.esm.js:1134
(anonymous) @ uni.mp.esm.js:1134
__awaiter @ uni.mp.esm.js:1134
submitBooking @ service-detail.uvue:813
callWithErrorHandling @ vue.runtime.esm.js:1356
callWithAsyncErrorHandling @ vue.runtime.esm.js:1363
invoke @ vue.runtime.esm.js:6223
setTimeout (async)
invoker @ vue.runtime.esm.js:6232
mp.esm.js:529 [ak-req] HTTP error response(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:304
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [ak-req] status: 400(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:305
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [ak-req] url: http://119.146.131.237:9126/rest/v1/ec_service_requests(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:306
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [ak-req] body: {"code":"PGRST204","details":null,"hint":null,"message":"Could not find the 'contact_name' column of 'ec_service_requests' in the schema cache"}(env: Windows,mp,1.06.2504030; lib: 3.16.0)
(anonymous) @ mp.esm.js:529
__f__ @ uni.api.esm.js:590
success @ ak-req.uts:307
(anonymous) @ uni.api.esm.js:946
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_orders filter: null
mp.esm.js:529 [ak-req] POST http://119.146.131.237:9126/rest/v1/hss_service_orders
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: return=representation
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_order_status_logs filter: null
mp.esm.js:529 [ak-req] POST http://119.146.131.237:9126/rest/v1/hss_service_order_status_logs
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: return=representation
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ml_delivery_staff filter: status=eq.1
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/ml_delivery_staff?select=id%2C%20uid%2C%20station_id%2C%20nickname%2C%20phone%2C%20status%2C%20deleted_at%2C%20is_active%2C%20online_status%2C%20updated_at%2C%20created_at&status=eq.1
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_orders filter: id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_orders?select=*&limit=1&id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: count=exact
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_order_status_logs filter: order_id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_order_status_logs?select=*&order=created_at.desc&order_id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_reviews filter: order_id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_reviews?select=*&order=created_at.desc&order_id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_execution_records filter: order_id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_execution_records?select=*&limit=1&order=created_at.desc&order_id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: count=exact
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_evidence_files filter: order_id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_evidence_files?select=*&order=created_at.desc&order_id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
[自动热重载] 已开启代码文件保存后自动热重载
2mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: ak_users filter: auth_id=eq.b653fded-7d5e-4950-aa0d-725595543e3c
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/ak_users?select=*&auth_id=eq.b653fded-7d5e-4950-aa0d-725595543e3c
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/ak_users?select=*&auth_id=eq.b653fded-7d5e-4950-aa0d-725595543e3c
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
mp.esm.js:529 Profile Load Result: AkReqResponse {status: 200, data: Array(1), headers: Proxy, error: null, total: 1, …}
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_orders filter: id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_orders?select=*&limit=1&id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: count=exact
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_order_status_logs filter: order_id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_order_status_logs?select=*&order=created_at.desc&order_id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
mp.esm.js:529 Profile Load Result: AkReqResponse {status: 200, data: Array(1), headers: Proxy, error: null, total: 1, …}
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_orders filter: id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_orders?select=*&limit=1&id=eq.so-1779788538646-23864
mp.esm.js:529 [ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: count=exact
mp.esm.js:529 [AkSupaQueryBuilder] execute - 表: hss_service_reviews filter: order_id=eq.so-1779788538646-23864
[ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_reviews?select=*&order=created_at.desc&order_id=eq.so-1779788538646-23864
[ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
[AkSupaQueryBuilder] execute - 表: hss_service_execution_records filter: order_id=eq.so-1779788538646-23864
[ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_execution_records?select=*&limit=1&order=created_at.desc&order_id=eq.so-1779788538646-23864
[ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: count=exact
[AkSupaQueryBuilder] execute - 表: hss_service_evidence_files filter: order_id=eq.so-1779788538646-23864
[ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_evidence_files?select=*&order=created_at.desc&order_id=eq.so-1779788538646-23864
[ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
[pages/mall/consumer/home-service/order-detail] 提示: text 组件包含了长文本,可以考虑增加 user-select 属性,方便用户复制。
[AkSupaQueryBuilder] execute - 表: hss_service_order_status_logs filter: order_id=eq.so-1779788538646-23864
[ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_order_status_logs?select=*&order=created_at.desc&order_id=eq.so-1779788538646-23864
[ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
[AkSupaQueryBuilder] execute - 表: hss_service_reviews filter: order_id=eq.so-1779788538646-23864
[ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_reviews?select=*&order=created_at.desc&order_id=eq.so-1779788538646-23864
[ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)
[AkSupaQueryBuilder] execute - 表: hss_service_execution_records filter: order_id=eq.so-1779788538646-23864
[ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_execution_records?select=*&limit=1&order=created_at.desc&order_id=eq.so-1779788538646-23864
[ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: count=exact
[AkSupaQueryBuilder] execute - 表: hss_service_evidence_files filter: order_id=eq.so-1779788538646-23864
[ak-req] GET http://119.146.131.237:9126/rest/v1/hss_service_evidence_files?select=*&order=created_at.desc&order_id=eq.so-1779788538646-23864
[ak-req] apikey: eyJhbG...7890 | Authorization: Bearer eyJhbG...2Rsk | auth-mode: pre-set | prefer: (none)