Browse Source

完善功能

wms3.0_pda
niexiting 10 months ago
parent
commit
74db48f91a
  1. 2
      common/style/new_style.css
  2. 19
      mycomponents/item/itemQty.vue
  3. 2
      mycomponents/qty/balanceQty.vue
  4. 22
      mycomponents/qty/compareQty.vue
  5. 2
      mycomponents/record/recordComDetailCard.vue
  6. 1
      mycomponents/scan/winScanPackAndLocation.vue
  7. 8
      pages/count/coms/comCountDetailCard.vue
  8. 177
      pages/count/job/countDetail.vue
  9. 19
      pages/productionReceipt/job/productionReceiptDetail.vue
  10. 2
      pages/transfer/coms/comReceiptDetailCard.vue
  11. 75
      pages/unPlanned/coms/comReceiptDetailCard.vue
  12. 2
      static/config.json

2
common/style/new_style.css

@ -2439,7 +2439,7 @@ button[disabled] {
font-size: 38rpx; font-size: 38rpx;
} }
.text_stock { .text_balance {
font-size: 36rpx; font-size: 36rpx;
} }

19
mycomponents/item/itemQty.vue

@ -4,9 +4,9 @@
<item :dataContent="dataContent"></item> <item :dataContent="dataContent"></item>
</view> </view>
<view> <view>
<balanceQty v-if="showItemQty" :dataContent="dataContent"></balanceQty> <balance-qty v-if="showBalanceQty" :dataContent="dataContent"></balance-qty>
<compare-qty v-else :dataContent="dataContent" :recommendQty="Number(dataContent.qty)" <compare-qty v-else :dataContent="dataContent" :recommendQty="Number(dataContent.qty)"
:handleQty="Number(handleQty)" :isShowStatus="false"> :isShowRecommendQty='showRecommendQty' :handleQty="Number(handleQty)" :isShowStdPack="showStdPack" :isShowStatus="false">
</compare-qty> </compare-qty>
</view> </view>
<!-- <view v-else> <!-- <view v-else>
@ -18,7 +18,6 @@
</view> </view>
</template> </template>
<script> <script>
import item from '@/mycomponents/item/item.vue' import item from '@/mycomponents/item/item.vue'
import balanceQty from '@/mycomponents/qty/balanceQty.vue' import balanceQty from '@/mycomponents/qty/balanceQty.vue'
import compareQty from '@/mycomponents/qty/compareQty.vue' import compareQty from '@/mycomponents/qty/compareQty.vue'
@ -44,7 +43,19 @@
type: Number, type: Number,
default: 0 default: 0
}, },
showItemQty: { // showItemQty: {
// type: Boolean,
// default: true
// },
showBalanceQty: {
type: Boolean,
default: true
},
showRecommendQty: {
type: Boolean,
default: true
},
showStdPack: {
type: Boolean, type: Boolean,
default: true default: true
} }

2
mycomponents/qty/balanceQty.vue

@ -1,7 +1,7 @@
<template> <template>
<view> <view>
<view class="center"> <view class="center">
<view class="uni-flex uni-row" style="font-size: 40rpx;"> <view class="uni-flex uni-row text_balance">
<text> <text>
{{Number(dataContent.qty)}} {{Number(dataContent.qty)}}
</text> </text>

22
mycomponents/qty/compareQty.vue

@ -4,16 +4,22 @@
<status v-show="isShowStatus" :status='dataContent.inventoryStatus'></status> <status v-show="isShowStatus" :status='dataContent.inventoryStatus'></status>
<view class="uni-flex uni-row center"> <view class="uni-flex uni-row center">
<view v-if="Number(handleQty)!=0"> <view v-if="Number(handleQty)!=0">
<view v-if="Number(recommendQty)>Number(handleQty)" class="text_greater"> <view v-if="isShowRecommendQty">
{{Number(handleQty)}} <view v-if="Number(recommendQty)>Number(handleQty)" class="text_greater">
{{Number(handleQty)}}
</view>
<view v-else-if="Number(recommendQty)<Number(handleQty)" class="text_less">
{{Number(handleQty)}}
</view>
<view v-else-if="Number(recommendQty) ==Number( handleQty)" class="text_equal">
{{Number(handleQty)}}
</view>
</view> </view>
<view v-else-if="Number(recommendQty)<Number(handleQty)" class="text_less"> <view v-else>
{{Number(handleQty)}} <view class="text_balance">
{{Number(handleQty)}}
</view>
</view> </view>
<view v-else-if="Number(recommendQty) ==Number( handleQty)" class="text_equal">
{{Number(handleQty)}}
</view>
</view> </view>
<view class="center" v-if="isShowRecommendQty"> <view class="center" v-if="isShowRecommendQty">
<view v-if="Number(handleQty)!=0" class="std_split">/</view> <view v-if="Number(handleQty)!=0" class="std_split">/</view>

