Browse Source

完善盘点管理

master
guoxing 9 months ago
parent
commit
fb8465b50e
  1. 12
      yxt-as-ui/src/api/storage/stocktaking.js
  2. 31
      yxt-as-ui/src/api/warehouse/goodsShelves.js
  3. 143
      yxt-as-ui/src/views/storage/stocktaking/index.vue
  4. 162
      yxt-as-ui/src/views/storage/stocktaking/stocktakingInfo.vue
  5. 60
      yxt-as-ui/src/views/storage/stocktaking/stocktakingRackCodeDetail.vue
  6. 138
      yxt-as-ui/src/views/storage/stocktaking/stocktakingRackCodeList.vue

12
yxt-as-ui/src/api/storage/stocktaking.js

@ -6,7 +6,7 @@ export default {
createBill: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
url: '/wms/v1/wmsinventorycheckbill/createBill',
url: '/wms/v1/wmsinventorycheckbill/save',
method: 'post',
data: data,
headers: {
@ -32,9 +32,9 @@ export default {
billCreateReport: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
url: '/wms/v1/wmsinventorycheckbill/billCreateReport',
url: '/wms/v1/wmsinventorycheckbill/createReport',
method: 'post',
data: data,
params: data,
headers: {
'Content-Type': 'application/json'
}
@ -45,7 +45,7 @@ export default {
billDetail: function(params) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
url: '/wms/v1/wmsinventorycheckbill/billDetail',
url: '/wms/v1/wmsinventorycheckbill/detailGoodPageList',
method: 'post',
data: params,
headers: {
@ -58,7 +58,7 @@ export default {
billStocktak: function(params) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
url: '/wms/v1/wmsinventorycheckbill/billStocktak',
url: '/wms/v1/wmsinventorycheckbill/detailRackPageList',
method: 'post',
data: params,
headers: {
@ -71,7 +71,7 @@ export default {
billRackCodeDetail: function(params) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/4061550-0-default",
url: '/wms/v1/wmsinventorycheckbill/billRackCodeDetail',
url: '/wms/v1/wmsinventorycheckbill/detailRackGoodPageList',
method: 'post',
data: params,
headers: {

31
yxt-as-ui/src/api/warehouse/goodsShelves.js

@ -17,19 +17,34 @@ export default {
// 根据仓库查询库位
getWarehouseareas: function(data) {
return request({
url: '/wms/apiadmin/base/wmswarehousearea/selectAll',
method: 'get',
params: data,
headers: { 'Content-Type': 'application/json' }
url: '/wms/apiadmin/base/wmswarehousearea/selectAll',
method: 'get',
params: data,
headers: {
'Content-Type': 'application/json'
}
});
},
// 根据库区查询库位
getAllTypeByAreaSid: function(data) {
return request({
url: '/wms/apiadmin/base/wmswarehouserack/getAllTypeByAreaSid',
method: 'get',
params: data,
headers: {
'Content-Type': 'application/json'
}
});
},
// 修改是否可用状态
updateIsEnable: function(sid,isEnable) {
return request({
url: '/wms/apiadmin/base/wmswarehouserack/updateIsEnable/'+sid+"/"+isEnable
});
updateIsEnable: function(sid, isEnable) {
return request({
url: '/wms/apiadmin/base/wmswarehouserack/updateIsEnable/' + sid + "/" + isEnable
});
},

143
yxt-as-ui/src/views/storage/stocktaking/index.vue

@ -23,15 +23,15 @@
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" />
</el-form-item>
<el-form-item label="盘库状态">
<el-select v-model="queryParams.params.stocktakType" placeholder="请选择">
<el-option v-for="item in stocktakTypeList" :key="item" :label="item.name" :value="item.name" />
<el-select v-model="queryParams.params.checkState" placeholder="请选择">
<el-option v-for="item in checkStateList" :key="item.sid" :label="item.name" :value="item.name" />
</el-select>
</el-form-item>
<el-form-item label="盘点人">
<el-input v-model="queryParams.params.createByName" placeholder="" clearable />
</el-form-item>
<el-form-item label="监盘人">
<el-input v-model="queryParams.params.finance" placeholder="" clearable />
<el-input v-model="queryParams.params.superviseName" placeholder="" clearable />
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -54,42 +54,42 @@
<el-table-column fixed label="操作" align="center" width="220">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="toDetail(scope.row)">查看</el-button>
<el-button type="primary" size="mini" v-show="scope.row.isReport=='1'"
<el-button type="primary" size="mini" v-show="scope.row.state=='0'"
@click="toEdit(scope.row)">办理</el-button>
<el-button type="primary" size="mini" v-show="scope.row.isReport=='1'"
<el-button type="primary" size="mini" v-show="scope.row.state=='0'"
@click="toReport(scope.row)">盘库报告</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" width="120" align="center" />
<el-table-column prop="deptName" label="部门" width="120" align="center" />
<el-table-column prop="billNo" label="盘点编号" width="120" align="center" />
<el-table-column prop="createDate" label="生成日期" width="120" align="center" />
<el-table-column prop="createTime" label="生成日期" width="120" align="center" />
<el-table-column prop="createByName" label="盘点人" width="120" align="center" />
<el-table-column prop="finances" label="监盘人" width="120" align="center" />
<el-table-column prop="stocktakType" label="盘库状态" width="120" align="center" />
<el-table-column prop="superviseName" label="监盘人" width="120" align="center" />
<el-table-column prop="checkState" label="盘库状态" width="120" align="center" />
<el-table-column label="应盘" align="center">
<el-table-column prop="ypNum" label="数量" align="center" width="100" />
<el-table-column prop="ypMoney" label="金额" align="center" width="100" />
<el-table-column prop="bookCount" label="数量" align="center" width="100" />
<el-table-column prop="bookAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column label="实盘" align="center">
<el-table-column prop="spNum" label="数量" align="center" width="100" />
<el-table-column prop="spMoney" label="金额" align="center" width="100" />
<el-table-column prop="realCount" label="数量" align="center" width="100" />
<el-table-column prop="realAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column label="未盘" align="center">
<el-table-column prop="wpNum" label="数量" align="center" width="100" />
<el-table-column prop="wpMoney" label="金额" align="center" width="100" />
<el-table-column prop="notCount" label="数量" align="center" width="100" />
<el-table-column prop="notAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column label="盘盈" align="center">
<el-table-column prop="pyNum" label="数量" align="center" width="100" />
<el-table-column prop="pyMoney" label="金额" align="center" width="100" />
<el-table-column prop="profitCount" label="数量" align="center" width="100" />
<el-table-column prop="profitAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column label="盘亏" align="center">
<el-table-column prop="pkNum" label="数量" align="center" width="100" />
<el-table-column prop="pkMoney" label="金额" align="center" width="100" />
<el-table-column prop="loseCount" label="数量" align="center" width="100" />
<el-table-column prop="loseAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column label="盘损" align="center">
<el-table-column prop="psNum" label="数量" align="center" width="100" />
<el-table-column prop="psMoney" label="金额" align="center" width="100" />
<el-table-column prop="lossCount" label="数量" align="center" width="100" />
<el-table-column prop="lossAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column prop="remarks" label="备注" align="center" width="200" />
</el-table>
@ -126,14 +126,15 @@
</el-col>
<el-col :span="12">
<div class="span-sty"><span class="must">*</span> 监盘人</div>
<el-form-item prop="financeSid">
<!-- <el-select v-model="formobj.financeNmae" placeholder="请选择" class="addinputInfo addinputw">
<el-option v-for="item in financeList" :key="item" :label="item.name" :value="item.sid" />
</el-select> -->
<el-select v-model="formobj.financeSid" placeholder="请选择" class="addinputInfo addinputw" filterable
<el-form-item prop="superviseName">
<el-select v-model="formobj.superviseName" placeholder="请选择" class="addinputInfo addinputw"
@change="selectFinance">
<el-option v-for="item in financeList" :key="item.sid" :label="item.name" :value="item.sid" />
</el-select>
<!-- <el-select v-model="formobj.financeSid" placeholder="请选择" class="addinputInfo addinputw" filterable
multiple @change="selectFinance">
<el-option v-for="item in financeList" :key="item" :label="item.name" :value="item.sid"></el-option>
</el-select>
</el-select> -->
</el-form-item>
</el-col>
</el-row>
@ -171,7 +172,7 @@
getCurrentDate
} from '@/utils/index.js'
import {
selFianceByOrgSidPath
selAllByOrgSidPath
} from '@/api/Common/dictcommons'
export default {
@ -232,14 +233,14 @@
"billNo": "",
"createStartTime": "",
"createEndTime": "",
"stocktakType": "",
"checkState": "",
"createByName": "",
"finance": ""
"superviseName": ""
}
},
sids: [],
selectionList: [],
stocktakTypeList: [{
checkStateList: [{
sid: '1',
name: '未完成'
},
@ -251,14 +252,18 @@
formobj: {
createByName: window.sessionStorage.getItem('name'),
createBySid: window.sessionStorage.getItem('userSid'),
deptSid: window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage
.getItem('defaultOrgPath').lastIndexOf('/') + 1),
deptName: window.sessionStorage.getItem('defaultOrgPathName').substring(window
.sessionStorage.getItem('defaultOrgPathName').lastIndexOf('/') + 1),
createDate: getCurrentDate(),
financeSid: [],
finances: [],
superviseName: '',
superviseSid: '',
remarks: ""
},
financeList: [],
rules: {
financeSid: [{
superviseName: [{
required: true,
message: '监盘人不能为空',
trigger: 'change'
@ -272,13 +277,17 @@
created() {
this.loadList()
selFianceByOrgSidPath({
orgPath: window.sessionStorage.getItem('defaultOrgPath')
selAllByOrgSidPath({
orgSidPath: window.sessionStorage.getItem('defaultOrgPath')
}).then((res) => {
if (res.success) {
this.financeList = res.data
console.log("aaaaaa", this.financeList);
}
})
},
methods: {
selectFinance(val) {
@ -287,20 +296,25 @@
const choose = this.financeList.filter((item) => val.includes(item.sid))
console.log('>>>>>>>>>selectFinance', choose)
this.formobj.superviseName = choose[0].name
this.formobj.superviseSid = choose[0].sid
this.formobj.finances = []
for (var i = 0; i < choose.length; i++) {
// this.formobj.finances = []
// for (var i = 0; i < choose.length; i++) {
this.formobj.finances.push({
name: choose[i].name,
sid: choose[i].sid
})
// this.formobj.finances.push({
// name: choose[i].name,
// sid: choose[i].sid
// })
}
// }
},
handleClose() {
this.dialogVisible = false
this.formobj.superviseName = ''
this.formobj.superviseSid = ''
this.formobj.remarks = ''
},
saveExamine() {
@ -319,9 +333,13 @@
this.formobj = {
createByName: window.sessionStorage.getItem('name'),
createBySid: window.sessionStorage.getItem('userSid'),
deptSid: window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage
.getItem('defaultOrgPath').lastIndexOf('/') + 1),
deptName: window.sessionStorage.getItem('defaultOrgPathName').substring(window
.sessionStorage.getItem('defaultOrgPathName').lastIndexOf('/') + 1),
createDate: getCurrentDate(),
financeSid: [],
finances: [],
superviseName: '',
superviseSid: '',
remarks: ""
}
this.loadList()
@ -360,6 +378,9 @@
},
loadList() {
this.tableLoading = true
this.queryParams.params.userSid = window.sessionStorage.getItem('userSid')
this.queryParams.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.queryParams.params.menuUrl = this.$route.path
req.listPage(this.queryParams).then((resp) => {
this.tableLoading = false
if (resp.success) {
@ -407,9 +428,9 @@
"billNo": "",
"createStartTime": "",
"createEndTime": "",
"stocktakType": "",
"checkState": "",
"createByName": "",
"finance": ""
"superviseName": ""
}
}
this.loadList()
@ -418,10 +439,11 @@
// this.viewState = 2
// this.$refs['divadd'].showAdd()
this.dialogVisible = true
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.dialogVisible = true
},
selectionLineChangeHandle(val) {
console.log('val', val)
@ -437,7 +459,7 @@
console.log('toDetail', row)
this.viewState = 5
this.$refs['divinfo'].loadList(row.sid)
this.$refs['divinfo'].showDetail(row.sid)
},
toShowBill() {
@ -451,10 +473,10 @@
}
this.viewState = 2
this.$refs['divstocktak'].loadList(this.selectionList[0].sid)
this.$refs['divstocktak'].showDetail(this.selectionList[0].sid)
},
toStocktak() {
if (this.selectionList.length == 0) {
if (this.selectionList.length != 1) {
this.$message({
type: 'warning',
message: '请选择一条数据。',
@ -463,19 +485,20 @@
return
}
for (var i = this.selectionList.length - 1; i >= 0; i--) {
if (this.selectionList[i].isReport == '1') {
this.$message({
type: 'warning',
message: '所选记录已生成报告,不可重复生成。',
showClose: true
})
return
}
if (this.selectionList[0].state == '0') {
this.$message({
type: 'warning',
message: '所选记录已生成报告,不可重复生成。',
showClose: true
})
return
}
var params = {
sid: this.selectionList[0].sid
}
req.billCreateReport(this.sids).then((resp) => {
req.billCreateReport(params).then((resp) => {
if (resp.success) {
this.$message({
type: 'success',

162
yxt-as-ui/src/views/storage/stocktaking/stocktakingInfo.vue

@ -10,22 +10,34 @@
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<el-form-item label="仓库">
<el-input v-model="queryParams.params.warehouseName" placeholder="" clearable />
<el-select v-model="queryParams.params.warehouseName" placeholder="请选择仓库"
@change="selectWarehouseChange">
<el-option v-for="item in warehouseList" :key="item.sid" :label="item.warehouseName"
:value="item.sid" />
</el-select>
</el-form-item>
<el-form-item label="库区">
<el-input v-model="queryParams.params.warehouseAreaeName" placeholder="" clearable />
<el-select v-model="queryParams.params.warehouseAreaName" placeholder="请选择库区"
@change="selectWarehouseAreaChange">
<el-option v-for="item in warehouseAreaList" :key="item.sid" :label="item.areaName"
:value="item.sid" />
</el-select>
</el-form-item>
<el-form-item label="库位">
<el-input v-model="queryParams.params.warehouseRackName" placeholder="" clearable />
<el-select v-model="queryParams.params.warehouseRackName" placeholder="请选择库位">
<el-option v-for="item in warehouseRackList" :key="item.sid" :label="item.rackName"
:value="item.sid">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="商品ID">
<el-input v-model="queryParams.params.goodsId" placeholder="" clearable />
<el-input v-model="queryParams.params.goodsID" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品名称">
<el-input v-model="queryParams.params.goodsName" placeholder="" clearable />
<el-input v-model="queryParams.params.goodsSkuTitle" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品图号">
<el-input v-model="queryParams.params.goodsCode" placeholder="" clearable />
<el-input v-model="queryParams.params.goodsSkuCode" placeholder="" clearable />
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -44,21 +56,22 @@
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column prop="goodsID" label="商品ID" width="120" align="center" />
<el-table-column prop="goodsName" label="商品名称" width="120" align="center" />
<el-table-column prop="goodsCode" label="图号" width="120" align="center" />
<el-table-column prop="goodsSkuTitle" label="商品名称" width="120" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="120" align="center" />
<el-table-column prop="warehouseName" label="仓库" width="120" align="center" />
<el-table-column prop="warehouseAreaeName" label="库区" width="120" align="center" />
<el-table-column prop="warehouseArea" label="库区" width="120" align="center" />
<el-table-column prop="warehouseRackName" label="库位" width="120" align="center" />
<el-table-column prop="unit" label="单位" width="120" align="center" />
<el-table-column prop="price" label="单价" width="120" align="center" />
<el-table-column prop="inventoryNum" label="库存数量" width="120" align="center" />
<el-table-column prop="inventoryMoeny" label="库存金额" width="120" align="center" />
<el-table-column prop="spNum" label="实盘数量" width="120" align="center" />
<el-table-column prop="spMoney" label="实盘金额" width="120" align="center" />
<el-table-column prop="cost" label="单价" width="120" align="center" />
<el-table-column prop="bookCount" label="库存数量" width="120" align="center" />
<el-table-column prop="bookAmount" label="库存金额" width="120" align="center" />
<el-table-column prop="realCount" label="实盘数量" width="120" align="center" />
<el-table-column prop="realCount" label="实盘金额" width="120" align="center" />
<el-table-column prop="state" label="状态" width="120" align="center" />
<el-table-column prop="ykNum" label="亏盈数" width="120" align="center" />
<el-table-column prop="psNum" label="盘损数量" width="120" align="center" />
<el-table-column prop="psMoney" label="盘损金额" width="120" align="center" />
<el-table-column prop="profitAndLoseCount" label="亏盈数" width="120" align="center" />
<el-table-column prop="profitAndLoseAmount" label="盈亏金额" width="120" align="center" />
<el-table-column prop="lossCount" label="盘损数量" width="120" align="center" />
<el-table-column prop="lossAmount" label="盘损金额" width="120" align="center" />
<el-table-column prop="remarks" label="备注" align="center" width="200" />
<el-table-column label="附件" align="center">
<template slot-scope="scope">
@ -102,6 +115,9 @@
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import req2 from '@/api/warehouse/warehouse.js'
import req3 from '@/api/warehouse/warehouseArea.js'
import req4 from '@/api/warehouse/goodsShelves.js'
export default {
components: {
ButtonBar,
@ -129,17 +145,22 @@
size: 10,
total: 0,
params: {
"sid": "",
"billSid": "",
"warehouseSid": "",
"warehouseName": "",
"warehouseAreaeName": "",
"warehouseRackName": "",
"goodsId": "",
"goodsName": "",
"goodsCode": ""
"warehouseAreaSid": "",
"warehouseAreaName": "",
"warehouseRackSid": "",
"goodsID": "",
"goodsSkuTitle": "",
"goodsSkuCode": ""
}
},
billSid: "",
fileList: []
fileList: [],
warehouseList: [],
warehouseAreaList: [],
warehouseRackList: []
}
},
mounted() {
@ -149,6 +170,74 @@
},
methods: {
initData() {
var parpams = {
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
}
req2.getAllWarehouse(parpams).then(resp => {
this.warehouseList = resp.data
})
},
getWarehouseArea(sid) {
this.queryParams.params.warehouseAreaSid = ''
this.queryParams.params.warehouseAreaName = ''
var params = {
ckSid: sid
}
req3.getAllWarehouseareaBysid(params).then(resp => {
console.log('>>>>>>>>>getAllWarehousearea', resp)
this.warehouseAreaList = resp.data
}).catch(() => {})
},
getAllTypeByAreaSid(sid) {
this.queryParams.params.warehouseRackSid = ''
this.queryParams.params.warehouseRackName = ''
var params = {
areaSid: sid
}
req4.getAllTypeByAreaSid(params).then(resp => {
console.log('>>>>>>>>>getAllTypeByAreaSid', resp)
this.warehouseRackList = resp.data
}).catch(() => {})
},
selectWarehouseChange(val) {
const choose = this.warehouseList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
this.queryParams.params.warehouseSid = choose[0].sid
this.queryParams.params.warehouseName = choose[0].warehouseName
this.getWarehouseArea(choose[0].sid)
},
selectWarehouseAreaChange(val) {
const choose = this.warehouseAreaList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseAreaChange', choose)
this.queryParams.params.warehouseAreaSid = choose[0].sid
this.queryParams.params.warehouseAreaName = choose[0].areaName
this.getAllTypeByAreaSid(choose[0].sid)
},
selectWarehouseRackChange(val) {
const choose = this.warehouseRackList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseRackChange', choose)
this.queryParams.params.warehouseRackSid = choose[0].sid
this.queryParams.params.warehouseRackName = choose[0].rackName
},
showImage(paths) {
this.fileList = paths
this.dialogVisible = true
@ -175,11 +264,16 @@
}
},
loadList(sid) {
showDetail(sid) {
this.initData()
this.billSid = sid
this.queryParams.params.billSid = sid
this.loadList()
},
loadList() {
this.tableLoading = true
this.billSid = sid
this.queryParams.params.sid = sid
req.billDetail(this.queryParams).then((resp) => {
this.tableLoading = false
@ -213,13 +307,15 @@
size: 10,
total: 0,
params: {
"sid": this.billSid,
"billSid": this.billSid,
"warehouseSid": "",
"warehouseName": "",
"warehouseAreaeName": "",
"warehouseRackName": "",
"goodsId": "",
"goodsName": "",
"goodsCode": ""
"warehouseAreaSid": "",
"warehouseAreaName": "",
"warehouseRackSid": "",
"goodsID": "",
"goodsSkuTitle": "",
"goodsSkuCode": ""
}
}
this.loadList()

60
yxt-as-ui/src/views/storage/stocktaking/stocktakingRackCodeDetail.vue

@ -10,13 +10,13 @@
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<el-form-item label="商品ID">
<el-input v-model="queryParams.params.goodsId" placeholder="" clearable />
<el-input v-model="queryParams.params.goodsID" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品名称">
<el-input v-model="queryParams.params.goodsName" placeholder="" clearable />
<el-input v-model="queryParams.params.goodsSkuTitle" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品图号">
<el-input v-model="queryParams.params.goodsCode" placeholder="" clearable />
<el-input v-model="queryParams.params.goodsSkuCode" placeholder="" clearable />
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -35,21 +35,22 @@
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column prop="goodsID" label="商品ID" width="120" align="center" />
<el-table-column prop="goodsName" label="商品名称" width="120" align="center" />
<el-table-column prop="goodsCode" label="图号" width="120" align="center" />
<el-table-column prop="goodsSkuTitle" label="商品名称" width="120" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="120" align="center" />
<el-table-column prop="warehouseName" label="仓库" width="120" align="center" />
<el-table-column prop="warehouseAreaeName" label="库区" width="120" align="center" />
<el-table-column prop="warehouseArea" label="库区" width="120" align="center" />
<el-table-column prop="warehouseRackName" label="库位" width="120" align="center" />
<el-table-column prop="unit" label="单位" width="120" align="center" />
<el-table-column prop="price" label="单价" width="120" align="center" />
<el-table-column prop="inventoryNum" label="库存数量" width="120" align="center" />
<el-table-column prop="inventoryMoeny" label="库存金额" width="120" align="center" />
<el-table-column prop="spNum" label="实盘数量" width="120" align="center" />
<el-table-column prop="spMoney" label="实盘金额" width="120" align="center" />
<el-table-column prop="cost" label="单价" width="120" align="center" />
<el-table-column prop="bookCount" label="库存数量" width="120" align="center" />
<el-table-column prop="bookAmount" label="库存金额" width="120" align="center" />
<el-table-column prop="realCount" label="实盘数量" width="120" align="center" />
<el-table-column prop="realCount" label="实盘金额" width="120" align="center" />
<el-table-column prop="state" label="状态" width="120" align="center" />
<el-table-column prop="ykNum" label="亏盈数" width="120" align="center" />
<el-table-column prop="psNum" label="盘损数量" width="120" align="center" />
<el-table-column prop="psMoney" label="盘损金额" width="120" align="center" />
<el-table-column prop="profitAndLoseCount" label="亏盈数" width="120" align="center" />
<el-table-column prop="profitAndLoseAmount" label="盈亏金额" width="120" align="center" />
<el-table-column prop="lossCount" label="盘损数量" width="120" align="center" />
<el-table-column prop="lossAmount" label="盘损金额" width="120" align="center" />
<el-table-column prop="remarks" label="备注" align="center" width="200" />
<el-table-column label="附件" align="center">
<template slot-scope="scope">
@ -120,13 +121,15 @@
size: 10,
total: 0,
params: {
"sid": "",
"goodsId": "",
"goodsName": "",
"goodsCode": ""
"billSid": "",
"warehouseRackSid": "",
"goodsID": "",
"goodsSkuTitle": "",
"goodsSkuCode": ""
}
},
billSid: "",
warehouseRackSid: "",
fileList: []
}
},
@ -163,12 +166,16 @@
}
},
loadList(sid) {
this.tableLoading = true
showDetail(sid, warehouseRackSid) {
this.billSid = sid
this.queryParams.params.sid = sid
this.warehouseRackSid = warehouseRackSid
this.queryParams.params.billSid = sid
this.queryParams.params.warehouseRackSid = warehouseRackSid
this.loadList()
},
loadList() {
this.tableLoading = true
req.billRackCodeDetail(this.queryParams).then((resp) => {
this.tableLoading = false
if (resp.success) {
@ -201,10 +208,11 @@
size: 10,
total: 0,
params: {
"sid": this.billSid,
"goodsId": "",
"goodsName": "",
"goodsCode": ""
"billSid": this.billSid,
"warehouseRackSid": this.warehouseRackSid,
"goodsID": "",
"goodsSkuTitle": "",
"goodsSkuCode": ""
}
}
this.loadList()

138
yxt-as-ui/src/views/storage/stocktaking/stocktakingRackCodeList.vue

@ -10,20 +10,22 @@
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<el-form-item label="仓库">
<el-select v-model="queryParams.params.warehouseName" placeholder="请选择仓库">
<el-select v-model="queryParams.params.warehouseName" placeholder="请选择仓库"
@change="selectWarehouseChange">
<el-option v-for="item in warehouseList" :key="item.sid" :label="item.warehouseName"
:value="item.sid" />
</el-select>
</el-form-item>
<el-form-item label="库区">
<el-select v-model="queryParams.params.warehouseAreaeName" placeholder="请选择所属库位">
<el-select v-model="queryParams.params.warehouseAreaName" placeholder="请选择库区"
@change="selectWarehouseAreaChange">
<el-option v-for="item in warehouseAreaList" :key="item.sid" :label="item.areaName"
:value="item.sid" />
</el-select>
</el-form-item>
<el-form-item label="库位">
<el-select v-model="queryParams.params.warehouseRackName" placeholder="请选择">
<el-option v-for="item in warehouseRackList" :key="item.sid" :label="item.areaCode"
<el-select v-model="queryParams.params.warehouseRackName" placeholder="请选择库位">
<el-option v-for="item in warehouseRackList" :key="item.sid" :label="item.rackName"
:value="item.sid">
</el-option>
</el-select>
@ -50,31 +52,31 @@
</template>
</el-table-column>
<el-table-column prop="warehouseName" label="仓库" width="120" align="center" />
<el-table-column prop="warehouseAreaeName" label="库区" width="120" align="center" />
<el-table-column prop="warehouseArea" label="库区" width="120" align="center" />
<el-table-column prop="warehouseRackName" label="库位" width="120" align="center" />
<el-table-column label="应盘" align="center">
<el-table-column prop="ypNum" label="数量" align="center" width="100" />
<el-table-column prop="ypMoney" label="金额" align="center" width="100" />
<el-table-column prop="bookCount" label="数量" align="center" width="100" />
<el-table-column prop="bookAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column label="实盘" align="center">
<el-table-column prop="spNum" label="数量" align="center" width="100" />
<el-table-column prop="spMoney" label="金额" align="center" width="100" />
<el-table-column prop="realCount" label="数量" align="center" width="100" />
<el-table-column prop="realAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column label="未盘" align="center">
<el-table-column prop="wpNum" label="数量" align="center" width="100" />
<el-table-column prop="wpMoney" label="金额" align="center" width="100" />
<el-table-column prop="notCount" label="数量" align="center" width="100" />
<el-table-column prop="notAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column label="盘盈" align="center">
<el-table-column prop="pyNum" label="数量" align="center" width="100" />
<el-table-column prop="pyMoney" label="金额" align="center" width="100" />
<el-table-column prop="profitCount" label="数量" align="center" width="100" />
<el-table-column prop="profitAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column label="盘亏" align="center">
<el-table-column prop="pkNum" label="数量" align="center" width="100" />
<el-table-column prop="pkMoney" label="金额" align="center" width="100" />
<el-table-column prop="loseCount" label="数量" align="center" width="100" />
<el-table-column prop="loseAmount" label="金额" align="center" width="100" />
</el-table-column>
<el-table-column label="盘损" align="center">
<el-table-column prop="psNum" label="数量" align="center" width="100" />
<el-table-column prop="psMoney" label="金额" align="center" width="100" />
<el-table-column prop="lossCount" label="数量" align="center" width="100" />
<el-table-column prop="lossAmount" label="金额" align="center" width="100" />
</el-table-column>
</el-table>
</div>
@ -98,6 +100,9 @@
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import stocktakingRackCodeDetail from './stocktakingRackCodeDetail.vue'
import req2 from '@/api/warehouse/warehouse.js'
import req3 from '@/api/warehouse/warehouseArea.js'
import req4 from '@/api/warehouse/goodsShelves.js'
export default {
components: {
ButtonBar,
@ -126,10 +131,12 @@
size: 10,
total: 0,
params: {
"sid": "",
"billSid": "",
"warehouseSid": "",
"warehouseName": "",
"warehouseAreaeName": "",
"warehouseRackName": "",
"warehouseAreaSid": "",
"warehouseAreaName": "",
"warehouseRackSid": "",
}
},
billSid: "",
@ -145,6 +152,75 @@
},
methods: {
initData() {
var parpams = {
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
}
req2.getAllWarehouse(parpams).then(resp => {
this.warehouseList = resp.data
})
},
getWarehouseArea(sid) {
this.queryParams.params.warehouseAreaSid = ''
this.queryParams.params.warehouseAreaName = ''
var params = {
ckSid: sid
}
req3.getAllWarehouseareaBysid(params).then(resp => {
console.log('>>>>>>>>>getAllWarehousearea', resp)
this.warehouseAreaList = resp.data
}).catch(() => {})
},
getAllTypeByAreaSid(sid) {
this.queryParams.params.warehouseRackSid = ''
this.queryParams.params.warehouseRackName = ''
var params = {
areaSid: sid
}
req4.getAllTypeByAreaSid(params).then(resp => {
console.log('>>>>>>>>>getAllTypeByAreaSid', resp)
this.warehouseRackList = resp.data
}).catch(() => {})
},
selectWarehouseChange(val) {
const choose = this.warehouseList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
this.queryParams.params.warehouseSid = choose[0].sid
this.queryParams.params.warehouseName = choose[0].warehouseName
this.getWarehouseArea(choose[0].sid)
},
selectWarehouseAreaChange(val) {
const choose = this.warehouseAreaList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseAreaChange', choose)
this.queryParams.params.warehouseAreaSid = choose[0].sid
this.queryParams.params.warehouseAreaName = choose[0].areaName
this.getAllTypeByAreaSid(choose[0].sid)
},
selectWarehouseRackChange(val) {
const choose = this.warehouseRackList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseRackChange', choose)
this.queryParams.params.warehouseRackSid = choose[0].sid
this.queryParams.params.warehouseRackName = choose[0].rackName
},
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
@ -163,13 +239,15 @@
break
}
},
loadList(sid) {
this.tableLoading = true
showDetail(sid) {
this.initData()
this.billSid = sid
this.queryParams.params.sid = sid
this.queryParams.params.billSid = sid
this.loadList()
},
loadList() {
this.tableLoading = true
req.billStocktak(this.queryParams).then((resp) => {
this.tableLoading = false
if (resp.success) {
@ -202,10 +280,12 @@
size: 10,
total: 0,
params: {
"sid": this.billSid,
"billSid": this.billSid,
"warehouseSid": "",
"warehouseName": "",
"warehouseAreaeName": "",
"warehouseRackName": "",
"warehouseAreaSid": "",
"warehouseAreaName": "",
"warehouseRackSid": "",
}
}
this.loadList()
@ -214,7 +294,7 @@
toDetail(row) {
this.viewState = 2
this.$refs['divSp'].loadList(row.sid)
this.$refs['divSp'].showDetail(row.billSid, row.warehouseRackSid)
},
close() {
this.$emit('doback')

Loading…
Cancel
Save