diff --git a/src/api/pick.js b/src/api/pick.js index 6a1c9db..e7fe1f8 100644 --- a/src/api/pick.js +++ b/src/api/pick.js @@ -30,6 +30,12 @@ export function allocate(ids) { data: ids }) } +export function getPickList() { + return request({ + url: 'api/pick/getPickList', + method: 'post' + }) +} export function cancelAllocate(ids) { return request({ @@ -38,4 +44,4 @@ export function cancelAllocate(ids) { data: ids }) } -export default { add, edit, del, allocate , cancelAllocate } +export default { add, edit, del, allocate, getPickList, cancelAllocate } diff --git a/src/api/pickDetail.js b/src/api/pickDetail.js index 68b8b50..8e6bc20 100644 --- a/src/api/pickDetail.js +++ b/src/api/pickDetail.js @@ -56,4 +56,11 @@ export function pickBarBack(pickDetailId) { }) } -export default { add, edit, del,allocate,cancelAllocate,picking,pickBarBack } +export function getPickDetail() { + return request({ + url: 'api/pickDetail/getPickDetail', + method: 'post' + }) +} + +export default { add, edit, del,allocate,cancelAllocate,picking,pickBarBack,getPickDetail } diff --git a/src/api/task.js b/src/api/task.js index 4f07624..06507dc 100644 --- a/src/api/task.js +++ b/src/api/task.js @@ -38,6 +38,16 @@ export function devanRfid(rfid, type) { } }) } +export function replaceInv(taskId, invId) { + return request({ + url: 'api/task/replaceInv', + method: 'post', + data: { + 'taskId': taskId, + 'invId': invId + } + }) +} export function manualReceiving(data) { return request({ url: 'api/task/manualReceiving', @@ -52,5 +62,12 @@ export function queryPickTask(id) { method: 'get' }) } +export function picking(datas) { + return request({ + url: 'api/task/picking', + method: 'post', + data: datas + }) +} -export default { add, edit, del, getTaskInfo, queryPickTask, manualReceiving, devanRfid } +export default { add, edit, del, getTaskInfo, queryPickTask, manualReceiving, picking, devanRfid, replaceInv } diff --git a/src/views/business-data/asnDetail/index.vue b/src/views/business-data/asnDetail/index.vue index affba86..fdeeacb 100644 --- a/src/views/business-data/asnDetail/index.vue +++ b/src/views/business-data/asnDetail/index.vue @@ -185,6 +185,9 @@ + + + diff --git a/src/views/business-data/businessTask/asnTask.vue b/src/views/business-data/businessTask/asnTask.vue index ef355c6..e091165 100644 --- a/src/views/business-data/businessTask/asnTask.vue +++ b/src/views/business-data/businessTask/asnTask.vue @@ -271,6 +271,7 @@ export default { crudTask.manualReceiving(this.fromManualReceiving).then(res => { this.crud.notify(res.message, res.status) this.crud.toQuery() + this.fromManualReceiving={} }) } } diff --git a/src/views/business-data/inventory/index.vue b/src/views/business-data/inventory/index.vue index 04360b4..ac1b97a 100644 --- a/src/views/business-data/inventory/index.vue +++ b/src/views/business-data/inventory/index.vue @@ -63,6 +63,10 @@ class="filter-item" @keyup.enter.native="crud.toQuery" /> + 重置 @@ -81,6 +85,18 @@ > 拆托 + + 替换分配库存 + - - - {{ scope.row.itemKey.item.code }} - - - - - {{ scope.row.itemKey.item.name }} - - - - - {{ scope.row.itemKey.propC1 }} - - + + + + + + + + {{ dict.label.inv_log_type[scope.row.logType] }} diff --git a/src/views/business-data/pickDetail/index.vue b/src/views/business-data/pickDetail/index.vue index 9ae495a..a816c9a 100644 --- a/src/views/business-data/pickDetail/index.vue +++ b/src/views/business-data/pickDetail/index.vue @@ -4,6 +4,17 @@ + + + + + @@ -94,7 +105,7 @@ slot="right" class="filter-item" type="danger" - icon="el-icon-edit" + icon="el-icon-document-add" size="mini" :loading="crud.delAllLoading" :disabled="crud.selections.length !== 1 || this.crud.selections[0].allocatedQty<=this.crud.selections[0].pickedQty" @@ -193,6 +204,17 @@ width="580px" > + + + + + import crudPickDetail from '@/api/pickDetail' +import crudPick, { getPickList } from '@/api/pick' import CRUD, { presenter, header, form, crud } from '@crud/crud' import rrOperation from '@crud/RR.operation' import crudOperation from '@crud/CRUD.operation' @@ -271,10 +294,11 @@ import { getItems, getItemsList } from '@/api/item' import PickTask from '@/views/business-data/pickDetail/pickTicketTask.vue' import DateRangePicker from '@/components/DateRangePicker/index.vue' import DonMessage from "@/utils/message"; +import {getAsnList} from "@/api/asn"; const defaultForm = { id: null, - pick: null, + pick: { relatedBill1: null }, item: null, lineNo: null, po: null, @@ -327,6 +351,7 @@ export default { return { show_jh: true, show_cancelfp: true, + pickList: [], radio3: '全部', items: [], permission: { @@ -338,6 +363,9 @@ export default { rules: { item: [ { required: true, message: '物料必填', trigger: 'blur' } + ], + pick: [ + { required: true, message: '所属出库单必填', trigger: 'blur' } ] }, queryTypeOptions: [ @@ -349,16 +377,28 @@ export default { itemListData: [] } }, + pick: { relatedBill1: null }, mounted() { // 初始化数据 this.getItem() this.itemDataGet() + this.getPicks() }, methods: { // 钩子:在获取表格数据之前执行,false 则代表不获取数据 [CRUD.HOOK.beforeRefresh]() { return true }, + getPicks() { + crudPick.getPickList({}).then(res => { + this.pickList = res.map(function (obj) { + if (obj.hasChildren) { + obj.children = null + } + return obj + }) + }) + }, getItem() { getItems({}).then(res => { this.items = res.content.map(function(obj) { diff --git a/src/views/business-data/pickDetail/pickTask.vue b/src/views/business-data/pickDetail/pickTask.vue index b9eedc7..f55a79b 100644 --- a/src/views/business-data/pickDetail/pickTask.vue +++ b/src/views/business-data/pickDetail/pickTask.vue @@ -33,9 +33,7 @@ - 原点位 - 目标点位 @@ -51,12 +49,33 @@ > 人工出库 + + 替换分配库存 + - + + + + + + @@ -67,9 +86,9 @@ - - - + @@ -78,7 +97,7 @@ @@ -115,6 +134,19 @@ + + + + @@ -124,7 +156,7 @@