feat: 添加下拉远程搜索并完善登录会话

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-04 15:57:46 +08:00
co-authored by Cursor
parent e785a99b7d
commit 55f13bb47b
41 changed files with 1734 additions and 330 deletions
+75 -47
View File
@@ -7,57 +7,31 @@
</view>
</template>
</common-navbar>
<view class="workbench-title">销售管理</view>
<view class="toolbar">
<u-grid class="grid" :col="4" :border="false">
<u-grid-item :index="0" @click="navTo('/pages/saleship/salepickscan')">
<view class="home-icon icon-color05">
<i class="iconfont icon-hetongguanli"></i>
</view>
<view class="grid-text">成品配布</view>
</u-grid-item>
<!-- <u-grid-item :index="1" @click="navTo('/pages/storegoods/QRBarCodeReview')"> -->
<!-- <view class="home-icon icon-color02"> -->
<!-- <i class="iconfont icon-mall-bag"></i>-->
<!-- </view>-->
<!-- <view class="grid-text">标签检测</view>-->
<!-- </u-grid-item>-->
</u-grid>
</view>
<view class="workbench-title">成品管理</view>
<view class="toolbar">
<u-grid class="grid" :col="4" :border="false">
<u-grid-item :index="2" @click="navTo('/pages/storegoods/storeGoodsProcessInList')">
<view class="home-icon icon-color04">
<i class="iconfont icon-hetongguanli"></i>
</view>
<view class="grid-text">加工进仓</view>
</u-grid-item>
<u-grid-item :index="3" @click="navTo('/pages/storegoods/storeGoodsProcessOutList')">
<view class="home-icon icon-color05">
<i class="iconfont icon-hetongguanli"></i>
</view>
<view class="grid-text">加工出仓</view>
</u-grid-item>
<u-grid-item :index="4" @click="navTo('/pages/storegoods/storeGoodsProcessReturnInList')">
<view class="home-icon icon-color02">
<i class="iconfont icon-hetongguanli"></i>
</view>
<view class="grid-text">加工退货进仓</view>
</u-grid-item>
<u-grid-item :index="5" @click="navTo('/pages/storegoods/storeGoodsPurchaseInList')">
<view class="home-icon icon-color03">
<i class="iconfont icon-hetongguanli"></i>
</view>
<view class="grid-text">采购进仓</view>
</u-grid-item>
</u-grid>
</view>
<view v-for="group in visibleMenuGroups" :key="group.title">
<view class="workbench-title">{{ group.title }}</view>
<view class="toolbar">
<u-grid class="grid" :col="4" :border="false">
<u-grid-item
v-for="(item, index) in group.items"
:key="item.router"
:index="index"
@click="navTo(item.url)"
>
<view class="home-icon" :class="item.color">
<i class="iconfont" :class="item.icon"></i>
</view>
<view class="grid-text">{{ item.name }}</view>
</u-grid-item>
</u-grid>
</view>
</view>
<view v-if="!visibleMenuGroups.length" class="textCenter">暂无可用功能</view>
</view>
</template>
<script>
import CommonNavbar from "@/components/common-navbar/index";
import scanMixin from '@/common/scanMixin.js';
import { hasResourceRouter } from '@/common/userSession.js';
/**
* Copyright (c) 2013-Now http://aidex.vip All rights reserved.
*/
@@ -76,7 +50,53 @@ export default {
//{image: '/static/aidex/banner/banner03.png'}
],
todoCount: 3,
// scanReceiver 和 isPageActive 已由 scanMixin 提供
menuGroups: [
{
title: '销售管理',
items: [
{
name: '成品配布',
url: '/pages/saleship/salepickscan',
router: 'CashCommodityClothOrder',
icon: 'icon-hetongguanli',
color: 'icon-color05'
}
]
},
{
title: '成品管理',
items: [
{
name: '加工进仓',
url: '/pages/storegoods/storeGoodsProcessInList',
router: 'FpProcessingEntryOrder',
icon: 'icon-hetongguanli',
color: 'icon-color04'
},
{
name: '加工出仓',
url: '/pages/storegoods/storeGoodsProcessOutList',
router: 'FpProcessingDeliverFromGodownOrder',
icon: 'icon-hetongguanli',
color: 'icon-color05'
},
{
name: '加工退货进仓',
url: '/pages/storegoods/storeGoodsProcessReturnInList',
router: 'FpProcessingReturnEntryOrder',
icon: 'icon-hetongguanli',
color: 'icon-color02'
},
{
name: '采购进仓',
url: '/pages/storegoods/storeGoodsPurchaseInList',
router: 'FinishPurchaseWarehouseEntry',
icon: 'icon-hetongguanli',
color: 'icon-color03'
}
]
}
]
};
},
@@ -92,6 +112,14 @@ export default {
height: `${navHeight}px`,
};
},
visibleMenuGroups() {
return this.menuGroups
.map((group) => ({
...group,
items: group.items.filter((item) => hasResourceRouter(item.router))
}))
.filter((group) => group.items.length > 0);
}
},
methods: {
// 自定义扫码处理回调 - 处理本页面特有的扫码逻辑