2
mycomponents/record/recordComDetailCard.vue

@ -6,7 +6,7 @@
<uni-swipe-action ref="swipeAction"> <uni-swipe-action ref="swipeAction">
<uni-swipe-action-item @click="removeItem($event,dataContent)" :right-options="removeOptions"> <uni-swipe-action-item @click="removeItem($event,dataContent)" :right-options="removeOptions">
<item-qty :dataContent="dataContent" :handleQty="dataContent.handleQty" <item-qty :dataContent="dataContent" :handleQty="dataContent.handleQty"
:isShowBalance="true" :showItemQty="isShowItemQty"></item-qty> :isShowBalance="true" :showBalanceQty="isShowItemQty"></item-qty>
</uni-swipe-action-item> </uni-swipe-action-item>
</uni-swipe-action> </uni-swipe-action>
</template> </template>

1
mycomponents/scan/winScanPackAndLocation.vue

@ -35,7 +35,6 @@
{{fromLocationCode}} {{fromLocationCode}}
</text> </text>
</view> </view>
</view> </view>
</view> </view>
<view class=""> <view class="">

8
pages/count/coms/comCountDetailCard.vue

@ -5,12 +5,12 @@
<template v-slot:title> <template v-slot:title>
<uni-swipe-action ref="swipeAction"> <uni-swipe-action ref="swipeAction">
<uni-swipe-action-item @click="removeData($event,dataContent)" :right-options="removeOptions"> <uni-swipe-action-item @click="removeData($event,dataContent)" :right-options="removeOptions">
<!-- 明盘 -->
<item-qty v-if="settingParam.isOpenCount=='TRUE'" :dataContent="dataContent" <item-qty v-if="settingParam.isOpenCount=='TRUE'" :dataContent="dataContent"
:handleQty="dataContent.handleQty" :showItemQty="settingParam.isOpenCount=='FALSE'"> :handleQty="dataContent.handleQty" showItemQty="TRUE">
</item-qty>
<item-qty v-else :dataContent="dataContent" :handleQty="dataContent.handleQty"
:showBalanceQty="false" :showRecommendQty="false" :showStdPack="true">
</item-qty> </item-qty>
<!-- 盲盘 -->
<item v-else :dataContent="dataContent"></item>
</uni-swipe-action-item> </uni-swipe-action-item>
</uni-swipe-action> </uni-swipe-action>
</template> </template>

177
pages/count/job/countDetail.vue

