Browse Source

修改物料隔离输入框焦点校验

intex
lijuncheng 2 days ago
parent
commit
6f8338ef7a
  1. 29
      src/pages/inventoryMove/coms/comMoveRecord.vue
  2. 47
      src/pages/inventoryMove/coms/okToHoldRecordPack.vue

29
src/pages/inventoryMove/coms/comMoveRecord.vue

@ -41,7 +41,8 @@
<win-scan-pack-and-location ref="scanPopup" @getResult='getScanResult' :title="'箱码'"> <win-scan-pack-and-location ref="scanPopup" @getResult='getScanResult' :title="'箱码'">
</win-scan-pack-and-location> </win-scan-pack-and-location>
<win-scan-location ref="scanFromLocationCode" title="来源库位" @getLocation='getFromLocation' <win-scan-location ref="scanFromLocationCode" title="来源库位" @getLocation='getFromLocation'
:locationAreaTypeList="fromLocationAreaTypeList"></win-scan-location> :locationAreaTypeList="fromLocationAreaTypeList"
@clearFromLocation="clearFromLocationCode"></win-scan-location>
<comMessage ref="comMessage"></comMessage> <comMessage ref="comMessage"></comMessage>
</view> </view>
</template> </template>
@ -373,6 +374,10 @@
return true return true
}, },
clearFromLocationCode() {
this.$refs.okToHoldRecordPackRef.fromLocationCode = ''
},
getScanResultAfter(result) { getScanResultAfter(result) {
var balance = result.balance; var balance = result.balance;
@ -543,9 +548,29 @@
if (fromWitch == 'fromLocationScanMsg') { if (fromWitch == 'fromLocationScanMsg') {
this.isClearFromLocationCode = false this.isClearFromLocationCode = false
this.$refs.scanFromLocationCode.getScanResult(result) this.$refs.scanFromLocationCode.getScanResult(result)
} else if (fromWitch == 'itemCodeScanMsg') { } else if (fromWitch == 'itemCodeScan') {
result.fromLocationCode = this.fromLocationCode result.fromLocationCode = this.fromLocationCode
result.label.itemCode = result.label.code
this.checkItemCode(result.label.itemCode, callBack => {
if (callBack) {
if (checkDirectoryItemExist(this.itemCodeTypeList, callBack)) {
this.$refs.scanPopup.getScanResult(result) this.$refs.scanPopup.getScanResult(result)
} else {
this.$refs.okToHoldRecordPackRef.itemCode = ''
var hint = getListItemTypeDesc(this.itemCodeTypeList);
this.showErrorMessage("扫描物料[" + result.label.itemCode + "]是[" +
getItemTypeName(callBack) + "],需要的物料类型是[" + hint + "]")
}
} else {
this.$refs.okToHoldRecordPackRef.itemCode = ''
this.showErrorMessage('未查找到物料【' + result.label.itemCode + '】');
}
})
} }
}, },
// //

47
src/pages/inventoryMove/coms/okToHoldRecordPack.vue

