| | |
| | | <template> |
| | | <view> |
| | | <PageHeader title="库存管理" @back="goBack" /> |
| | | <view class="search-section"> |
| | | <view class="search-bar"> |
| | | <view class="search-input"> |
| | | <up-input class="search-text" placeholder="请输入产品名称搜索" v-model="productCategoryValue" clearable @change="reloadPage"/> |
| | | </view> |
| | | <view class="filter-button" @click="reloadPage"> |
| | | <up-icon name="search" size="24" color="#999"></up-icon> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="tabs"> |
| | | <uni-segmented-control :current="tabCurrent" :values="tabItems" @clickItem="switchTab" /> |
| | | </view> |
| | |
| | | <view class="item"> |
| | | <view class="label">产品图片</view> |
| | | <view class="value"> |
| | | <image class="img" :src="baseUrl + item.url" mode="aspectFill" lazy-load></image> |
| | | <image class="img" :src="baseUrl + item.url" mode="aspectFill" lazy-load |
| | | @click="previewImg(baseUrl + item.url)"></image> |
| | | </view> |
| | | </view> |
| | | <view class="item"> |
| | |
| | | </template> |
| | | |
| | | <script setup> |
| | | import { ref, reactive, computed } from 'vue' |
| | | import { ref, reactive, computed, nextTick } from 'vue' |
| | | import { listPage, listPageByCustom } from '@/api/inventoryManagement/stockManagement.js' |
| | | import { onShow, onReachBottom, onPullDownRefresh } from '@dcloudio/uni-app' |
| | | import config from '@/config' |
| | | const baseUrl = config.baseUrl |
| | | const productCategoryValue = ref('') |
| | | const baseUrl = config.imgUrl |
| | | // tab相关 |
| | | const tabItems = reactive(['采购库存', '成品库存']) |
| | | const tabCurrent = ref(0) |
| | |
| | | if (tabCurrent.value !== e.currentIndex) { |
| | | tabCurrent.value = e.currentIndex |
| | | } |
| | | productCategoryValue.value = '' |
| | | reloadPage() |
| | | } |
| | | |
| | | // 返回上一页 |
| | | const goBack = () => { |
| | | uni.navigateBack() |
| | | } |
| | | const previewImg = (url) => { |
| | | uni.previewImage({ |
| | | urls: [url] |
| | | }) |
| | | } |
| | | |
| | | // 打开编辑/新增 |
| | |
| | | pageParams.current += 1 |
| | | getList() |
| | | } |
| | | const reloadPage = () => { |
| | | const reloadPage = async() => { |
| | | await nextTick() |
| | | pageParams.current = 1 |
| | | contentList.value = [] |
| | | getList() |
| | |
| | | getListApi = listPage |
| | | } |
| | | loading.value = true |
| | | let resp = await getListApi(pageParams) |
| | | let params = {...pageParams} |
| | | if (productCategoryValue.value) { |
| | | params.productCategory = productCategoryValue.value |
| | | } |
| | | let resp = await getListApi(params) |
| | | loading.value = false |
| | | if (resp.code != 200 || !resp.data) { |
| | | contentList.value = [] |
| | |
| | | box-shadow: 0 4px 16px rgba(41, 121, 255, 0.3); |
| | | z-index: 1000; |
| | | } |
| | | |
| | | @import '@/styles/sales-common.scss'; |
| | | </style> |