This commit is contained in:
2026-09-11 11:19:47 +08:00
parent 991150e64b
commit f8ebbd9610
10 changed files with 54 additions and 30 deletions
+11 -4
View File
@@ -5,7 +5,7 @@
<view class="module-hero" :class="`module-hero-${currentModule.key}`"><view class="module-hero-icon">{{ currentModule.icon }}</view><view><text class="module-hero-title">{{ currentModule.name }}</text><text class="module-hero-desc">{{ currentModule.description }}</text></view></view>
<text class="group-title">业务功能</text>
<view class="operation-list"><button v-for="operation in currentModule.operations" :key="operation.name" class="operation-item" :class="{ 'operation-item-disabled': !operation.available }" :disabled="!operation.available" @tap="openOperation(operation)"><view class="operation-icon">{{ operation.icon }}</view><view class="operation-info"><text class="operation-name">{{ operation.name }}</text><text class="operation-desc">{{ operation.description }}</text></view><text v-if="operation.available" class="operation-count">{{ overview.pendingBoxCount }}</text><text v-else class="operation-prototype">未开放</text><text v-if="operation.available" class="operation-arrow">›</text></button></view>
<view class="module-empty-note">当前开放“一件代发合托”和“集装箱拣货”两条真实作业流程。</view>
<view class="module-empty-note">当前展示“一件代发合托”“出库拣货”和“库位查询”。</view>
</view>
</view>
</template>
@@ -18,14 +18,21 @@
export default {
components: { PortalHeader },
data() { return { user: session.currentUser, moduleKey: 'outbound', overview: getPickingOverview() } },
computed: { currentModule() { return MODULES.find((module) => module.key === this.moduleKey) || MODULES[0] } },
computed: {
currentModule() {
const module = MODULES.find((item) => item.key === this.moduleKey) || MODULES[0]
return { ...module, operations: module.operations.filter((operation) => operation.visible) }
}
},
onLoad(options) { this.moduleKey = options.key || 'outbound' },
onShow() { if (!requireSession()) return; this.user = session.currentUser; this.overview = getPickingOverview() },
methods: {
openOperation(operation) {
if (!operation.available) return
const routes = { '一件代发合托': '/pages/dropship-tasks/dropship-tasks', '集装箱拣货': '/pages/tasks/tasks' }
uni.navigateTo({ url: routes[operation.name] || '/pages/operation/operation' })
const routes = { '一件代发合托': '/pages/dropship-tasks/dropship-tasks', '出库拣货': '/pages/tasks/tasks' }
const url = routes[operation.name]
|| `/pages/operation/operation?module=${encodeURIComponent(this.moduleKey)}&name=${encodeURIComponent(operation.name)}`
uni.navigateTo({ url })
}
}
}