页面调整,退料bug解决

This commit is contained in:
hongchao 2025-02-15 13:22:20 +08:00
parent 272e1af13b
commit 87b02fbb71
32 changed files with 536 additions and 56 deletions

View File

@ -8,11 +8,11 @@
"navigationBarTitleText": "登录"
}
},
//
//
{
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "首页"
"navigationBarTitleText": "业务办理"
}
},
//
@ -22,6 +22,13 @@
"navigationBarTitleText": "工作台"
}
},
//
{
"path": "pages/search/index",
"style": {
"navigationBarTitleText": "查询"
}
},
//
{
"path": "pages/my/index",
@ -457,21 +464,27 @@
"list": [
{
"pagePath": "pages/index/index",
"text": "首页",
"iconPath": "static/home.png",
"selectedIconPath": "static/homeSelected.png"
"text": "业务办理",
"iconPath": "static/yeWuBanLi.png",
"selectedIconPath": "static/yeWuBanLiSelected.png"
},
{
"pagePath": "pages/work/index",
"text": "工作台",
"iconPath": "static/my.png",
"selectedIconPath": "static/mySelected.png"
"iconPath": "static/work.png",
"selectedIconPath": "static/workSelected.png"
},
{
"pagePath": "pages/search/index",
"text": "查询",
"iconPath": "static/search.png",
"selectedIconPath": "static/searchSelected.png"
},
{
"pagePath": "pages/my/index",
"text": "我的",
"iconPath": "static/workSpace.png",
"selectedIconPath": "static/workSpaceSelected.png"
"iconPath": "static/my.png",
"selectedIconPath": "static/mySelected.png"
}
]
},

View File

@ -67,12 +67,12 @@
<uni-col :span="6">外观判定</uni-col>
<uni-col :span="16">
<!-- <uni-easyinput placeholder="请输入内容" v-model="apDetection"/> -->
<radio-group v-model="apDetection" @change="changeRadio">
<radio-group @change="changeRadio">
<radio value="完好" checked style="margin-right: 5px;">完好</radio>
<radio value="损坏">损坏</radio>
</radio-group>
</uni-col>
</uni-row>
</uni-row>
<uni-row :gutter="24" style="display: flex; align-items: center;margin-bottom: 10px;">
<uni-col :span="6">附件</uni-col>
<uni-col :span="16">

View File

@ -65,7 +65,7 @@
<uni-col :span="6">外观判定</uni-col>
<uni-col :span="16">
<!-- <uni-easyinput placeholder="请输入内容" v-model="apDetection"/> -->
<radio-group v-model="apDetection" @change="changeRadio">
<radio-group @change="changeRadio">
<radio value="完好" checked style="margin-right: 5px;">完好</radio>
<radio value="损坏">损坏</radio>
</radio-group>

View File

