This commit is contained in:
2024-02-21 18:08:27 +08:00
parent e06abe3233
commit 9cef00a472
12 changed files with 431 additions and 106 deletions

View File

@@ -20,47 +20,16 @@ uni-button{
.content{
width: 100%;
height: 100%;
background-color: #f5f5f5;
background-color: #f8f8f8;
}
.search-confirm-wrap {
width: calc(100% - 30px);
background-color: #fff;
margin: 15px auto;
border-radius: 12px;
padding-bottom: 15px;
}
.search-wrap{
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
width: 100%;
padding: 0 15px;
}
.search-item{
display: flex;
justify-content: space-between;
width: 32%;
margin-top: 15px;
}
.search-item:nth-child(3n+2) {
margin-left: 2%;
margin-right: 2%;
}
.search-item_2 {
display: flex;
justify-content: flex-end;
width: 64%;
margin-top: 15px;
margin-left: 4%;
}
.flexend {
justify-content: flex-end;
}
.search-item-btns {
justify-content: flex-end;
padding: 15px;
}
.search-label{
width: 80px;
height: 35px;
font-size: 16px;
line-height: 35px;
@@ -76,7 +45,6 @@ uni-button{
visibility: hidden;
}
.filter_input_wraper {
width: calc(100% - 85px);
height: 35px;
line-height: 35px;
}
@@ -86,7 +54,8 @@ uni-button{
line-height: 35px;
font-size: 14px;
color: #606266;
border: 1px solid #d1d1d1;
border: 1px solid #dde9f7;
background-color: #fff;
border-radius: 4px;
text-indent: 10px;
}
@@ -106,29 +75,40 @@ uni-button{
.search-input-l .uni-input-input:disabled {
background-color: #e1e1e1;
}
.confirm-button-wrap{
display: flex;
justify-content: flex-end;
width: 100%;
height: 35px;
line-height: 35px;
margin-top: 15px;
padding: 0 15px;
}
.confirm-button{
margin-left: 15px !important;
margin-right: 0 !important;
background-color: #D7592F;
min-width: 80px;
height: 36px;
background-color: #ff6a00;
color: #fff;
line-height: 35px;
padding: 0;
font-size: 14px;
margin-left: 6px;
margin-right: 0;
border-radius: 12px;
white-space: nowrap;
}
.confirm-button_disabled {
background-color: #c9c9c9;
background-color: #fff;
color: #889dc7;
border: 1px solid #dde9f7;
}
.title-line {
width: calc(100% - 30px);
height: 1px;
background-color: #dde9f7;
margin: 10px auto 20px auto;
}
.table-title_wraper {
width: calc(100% - 30px);
margin: 0px auto;
font-size: 16px;
color: #000;
line-height: 35px;
}
.grid-wrap{
width: 100%;
height: calc(100% - 187px); /** 42+ 15*5+ 35*2 */
padding: 0 15px 15px 15px;
height: calc(100% - 206px); /** 42+ 98+35+31 */
padding: 0 15px 30px 15px;
overflow-y: scroll;
}
.grid-wrap .grid-table{
@@ -197,6 +177,77 @@ uni-button{
top: 0;
z-index: 49;
}
.zd-th {
display: flex;
align-items: center;
justify-content: center;
font-size: 15px;
line-height: 18px;
height: 40px;
color: #7d7d7d;
font-weight: bold;
padding: 12px 5px;
background-color: #dcdfea;
text-align: center;
}
.zd-sec-th {
display: flex;
align-items: center;
justify-content: center;
font-size: 15px;
line-height: 18px;
height: 40px;
color: #7d7d7d;
background-color: #fff;
font-weight: bold;
padding: 12px 5px;
text-align: center;
}
.zd-td {
display: flex;
justify-content: center;
align-items: center;
font-size: 14px;
line-height: 18px;
height: 46px;
color: #7d7d7d;
padding: 0 8px;
text-align: center;
border-bottom: 1px solid #ebeef5;
overflow: hidden;
}
.zd-th_fir {
border-top-left-radius: 12px;
border-bottom-left-radius: 12px;
}
.zd-th_last {
border-top-right-radius: 12px;
border-bottom-right-radius: 12px;
}
.zd-checkbox {
width: 22px;
height: 22px;
border: 1px solid #008deb;
background-color: #fff;
border-radius: 4px;
}
.fontcol1 {
color: #007de7;
}
.fontcol2 {
color: #000;
}
.fontbg1 {
background-color: #007de7;
color: #fff;
font-size: 12px;
padding: 2px 10px;
border-radius: 10px;
}
.zd-sec-table {
background-color: #fff;
padding: 15px 0;
}
.status-wrap {
width: 100%;
height: 35px;

View File

@@ -24,6 +24,10 @@ input[type="button"], input[type="submit"], input[type="search"], input[type="re
appearance: none;
}
.allwidth {
width: 100%;
}
.relative {
position: relative;
}
@@ -41,3 +45,96 @@ input[type="button"], input[type="submit"], input[type="search"], input[type="re
text-overflow: ellipsis;
white-space: nowrap;
}
.flexcol {
flex-direction: column;
}
.flexstart {
align-items: flex-start !important;
}
.jcflexstart {
justify-content: flex-start !important;
}
.jcflexend {
justify-content: flex-end !important;
}
.zd-row {
display: flex;
justify-content: space-between;
align-items: center;
}
.zd-col-24 {
width: 100%;
}
.zd-col-23 {
width: 95.83333%
}
.zd-col-22 {
width: 91.66667%
}
.zd-col-21 {
width: 87.5%
}
.zd-col-20 {
width: 83.33333%
}
.zd-col-19 {
width: 79.16667%
}
.zd-col-18 {
width: 75%
}
.zd-col-17 {
width: 70.83333%
}
.zd-col-16 {
width: 66.66667%
}
.zd-col-15 {
width: 62.5%
}
.zd-col-14 {
width: 58.33333%
}
.zd-col-13 {
width: 54.16667%
}
.zd-col-12 {
width: 50%;
}
.zd-col-11 {
width: 45.83333%
}
.zd-col-10 {
width: 41.66667%
}
.zd-col-9 {
width: 37.5%
}
.zd-col-8 {
width: 33.33333%
}
.zd-col-7 {
width: 29.16667%
}
.zd-col-6 {
width: 25%
}
.zd-col-5 {
width: 20.83333%
}
.zd-col-4 {
width: 16.66667%
}
.zd-col-3 {
width: 12.5%
}
.zd-col-2 {
width: 8.33333%
}
.zd-col-1 {
width: 4.16667%
}
.mgr5 {
margin-right: 5px;
}

View File

@@ -53,19 +53,20 @@
.header
_fj()
_wh(100%, 42px)
background-color $red
background-color #fff
z-index 200
padding 0 15px
box-shadow: 0 2px 4px 0 rgba(0,0,0,.05);
.page_name
_font(16px, 20px, #fff,700,center)
_font(16px, 20px, #000,700,center)
.icon_back {
font-size: 30px;
line-height: 30px;
color: #fff;
color: #666;
}
.icon_home {
font-size: 30px;
line-height: 30px;
color: #fff;
color: #666;
}
</style>

View File

@@ -1,17 +1,18 @@
<template>
<view class="search_wraper">
<view class="zd-row search_wraper" :class="{'input_focus': focusState}">
<view class="iconfont icon_search" @tap="toSearch">&#xe6e1;</view>
<input
ref="input"
type="text"
class="search_input"
:placeholder="placeholder"
:value="value"
:focus="focused"
:focus="focusState"
@blur="focusState=false"
@focus="focusState=true"
@input="handleChange($event)">
<view class="buttons_wraper">
<view class="iconfont icon-del" @tap="toDel">&#xe6dc;</view>
<view class="iconfont icon_scan" @tap="checkMpaasScan">&#xe6e2;</view>
<view v-show="seaShow" class="iconfont icon_search" @tap="toSearch">&#xe6e1;</view>
</view>
</view>
</template>
@@ -20,7 +21,8 @@
export default {
data() {
return {
cur: ''
cur: '',
focusState: true
};
},
model: {
@@ -33,10 +35,6 @@
seaShow: {
type: Boolean,
default: false
},
focused: {
type: Boolean,
default: false
}
},
methods: {
@@ -46,7 +44,10 @@
this.$emit('handleChange', this.cur)
},
toSearch () {
this.$emit('toSearch', this.cur)
// this.$emit('toSearch', this.cur)
this.$nextTick(() => {
this.focusState = true
})
},
toDel () {
this.$emit('input', '')
@@ -124,30 +125,30 @@
<style lang="stylus">
@import '../common/style/mixin.styl';
.search_wraper
position relative
_wh(100%, 35px)
_wh(100%, 38px)
padding 0 2px 0 12px
border 1px solid #e1e1e1
background-color #fff
border-radius 12px
.search_input
border 1px solid #e5e5e5
border-radius 4px
height: 35px;
line-height: 35px;
padding-left 10px;
padding-right 100px;
width 100%
height: 38px;
line-height: 38px;
font-size: 14px;
color: #6a6a6a
.buttons_wraper
_fj()
position absolute
top 0
right 0
_wh(auto, 35px)
.icon-del
_wh(30px, 35px)
_font(30px,35px,#6a6a6a,,center)
_wh(35px, 35px)
margin-right 5px
_font(20px,35px,#a2b6cc,,center)
.icon_scan
_wh(30px, 35px)
_font(30px,35px,#6a6a6a,,center)
_wh(70px, 30px)
_font(20px,30px,#fff,,center)
background-color $red
border-radius 12px
.icon_search
_wh(30px, 35px)
_font(30px,35px,#6a6a6a,,center)
_wh(35px, 35px)
_font(20px,35px,#a2b6cc,,center)
.input_focus
border: 1px solid #889dc7;
box-shadow: 0 0 0 2px rgba(136, 157, 199,.2);
</style>

View File

@@ -142,10 +142,26 @@
"navigationStyle": "custom"
}
}
,{
"path" : "pages/management/in-storage",
"style" :
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/management/out-storage",
"style" :
{
"navigationStyle": "custom"
}
}
],
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "uni-app",
"navigationBarTitleText": "",
"navigationBarBackgroundColor": "#F8F8F8",
"backgroundColor": "#F8F8F8"
},

View File

@@ -4,7 +4,7 @@
<view class="userInfo-wrap">
<view class="userInfo">
<text class="p1">{{userName}}</text>
<text class="p2">欢迎进入海亮平板系统</text>
<text class="p2">欢迎进入诺力三期平板系统</text>
</view>
<view class="exit" @tap="Quit">
<view class="icon-exit"></view>
@@ -58,6 +58,11 @@
if (e.sonTree.length > 0) {
this.show = true
this.secM = e.sonTree
} else {
let url = e.router
uni.redirectTo({
url: url
})
}
},
toPage2 (e) {

View File

@@ -0,0 +1,144 @@
<template>
<view class="content">
<nav-bar title="入库"></nav-bar>
<view class="search-confirm-wrap">
<view class="zd-row">
<view class="zd-col-11 zd-row">
<search-box
v-model="val1"
/>
<button class="confirm-button" @tap="toDelect">查询</button>
</view>
<view class="zd-col-11 zd-row jcflexend">
<button class="confirm-button" :class="{'confirm-button_disabled': !val1 || dataList.length === 0}" :disabled="disabled" @tap="toSure">单据审核</button>
</view>
</view>
</view>
<view class="zd-row jcflexstart table-title_wraper">
<view class="iconfont mgr5">&#xe649;</view>
<text>采购入库</text>
</view>
<view class="title-line"></view>
<view class="grid-wrap">
<view class="zd-row">
<view class="zd-col-2 zd-th zd-th_fir"><text>序号</text></view>
<view class="zd-col-2 zd-th"><view class="zd-checkbox"></view></view>
<view class="zd-col-3 zd-th"><text>入库单号</text></view>
<view class="zd-col-3 zd-th"><text>EAS单号</text></view>
<view class="zd-col-2 zd-th"><text>状态</text></view>
<view class="zd-col-3 zd-th"><text>去向</text></view>
<view class="zd-col-3 zd-th"><text>入库日期</text></view>
<view class="zd-col-3 zd-th"><text>领料人</text></view>
<view class="zd-col-3 zd-th zd-th_last"><text>制单人</text></view>
</view>
<view class="allwidth" v-for="(e, i) in dataList" :key="i">
<view class="zd-row">
<view class="zd-col-2 zd-td"><text>{{i+1}}</text></view>
<view class="zd-col-2 zd-td"><view class="zd-checkbox"></view></view>
<view class="zd-col-3 zd-td fontcol1"><text>{{e.a}}</text></view>
<view class="zd-col-3 zd-td fontcol2"><text>{{e.b}}</text></view>
<view class="zd-col-2 zd-td"><text class="fontbg1">{{e.c}}</text></view>
<view class="zd-col-3 zd-td fontcol2"><text>{{e.d}}</text></view>
<view class="zd-col-3 zd-td"><text>{{e.e}}</text></view>
<view class="zd-col-3 zd-td"><text>{{e.f}}</text></view>
<view class="zd-col-3 zd-td"><text>{{e.g}}</text></view>
</view>
<view class="zd-row zd-sec-table">
<view class="zd-col-2 zd-sec-th"><text>序号</text></view>
<view class="zd-col-2 zd-sec-th"><view class="zd-checkbox"></view></view>
<view class="zd-col-3 zd-sec-th"><text>入库单号</text></view>
<view class="zd-col-3 zd-sec-th"><text>EAS单号</text></view>
<view class="zd-col-2 zd-sec-th"><text>状态</text></view>
<view class="zd-col-3 zd-sec-th"><text>去向</text></view>
<view class="zd-col-3 zd-sec-th"><text>入库日期</text></view>
<view class="zd-col-3 zd-sec-th"><text>领料人</text></view>
<view class="zd-col-3 zd-sec-th"><text>制单人</text></view>
</view>
</view>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {finishproductPoint, InstoreOrder} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
val1: '',
dataList: [{a: 'IO20213', b: 'SOUT4201', c: '未审核', d: '叉车装配线', e: '2023-06-16', f: '陈晓华', g: 'EAS_钱丽文'}, {a: 'IO20213', b: 'SOUT4201', c: '未审核', d: '叉车装配线', e: '2023-06-16', f: '陈晓华', g: 'EAS_钱丽文'}],
pkId: '',
disabled: false
};
},
onShow() {
if (this.$store.getters.publicArr) {
this.dataList = this.$store.getters.publicArr
}
},
destroyed () {
this.$store.dispatch('setPublicArr', '')
},
methods: {
toDelect () {
this.dataList = []
this.pkId = ''
this.$store.dispatch('setPublicArr', '')
},
async toSure () {
this.disabled = true
if (!this.index1) {
uni.showToast({
title: '请选择入库点',
icon: 'none'
})
this.disabled = false
return
}
if (!this.val1) {
uni.showToast({
title: '请输入载具号',
icon: 'none'
})
this.disabled = false
return
}
if (this.dataList.length === 0) {
uni.showToast({
title: '请选择订单信息',
icon: 'none'
})
this.disabled = false
return
}
try {
let res = await InstoreOrder(this.index1, this.val1, this.dataList)
this.disabled = false
this.index1 = ''
this.val1 = ''
this.toDelect()
uni.showToast({
title: res.message,
icon: 'none'
})
} catch (e) {
this.disabled = false
}
},
toSelect () {
uni.navigateTo({
url: '/pages/management/MaterList'
})
}
}
}
</script>
<style lang="stylus" scoped>
@import '../../common/style/mixin.styl';
</style>

View File

@@ -0,0 +1,19 @@
<template>
<view>
</view>
</template>
<script>
export default {
data() {
return {
};
}
}
</script>
<style lang="stylus">
</style>

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -25,17 +25,8 @@ export const pdaUpdate = () => request({
export const authority = () => {
let res = {
sonTree: [
{menu_id: '1', path: 'RF01', name: '缓存线', sonTree: [
{menu_id: '1', name: '扫码异常', path: '/pages/management/inscanerror'},
{menu_id: '2', name: '缓存线盘点', path: '/pages/management/hcxcheck'},
{menu_id: '3', name: '缓存线出箱异常', path: '/pages/management/HcxOutError'},
{menu_id: '4', name: '缓存线异常处理', path: '/pages/management/HcxErrorHandle'}
]
},
{menu_id: '2', path: 'RF02', name: '生产管理', sonTree: [
{menu_id: '1', name: '任务管理', path: '/pages/management/TaskOperate'},
]
},
{menu_id: '1', path: 'RF01', name: '入库', router: '/pages/management/in-storage', sonTree: []},
{menu_id: '1', path: 'RF02', name: '出库', router: '/pages/management/out-storage', sonTree: []},
{menu_id: '3', path: 'RF03', name: '出入库管理', sonTree: [
{menu_id: '1', name: '半成品入库', path: '/pages/management/HalfFinishedInStore'},
{menu_id: '2', name: '成品入库', path: '/pages/management/FinishedInStore'},