盘点
This commit is contained in:
@@ -305,3 +305,17 @@ uni-button:after {
|
||||
.uni-select__input-placeholder,.uni-select__selector-empty, .uni-select__selector-item {
|
||||
font-size: 28rpx !important
|
||||
}
|
||||
.sin_input {
|
||||
width: 150rpx;
|
||||
font-size: 28rpx;
|
||||
line-height: 150rpx;
|
||||
height: 68rpx;
|
||||
color: #323232;
|
||||
padding: 0 .1rem;
|
||||
border: 1px solid #a1a1a1;
|
||||
border-radius: 3px;
|
||||
}
|
||||
.layout-t tr.checked td .sin_input {
|
||||
color: #8a8a8a;
|
||||
border: 1px solid #ffffff;
|
||||
}
|
||||
23
main.js
23
main.js
@@ -4,10 +4,33 @@ import Vue from 'vue'
|
||||
Vue.config.productionTip = false
|
||||
App.mpType = 'app'
|
||||
|
||||
Vue.directive('enterNumber', {
|
||||
inserted: function (el) {
|
||||
el.addEventListener("keypress",function(e){
|
||||
e = e || window.event;
|
||||
let charcode = typeof e.charCode == 'number' ? e.charCode : e.keyCode;
|
||||
// if (parseInt(e.target.value) == 0) {
|
||||
// e.preventDefault();
|
||||
// }
|
||||
parseInt(e.target.value) == 0 && e.preventDefault();
|
||||
let re = /\d/;
|
||||
if(!re.test(String.fromCharCode(charcode)) && charcode > 9 && !e.ctrlKey){
|
||||
if(e.preventDefault){
|
||||
e.preventDefault();
|
||||
}else{
|
||||
e.returnValue = false;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
import store from '@/vuex/store.js'
|
||||
|
||||
const app = new Vue({
|
||||
...App,
|
||||
store
|
||||
})
|
||||
|
||||
|
||||
app.$mount()
|
||||
117
pages/WarehouseManage/CheckDtl.vue
Normal file
117
pages/WarehouseManage/CheckDtl.vue
Normal file
@@ -0,0 +1,117 @@
|
||||
<template>
|
||||
<view class="zd_container">
|
||||
<nav-bar :inner2="true" @goIn="goIn" title="盘点明细"></nav-bar>
|
||||
<view class="zd_content">
|
||||
<view class="zd_wrapper grid-wraper">
|
||||
<view class="slide_new">
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>单据号</th>
|
||||
<th>状态</th>
|
||||
<th>盘点库区</th>
|
||||
<th>盘点货位</th>
|
||||
<th>数量</th>
|
||||
<th>盘点数量</th>
|
||||
<th>确认人</th>
|
||||
<th>确认时间</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="(e, i) in dataList" :key="i">
|
||||
<td>{{e.check_code}}</td>
|
||||
<td>{{e.status}}</td>
|
||||
<td>{{e.sect_name}}</td>
|
||||
<td>{{e.struct_name}}</td>
|
||||
<td>{{e.base_qty}}</td>
|
||||
<td><input type="number" class="sin_input" :min="0" v-model="value" @blur="e => {if (e.target.value === '') {value=0}}" v-enter-number></td>
|
||||
<td>{{e.check_optname}}</td>
|
||||
<td>{{e.check_time}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="submit-bar">
|
||||
<button class="submit-button" :class="{'btn-disabled': !dataList.length}" :disabled="disabled1" @tap="_saveCheck">保存</button>
|
||||
<button class="submit-button" :class="{'btn-disabled': !dataList.length}" :disabled="disabled1" @tap="_confirmCheck">确认</button>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import NavBar from '@/components/NavBar.vue'
|
||||
import {checkQueryDtl, saveCheck, confirmCheck} from '@/utils/getData1.js'
|
||||
export default {
|
||||
components: {
|
||||
NavBar,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
value: '1',
|
||||
checkCode: '',
|
||||
dataList: [],
|
||||
disabled1: false
|
||||
};
|
||||
},
|
||||
created () {
|
||||
},
|
||||
onLoad (option) {
|
||||
this.checkCode = option.check_code
|
||||
this._checkQueryDtl()
|
||||
},
|
||||
methods: {
|
||||
goIn () {
|
||||
uni.navigateTo({
|
||||
url: `/pages/WarehouseManage/CheckList`
|
||||
})
|
||||
},
|
||||
handleChange (e) {
|
||||
// console.log(e)
|
||||
},
|
||||
/** 初始化查询 */
|
||||
async _checkQueryDtl () {
|
||||
let res = await checkQueryDtl(this.checkCode)
|
||||
this.dataList = [...res.data]
|
||||
},
|
||||
async _saveCheck () {
|
||||
this.disabled1 = true
|
||||
try {
|
||||
let res = await saveCheck(this.dataList, this.checkCode)
|
||||
this.disabled1 = false
|
||||
this._checkQueryDtl()
|
||||
uni.showToast({
|
||||
title: res.message,
|
||||
icon: 'none'
|
||||
})
|
||||
} catch (e) {
|
||||
this.disabled1 = false
|
||||
}
|
||||
},
|
||||
async _confirmCheck () {
|
||||
this.disabled1 = true
|
||||
try {
|
||||
let res = await confirmCheck(this.dataList, this.checkCode)
|
||||
this.disabled1 = false
|
||||
this._checkQueryDtl()
|
||||
uni.showToast({
|
||||
title: res.message,
|
||||
icon: 'none'
|
||||
})
|
||||
} catch (e) {
|
||||
this.disabled1 = false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="stylus">
|
||||
.zd_content
|
||||
padding-bottom 77rpx
|
||||
.slide_new table td:nth-child(1), .slide_new table th:nth-child(1)
|
||||
box-shadow 1px 0 2px rgba(0,0,0,.12)
|
||||
.bgyellow td
|
||||
background-color #E9B451
|
||||
</style>
|
||||
99
pages/WarehouseManage/CheckList.vue
Normal file
99
pages/WarehouseManage/CheckList.vue
Normal file
@@ -0,0 +1,99 @@
|
||||
<template>
|
||||
<view class="zd_container">
|
||||
<nav-bar title="盘点单"></nav-bar>
|
||||
<view class="zd_content">
|
||||
<view class="zd_wrapper">
|
||||
<view class="filter_item">
|
||||
<view class="filter_label">单据编码</view>
|
||||
<view class="filter_input_wraper">
|
||||
<input type="text" class="filter_input" v-model="val1">
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="zd_wrapper grid-wraper">
|
||||
<view class="slide_new">
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>单据号</th>
|
||||
<th>单据类型</th>
|
||||
<th>仓库名称</th>
|
||||
<th>明细数</th>
|
||||
<th>状态</th>
|
||||
<th>创建人</th>
|
||||
<th>创建时间</th>
|
||||
<th>确认人</th>
|
||||
<th>确认时间</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.bill_code === pkId}">
|
||||
<td>{{e.check_code}}</td>
|
||||
<td>{{e.check_type}}</td>
|
||||
<td>{{e.stor_name}}</td>
|
||||
<td>{{e.dtl_num}}</td>
|
||||
<td>{{e.status}}</td>
|
||||
<td>{{e.input_optname}}</td>
|
||||
<td>{{e.input_time}}</td>
|
||||
<td>{{e.confirm_optname}}</td>
|
||||
<td>{{e.confirm_time}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="submit-bar">
|
||||
<button class="submit-button" :class="{'btn-disabled': !pkId}" :disabled="disabled1" @tap="toPandian">盘点</button>
|
||||
<button class="submit-button" @tap="_checkQuery">查询</button>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import NavBar from '@/components/NavBar.vue'
|
||||
import {checkQuery} from '@/utils/getData1.js'
|
||||
export default {
|
||||
components: {
|
||||
NavBar,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
val1: '',
|
||||
dataList: [],
|
||||
pkId: '',
|
||||
pkObj: {},
|
||||
disabled1: false
|
||||
};
|
||||
},
|
||||
created () {
|
||||
},
|
||||
methods: {
|
||||
/** 初始化查询 */
|
||||
async _checkQuery () {
|
||||
let res = await checkQuery(this.val1)
|
||||
this.dataList = [...res.data]
|
||||
},
|
||||
toPandian () {
|
||||
if (this.pkId) {
|
||||
uni.navigateTo({
|
||||
url: '/pages/WarehouseManage/CheckDtl?billcode=' + this.pkObj.check_code
|
||||
})
|
||||
}
|
||||
},
|
||||
toCheck (e) {
|
||||
this.pkId = this.pkId === e.check_code ? '' : e.check_code
|
||||
this.pkObj = this.pkId === e.check_code ? e : {}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="stylus">
|
||||
.zd_content
|
||||
padding-bottom 77rpx
|
||||
.slide_new table td:nth-child(1), .slide_new table th:nth-child(1)
|
||||
box-shadow 1px 0 2px rgba(0,0,0,.12)
|
||||
.bgyellow td
|
||||
background-color #E9B451
|
||||
</style>
|
||||
Reference in New Issue
Block a user