Browse Source

完善 wms 商品展示字段

master
myTest383 6 months ago
parent
commit
a89f8540d7
  1. 15
      src/api/goods/goods.js
  2. 54
      src/views/baseInfo/warehouses/warehouse/warehouseAdd.vue
  3. 87
      src/views/goods/goods/index.vue
  4. 32
      src/views/inStorage/inspectionGoods/inspectionGoodsAdd.vue
  5. 4
      src/views/inStorage/inspectionGoods/inspectionGoodsInfo.vue
  6. 69
      src/views/inStorage/inspectionGoods/relation/chooseproducts.vue
  7. 74
      src/views/storage/inventoryAdjust/inventoryAdjust/relation/chooseproducts.vue
  8. 7
      src/views/storage/totalStatus/totalInventory/totalInventory.vue

15
src/api/goods/goods.js

@ -78,6 +78,21 @@ export default {
})
},
// 确定导入商品
batchSave: function(params) {
return request({
url: '/wms/apiadmin/base/basegoodsspu/batchSave?orgPath=' + params.orgPath,
method: 'post',
data: params.data,
headers: {
'Content-Type': 'application/json'
}
})
},
// 查询商品分页列表
getGoodsListAllByOrg: function(params) {
return request({

54
src/views/baseInfo/warehouses/warehouse/warehouseAdd.vue

@ -27,6 +27,14 @@
<el-input v-model="formobj.warehouseCode" placeholder="仓库编码" class="item_input" clearable
oninput="value=value.replace(/[^A-Za-z0-9]/g, '')" />
</div>
<div class="item">
<span class="item_text"><span class="must">*</span> 仓库类型</span>
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="item_input"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
</div>
<div class="item">
<span class="item_text">仓库联系人</span>
<el-input v-model="formobj.contacts" placeholder="仓库联系人" class="item_input" clearable />
@ -100,6 +108,9 @@
<script>
import req from '@/api/baseinfo/warehouse/warehouse.js'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
import divAdd from './warehouseAdd2.vue'
export default {
components: {
@ -114,6 +125,8 @@
sid: '',
warehouseName: '',
warehouseCode: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
contacts: "",
mob: "",
telephone: "",
@ -133,6 +146,7 @@
userSid: window.sessionStorage.getItem('userSid'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
},
warehouseTypeList: []
}
},
created() {},
@ -140,6 +154,29 @@
},
methods: {
getDictValue() {
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
},
selectWarehouseTypeChange(val) {
const choose = this.warehouseTypeList.filter((item) => item.dictKey == val)
console.log('>>>>>>>>>selectWarehouseTypeChange', choose)
this.formobj.warehouseTypeKey = choose[0].dictKey
this.formobj.warehouseTypeValue = choose[0].dictValue
},
changeTheme(val) {
},
@ -164,6 +201,16 @@
return
}
if (this.formobj.warehouseTypeValue == '' || this.formobj.warehouseTypeKey == '') {
this.$message({
showClose: true,
type: 'warning',
message: '仓库类型不能为空'
})
return
}
if (this.formobj.address == '') {
this.$message({
showClose: true,
@ -208,6 +255,8 @@
sid: '',
warehouseName: '',
warehouseCode: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
contacts: "",
mob: "",
telephone: "",
@ -230,8 +279,11 @@
this.submitdisabled = false
this.$emit('doback')
},
showAdd() {},
showAdd() {
this.getDictValue()
},
showEdit(row) {
this.getDictValue()
req.initWarehouse(row.sid)
.then(resp => {
if (resp.success) {

87
src/views/goods/goods/index.vue

@ -12,6 +12,28 @@
<el-form-item label="商品名称">
<el-input v-model="queryParams.params.name" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品条码">
<el-input v-model="queryParams.params.barCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品编码">
<el-input v-model="queryParams.params.goodsCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品品牌">
<el-select v-model="queryParams.params.brandName" placeholder="请选择品牌">
<el-option v-for="item in brandList" :key="item.sid" :label="item.brandName" :value="item.sid" />
</el-select>
</el-form-item>
<el-form-item label="商品类别">
<el-select v-model="queryParams.params.goodsTypeName" placeholder="请选择类别">
<el-option v-for="item in cateList" :key="item.sid" :label="item.goodsTypeName" :value="item.sid" />
</el-select>
</el-form-item>
<el-form-item label="商品厂家">
<el-select v-model="queryParams.params.manufacturerName" placeholder="请选择厂家">
<el-option v-for="item in facturerList" :key="item.sid" :label="item.manufacturerName"
:value="item.sid" />
</el-select>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -106,6 +128,9 @@
<script>
import req from '@/api/goods/goods.js'
import req2 from '@/api/goods/brand.js'
import req3 from '@/api/goods/category.js'
import req4 from '@/api/goods/factory.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
@ -129,11 +154,13 @@
uploadSuccess: false,
uploadResultMesssage: '',
uploadData: {
sid: ''
sid: '',
orgPath: window.sessionStorage.getItem('orgSidPath')
},
headers: {
token: window.sessionStorage.getItem('token')
},
uploadInfo: [],
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
@ -179,11 +206,19 @@
size: 10,
total: 0,
params: {
name: ''
name: '',
goodsCode: '',
barCode: '',
brandName: '',
goodsTypeName: '',
manufacturerName: ''
}
},
sids: [],
selectionList: []
selectionList: [],
brandList: [],
cateList: [],
facturerList: []
}
},
mounted() {
@ -191,8 +226,24 @@
},
created() {
this.loadList()
this.initData()
},
methods: {
initData() {
var parpams = {
orgPath: window.sessionStorage.getItem('orgSidPath'),
}
req2.getAllBrand(parpams).then(resp => {
this.brandList = resp.data
})
req3.getAllType(parpams).then(resp => {
this.cateList = resp.data
})
req4.getAllFacturer(parpams).then(resp => {
this.facturerList = resp.data
})
},
downLoad() {
const loading = this.$loading({
lock: true,
@ -225,6 +276,7 @@
const _this = this
_this.uploadResultMesssage = resp.msg
_this.uploadSuccess = resp.success
_this.uploadInfo = resp.data
},
handleConfirm() {
@ -236,8 +288,26 @@
})
return
}
this.dialogVisible = false
this.loadList()
var params = {
orgPath: window.sessionStorage.getItem('orgSidPath'),
data: this.uploadInfo
}
req.batchSave(params).then((resp) => {
if (resp.success) {
this.dialogVisible = false
this.loadList()
this.$message({
showClose: true,
type: 'success',
message: '上传成功!'
})
return
}
}).catch(() => {})
},
//
clicksearchShow() {
@ -316,7 +386,12 @@
size: 10,
total: 0,
params: {
name: ''
name: '',
goodsCode: '',
barCode: '',
brandName: '',
goodsTypeName: '',
manufacturerName: ''
}
}
this.loadList()

32
src/views/inStorage/inspectionGoods/inspectionGoodsAdd.vue

@ -105,9 +105,9 @@
</el-date-picker>
</template>
</el-table-column> -->
<el-table-column label="生产日期" prop="batch" align="center" width="150" />
<el-table-column label="批次号" prop="batch" align="center" width="150" />
<el-table-column label="明细备注" align="center" width="180">
<!-- <el-table-column label="生产日期" prop="batch" align="center" width="150" />
<el-table-column label="批次号" prop="batch" align="center" width="150" /> -->
<el-table-column label="明细备注" align="center">
<template slot-scope="scope">
<el-input ref="focusAssumptionInput" v-model="scope.row.remarks" clearable placeholder="" />
</template>
@ -331,7 +331,31 @@
backData(value) {
this.viewState = 1
this.formobj.list = value
// this.formobj.list = value
for (var i = 0; i < value.length; i++) {
this.formobj.list.push({
"sid": value[i].goodsSkuSid != null ? value[i].goodsSkuSid : '',
"goodsSkuSid": value[i].goodsSkuSid != null ? value[i].goodsSkuSid : '',
"goodsSpuName": value[i].goodsName != null ? value[i].goodsName : '',
"goodsSkuCode": value[i].goodsCode != null ? value[i].goodsCode : '',
"ownSpec": value[i].title != null ? value[i].title : '',
"goodsUnitName": value[i].unit != null ? value[i].unit : '',
"costPrice": value[i].salesPrice != null ? value[i].salesPrice : '0.00',
"totalPrice": value[i].totalPrice != null ? value[i].totalPrice : '0.00',
"count": value[i].count != null ? value[i].count : '0',
"warehouseRackName": value[i].warehouseRackName != null ? value[i].warehouseRackName : '',
"warehouseRackSid": value[i].warehouseRackSid != null ? value[i].warehouseRackSid : '',
"remarks": value[i].remarks != null ? value[i].remarks : '',
}
)
}
},
resetState() {

4
src/views/inStorage/inspectionGoods/inspectionGoodsInfo.vue

@ -67,8 +67,8 @@
<el-table-column label="总价" prop="totalPrice" align="center" />
<el-table-column label="商品数量" prop="count" align="center" />
<el-table-column label="库位" prop="warehouseRackName" align="center" />
<el-table-column label="生产日期" prop="batchNumber" align="center" />
<el-table-column label="批次号" prop="batchNumber" align="center" />
<!-- <el-table-column label="生产日期" prop="batchNumber" align="center" />
<el-table-column label="批次号" prop="batchNumber" align="center" /> -->
<el-table-column label="明细备注" prop="remarks" align="center" />
</el-table>

69
src/views/inStorage/inspectionGoods/relation/chooseproducts.vue

@ -13,12 +13,36 @@
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="120px" class="tab-header">
<el-form-item label="商品编码" class="searchlist">
<el-input v-model="listQuery.params.goodsCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品名称" class="searchlist">
<el-input v-model="listQuery.params.goodsSpuName" placeholder="" clearable />
<el-input v-model="listQuery.params.goodsName" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品编码" class="searchlist">
<el-form-item label="条形码" class="searchlist">
<el-input v-model="listQuery.params.barCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="规格编码" class="searchlist">
<el-input v-model="listQuery.params.goodsSkuCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="规格型号" class="searchlist">
<el-input v-model="listQuery.params.title" placeholder="" clearable />
</el-form-item>
<el-form-item label="具体规格" class="searchlist">
<el-input v-model="listQuery.params.ownSpec" placeholder="" clearable />
</el-form-item>
<el-form-item label="品牌" class="searchlist">
<el-input v-model="listQuery.params.brandName" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品类别" class="searchlist">
<el-input v-model="listQuery.params.typeName" placeholder="" clearable />
</el-form-item>
<el-form-item label="厂家" class="searchlist">
<el-input v-model="listQuery.params.manufacturerName" placeholder="" clearable />
</el-form-item>
<el-form-item label="厂家货号" class="searchlist">
<el-input v-model="listQuery.params.manufacturerCode" placeholder="" clearable />
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" @click="handleFilter" size="small">查询</el-button>
@ -35,10 +59,10 @@
@selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center" />
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column prop="goodsSpuName" label="商品名称" align="center" />
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
<el-table-column prop="ownSpec" label="规格" align="center" />
<el-table-column prop="goodsUnitName" label="单位" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsCode" label="商品编码" align="center" />
<el-table-column prop="title" label="规格" align="center" />
<el-table-column prop="unit" label="单位" align="center" />
</el-table>
</div>
<div class="pages">
@ -74,11 +98,20 @@
size: 5,
params: {
createOrgSid: '',
goodsSpuName: '',
goodsSkuCode: '',
goodsCode: "", //
goodsName: "", //
barCode: "", //
goodsSkuCode: "", //
title: '', //
ownSpec: "", //
brandName: "", //
typeName: "", //
manufacturerName: "", //
manufacturerCode: "" //
},
total: 0
}
total: 0,
},
createOrgSid: ""
}
},
methods: {
@ -117,8 +150,19 @@
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.listQuery.params.goodsSpuName = ''
this.listQuery.params.goodsSkuCode = ''
this.listQuery.params = {
createOrgSid: this.createOrgSid,
goodsCode: "", //
goodsName: "", //
barCode: "", //
goodsSkuCode: "", //
title: '', //
ownSpec: "", //
brandName: "", //
typeName: "", //
manufacturerName: "", //
manufacturerCode: "", //
}
this.getList()
},
handleSelectionChange(row) {
@ -135,6 +179,7 @@
// this.listQuery.params.saleVehSids = []
// }``
this.listQuery.params.createOrgSid = createOrgSid
this.createOrgSid = createOrgSid
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0

74
src/views/storage/inventoryAdjust/inventoryAdjust/relation/chooseproducts.vue

@ -15,12 +15,39 @@
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="120px"
class="tab-header">
<el-form-item label="商品编码" class="searchlist">
<el-input v-model="listQuery.params.goodsCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品名称" class="searchlist">
<el-input v-model="listQuery.params.goodsSpuName" placeholder="" clearable />
<el-input v-model="listQuery.params.goodsName" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品编码" class="searchlist">
<el-form-item label="条形码" class="searchlist">
<el-input v-model="listQuery.params.barCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="规格编码" class="searchlist">
<el-input v-model="listQuery.params.goodsSkuCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="规格型号" class="searchlist">
<el-input v-model="listQuery.params.title" placeholder="" clearable />
</el-form-item>
<el-form-item label="具体规格" class="searchlist">
<el-input v-model="listQuery.params.ownSpec" placeholder="" clearable />
</el-form-item>
<el-form-item label="品牌" class="searchlist">
<el-input v-model="listQuery.params.brandName" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品类别" class="searchlist">
<el-input v-model="listQuery.params.typeName" placeholder="" clearable />
</el-form-item>
<el-form-item label="厂家" class="searchlist">
<el-input v-model="listQuery.params.manufacturerName" placeholder="" clearable />
</el-form-item>
<el-form-item label="厂家货号" class="searchlist">
<el-input v-model="listQuery.params.manufacturerCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="库位编号" class="searchlist">
<el-input v-model="listQuery.params.warehouseRackCode" placeholder="" clearable />
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" @click="handleFilter"
@ -39,9 +66,9 @@
style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center" />
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column prop="goodsSkuTitle" label="商品名称" align="center" />
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" />
<el-table-column prop="goodsSpuName" label="商品名称" align="center" />
<el-table-column prop="goodsSpuCode" label="商品编码" align="center" />
<el-table-column prop="goodsSkuTitle" label="规格" align="center" />
<el-table-column prop="unit" label="单位" align="center" />
<el-table-column prop="warehouseAreaName" label="库区" align="center" />
<el-table-column prop="warehouseRackCode" label="库位" align="center" />
@ -82,12 +109,22 @@
menuUrl: this.$route.path,
orgPath: window.sessionStorage.getItem('orgSidPath'),
userSid: window.sessionStorage.getItem('userSid'),
warehouseSid: '',
goodsSkuCode: '',
goodsSpuName: '',
warehouseSid: "",
goodsCode: "", //
goodsName: "", //
barCode: "", //
goodsSkuCode: "", //
title: '', //
ownSpec: "", //
brandName: "", //
typeName: "", //
manufacturerName: "", //
manufacturerCode: "", //
warehouseRackCode: "" //
},
total: 0,
}
},
warehouseSid: ""
}
},
methods: {
@ -126,7 +163,23 @@
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.listQuery.params.goodsSkuCode = ''
this.listQuery.params = {
menuUrl: this.$route.path,
orgPath: window.sessionStorage.getItem('orgSidPath'),
userSid: window.sessionStorage.getItem('userSid'),
warehouseSid: this.warehouseSid,
goodsCode: "", //
goodsName: "", //
barCode: "", //
goodsSkuCode: "", //
title: '', //
ownSpec: "", //
brandName: "", //
typeName: "", //
manufacturerName: "", //
manufacturerCode: "", //
warehouseRackCode: "", //
}
this.getList()
},
handleSelectionChange(row) {
@ -143,6 +196,7 @@
// this.listQuery.params.saleVehSids = []
// }``
this.listQuery.params.warehouseSid = warehouseSid
this.warehouseSid = warehouseSid
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0

7
src/views/storage/totalStatus/totalInventory/totalInventory.vue

@ -57,9 +57,9 @@
<div class="listtop">
<div class="tit">库存总量列表</div>
<div class="tit">库存总数量{{map.totalUseCount}}</div>
<div class="tit">库存总金额{{map.useCountMoney}}</div>
<!-- <div class="tit">库存总金额{{map.useCountMoney}}</div> -->
<div class="tit">在途总数量{{map.totalInTransitSummary}}</div>
<div class="tit">在途总金额{{map.inTransitSummaryMoney}}</div>
<!-- <div class="tit">在途总金额{{map.inTransitSummaryMoney}}</div> -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current"
:limit.sync="listQuery.size" class="pagination" @pagination="getList" />
</div>
@ -107,7 +107,7 @@
<el-table-column prop="boxUnit" label="默认箱单位" width="120" align="center" />
<el-table-column prop="volume" label="实际体积m³" width="120" align="center" />
<el-table-column prop="weight" label="实际重量kg" width="120" align="center" />
<el-table-column label="查看" align="center">
<el-table-column label="库区库存" align="center">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="toRackCountunt(scope.row)">查看</el-button>
</template>
@ -191,7 +191,6 @@
</el-dialog>
<el-dialog title="库区库存" :visible.sync="dialogVisible2" style=" width:150%;margin-left: -20%;">
<el-table :data="rackCountList" border style="width: 100%;margin-top: -30px;">

Loading…
Cancel
Save