@ -1,12 +1,182 @@
<template>
<view class="content"> 首页 </view>
<view class="content">
<view class="new-purchase">
<div class="title-text">
<div></div>
<div class="purchase-title">业务办理</div>
</div>
<view
class="purchase-item"
:key="index"
@tap="onNavigateTo(item.url)"
v-for="(item, index) in newInfoList"
>
<image :src="item.iconSrc" mode="scaleToFill" />
<text>
{{ item.title }}
</text>
</view>
</view>
<view class="new-purchase">
<div class="title-text">
<div></div>
<div class="purchase-title">电子档案</div>
</div>
<view
class="purchase-item"
:key="index"
@tap="onNavigateTo(item.url)"
v-for="(item, index) in newPurchaseList"
>
<image :src="item.iconSrc" mode="scaleToFill" />
<text>
{{ item.title }}
</text>
</view>
</view>
<view class="new-purchase">
<div class="title-text">
<div></div>
<div class="purchase-title">检验预警</div>
</div>
<view
class="purchase-item"
:key="index"
@tap="onNavigateTo(item.url)"
v-for="(item, index) in pickingList"
>
<image :src="item.iconSrc" mode="scaleToFill" />
<text>
{{ item.title }}
</text>
</view>
</view>
</view>
</template>
<script setup>
import { ref } from 'vue'
//
const newInfoList = ref([
{
title: '领用申请',
url: '',
iconSrc: '../../static/workbench/bianMa.png',
},
{
title: '直转申请',
url: '',
iconSrc: '../../static/workbench/panDian.png',
},
{
title: '费用减免',
url: '',
iconSrc: '../../static/workbench/panDian.png',
},
])
//
const newPurchaseList = ref([
{
title: '电子档案',
url: '',
iconSrc: '../../static/workbench/purchaseAccept.png',
},
])
//
const pickingList = ref([
{
title: '检验预期',
url: '',
iconSrc: '../../static/workbench/backCreate.png',
},
])
const onNavigateTo = (url) => {
uni.navigateTo({ url })
}
</script>
<style>
<style lang="scss">
page {
overflow: hidden;
overflow-y: auto;
}
.content {
padding: 24rpx;
min-height: 100vh;
background-color: #f7f8fa;
//
.new-purchase {
background-color: #fff;
border-radius: 20rpx;
padding: 20rpx 16rpx;
margin-bottom: 16rpx;
box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.06);
display: flex;
flex-wrap: wrap;
//
.purchase-title {
font-size: 32rpx;
font-weight: 600;
color: #262626;
}
.title-text {
margin-top: 10px;
padding: 0px 0;
display: flex;
align-items: center;
// font-size: 14px;
font-weight: bold;
letter-spacing: 1px;
width: 100%;
}
.title-text div:first-child {
width: 5px;
height: 20px;
margin-right: 8px;
background-color: #2d73cf;
}
//
.purchase-item {
width: 25%;
display: flex;
flex-direction: column;
align-items: center;
padding: 4rpx 0;
transition: all 0.3s ease;
&:active {
transform: scale(0.95);
opacity: 0.8;
}
//
image {
width: 170rpx;
height: 170rpx;
margin-bottom: 6rpx;
}
//
text {
font-size: 28rpx;
color: #262626;
font-weight: 500;
}
}
}
}
</style>

287
src/pages/search/index.vue Normal file
View File