@ -10,8 +10,11 @@
<view class="item"> <view class="item">
<view class="label">来源库位</view> <view class="label">来源库位</view>
<view class="value"> <view class="value">
<u-input v-model="fromLocationCode"></u-input> <u-input v-model="fromLocationCode" @confirm="fromLocationScanMsg" @blur="fromLocationScanMsg"
<u-icon name="close-circle-fill" color="#acacac" size="36" @click="fromLocationCode=''" v-if="fromLocationCode"></u-icon>
></u-input>
<u-icon name="close-circle-fill" color="#acacac" size="36" @click="fromLocationCode=''"
v-if="fromLocationCode"></u-icon>
</view> </view>
<view class="searchIcon"> <view class="searchIcon">
<image src="/static/search.svg" mode="" @click="fromLocationClick" /> <image src="/static/search.svg" mode="" @click="fromLocationClick" />
@ -20,8 +23,9 @@
<view class="item"> <view class="item">
<view class="label">零件</view> <view class="label">零件</view>
<view class="value"> <view class="value">
<u-input v-model="itemCode"></u-input> <u-input v-model="itemCode" @confirm="itemCodeScanMsg" @blur="itemCodeScanMsg"></u-input>
<u-icon name="close-circle-fill" color="#acacac" size="36" @click="itemCode=''" v-if="itemCode"></u-icon> <u-icon name="close-circle-fill" color="#acacac" size="36" @click="itemCode=''"
v-if="itemCode"></u-icon>
</view> </view>
<view class="searchIcon"> <view class="searchIcon">
<image src="/static/search.svg" mode="" @click="itemCodeClick" /> <image src="/static/search.svg" mode="" @click="itemCodeClick" />
@ -31,7 +35,8 @@
<view class="label">批次</view> <view class="label">批次</view>
<view class="value"> <view class="value">
<u-input v-model='batch'></u-input> <u-input v-model='batch'></u-input>
<u-icon name="close-circle-fill" color="#acacac" size="36" @click="batch = ''" v-if="batch"></u-icon> <u-icon name="close-circle-fill" color="#acacac" size="36" @click="batch = ''"
v-if="batch"></u-icon>
</view> </view>
<view class="searchIcon"></view> <view class="searchIcon"></view>
</view> </view>
@ -43,7 +48,8 @@
</view> </view>
</view> </view>
<view class="uni-flex uni-row hide_border"> <view class="uni-flex uni-row hide_border">
<button class="btn_edit_big_cancle" hover-class="btn_edit_big_after" @click="showOne = false">取消</button> <button class="btn_edit_big_cancle" hover-class="btn_edit_big_after"
@click="showOne = false">取消</button>
<button class="btn_edit_big_confirm" hover-class="btn_edit_big_after" @click="confirm()">确认</button> <button class="btn_edit_big_confirm" hover-class="btn_edit_big_after" @click="confirm()">确认</button>
</view> </view>
</u-popup> </u-popup>
@ -64,6 +70,10 @@
getLabelInfo getLabelInfo
} from '../../../common/label.js'; } from '../../../common/label.js';
import {
getBasicLocationByCode,
} from '@/api/request2.js';
import uom from '@/mycomponents/qty/uom.vue' import uom from '@/mycomponents/qty/uom.vue'
@ -73,7 +83,9 @@ import uom from '@/mycomponents/qty/uom.vue'
winScanLocation, winScanLocation,
uom uom
}, },
emits: ["showFromLocationPopup",'itemCodeClick','confirm','getInputMsgResult','clearFromLocationCode','clickBtnClearItemCode'], emits: ["showFromLocationPopup", 'itemCodeClick', 'confirm', 'getInputMsgResult', 'clearFromLocationCode',
'clickBtnClearItemCode'
],
data() { data() {
return { return {
handleQty: 0, handleQty: 0,
@ -92,8 +104,7 @@ import uom from '@/mycomponents/qty/uom.vue'
default: false default: false
}, },
}, },
mounted() { mounted() {},
},
methods: { methods: {
// //
fromLocationClick() { fromLocationClick() {
@ -134,23 +145,29 @@ import uom from '@/mycomponents/qty/uom.vue'
}, },
fromLocationScanMsg() { fromLocationScanMsg() {
setTimeout(() => {
if (this.fromLocationCode) { if (this.fromLocationCode) {
this.scanMsg = this.fromLocationCode this.scanMsg = this.fromLocationCode
this.fromWitch = 'fromLocationScanMsg' this.fromWitch = 'fromLocationScanMsg'
this.isFromLocationFocus = false this.isFromLocationFocus = false
this.handelScanMsg() this.handelScanMsg()
} }
}, 500);
}, },
itemCodeScanMsg() { itemCodeScanMsg() {
setTimeout(() => {
if (this.itemCode) { if (this.itemCode) {
if (!this.fromLocationCode) { if (!this.fromLocationCode) {
this.$refs.comMessage.showMessage("请先扫描来源库位") this.$refs.comMessage.showMessage("请先扫描来源库位")
return return
} }
this.fromWitch = 'itemCodeScanMsg' this.fromWitch = 'itemCodeScan'
this.scanMsg = this.itemCode this.scanMsg = this.itemCode
this.handelScanMsg() this.handelScanMsg()
} }
}, 500);
}, },
handelScanMsg() { handelScanMsg() {
// //
@ -228,6 +245,7 @@ import uom from '@/mycomponents/qty/uom.vue'
padding: 30rpx 20rpx; padding: 30rpx 20rpx;
display: flex; display: flex;
border-bottom: 1px solid rgba(230, 230, 230, 1); border-bottom: 1px solid rgba(230, 230, 230, 1);
.title-txt { .title-txt {
flex: 1; flex: 1;
font-weight: bold; font-weight: bold;
@ -235,23 +253,28 @@ import uom from '@/mycomponents/qty/uom.vue'
} }
} }
.select { .select {
display: flex; display: flex;
} }
.border { .border {
border: 1px solid rgba(230, 230, 230, 1) border: 1px solid rgba(230, 230, 230, 1)
} }
::v-deep .u-input__right-icon__clear { ::v-deep .u-input__right-icon__clear {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
color: #a7a7a7; color: #a7a7a7;
} }
.item { .item {
display: flex; display: flex;
align-items: center; align-items: center;
padding: 20rpx; padding: 20rpx;
border-bottom: 1px solid #dedede; border-bottom: 1px solid #dedede;
.value { .value {
flex: 1; flex: 1;
width: 0px; width: 0px;
@ -262,6 +285,7 @@ import uom from '@/mycomponents/qty/uom.vue'
font-size: 32rpx; font-size: 32rpx;
padding: 0px 20rpx; padding: 0px 20rpx;
} }
.value1 { .value1 {
flex: 1; flex: 1;
width: 0px; width: 0px;
@ -270,14 +294,17 @@ import uom from '@/mycomponents/qty/uom.vue'
align-items: center; align-items: center;
font-size: 32rpx; font-size: 32rpx;
} }
.searchIcon { .searchIcon {
width: 40rpx; width: 40rpx;
margin-left: 20rpx; margin-left: 20rpx;
image { image {
width: 40rpx; width: 40rpx;
height: 40rpx height: 40rpx
} }
} }
.uom { .uom {
margin-left: 10rpx; margin-left: 10rpx;
} }

Loading…
Cancel
Save