feat(api): 添加 hasOnlyUserId 判断并更新导出组件的禁用逻辑
- 在 api.js 中新增 hasOnlyUserId 方法,用于检测 URL 中是否仅包含 userId 参数 - 在 main.js 里通过计算属性引入 hasOnlyUserId 状态 - 修改 index.html 中导出订单数据创建者选择框的禁用条件,从 hasUserId 改为 hasOnlyUserId - 优化了导出表单组件对用户 ID 参数的判断逻辑,提高交互准确性
This commit is contained in:
parent
f8c7140fb0
commit
d9a8f67c88
|
|
@ -262,7 +262,7 @@
|
|||
<el-row :gutter="8" v-if="isOrder && exportForm.datasource==='ymt'">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="订单数据创建者" prop="ymtCreatorId">
|
||||
<el-select v-model.number="exportForm.ymtCreatorId" :disabled="hasUserId" clearable filterable :teleported="false" placeholder="请选择创建者" style="width:100%">
|
||||
<el-select v-model.number="exportForm.ymtCreatorId" :disabled="hasOnlyUserId" clearable filterable :teleported="false" placeholder="请选择创建者" style="width:100%">
|
||||
<el-option v-for="opt in ymtCreatorOptions" :key="opt.value" :label="opt.label" :value="opt.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
|
@ -285,7 +285,7 @@
|
|||
<el-row :gutter="8" v-if="isOrder && exportForm.datasource==='marketing'">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="订单数据创建者" prop="creator">
|
||||
<el-select v-model="exportForm.creatorIds" multiple clearable filterable :disabled="hasUserId" :teleported="false" placeholder="请选择创建者" style="width:100%">
|
||||
<el-select v-model="exportForm.creatorIds" multiple clearable filterable :disabled="hasOnlyUserId" :teleported="false" placeholder="请选择创建者" style="width:100%">
|
||||
<el-option v-for="opt in creatorOptions" :key="opt.value" :label="opt.label" :value="opt.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ const app = createApp({
|
|||
|
||||
// ==================== 计算属性 ====================
|
||||
const hasUserId = Vue.computed(() => !!Api.getUserId());
|
||||
const hasOnlyUserId = Vue.computed(() => Api.hasOnlyUserId());
|
||||
const currentUserId = Vue.computed(() => {
|
||||
const userId = Api.getUserId();
|
||||
return userId ? Number(userId) : null;
|
||||
|
|
@ -1019,6 +1020,7 @@ const app = createApp({
|
|||
isOrder,
|
||||
exportTitle,
|
||||
hasUserId,
|
||||
hasOnlyUserId,
|
||||
currentUserId,
|
||||
hasCreators,
|
||||
hasReseller,
|
||||
|
|
|
|||
|
|
@ -29,6 +29,16 @@ const getUserId = () => {
|
|||
return value && String(value).trim() ? String(value).trim() : '';
|
||||
};
|
||||
|
||||
/**
|
||||
* 检查 URL 中是否有 userId 参数(不包含 current_user_id)
|
||||
* @returns {boolean}
|
||||
*/
|
||||
const hasOnlyUserId = () => {
|
||||
const params = new URLSearchParams(window.location.search || '');
|
||||
const value = params.get('userId') || params.get('userid') || params.get('user_id');
|
||||
return !!(value && String(value).trim());
|
||||
};
|
||||
|
||||
/**
|
||||
* 从 URL 参数中获取商户 ID
|
||||
* @returns {string} 商户 ID,不存在返回空字符串
|
||||
|
|
@ -399,6 +409,7 @@ window.ApiService = {
|
|||
// 基础方法
|
||||
API_BASE,
|
||||
getUserId,
|
||||
hasOnlyUserId,
|
||||
getMerchantId,
|
||||
buildUserQueryString,
|
||||
get,
|
||||
|
|
|
|||
Loading…
Reference in New Issue