@ -0,0 +1,287 @@
<template>
<view class="content">
<view class="new-purchase">
<div class="title-text">
<div></div>
<div class="purchase-title">设备信息管理</div>
</div>
<view
class="purchase-item"
:key="index"
@tap="onNavigateTo(item.url)"
v-for="(item, index) in newInfoList"
>
<image :src="item.iconSrc" mode="scaleToFill" />
<text style="white-space: nowrap;font-size: 26rpx;">
{{ item.title }}
</text>
</view>
</view>
<view class="new-purchase">
<div class="title-text">
<div></div>
<div class="purchase-title">业务信息管理</div>
</div>
<view
class="purchase-item"
:key="index"
@tap="onNavigateTo(item.url)"
v-for="(item, index) in newPurchaseList"
>
<image :src="item.iconSrc" mode="scaleToFill" />
<text style="white-space: nowrap;font-size: 26rpx;">
{{ item.title }}
</text>
</view>
</view>
<view class="new-purchase">
<div class="title-text">
<div></div>
<div class="purchase-title">标准箱管理</div>
</div>
<view
class="purchase-item"
:key="index"
@tap="onNavigateTo(item.url)"
v-for="(item, index) in pickingList"
>
<image :src="item.iconSrc" mode="scaleToFill" />
<text style="white-space: nowrap;font-size: 26rpx;">
{{ item.title }}
</text>
</view>
</view>
<view class="new-purchase">
<div class="title-text">
<div></div>
<div class="purchase-title">库存查询</div>
</div>
<view
class="purchase-item"
:key="index"
@tap="onNavigateTo(item.url)"
v-for="(item, index) in partList"
>
<image :src="item.iconSrc" mode="scaleToFill" />
<text>
{{ item.title }}
</text>
</view>
</view>
<view class="new-purchase">
<div class="title-text">
<div></div>
<div class="purchase-title">机具查询</div>
</div>
<view
class="purchase-item"
:key="index"
@tap="onNavigateTo(item.url)"
v-for="(item, index) in deviceList"
>
<image :src="item.iconSrc" mode="scaleToFill" />
<text style="white-space: nowrap;font-size: 26rpx;">
{{ item.title }}
</text>
</view>
</view>
</view>
</template>
<script setup>
import { ref } from 'vue'
//
const newInfoList = ref([
{
title: '二维码查询',
url: '/pages/devicesSearch/qrSearch',
iconSrc: '../../static/searchModel/qrCode.png',
},
{
title: 'OCR查询',
url: '/pages/devicesSearch/ocrSearch',
iconSrc: '../../static/searchModel/qrCode.png',
},
{
title: '设备编码查询',
url: '/pages/devicesSearch/codeSearch',
iconSrc: '../../static/searchModel/electTag.png',
},
{
title: '电子标签查询',
url: '',
iconSrc: '../../static/searchModel/electTag.png',
},
])
//
const newPurchaseList = ref([
{
title: '领料记录查询',
url: '',
iconSrc: '../../static/searchModel/leaseRecord.png',
},
{
title: '退料记录查询',
url: '',
iconSrc: '../../static/searchModel/backRecord.png',
},
{
title: '结算记录查询',
url: '',
iconSrc: '../../static/searchModel/costRecord.png',
},
{
title: '减免记录查询',
url: '',
iconSrc: '../../static/searchModel/reliefRecord.png',
},
{
title: '直转记录查询',
url: '',
iconSrc: '../../static/searchModel/straightRecord.png',
},
])
//
const pickingList = ref([
{
title: '实时信息查询',
url: '',
iconSrc: '../../static/searchModel/infoRecord.png',
},
{
title: '绑定记录查询',
url: '',
iconSrc: '../../static/searchModel/bindRecord.png',
},
{
title: '移交记录查询',
url: '',
iconSrc: '../../static/searchModel/handOverRecord.png',
},
{
title: '接收记录查询',
url: '/pages/repair/testedInBound/index',
iconSrc: '../../static/searchModel/receptRecord.png',
},
{
title: '出库记录查询',
url: '',
iconSrc: '../../static/searchModel/outBoundRecord.png',
},
])
//
const partList = ref([
{
title: '库存查询',
url: '',
iconSrc: '../../static/searchModel/inventoryRecord.png',
},
{
title: '配件查询',
url: '',
iconSrc: '../../static/searchModel/partRecord.png',
},
])
//
const deviceList = ref([
{
title: '机具查询',
url: '/pages/stquery/deviceStatusRecord/index',
iconSrc: '../../static/searchModel/partRecord.png',
},
])
const onNavigateTo = (url) => {
uni.navigateTo({ url })
}
</script>
<style lang="scss">
page {
overflow: hidden;
overflow-y: auto;
}
.content {
padding: 24rpx;
min-height: 100vh;
background-color: #f7f8fa;
//
.new-purchase {
background-color: #fff;
border-radius: 20rpx;
padding: 20rpx 16rpx;
margin-bottom: 16rpx;
box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.06);
display: flex;
flex-wrap: wrap;
//
.purchase-title {
font-size: 32rpx;
font-weight: 600;
color: #262626;
}
.title-text {
margin-top: 10px;
padding: 0px 0;
display: flex;
align-items: center;
// font-size: 14px;
font-weight: bold;
letter-spacing: 1px;
width: 100%;
}
.title-text div:first-child {
width: 5px;
height: 20px;
margin-right: 8px;
background-color: #2d73cf;
}
//
.purchase-item {
width: 25%;
display: flex;
flex-direction: column;
align-items: center;
padding: 4rpx 0;
transition: all 0.3s ease;
&:active {
transform: scale(0.95);
opacity: 0.8;
}
//
image {
width: 170rpx;
height: 170rpx;
margin-bottom: 6rpx;
}
//
text {
font-size: 28rpx;
color: #262626;
font-weight: 500;
}
}
}
}
</style>

View File