@ -53,6 +53,7 @@
<count-qty-edit ref="countQtyEdit" @confirm="editConfirm" @close="editClose" :isShowStatus="true" <count-qty-edit ref="countQtyEdit" @confirm="editConfirm" @close="editClose" :isShowStatus="true"
:allowEditStatus="editInventoryStatus" :isShowBalance="jobContent.isOpenCount=='TRUE'"> :allowEditStatus="editInventoryStatus" :isShowBalance="jobContent.isOpenCount=='TRUE'">
</count-qty-edit> </count-qty-edit>
<balance-select ref="balanceSelect" @onSelectItem='selectBalanceItem'></balance-select>
<com-message ref="comMessage"></com-message> <com-message ref="comMessage"></com-message>
</view> </view>
</template> </template>
@ -86,6 +87,7 @@
import winScanPackAndLocation from "@/mycomponents/scan/winScanPackAndLocation.vue" import winScanPackAndLocation from "@/mycomponents/scan/winScanPackAndLocation.vue"
import countQtyEdit from '@/mycomponents/qty/countQtyEdit.vue' import countQtyEdit from '@/mycomponents/qty/countQtyEdit.vue'
import jobTop from '@/mycomponents/job/jobTop.vue' import jobTop from '@/mycomponents/job/jobTop.vue'
import balanceSelect from '@/mycomponents/balance/balanceSelect.vue'
export default { export default {
name: 'receipt_detail', name: 'receipt_detail',
@ -97,7 +99,8 @@
comMessage, comMessage,
winScanPackAndLocation, winScanPackAndLocation,
countQtyEdit, countQtyEdit,
jobTop jobTop,
balanceSelect
}, },
data() { data() {
return { return {
@ -271,10 +274,6 @@
updateData() { updateData() {
this.calcHandleQty(); this.calcHandleQty();
}, },
// editConfirm() {
// this.calcHandleQty();
// this.scanPopupGetFocus();
// },
openScanPopup() { openScanPopup() {
let fromlocationCode = ''; let fromlocationCode = '';
@ -318,13 +317,29 @@
// //
getScanResult(result) { getScanResult(result) {
if (this.jobContent.isOpenCount) {
this.getOpenCountResult(result);
} else {
this.getUnOpenCountResult(result);
}
},
getOpenCountResult(result) {
try { try {
let that = this; let that = this;
that.package = result.package; that.package = result.package;
that.label = result.label; that.label = result.label;
var item = this.detailSource.find(r => r.itemCode == that.package.itemCode); var item = this.detailSource.find(r => r.itemCode == that.package.itemCode);
if (item == undefined) { if (item == undefined) {
// this.$refs.comMessage.showQuestionMessage("" + that.package.itemCode +
// ",?",
// res => {
// if (res) {
that.scanByBalance(result); that.scanByBalance(result);
// } else {
// this.scanPopupGetFocus();
// }
// })
} else { } else {
let subItem = item.subList.find(item => { let subItem = item.subList.find(item => {
if (item.packingNumber == that.label.packingNumber && if (item.packingNumber == that.label.packingNumber &&
@ -356,6 +371,52 @@
} }
}, },
getUnOpenCountResult(result) {
try {
let that = this;
that.package = result.package;
that.label = result.label;
var item = this.detailSource.find(r => r.itemCode == that.package.itemCode);
if (item == undefined) {
this.$refs.comMessage.showQuestionMessage("没有物料【" + that.package.itemCode +
"】的盘点明细,是否继续盘点?",
res => {
if (res) {
that.scanByLabel(result);
} else {
this.scanPopupGetFocus();
}
})
} else {
let subItem = item.subList.find(item => {
if (item.packingNumber == that.label.packingNumber &&
item.batch == that.label.batch && item.scaned == true) {
return item;
}
})
if (subItem != undefined) {
this.$refs.comMessage.showQuestionMessage("箱码【" + that.label.packingNumber +
"】已经完成盘点,是否要编辑盘点结果?",
res => {
if (res) {
this.currentEditItem = subItem;
this.$refs.countQtyEdit.openEditPopup(subItem,
item.subList);
} else {
this.scanPopupGetFocus();
}
})
} else {
that.scanByLabel(result);
}
}
} catch (e) {
this.showErrorMessage(e.message)
}
},
//
scanByBalance(result) { scanByBalance(result) {
let that = this; let that = this;
if (result.balance.length == 0) { if (result.balance.length == 0) {
@ -380,24 +441,51 @@
} }
}) })
} else if (result.balance.length == 1) { } else if (result.balance.length == 1) {
that.balance = result.balance[0]; this.countByBalance(result.balance[0]);
that.balance.qty = 0 } else {
that.balance.handleQty = Number(that.label.qty); //
that.balance.balanceQty = that.balance.qty; this.$refs.balanceSelect.openPopup(result.balance);
that.balance.stdPackQty = that.package.stdPackQty;
that.balance.stdPackUnit = that.package.stdPackUnit;
that.$refs.countQtyEdit.openEditPopupShowSeconds(that.balance,
null);
} }
}, },
//
scanByLabel(result) {
let that = this;
that.scanPopupLoseFocus()
let item = that.package;
item.packingNumber = that.label.packingNumber;
item.qty = 0
item.handleQty = Number(that.label.qty);
item.balanceQty = 0;
item.inventoryStatus = "OK";
that.balance = item;
that.$refs.countQtyEdit.openEditPopupShowSeconds(item,
null);
},
selectBalanceItem(balance) {
this.countByBalance(balance);
},
countByBalance(balance) {
this.balance = balance;
// this.balance.qty = 0
this.balance.handleQty = Number(this.label.qty);
this.balance.balanceQty = this.balance.qty;
this.balance.stdPackQty = this.package.stdPackQty;
this.balance.stdPackUnit = this.package.stdPackUnit;
this.$refs.countQtyEdit.openEditPopupShowSeconds(this.balance,
null);
},
editConfirm(qty, inventoryStatus, mode) { editConfirm(qty, inventoryStatus, mode) {
let that = this; let that = this;
// //
if (mode == 'edit') { if (mode == 'edit') {
this.currentEditItem.handleQty = qty; this.currentEditItem.handleQty = qty;
this.currentEditItem.inventoryStatus = inventoryStatus; this.currentEditItem.inventoryStatus = inventoryStatus;
} else { // } else {
//
// //
var detail = that.detailSource.find(r => r.itemCode == that.package.itemCode); var detail = that.detailSource.find(r => r.itemCode == that.package.itemCode);
if (detail == undefined) { if (detail == undefined) {
@ -433,60 +521,13 @@
}, },
// editConfirm(qty, inventoryStatus, mode) { openEditConfirm() {
// let that = this;
// var detail = that.detailSource.find(r => r.itemCode == that.package.itemCode); },
// // unOpenEditConfirm() {
// if (detail == undefined) {
// // },
// that.addNewItemCodeToList(qty, inventoryStatus)
// } else {
// var itemEditInfo = detail.subList.find(item => {
// if (item.packingNumber == that.package.number &&
// item.batch == that.package.batch &&
// item.inventoryStatus == inventoryStatus) {
// return item;
// }
// })
// if (itemEditInfo == undefined) {
// //
// if (mode == 'edit') {
// that.currentEditItem.handleQty = qty;
// that.currentEditItem.inventoryStatus = inventoryStatus;
// } else {
// that.addExistItemCodeToList(detail, qty, inventoryStatus);
// }
// } else { //
// if (itemEditInfo.scaned) {
// }
// itemEditInfo.scaned = true;
// itemEditInfo.handleQty = qty;
// itemEditInfo.inventoryStatus = inventoryStatus;
// itemEditInfo.balanceQty = that.balance.qty;
// itemEditInfo.stdPackQty = that.package.stdPackQty;
// itemEditInfo.stdPackUnit = that.package.stdPackUnit;
// //0
// if (mode == 'edit') {
// itemEditInfo.scaned = false;
// that.currentEditItem.handleQty = 0;
// }
// // this.$refs.countQtyEdit.openEditPopupShowSeconds(itemEditInfo, detail
// // .subList);
// that.updateData()
// }
// setTimeout(r => {
// this.calcHandleQty();
// this.scanPopupGetFocus();
// }, 100)
// }
// },
editClose() { editClose() {
this.scanPopupGetFocus(); this.scanPopupGetFocus();

19
pages/productionReceipt/job/productionReceiptDetail.vue

@ -247,7 +247,11 @@
getScanResult(result) { getScanResult(result) {
try { try {
var supplierCode = result.package.supplierCode var supplierCode = result.label.supplierCode;
if (supplierCode == '' || supplierCode == undefined) {
this.showErrorMessage("标签中未解析到供应商信息,请重新扫描")
return;
}
var packingNumber = result.balance.packingNumber; var packingNumber = result.balance.packingNumber;
var batch = result.balance.batch; var batch = result.balance.batch;
var qty = result.balance.qty; var qty = result.balance.qty;
@ -275,8 +279,9 @@
let balanceStatus = getInventoryStatusName(result.balance.inventoryStatus); let balanceStatus = getInventoryStatusName(result.balance.inventoryStatus);
let itemStatus = getInventoryStatusName(itemDetail.inventoryStatus); let itemStatus = getInventoryStatusName(itemDetail.inventoryStatus);
if (itemDetail.inventoryStatus != result.balance.inventoryStatus) { if (itemDetail.inventoryStatus != result.balance.inventoryStatus) {
if(this.jobContent.allowModifyInventoryStatus=="TRUE"){ if (this.jobContent.allowModifyInventoryStatus == "TRUE") {
this.showQuestionMessage('任务中允许修改库存状态,实际库存状态[' + balanceStatus + ']与推荐库存状态[' + itemStatus + this.showQuestionMessage('任务中允许修改库存状态,实际库存状态[' + balanceStatus + ']与推荐库存状态[' +
itemStatus +
']不一致,是否继续上架?', res => { ']不一致,是否继续上架?', res => {
if (res) { if (res) {
itemDetail.scaned = true; itemDetail.scaned = true;
@ -285,15 +290,16 @@
itemDetail.toInventoryStatus = result.balance.inventoryStatus; itemDetail.toInventoryStatus = result.balance.inventoryStatus;
itemDetail.balance = result.balance; itemDetail.balance = result.balance;
itemDetail.balance.balanceQty = Number(result.balance.qty) itemDetail.balance.balanceQty = Number(result.balance.qty)
itemDetail.balance.stdPackQty = Number(result.package.stdPackQty) itemDetail.balance.stdPackQty = Number(result.package.stdPackQty)
itemDetail.balance.stdPackUnit = result.package.stdPackUnit itemDetail.balance.stdPackUnit = result.package.stdPackUnit
this.calcHandleQty(); this.calcHandleQty();
} else { } else {
this.scanPopupGetFocus(); this.scanPopupGetFocus();
} }
}); });
}else { } else {
this.showQuestionMessage('任务中不允许修改库存状态,实际库存状态[' + balanceStatus + ']与推荐库存状态[' + itemStatus + this.showQuestionMessage('任务中不允许修改库存状态,实际库存状态[' + balanceStatus + ']与推荐库存状态[' +
itemStatus +
']不一致,不允许转移!', res => { ']不一致,不允许转移!', res => {
this.scanPopupGetFocus(); this.scanPopupGetFocus();
}); });
@ -428,7 +434,6 @@
detail.toBatch = info.batch; detail.toBatch = info.batch;
detail.toContainerNumber = ""; detail.toContainerNumber = "";
detail.toLocationCode = this.toLocationCode; detail.toLocationCode = this.toLocationCode;
subList.push(detail) subList.push(detail)
} }
}) })

2
pages/transfer/coms/comReceiptDetailCard.vue

@ -3,7 +3,7 @@
<uni-collapse ref="collapse1" @change=""> <uni-collapse ref="collapse1" @change="">
<uni-collapse-item :open="true"> <uni-collapse-item :open="true">
<template v-slot:title> <template v-slot:title>
<item-qty :dataContent="dataContent" :handleQty="dataContent.handleQty" :showItemQty ="false"></item-qty> <item-qty :dataContent="dataContent" :handleQty="dataContent.handleQty" :showBalanceQty ="false"></item-qty>
</template> </template>
<u-line /> <u-line />
<view class="" v-for="(item,index) in dataContent.subList"> <view class="" v-for="(item,index) in dataContent.subList">

75
pages/unPlanned/coms/comReceiptDetailCard.vue

@ -3,14 +3,15 @@
<uni-collapse ref="collapse1" @change=""> <uni-collapse ref="collapse1" @change="">
<uni-collapse-item :open="true"> <uni-collapse-item :open="true">
<template v-slot:title> <template v-slot:title>
<item-qty :dataContent="dataContent" :handleQty="dataContent.handleQty" :showItemQty ="false"></item-qty> <item-qty :dataContent="dataContent" :handleQty="dataContent.handleQty" :showBalanceQty="false">
</item-qty>
</template> </template>
<u-line /> <u-line />
<view class="" v-for="(item,index) in dataContent.subList"> <view class="" v-for="(item,index) in dataContent.subList">
<uni-swipe-action ref="swipeAction"> <uni-swipe-action ref="swipeAction">
<uni-swipe-action-item @click="swipeClick($event,item)" <uni-swipe-action-item @click="swipeClick($event,item)"
:right-options="item.scaned?scanOptions:detailOptions"> :right-options="item.scaned?scanOptions:detailOptions">
<recommend :detail="item" :isShowFromLocation="false" :isShowToLocation="true"> <recommend :detail="item" :isShowFromLocation="false" :isShowToLocation="true">
</recommend> </recommend>
</uni-swipe-action-item> </uni-swipe-action-item>
</uni-swipe-action> </uni-swipe-action>
@ -18,8 +19,7 @@
</view> </view>
</uni-collapse-item> </uni-collapse-item>
</uni-collapse> </uni-collapse>
<recommend-qty-edit ref="receiptEdit" :dataContent="editItem" :settingParam="settingParam" <recommend-qty-edit ref="receiptEdit" :dataContent="editItem" :settingParam="settingParam" @confirm="confirm">
@confirm="confirm">
</recommend-qty-edit> </recommend-qty-edit>
<win-scan-location ref="scanLocationCode" title="目标库位" @getLocation='getLocation' <win-scan-location ref="scanLocationCode" title="目标库位" @getLocation='getLocation'
:locationTypeList="locationTypeList"></win-scan-location> :locationTypeList="locationTypeList"></win-scan-location>
@ -91,7 +91,8 @@
this.detailOptions = getDetailOption(); this.detailOptions = getDetailOption();
} }
if (this.scanOptions.length == 0) { if (this.scanOptions.length == 0) {
this.scanOptions = getPurchaseReceiptOption(this.settingParam.allowModifyQty,this.settingParam.allowModifyLocation) this.scanOptions = getPurchaseReceiptOption(this.settingParam.allowModifyQty, this.settingParam
.allowModifyLocation)
} }
}, },
@ -101,45 +102,45 @@
this.detail(item) this.detail(item)
} else if (e.content.text == "编辑") { } else if (e.content.text == "编辑") {
this.edit(item) this.edit(item)
} else if (e.content.text == "库位") { } else if (e.content.text == "库位") {
this.showLocation(item) this.showLocation(item)
} else if (e.content.text == "移除") { } else if (e.content.text == "移除") {
this.remove(item) this.remove(item)
} }
}, },
edit(item) { edit(item) {
this.editItem = item; this.editItem = item;
this.$refs.receiptEdit.openTaskEditPopup(item.qty, item.handleQty,item.labelQty); this.$refs.receiptEdit.openTaskEditPopup(item.qty, item.handleQty, item.labelQty);
}, },
showLocation(item) { showLocation(item) {
this.locatonItem =item; this.locatonItem = item;
this.$refs.scanLocationCode.openScanPopup(); this.$refs.scanLocationCode.openScanPopup();
}, },
// //
getLocation(location, code) { getLocation(location, code) {
this.locatonItem.toLocationCode =code; this.locatonItem.toLocationCode = code;
this.$emit('updateData') this.$emit('updateData')
}, },
detail(item) { detail(item) {
this.showItem = item; this.showItem = item;
this.$refs.detailInfoPopup.openPopup(item) this.$refs.detailInfoPopup.openPopup(item)
}, },
remove(item) { remove(item) {
this.$refs.message.showQuestionMessage("确定移除扫描信息?", this.$refs.message.showQuestionMessage("确定移除扫描信息?",
res => { res => {
if (res) { if (res) {
item.scaned = false item.scaned = false
item.handleQty = null item.handleQty = null
this.$forceUpdate() this.$forceUpdate()
this.$emit('remove', item) this.$emit('remove', item)
} }
}); });
}, },
confirm(qty) { confirm(qty) {
this.editItem.handleQty = qty; this.editItem.handleQty = qty;
this.$emit('updateData') this.$emit('updateData')
} }
} }
} }
</script> </script>

2
static/config.json

@ -18,7 +18,7 @@
"request_url": { "request_url": {
"name": "request_url", "name": "request_url",
"value": "http://192.168.0.158:12080/admin-api", "value": "http://dev.ccwin-in.com:25100/api/admin-api",
"dev2": "http://192.168.0.157:12080/admin-api", "dev2": "http://192.168.0.157:12080/admin-api",
"chefang": "http://192.168.0.176:12080/admin-api", "chefang": "http://192.168.0.176:12080/admin-api",
"chenxinming": "http://192.179.0.230:12080/admin-api", "chenxinming": "http://192.179.0.230:12080/admin-api",

Loading…
Cancel
Save