收货确认
This commit is contained in:
@@ -44,6 +44,14 @@
|
||||
}
|
||||
|
||||
}
|
||||
,{
|
||||
"path" : "pages/management/receive-confirm_new",
|
||||
"style" :
|
||||
{
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
|
||||
}
|
||||
],
|
||||
"globalStyle": {
|
||||
"navigationBarTextStyle": "black",
|
||||
|
||||
@@ -70,7 +70,7 @@
|
||||
if (e.ywlx === 'DB') {
|
||||
url = '/pages/management/alloc-maintenance'
|
||||
} else if (e.ywlx === 'SH') {
|
||||
url = '/pages/management/receive-confirm'
|
||||
url = '/pages/management/receive-confirm_new'
|
||||
} else {
|
||||
url = '/pages/management/in-storage_new?id=' + e.djlx + '&name=' + e.name + '&type=' + e.ywlx
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
</view>
|
||||
</view>
|
||||
<button class="confirm-button" @tap="toSearch">查询</button>
|
||||
<button class="confirm-button" :class="{'confirm-button_disabled': !subCheckData.length}" @tap="showPop(2, '', '')">分配库位</button>
|
||||
<button class="confirm-button" :class="{'confirm-button_disabled': !subCheckData.length}" @tap="showPop(2, '', '')">库位分配</button>
|
||||
<button class="confirm-button" :class="{'confirm-button_disabled': !subCheckData.length}" @tap="inWarehouseSure">库存提交</button>
|
||||
<button class="confirm-button" :class="{'confirm-button_disabled': checkData.length === 0}" :disabled="disabled1" @tap="_easOutInBillUpdate">单据审核</button>
|
||||
</view>
|
||||
|
||||
621
pages/management/receive-confirm_new.vue
Normal file
621
pages/management/receive-confirm_new.vue
Normal file
@@ -0,0 +1,621 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<nav-bar title="收货确认"></nav-bar>
|
||||
<view class="search-confirm-wrap">
|
||||
<view class="zd-row">
|
||||
<view class="zd-col-24 zd-row jcflexstart">
|
||||
<view class="zd-col-11"><search-box placeholder="请输入查询条件" v-model="val1" /></view>
|
||||
<view class="zd-col-11 select_wraper mgl10">
|
||||
<zxz-uni-data-select placeholder="请选择收货组织信息" v-model="value1" filterable :localdata="range1"></zxz-uni-data-select>
|
||||
</view>
|
||||
</view>
|
||||
<button class="confirm-button" @tap="toSearch">查询</button>
|
||||
<button class="confirm-button confirm-button_1" :class="{'confirm-button_disabled': !subCheckData.length}" @tap="showPop(3, '', '')">一键设置仓库</button>
|
||||
<button class="confirm-button" :class="{'confirm-button_disabled': !subCheckData.length}" @tap="showPop(2, '', '')">库位分配</button>
|
||||
<button class="confirm-button" :class="{'confirm-button_disabled': !subCheckData.length}" :disabled="disabled1" @tap="_receiptBillConfirm">收货确认</button>
|
||||
</view>
|
||||
</view>
|
||||
<view class="zd-row jcflexstart table-title_wraper">收货确认</view>
|
||||
<view class="grid-wrap">
|
||||
<view class="zdrow-wrap">
|
||||
<view class="zd-row sticky zd-th-wraper">
|
||||
<view class="zd-col-1 zd-th"><text>序号</text></view>
|
||||
<view class="zd-col-3 zd-th"><text class="fontcol1">送货单号</text></view>
|
||||
<view class="zd-col-2 zd-th"><text>送货日期</text></view>
|
||||
<view class="zd-col-2 zd-th"><text>提交时间</text></view>
|
||||
<view class="zd-col-2 zd-th"><text>采购公司</text></view>
|
||||
<view class="zd-col-2 zd-th"><text>所属厂区</text></view>
|
||||
<view class="zd-col-2 zd-th"><text>供应商编码</text></view>
|
||||
<view class="zd-col-2 zd-th"><text>供应商</text></view>
|
||||
<view class="zd-col-2 zd-th"><text>到货日期</text></view>
|
||||
<view class="zd-col-4 zd-th"><text>审核结果</text></view>
|
||||
<view class="zd-col-2 zd-th">更多</view>
|
||||
</view>
|
||||
<view class="zd-td-wraper" v-for="(e, i) in dataList" :key="e.id">
|
||||
<view class="zd-row" @tap="loadSubData(e)">
|
||||
<view class="zd-col-1 zd-td"><text>{{i+1}}</text></view>
|
||||
<view class="zd-col-3 zd-td fontcol1"><text>{{e.djbh}}</text></view>
|
||||
<view class="zd-col-2 zd-td"><text>{{e.ywrq}}</text></view>
|
||||
<view class="zd-col-2 zd-td"><text>{{e.tjsj}}</text></view>
|
||||
<view class="zd-col-2 zd-td"><text>{{e.cggs}}</text></view>
|
||||
<view class="zd-col-2 zd-td"><text>{{e.sscq}}</text></view>
|
||||
<view class="zd-col-2 zd-td"><text>{{e.gysbm}}</text></view>
|
||||
<view class="zd-col-2 zd-td"><text>{{e.gys}}</text></view>
|
||||
<view class="zd-col-2 zd-td"><text>{{e.dhrq}}</text></view>
|
||||
<view class="zd-col-4 zd-td"><text>{{e.shjg}}</text></view>
|
||||
<view class="zd-col-2 zd-td" @tap.stop="getDetails(4,e)">
|
||||
<uni-icons type="more-filled" size="14" color="#fff"></uni-icons>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 二级表格start -->
|
||||
<view v-if="e.subData.length > 0" class="zd-sec-wraper pd0">
|
||||
<view class="table-wrap">
|
||||
<table class="grid-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>
|
||||
<view class="zd-row jcenter">
|
||||
<view class="zd-checkbox zd-checkbox_i" :class="{'zd-checkbox_active': e.subAllChecked}" @tap="toSubAllCheckbox(e)"></view>
|
||||
</view>
|
||||
</th>
|
||||
<th><text class="fontcol1">采购订单号</text></th>
|
||||
<th>物料编码</th>
|
||||
<th>物料名称</th>
|
||||
<th>单位</th>
|
||||
<th>订单量</th>
|
||||
<th>总数</th>
|
||||
<th>本次送货数量</th>
|
||||
<th>收货组织</th>
|
||||
<th>是否质检</th>
|
||||
<th>收货数量</th>
|
||||
<th>收货仓库编码</th>
|
||||
<th>收货仓库名称</th>
|
||||
<th>收货库位名称</th>
|
||||
<th>件数</th>
|
||||
<th>更多</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="(el, j) in e.subData" :key="el.id">
|
||||
<td>{{j+1}}</td>
|
||||
<td @tap="toSubCheckbox(e, el)">
|
||||
<view class="zd-row jcenter">
|
||||
<view class="zd-checkbox zd-checkbox_i" :class="{'zd-checkbox_active': el.checked}"></view>
|
||||
</view>
|
||||
</td>
|
||||
<td><view class="underline fontcol1" @tap="showPop(1, e, el)">{{el.cgbh}}</view></td>
|
||||
<td>{{el.wlbm}}</td>
|
||||
<td>{{el.wlmc}}</td>
|
||||
<td>{{el.jldw}}</td>
|
||||
<td>{{el.ddsl}}</td>
|
||||
<td>{{el.wlzs}}</td>
|
||||
<td>{{el.bcshsl}}</td>
|
||||
<td>{{el.zzmc}}</td>
|
||||
<td>{{['否', '是'][Number(el.sfzj)]}}</td>
|
||||
<td><input class="td_input" type="number" v-model="el.shsl" @blur="updateNumkw(el)" /></td>
|
||||
<td @tap.stop="showPop(0, e, el)">
|
||||
<view class="zd-row td_change">
|
||||
<uni-icons type="shop" size="16" color="#fff"></uni-icons>
|
||||
<view class="mgl10">{{el.ckbm}}</view>
|
||||
</view>
|
||||
</td>
|
||||
<td>{{el.ckmc}}</td>
|
||||
<td>{{el.kwmc}}</td>
|
||||
<td>{{el.num}}</td>
|
||||
<td @tap.stop="getDetails(4,el)"><uni-icons type="more-filled" size="14" color="#fff"></uni-icons></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 二级表格end -->
|
||||
</view>
|
||||
</view>
|
||||
<view class="zd-row jcenter pd20">
|
||||
<pagination v-show="dataList.length > 0" :total="totalCount1" :page-size="queryParams1.pageSize" :current-page="currentPage1" @page-change="handlePageChange1" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="footer"></view>
|
||||
<grid-detail :show="delShow" :data="detailObj" @closeDetail="delShow=false"></grid-detail>
|
||||
<view class="pop-wraper" :class="{'popshow': show, 'pophide': !show}">
|
||||
<view v-if="type === 0" class="allwidth pop-title">修改收货仓库</view>
|
||||
<view v-if="type === 1 || type === 2" class="allwidth pop-title">分配明细</view>
|
||||
<view v-if="type === 3" class="allwidth pop-title">一键设置仓库</view>
|
||||
<view v-if="type === 0" class="zd-row jcenter kwcode_wraper">
|
||||
<view class="zd-col-10 select_wraper">
|
||||
<zxz-uni-data-select placeholder="请选择仓库名称" v-model="value2" filterable :localdata="range2"></zxz-uni-data-select>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="type === 1 || type === 2" class="pop-grid-wraper">
|
||||
<view class="zd-row sticky zd-sec-th-wraper zd-pop-th-wraper">
|
||||
<view class="zd-col-2 zd-sec-th"><text>序号</text></view>
|
||||
<view class="zd-col-4 zd-sec-th"><text>物料编号</text></view>
|
||||
<view class="zd-col-5 zd-sec-th"><text>物料名称</text></view>
|
||||
<view class="zd-col-5 zd-sec-th"><text>库位编码</text></view>
|
||||
<view class="zd-col-4 zd-sec-th"><text>数量</text></view>
|
||||
<view class="zd-col-4 zd-sec-th"><text>库存数量</text></view>
|
||||
<view class="zd-col-4 zd-sec-th"><text>单据编号</text></view>
|
||||
<view class="zd-col-4 zd-sec-th"><text>分录序号</text></view>
|
||||
<view class="zd-col-4 zd-sec-th"><text>备注</text></view>
|
||||
</view>
|
||||
<view v-if="type === 1" class="zd-row zd-td-wraper" v-for="(ele, t) in popData" :key="ele.id">
|
||||
<view class="zd-col-2 zd-sec-td zd-pop-td"><text>{{t+1}}</text></view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.wlbm}}</text></view>
|
||||
<view class="zd-col-5 zd-sec-td zd-pop-td"><text>{{ele.wlmc}}</text></view>
|
||||
<view v-if="ele.status" class="zd-col-5 zd-sec-td zd-pop-td"><text>{{ele.kwbm}}</text></view>
|
||||
<view v-else class="zd-col-5 zd-sec-td zd-pop-td">
|
||||
<scan-input
|
||||
v-model="ele.kwbm"
|
||||
/>
|
||||
</view>
|
||||
<view v-if="ele.status" class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.fpsl}}</text></view>
|
||||
<view v-else class="zd-col-4 zd-sec-td zd-pop-td">
|
||||
<input type="number" class="pop-input" v-model="ele.fpsl">
|
||||
</view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.kcsl}}</text></view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.djbh}}</text></view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.flxh}}</text></view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.bz}}</text></view>
|
||||
</view>
|
||||
<view v-if="type === 2" class="zd-row zd-td-wraper" v-for="(ele, t) in popData" :key="ele.id">
|
||||
<view class="zd-col-2 zd-sec-td zd-pop-td"><text>{{t+1}}</text></view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.wlbm}}</text></view>
|
||||
<view class="zd-col-5 zd-sec-td zd-pop-td"><text>{{ele.wlmc}}</text></view>
|
||||
<view class="zd-col-5 zd-sec-td zd-pop-td">
|
||||
<scan-input
|
||||
v-model="ele.kwbm"
|
||||
/>
|
||||
</view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td">
|
||||
<input type="number" class="pop-input" v-model="ele.fpsl">
|
||||
</view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.kcsl}}</text></view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.djbh}}</text></view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.flxh}}</text></view>
|
||||
<view class="zd-col-4 zd-sec-td zd-pop-td"><text>{{ele.bz}}</text></view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="type === 3" class="kwcode_wraper">
|
||||
<view class="zd-row jcenter">
|
||||
<view class="zd-col-3 pop_label">收货仓库</view>
|
||||
<view class="zd-col-10 select_wraper">
|
||||
<zxz-uni-data-select placeholder="请选择仓库名称" v-model="value2" filterable :localdata="range2"></zxz-uni-data-select>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="mgb20 zd-row jcenter">
|
||||
<view class="zd-col-10 zd-row">
|
||||
<button class="confirm-button confirm-button_cancle mgl0" @tap="show = false">取消</button>
|
||||
<button v-show="type === 0" class="confirm-button mgl0" @tap="modalConfirm">确定</button>
|
||||
<button v-show="type === 1" class="confirm-button mgl0" :class="{'confirm-button_disabled': popData.length === 0}" :disabled="popdisabled" @tap="_updateAssignDtl">确定</button>
|
||||
<button v-show="type === 2" class="confirm-button mgl0" :class="{'confirm-button_disabled': popData.length === 0}" :disabled="popdisabled" @tap="_stIvtaddAssignDtl">确定</button>
|
||||
<button v-show="type === 3" class="confirm-button mgl0" @tap="_receiptBillDetailSetStor">确定</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="show" class="modal" @click.stop="show = false"></view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import NavBar from '@/components/NavBar.vue'
|
||||
import SearchBox from '@/components/SearchBox.vue'
|
||||
import ScanInput from '@/components/ScanInput.vue'
|
||||
import Pagination from '@/components/Pagination.vue'
|
||||
import GridDetail from '@/components/GridDetail.vue'
|
||||
import {getWarehouseInfo, getOrganizationInfo, receiptPage, receiptBillDetailPage, receiptBillUpdateUpdate, receiptBillUpdate, viewAssignDtl, warehouseAssignLocation} from '@/utils/mork2.js'
|
||||
import {updateAssignDtl, stIvtstIvtaddAssignDtl, receiptBillConfirm, receiptBillDetailUpdate, receiptBillDetailSetStor} from '@/utils/getData2.js'
|
||||
export default {
|
||||
components: {
|
||||
NavBar,
|
||||
SearchBox,
|
||||
ScanInput,
|
||||
Pagination,
|
||||
GridDetail
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
val1: '', // 模糊查询
|
||||
value1: '', // 收货组织信息
|
||||
range1: [],
|
||||
totalCount1: 0, // 分页
|
||||
queryParams1:{
|
||||
pageSize: 10,
|
||||
pageNum: 1
|
||||
},
|
||||
currentPage1: 1,
|
||||
dataList: [], // 一级表格数据
|
||||
subData: [], // 二级表格数据
|
||||
subCheckData: [], // 二级表格多选数组
|
||||
popData: [], // 二级表格点击物料编码弹出弹窗
|
||||
popdisabled: false,
|
||||
popObj: {}, // 弹窗当前主表格内容
|
||||
show: false, // 弹窗显示布尔值
|
||||
type: '', // 弹窗类型
|
||||
delShow: false, // 详情弹窗布尔值
|
||||
detailObj: {}, // 详情弹窗
|
||||
disabled1: false,
|
||||
value2: '', // 收货仓库信息
|
||||
range2: []
|
||||
};
|
||||
},
|
||||
onLoad () {
|
||||
this.toSearch()
|
||||
},
|
||||
methods: {
|
||||
// 组织信息下拉框
|
||||
async _getOrganizationInfo () {
|
||||
let res = await getOrganizationInfo()
|
||||
if (res.code === 1) {
|
||||
this.range1 = [...res.result]
|
||||
this.range1.map(e => {
|
||||
this.$set(e, 'text', e.kczzmc)
|
||||
this.$set(e, 'value', e.kczzbm)
|
||||
})
|
||||
}
|
||||
},
|
||||
// 仓库下拉框
|
||||
async _getWarehouseInfo () {
|
||||
let res = await getWarehouseInfo()
|
||||
if (res.code === 1) {
|
||||
this.range2 = [...res.result]
|
||||
this.range2.map(e => {
|
||||
this.$set(e, 'text', e.ckmc)
|
||||
this.$set(e, 'value', e.ckbm)
|
||||
})
|
||||
}
|
||||
},
|
||||
// 查询一级表格
|
||||
toSearch () {
|
||||
this.queryParams1 = {
|
||||
pageSize: 10,
|
||||
pageNum: 1
|
||||
}
|
||||
this.currentPage1 = 1
|
||||
this.pkId = ''
|
||||
this._receiptPage()
|
||||
},
|
||||
// 一级表格接口
|
||||
async _receiptPage () {
|
||||
let res = await receiptPage(this.val1, this.value1, this.queryParams1.pageNum + '', this.queryParams1.pageSize + '')
|
||||
if (res.code === 1) {
|
||||
res.result.map(el => {
|
||||
this.$set(el, 'checked', false)
|
||||
this.$set(el, 'subData', [])
|
||||
this.$set(el, 'subAllChecked', false)
|
||||
})
|
||||
this.dataList = [...res.result]
|
||||
this.totalCount1 = Number(res.totalElements)
|
||||
this.queryParams1.pageSize = Number(res.pageSize)
|
||||
this.queryParams1.pageNum = Number(res.pageNum)
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.desc,
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
this._getWarehouseInfo()
|
||||
this._getOrganizationInfo()
|
||||
},
|
||||
// 一级表格切换分页
|
||||
handlePageChange1(page) {
|
||||
this.queryParams1.pageNum = page
|
||||
this.currentPage1 = page
|
||||
this.subCheckData = []
|
||||
this._receiptPage()
|
||||
},
|
||||
// 点击一级表格一行加载二级表格
|
||||
loadSubData (e) {
|
||||
this.subCheckData = this.subCheckData.filter(item1 => !e.subData.some(item2 => item2.id === item1.id))
|
||||
if (e.subData.length > 0) {
|
||||
e.subData = []
|
||||
} else if (e.subData.length === 0) {
|
||||
this._receiptBillDetailPage(e)
|
||||
}
|
||||
e.subAllChecked = false
|
||||
},
|
||||
// 二级表格接口
|
||||
async _receiptBillDetailPage (e) {
|
||||
let res = await receiptBillDetailPage(this.val1, e.djid, '1', '200')
|
||||
if (res.code === 1) {
|
||||
res.result.map(el => {
|
||||
this.$set(el, 'subChecked', false)
|
||||
})
|
||||
this.dataList.map(el => {
|
||||
if (el.djid === e.djid) {
|
||||
el.subData = [...res.result]
|
||||
}
|
||||
})
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.desc,
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
},
|
||||
// 二级表格全选
|
||||
toSubAllCheckbox (e) {
|
||||
e.subAllChecked = !e.subAllChecked
|
||||
e.subData.map(el => {
|
||||
el.checked = e.subAllChecked
|
||||
})
|
||||
if (e.subAllChecked) {
|
||||
this.subCheckData = this.subCheckData.concat(e.subData)
|
||||
for (let i = 0; i < this.subCheckData.length; i++) {
|
||||
for (let j = i + 1; j < this.subCheckData.length; j++) {
|
||||
if (this.subCheckData[i].id === this.subCheckData[j].id) {
|
||||
this.subCheckData.splice(j, 1)
|
||||
j--
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (!e.subAllChecked) {
|
||||
this.subCheckData = this.subCheckData.filter(item1 => !e.subData.some(item2 => item2.id === item1.id))
|
||||
}
|
||||
},
|
||||
// 二级表格多选
|
||||
toSubCheckbox (e,el) {
|
||||
if (el.checked) {
|
||||
this.$set(el, 'checked', false)
|
||||
this.subCheckData = this.subCheckData.filter(item => item.id !== el.id)
|
||||
} else if (!el.checked) {
|
||||
this.$set(el, 'checked', true)
|
||||
this.subCheckData.push(el)
|
||||
}
|
||||
let arr = e.subData.filter(ele => ele.checked === true)
|
||||
e.subAllChecked = arr.length === e.subData.length
|
||||
},
|
||||
showPop (type, e, obj) {
|
||||
this.type = type
|
||||
if (type === 0) {
|
||||
this.show = true
|
||||
this.popObj = {id: e.djid, iid: obj.id}
|
||||
} else if (type === 1) {
|
||||
this._viewAssignDtl(e, obj)
|
||||
} else if (type === 2) {
|
||||
if (!this.subCheckData.length) return
|
||||
this._warehouseAssignLocation()
|
||||
} else if (type === 3) {
|
||||
if (!this.subCheckData.length) return
|
||||
this.show = true
|
||||
}
|
||||
},
|
||||
// 修改调出仓库确定
|
||||
modalConfirm () {
|
||||
if (this.value2 === '') {
|
||||
uni.showToast({
|
||||
title: '请设置收货仓库',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
let mc = ''
|
||||
this.range2.map(el => {
|
||||
if (el.value === this.value2) {
|
||||
mc = el.text
|
||||
}
|
||||
})
|
||||
let arr = []
|
||||
this.dataList.map(e => {
|
||||
if (e.djid === this.popObj.id) {
|
||||
e.subData.map(el => {
|
||||
if (el.id === this.popObj.iid) {
|
||||
el.ckbm = this.value2
|
||||
el.ckmc = mc
|
||||
arr.push(el)
|
||||
this.show = false
|
||||
this._receiptBillDetailUpdate(arr)
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
// 点击二级表格行中的物料编号,弹窗加载表格
|
||||
async _viewAssignDtl (e, obj) {
|
||||
let res = await viewAssignDtl(obj)
|
||||
if (res.code ===1) {
|
||||
this.popData = [...res.result]
|
||||
this.sortArr(this.popData)
|
||||
this.popObj = e
|
||||
this.show = true
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.desc,
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
},
|
||||
// 按单据编号排序,单据编号相同按照分录序号排序
|
||||
sortArr (arr) {
|
||||
arr.sort((a, b) => {
|
||||
if (a.djbh !== b.djbh) {
|
||||
return a.djbh < b.djbh ? -1 : 1
|
||||
} else {
|
||||
return a.flxh < b.flxh ? -1 : 1
|
||||
}
|
||||
})
|
||||
},
|
||||
// 点击二级表格行中的物料编号,弹窗加载表格 -> 点击确定按钮
|
||||
async _updateAssignDtl () {
|
||||
this.popdisabled = true
|
||||
if (this.popData.length === 0) {
|
||||
this.popdisabled = false
|
||||
return
|
||||
}
|
||||
try {
|
||||
let res = await updateAssignDtl(this.popData)
|
||||
if (res.code === 1) {
|
||||
this.show = false
|
||||
this._easOutInBillDetailPage(this.popObj)
|
||||
}
|
||||
uni.showToast({
|
||||
title: res.desc,
|
||||
icon: 'none'
|
||||
})
|
||||
this.popdisabled = false
|
||||
} catch (e) {
|
||||
this.popdisabled = false
|
||||
}
|
||||
},
|
||||
// 一键设置仓库弹窗
|
||||
async _receiptBillDetailSetStor () {
|
||||
if (this.value2 === '') {
|
||||
uni.showToast({
|
||||
title: '请设置收货仓库',
|
||||
icon: 'none'
|
||||
})
|
||||
return
|
||||
}
|
||||
this.show = false
|
||||
try {
|
||||
let res = await receiptBillDetailSetStor(this.value2, this.subCheckData)
|
||||
uni.showToast({
|
||||
title: res.desc,
|
||||
icon: 'none'
|
||||
})
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
}
|
||||
},
|
||||
// 分配库位弹窗表格
|
||||
async _warehouseAssignLocation () {
|
||||
let res = await warehouseAssignLocation(this.subCheckData)
|
||||
if (res.code ===1) {
|
||||
this.popData = [...res.result]
|
||||
this.sortArr(this.popData)
|
||||
this.show = true
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.desc,
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
},
|
||||
// 分配库位弹窗表格 -> 点击确定按钮
|
||||
async _stIvtaddAssignDtl () {
|
||||
this.popdisabled = true
|
||||
if (this.popData.length === 0) {
|
||||
this.popdisabled = false
|
||||
return
|
||||
}
|
||||
try {
|
||||
let res = await stIvtaddAssignDtl(this.popData)
|
||||
if (res.code === 1) {
|
||||
this.show = false
|
||||
this.checkData = []
|
||||
this.subCheckData = []
|
||||
this._receiptPage()
|
||||
}
|
||||
uni.showToast({
|
||||
title: res.desc,
|
||||
icon: 'none'
|
||||
})
|
||||
this.popdisabled = false
|
||||
} catch (e) {
|
||||
this.popdisabled = false
|
||||
}
|
||||
},
|
||||
// 点击收货确认按钮
|
||||
async _receiptBillConfirm () {
|
||||
this.disabled1 = true
|
||||
if (!this.subCheckData.length) {
|
||||
this.disabled1 = false
|
||||
return
|
||||
}
|
||||
try {
|
||||
let res = await receiptBillConfirm(this.subCheckData)
|
||||
if (res.code === 1) {
|
||||
this.disabled1 = false
|
||||
this.checkData = []
|
||||
this.subCheckData = []
|
||||
this._receiptPage()
|
||||
} else {
|
||||
this.disabled1 = false
|
||||
uni.showToast({
|
||||
title: res.desc,
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
} catch (e) {
|
||||
this.disabled1 = false
|
||||
}
|
||||
},
|
||||
// 收货数量和收货库位名称单行修改
|
||||
updateNumkw (e) {
|
||||
let arr = []
|
||||
arr.push(e)
|
||||
this._receiptBillDetailUpdate(arr)
|
||||
},
|
||||
// 二级表格详情修改接口
|
||||
async _receiptBillDetailUpdate (e) {
|
||||
try {
|
||||
let res = await receiptBillDetailUpdate(e)
|
||||
if (res.code === 1) {
|
||||
uni.showToast({
|
||||
title: res.desc,
|
||||
icon: 'none'
|
||||
})
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.desc,
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
}
|
||||
},
|
||||
// 修改调出仓库弹窗
|
||||
checkWarehouse (type, title, e) {
|
||||
if (type === 1) {
|
||||
this.modalObj = {type: type, title: title, id: e.flid}
|
||||
this.value = e.ckbm
|
||||
this.show = true
|
||||
} else if (type === 2 && this.checkArr.length > 0) {
|
||||
this.modalObj = {type: type, title: title}
|
||||
this.show = true
|
||||
}
|
||||
},
|
||||
// 详情弹窗
|
||||
getDetails (type,e) {
|
||||
this.delShow = !this.delShow
|
||||
this.detailObj = {type: type, data:e}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="stylus" scoped>
|
||||
@import '../../common/style/mixin.styl';
|
||||
.confirm-button_1
|
||||
min-width 100px
|
||||
.select_wraper
|
||||
/deep/ .uni-select__input-box
|
||||
height 30px
|
||||
/deep/ .uni-select__selector
|
||||
z-index 11
|
||||
/deep/ .uni-select
|
||||
height: 30px;
|
||||
min-height: 30px;
|
||||
line-height: 30px;
|
||||
padding: 0 2px 0 12px;
|
||||
border: 1px solid #4980bd;
|
||||
background-color: rgba(45,88,184,0.1);
|
||||
border-radius: 6px;
|
||||
/deep/ .uni-select__input-placeholder, /deep/ .uni-select__input-text
|
||||
font-size 13px
|
||||
/deep/ .uni-select__selector
|
||||
background-color #071F3E
|
||||
border-color #0c3162
|
||||
/deep/ .uni-popper__arrow
|
||||
border-bottom-color #0c3162
|
||||
&:after
|
||||
border-bottom-color #071F3E
|
||||
/deep/ .uni-select__selector-item
|
||||
color #fff
|
||||
.zd-th
|
||||
font-size: 12px;
|
||||
line-height: 13px;
|
||||
height: 36px;
|
||||
</style>
|
||||
@@ -140,7 +140,7 @@ export const allocationBillInventoryInfo = (obj) => request({
|
||||
/**
|
||||
* 收货确认
|
||||
*/
|
||||
// 1.收货单据分页
|
||||
// 1.收货单据-主表格
|
||||
export const receiptPage = (fuzzy, kczzbm, page, size) => request({
|
||||
url:'api/receiptBill/receiptPage',
|
||||
data: {
|
||||
@@ -150,9 +150,9 @@ export const receiptPage = (fuzzy, kczzbm, page, size) => request({
|
||||
size: size
|
||||
}
|
||||
})
|
||||
// 2.收货单明细分页查询
|
||||
export const receiptBillPage = (fuzzy, djid, page, size) => request({
|
||||
url:'api/receiptBill/page',
|
||||
// 2.收货单明细-副表格2024/11/07
|
||||
export const receiptBillDetailPage = (fuzzy, djid, page, size) => request({
|
||||
url:'api/receiptBillDetail/page',
|
||||
data: {
|
||||
fuzzy: fuzzy,
|
||||
djid: djid,
|
||||
@@ -160,17 +160,51 @@ export const receiptBillPage = (fuzzy, djid, page, size) => request({
|
||||
size: size
|
||||
}
|
||||
})
|
||||
// 3.收货单明细修改
|
||||
// export const receiptBillPage = (fuzzy, djid, page, size) => request({
|
||||
// url:'api/receiptBill/page',
|
||||
// data: {
|
||||
// fuzzy: fuzzy,
|
||||
// djid: djid,
|
||||
// page: page,
|
||||
// size: size
|
||||
// }
|
||||
// })
|
||||
// 3.副表格修改-数量和仓库编码
|
||||
export const receiptBillDetailUpdate = (arr) => request({
|
||||
url:'api/receiptBillDetail/update',
|
||||
data: arr
|
||||
})
|
||||
// 4.库位分配
|
||||
export const warehouseAssignLocation = (arr) => request({
|
||||
url:'api/receiptBill/warehouseAssignLocation',
|
||||
data: {details: arr}
|
||||
})
|
||||
// 5.库位分配-确认
|
||||
export const stIvtaddAssignDtl = (arr) => request({
|
||||
url:'api/stIvtStockAssignDtl/addAssignDtl',
|
||||
data: arr
|
||||
})
|
||||
// 6.一键设置仓库-确认
|
||||
export const receiptBillDetailSetStor = (ckbm, details) => request({
|
||||
url:'api/receiptBillDetail/setStor',
|
||||
data: {ckbm: ckbm, details: details}
|
||||
})
|
||||
// 6.确认收货
|
||||
export const receiptBillConfirm = (arr) => request({
|
||||
url:'api/receiptBill/confirm',
|
||||
data: arr
|
||||
})
|
||||
// 3.收货单明细-行修改
|
||||
export const receiptBillUpdate = (obj) => request({
|
||||
url:'api/receiptBill/update',
|
||||
data: obj
|
||||
})
|
||||
// 4.单据直接调拨
|
||||
export const receiptBillConfirm = (arr) => request({
|
||||
url:'api/receiptBill/confirm',
|
||||
type: 1,
|
||||
data: arr
|
||||
})
|
||||
// export const receiptBillConfirm = (arr) => request({
|
||||
// url:'api/receiptBill/confirm',
|
||||
// type: 1,
|
||||
// data: arr
|
||||
// })
|
||||
|
||||
/**
|
||||
* 入库新接口
|
||||
|
||||
273
utils/mork2.js
273
utils/mork2.js
@@ -1377,7 +1377,7 @@ export const receiptPage = () => {
|
||||
"result": [
|
||||
{
|
||||
"flid": "17125601518020307005",
|
||||
"djid": "1777232450742624257",
|
||||
"djid": "1",
|
||||
"djbh": "DH2024040815101039",
|
||||
"ywrq": "2024-04-08",
|
||||
"djzt": "审核后",
|
||||
@@ -1417,7 +1417,7 @@ export const receiptPage = () => {
|
||||
},
|
||||
{
|
||||
"flid": "17048547545740647463",
|
||||
"djid": "1744913638176710657",
|
||||
"djid": "2",
|
||||
"djbh": "DH20240110108373",
|
||||
"ywrq": "2024-01-10",
|
||||
"djzt": "1",
|
||||
@@ -1457,7 +1457,7 @@ export const receiptPage = () => {
|
||||
},
|
||||
{
|
||||
"flid": "17048525910590989947",
|
||||
"djid": "1744904902452305922",
|
||||
"djid": "3",
|
||||
"djbh": "DH20240110103242",
|
||||
"ywrq": "2024-01-10",
|
||||
"djzt": "1",
|
||||
@@ -1497,7 +1497,7 @@ export const receiptPage = () => {
|
||||
},
|
||||
{
|
||||
"flid": "17048483251570829835",
|
||||
"djid": "1744886761651298305",
|
||||
"djid": "4",
|
||||
"djbh": "DH20240110085209",
|
||||
"ywrq": "2024-01-10",
|
||||
"djzt": "1",
|
||||
@@ -1537,7 +1537,7 @@ export const receiptPage = () => {
|
||||
},
|
||||
{
|
||||
"flid": "17047879888880956247",
|
||||
"djid": "1744634244728205314",
|
||||
"djid": "5",
|
||||
"djbh": "DH20240109166141",
|
||||
"ywrq": "2024-01-09",
|
||||
"djzt": "1",
|
||||
@@ -1577,7 +1577,7 @@ export const receiptPage = () => {
|
||||
},
|
||||
{
|
||||
"flid": "17046973547380629965",
|
||||
"djid": "1744254846925541377",
|
||||
"djid": "6",
|
||||
"djbh": "DH20240108158955",
|
||||
"ywrq": "2024-01-08",
|
||||
"djzt": "1",
|
||||
@@ -1794,6 +1794,183 @@ export const receiptBillPage = () => {
|
||||
}
|
||||
return res
|
||||
}
|
||||
export const receiptBillDetailPage = () => {
|
||||
let res = {
|
||||
"pageNum": 1,
|
||||
"pageSize": 20,
|
||||
"totalPage": 1,
|
||||
"totalElements": 4,
|
||||
"result": [
|
||||
{
|
||||
"id": "1",
|
||||
"flid": "17125601518020307005",
|
||||
"djid": "1777232450742624257",
|
||||
"djbh": "DH2024040815101039",
|
||||
"ywrq": "2024-04-08",
|
||||
"djzt": "1",
|
||||
"tjsj": "2024-04-08 15:10:13",
|
||||
"cgbh": "POORD06240400001",
|
||||
"cggs": "诺力智能装备股份有限公司",
|
||||
"wlbm": "255037020001",
|
||||
"wlmc": "装饰小盖",
|
||||
"ggxh": "",
|
||||
"cggsbm": "01",
|
||||
"jldw": "PCS",
|
||||
"flxh": "1",
|
||||
"btbz": null,
|
||||
"bz": "",
|
||||
"ddsl": "100",
|
||||
"bcshsl": "3.0000",
|
||||
"shsl": "3.0000",
|
||||
"num": null,
|
||||
"zzbm": "01.09.04",
|
||||
"zzmc": "电动车厂",
|
||||
"ckbm": "3.03.013",
|
||||
"ckmc": "三期原材料库",
|
||||
"kwbm": "1726521837757186052",
|
||||
"kwmc": "A1-1-02b",
|
||||
"sfzj": "1",
|
||||
"pcgl": "0",
|
||||
"pc": "",
|
||||
"sscq": "01.09.04",
|
||||
"gysbm": "0201388",
|
||||
"gys": "丹阳市致远塑件有限公司",
|
||||
"cjrq": "2024-04-08",
|
||||
"cgy": "管玉亭",
|
||||
"shy": null,
|
||||
"yjdhrq": "2024-04-12",
|
||||
"shdz": "浙江省湖州市长兴县县前东街888号(三期北门)",
|
||||
"rec_ok_row": ""
|
||||
},
|
||||
{
|
||||
"id": "2",
|
||||
"flid": "17125601758781285851",
|
||||
"djid": "1777232450742624257",
|
||||
"djbh": "DH2024040815101039",
|
||||
"ywrq": "2024-04-08",
|
||||
"djzt": "1",
|
||||
"tjsj": "2024-04-08 15:10:13",
|
||||
"cgbh": "POORD06240400001",
|
||||
"cggs": "诺力智能装备股份有限公司",
|
||||
"wlbm": "255037020002",
|
||||
"wlmc": "电极安装盖板",
|
||||
"ggxh": "",
|
||||
"cggsbm": "01",
|
||||
"jldw": "PCS",
|
||||
"flxh": "2",
|
||||
"btbz": null,
|
||||
"bz": "",
|
||||
"ddsl": "100",
|
||||
"bcshsl": "3.0000",
|
||||
"shsl": "3.0000",
|
||||
"num": null,
|
||||
"zzbm": "01.09.04",
|
||||
"zzmc": "电动车厂",
|
||||
"ckbm": "3.03.013",
|
||||
"ckmc": "三期原材料库",
|
||||
"kwbm": "1726521837757186052",
|
||||
"kwmc": "A1-1-02b",
|
||||
"sfzj": "1",
|
||||
"pcgl": "0",
|
||||
"pc": "",
|
||||
"sscq": "01.09.04",
|
||||
"gysbm": "0201388",
|
||||
"gys": "丹阳市致远塑件有限公司",
|
||||
"cjrq": "2024-04-08",
|
||||
"cgy": "管玉亭",
|
||||
"shy": null,
|
||||
"yjdhrq": "2024-04-12",
|
||||
"shdz": "浙江省湖州市长兴县县前东街888号(三期北门)",
|
||||
"rec_ok_row": ""
|
||||
},
|
||||
{
|
||||
"id": "3",
|
||||
"flid": "17125601758799467078",
|
||||
"djid": "1777232450742624257",
|
||||
"djbh": "DH2024040815101039",
|
||||
"ywrq": "2024-04-08",
|
||||
"djzt": "1",
|
||||
"tjsj": "2024-04-08 15:10:13",
|
||||
"cgbh": "POORD06240400001",
|
||||
"cggs": "诺力智能装备股份有限公司",
|
||||
"wlbm": "535910020003",
|
||||
"wlmc": "封板",
|
||||
"ggxh": "",
|
||||
"cggsbm": "01",
|
||||
"jldw": "PCS",
|
||||
"flxh": "10",
|
||||
"btbz": null,
|
||||
"bz": "",
|
||||
"ddsl": "100",
|
||||
"bcshsl": "3.0000",
|
||||
"shsl": "3.0000",
|
||||
"num": null,
|
||||
"zzbm": "01.09.04",
|
||||
"zzmc": "电动车厂",
|
||||
"ckbm": "3.03.013",
|
||||
"ckmc": "三期原材料库",
|
||||
"kwbm": "1726521837757186052",
|
||||
"kwmc": "A1-1-02b",
|
||||
"sfzj": "1",
|
||||
"pcgl": "0",
|
||||
"pc": "",
|
||||
"sscq": "01.09.04",
|
||||
"gysbm": "0201388",
|
||||
"gys": "丹阳市致远塑件有限公司",
|
||||
"cjrq": "2024-04-08",
|
||||
"cgy": "管玉亭",
|
||||
"shy": null,
|
||||
"yjdhrq": "2024-04-12",
|
||||
"shdz": "浙江省湖州市长兴县县前东街888号(三期北门)",
|
||||
"rec_ok_row": ""
|
||||
},
|
||||
{
|
||||
"id": "4",
|
||||
"flid": "171256017588013687916",
|
||||
"djid": "1777232450742624257",
|
||||
"djbh": "DH2024040815101039",
|
||||
"ywrq": "2024-04-08",
|
||||
"djzt": "1",
|
||||
"tjsj": "2024-04-08 15:10:13",
|
||||
"cgbh": "POORD06240400001",
|
||||
"cggs": "诺力智能装备股份有限公司",
|
||||
"wlbm": "535921520040",
|
||||
"wlmc": "防护罩(顶部)",
|
||||
"ggxh": "",
|
||||
"cggsbm": "01",
|
||||
"jldw": "PCS",
|
||||
"flxh": "14",
|
||||
"btbz": null,
|
||||
"bz": "",
|
||||
"ddsl": "100",
|
||||
"bcshsl": "3.0000",
|
||||
"shsl": "3.0000",
|
||||
"num": null,
|
||||
"zzbm": "01.09.04",
|
||||
"zzmc": "电动车厂",
|
||||
"ckbm": "3.03.013",
|
||||
"ckmc": "三期原材料库",
|
||||
"kwbm": "1726521837757186052",
|
||||
"kwmc": "A1-1-02b",
|
||||
"sfzj": "1",
|
||||
"pcgl": "0",
|
||||
"pc": "",
|
||||
"sscq": "01.09.04",
|
||||
"gysbm": "0201388",
|
||||
"gys": "丹阳市致远塑件有限公司",
|
||||
"cjrq": "2024-04-08",
|
||||
"cgy": "管玉亭",
|
||||
"shy": null,
|
||||
"yjdhrq": "2024-04-12",
|
||||
"shdz": "浙江省湖州市长兴县县前东街888号(三期北门)",
|
||||
"rec_ok_row": ""
|
||||
}
|
||||
],
|
||||
"code": 1,
|
||||
"desc": "查询成功"
|
||||
}
|
||||
return res
|
||||
}
|
||||
export const receiptBillUpdate = () => {
|
||||
let res = {
|
||||
code: 1,
|
||||
@@ -2013,3 +2190,87 @@ export const inWarehouseAssignLocation = () => {
|
||||
}
|
||||
return res
|
||||
}
|
||||
export const warehouseAssignLocation = () => {
|
||||
let res = {
|
||||
"pageNum": 1,
|
||||
"pageSize": 10,
|
||||
"totalPage": 1,
|
||||
"totalElements": 1,
|
||||
"result": [
|
||||
{
|
||||
"size": 10,
|
||||
"page": 0,
|
||||
"sort": null,
|
||||
"isAsc": null,
|
||||
"type": null,
|
||||
"fuzzy": null,
|
||||
"is_used": null,
|
||||
"start_time": null,
|
||||
"end_time": null,
|
||||
"doP": {
|
||||
"startTime": {
|
||||
"k": [
|
||||
"create_time"
|
||||
],
|
||||
"type": "LT"
|
||||
},
|
||||
"endTime": {
|
||||
"k": [
|
||||
"create_time"
|
||||
],
|
||||
"type": "LE"
|
||||
},
|
||||
"sort": {
|
||||
"k": [
|
||||
"sort"
|
||||
],
|
||||
"type": "BY"
|
||||
},
|
||||
"blurry": {
|
||||
"k": [
|
||||
"name"
|
||||
],
|
||||
"type": "LK"
|
||||
}
|
||||
},
|
||||
"id": null,
|
||||
"djid": "btAAAAW8Wd5QCrde",
|
||||
"djlx": "LLCKD",
|
||||
"ywlx": "OUT",
|
||||
"djbh": "SOUT04240408783",
|
||||
"zzbm": "01.09.07",
|
||||
"zzmc": "四期智能工厂",
|
||||
"btbz": "04.2512804叉车线边库领料",
|
||||
"djzt": "提交",
|
||||
"cjsj": "2024-04-25",
|
||||
"ywrq": "2024-04-25",
|
||||
"cjr": "系统",
|
||||
"flid": "btAAAAW8Wd8Rd0u0",
|
||||
"flxh": "1",
|
||||
"wlbm": "910200200098",
|
||||
"wlmc": "螺钉GB70.1-M12x30-8.8",
|
||||
"ggxh": "内六角圆柱头螺钉GB70.1-M12x30-8.8-c1B",
|
||||
"pc": null,
|
||||
"jldw": "PCS",
|
||||
"jbjldw": "PCS",
|
||||
"fzjldw": null,
|
||||
"sl": 1050,
|
||||
"jbsl": "1050",
|
||||
"fzsl": "0",
|
||||
"ckbm": "3.04.001",
|
||||
"ckmc": "智能原材料库",
|
||||
"kwbm": null,
|
||||
"kwmc": null,
|
||||
"flbz": null,
|
||||
"sysl": 1050,
|
||||
"czsl": 0,
|
||||
"code": "1783279018838200320",
|
||||
"cksj": null,
|
||||
"llr": null
|
||||
}
|
||||
],
|
||||
"code": 1,
|
||||
"desc": "查询成功"
|
||||
}
|
||||
return res
|
||||
}
|
||||
Reference in New Issue
Block a user