@ -57,7 +57,7 @@
<view class="new-purchase">
<div class="title-text">
<div></div>
<div class="purchase-title">管理</div>
<div class="purchase-title">管理</div>
</div>
<view
class="purchase-item"
@ -84,7 +84,7 @@
v-for="(item, index) in partList"
>
<image :src="item.iconSrc" mode="scaleToFill" />
<text>
<text style="white-space: nowrap;font-size: 26rpx;">
{{ item.title }}
</text>
</view>
@ -104,7 +104,7 @@
</text>
</view>
</view>
<view class="new-purchase">
<!-- <view class="new-purchase">
<view class="purchase-item" :key="index"
@tap="onNavigateTo(item.url)"
v-for="(item, index) in searchList">
@ -123,7 +123,7 @@
{{ item.title }}
</text>
</view>
</view>
</view> -->
</view>
</template>
@ -202,6 +202,16 @@ const partList = ref([
title: '配件领料',
url: '/pages/part/part-lease/index',
iconSrc: '../../static/workbench/partInbound.png',
},
{
title: '配件新购入库',
url: '',
iconSrc: '../../static/workbench/partIn.png',
},
{
title: '配件领用申请',
url: '',
iconSrc: '../../static/workbench/partApprove.png',
}
])
@ -234,48 +244,48 @@ const boxList = ref([
{
title: '标准箱管理',
url: '/pages/standardBox/index',
iconSrc: '../../static/workbench/fetchMaterialOutStore.png',
iconSrc: '../../static/workbench/boxManage.png',
},
{
title: '标准箱移交',
url: '/pages/standardBox/transferBox',
iconSrc: '../../static/workbench/fetchMaterialOutStore.png',
iconSrc: '../../static/workbench/boxHandOver.png',
},
{
title: '标准箱接收',
url: '/pages/standardBox/acceptBox',
iconSrc: '../../static/workbench/fetchMaterialOutStore.png',
iconSrc: '../../static/workbench/boxRecept.png',
},
])
//
const searchList = ref([
{
title: '机具查询',
url: '/pages/stquery/deviceStatusRecord/index',
iconSrc: '../../static/workbench/fix.png',
},
// //
// const searchList = ref([
// {
// title: '',
// url: '/pages/stquery/deviceStatusRecord/index',
// iconSrc: '../../static/workbench/fix.png',
// },
])
// ])
//
const deviceList = ref([
{
title: '二维码',
url: '/pages/devicesSearch/qrSearch',
iconSrc: '../../static/workbench/fetchMaterialOutStore.png',
},
{
title: 'OCR',
url: '/pages/devicesSearch/ocrSearch',
iconSrc: '../../static/workbench/fetchMaterialOutStore.png',
},
{
title: '设备编号',
url: '/pages/devicesSearch/codeSearch',
iconSrc: '../../static/workbench/fetchMaterialOutStore.png',
},
])
// //
// const deviceList = ref([
// {
// title: '',
// url: '/pages/devicesSearch/qrSearch',
// iconSrc: '../../static/workbench/fetchMaterialOutStore.png',
// },
// {
// title: 'OCR',
// url: '/pages/devicesSearch/ocrSearch',
// iconSrc: '../../static/workbench/fetchMaterialOutStore.png',
// },
// {
// title: '',
// url: '/pages/devicesSearch/codeSearch',
// iconSrc: '../../static/workbench/fetchMaterialOutStore.png',
// },
// ])
const onNavigateTo = (url) => {
uni.navigateTo({ url })
@ -297,8 +307,8 @@ page {
.new-purchase {
background-color: #fff;
border-radius: 20rpx;
padding: 32rpx 24rpx;
margin-bottom: 24rpx;
padding: 20rpx 16rpx;
margin-bottom: 16rpx;
box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.06);
display: flex;
flex-wrap: wrap;
@ -311,8 +321,8 @@ page {
}
.title-text {
margin-top: 20px;
padding: 10px 0;
margin-top: 10px;
padding: 0px 0;
display: flex;
align-items: center;
// font-size: 14px;
@ -335,7 +345,7 @@ page {
display: flex;
flex-direction: column;
align-items: center;
padding: 24rpx 0;
padding: 4rpx 0;
transition: all 0.3s ease;
&:active {
@ -345,9 +355,9 @@ page {
//
image {
width: 180rpx;
height: 180rpx;
margin-bottom: 16rpx;
width: 170rpx;
height: 170rpx;
margin-bottom: 6rpx;
}
//

BIN
src/static/search.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

BIN
src/static/work.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
src/static/workSelected.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

BIN
src/static/yeWuBanLi.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

View File

@ -9,7 +9,7 @@ const ENV = process.env.NODE_ENV
// export const baseURL = ENV === 'development' ? 'http://192.168.0.244:18580' : 'http://192.168.0.244:18580'//测试
// export const baseURL = ENV === 'development' ? 'http://36.33.26.201:19988/prod-api/' : 'http://36.33.26.201:19988/prod-api/'//生产
// export const baseURL = ENV === 'development' ? 'http://192.168.0.234:18080' : '***'
export const baseURL = ENV === 'development' ? 'http://192.168.2.247:18080' : 'http://192.168.2.247:18080'//马
export const baseURL = ENV === 'development' ? 'http://192.168.2.23:18080' : 'http://192.168.2.23:18080'//马
// export const baseURL = ENV === 'development' ? '/api' : '***'
// **********OCR识别为NVUE文件页面请求URL需要同步配置**********