Browse Source

Merge remote-tracking branch 'origin/master'

master
yunuo970428 5 months ago
parent
commit
6e22bf6cdf
  1. 12
      yxt-as-ui/src/api/operation/salesInvoice.js
  2. 9
      yxt-as-ui/src/api/warehouse/warehouse.js
  3. 600
      yxt-as-ui/src/views/goods/goods/goodsAdd2.vue
  4. 398
      yxt-as-ui/src/views/goods/goods/goodsInfo2.vue
  5. 20
      yxt-as-ui/src/views/goods/goods/index.vue
  6. 15
      yxt-as-ui/src/views/storage/adjustment/index.vue
  7. 387
      yxt-as-ui/src/views/storage/inventory/inventoryRefer.vue
  8. 50
      yxt-as-ui/src/views/storage/oldPartsCope/index.vue
  9. 48
      yxt-as-ui/src/views/storage/oldPartsFactory/index.vue
  10. 48
      yxt-as-ui/src/views/storage/oldpPartStocktaking/index.vue
  11. 49
      yxt-as-ui/src/views/storage/oldpPartStocktakingLoss/index.vue
  12. 49
      yxt-as-ui/src/views/storage/oldpPartStocktakingSurplus/index.vue
  13. 48
      yxt-as-ui/src/views/storage/stocktaking/index.vue
  14. 49
      yxt-as-ui/src/views/storage/stocktakingLoss/index.vue
  15. 49
      yxt-as-ui/src/views/storage/stocktakingSurplus/index.vue
  16. 153
      yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue
  17. 54
      yxt-as-ui/src/views/warehouse/goodsShelves/index.vue
  18. 30
      yxt-as-ui/src/views/warehouse/warehouse/index.vue
  19. 94
      yxt-as-ui/src/views/warehouse/warehouse/warehouseAdd.vue
  20. 9
      yxt-as-ui/src/views/warehouse/warehouse/warehouseInfo.vue
  21. 52
      yxt-as-ui/src/views/warehouse/warehouseArea/index.vue
  22. 215
      yxt-as-ui/src/views/warehouse/warehouseArea/warehouseAreaAdd.vue
  23. 32
      yxt-as-ui/src/views/warehouse/warehouseZone/warehouseZone.vue
  24. 137
      yxt-as-ui/src/views/warehouse/warehouseZone/warehouseZoneAdd.vue
  25. 5
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaMapper.xml
  26. 1
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaQuery.java
  27. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaService.java
  28. 4
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaVo.java
  29. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseareatype/WmsWarehouseAreaTypeVo.java
  30. 5
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoMapper.xml
  31. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoVo.java
  32. 5
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.xml
  33. 1
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackQuery.java
  34. 4
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java
  35. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackVo.java
  36. 5
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneMapper.xml
  37. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneVo.java

12
yxt-as-ui/src/api/operation/salesInvoice.js

@ -4,7 +4,7 @@ export default {
// 查询分页列表
listPage: function(params) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/listPage',
method: 'post',
data: params,
@ -15,7 +15,7 @@ export default {
},
saveOrUpdate: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/saveOrUpdate',
method: 'post',
data: data,
@ -26,14 +26,14 @@ export default {
},
fetchBySid: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/fetchDetailsBySid/' + data,
method: 'get'
})
},
deleteBySids: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/delBySids',
method: 'DELETE',
data: data,
@ -44,7 +44,7 @@ export default {
},
submit: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/submit',
method: 'post',
data: data,
@ -56,7 +56,7 @@ export default {
salesOrderListPage: function(params) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/salesOrderListPage',
method: 'post',
data: params,

9
yxt-as-ui/src/api/warehouse/warehouse.js

@ -75,4 +75,13 @@ export default {
params: params,
})
},
// 根据仓库类型value 查询所有仓库
selectWarehouseByType: function(params) {
return request({
url: '/wms/apiadmin/base/wmswarehouseinfo/selectWarehouseByType',
method: 'get',
params: params,
})
},
}

600
yxt-as-ui/src/views/goods/goods/goodsAdd2.vue

@ -20,25 +20,27 @@
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 商品名称</div>
<el-form-item prop="goodsName">
<el-input v-model="formobj.goodsName" placeholder="商品名称" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.goodsName" placeholder="商品名称" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 商品编码</div>
<div class="span-sty"><span class="must">*</span> 图号</div>
<el-form-item prop="goodsCode">
<el-input v-model="formobj.goodsCode" placeholder="商品编码" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.goodsCode" placeholder="图号" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">条形码</div>
<el-form-item>
<el-input v-model="formobj.barCode" placeholder="由系统自动生成" :readonly="true" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.barCode" placeholder="由系统自动生成" :readonly="true" class="addinputw addinputInfo"
clearable />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty"> 拼音缩写</div>
<el-form-item>
<el-input v-model="formobj.goodsPY" placeholder="由系统自动生成" :readonly="true" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.goodsPY" placeholder="由系统自动生成" :readonly="true" class="addinputw addinputInfo"
clearable />
</el-form-item>
</el-col>
</el-row>
@ -46,29 +48,32 @@
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 计量单位</div>
<el-form-item prop="goodsUnitName">
<el-select v-model="formobj.goodsUnitName" placeholder="请选择计量单位" class="addinputw" @change="selectunitNameChange">
<el-option v-for="item in unitNameList" :key="item.sid" :label="item.unitName" :value="item.sid"/>
<el-select v-model="formobj.goodsUnitName" placeholder="请选择计量单位" class="addinputw"
@change="selectunitNameChange">
<el-option v-for="item in unitNameList" :key="item.sid" :label="item.unitName" :value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 商品类别</div>
<el-form-item prop="goodsTypeName">
<el-select v-model="formobj.goodsTypeName" placeholder="请选择商品类别" class="addinputw" @change="selectCateChange">
<el-option v-for="item in cateList" :key="item.sid" :label="item.goodsTypeName" :value="item.sid"/>
<el-select v-model="formobj.goodsTypeName" placeholder="请选择商品类别" class="addinputw"
@change="selectCateChange">
<el-option v-for="item in cateList" :key="item.sid" :label="item.goodsTypeName" :value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">规格</div>
<el-form-item>
<el-input v-model="formobj.indexes" placeholder="规格" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.indexes" placeholder="规格" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">保质期()</div>
<el-form-item>
<el-input v-model="formobj.shelfLife " placeholder="保质期(天)" class="addinputw addinputInfo" clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"/>
<el-input v-model="formobj.shelfLife " placeholder="保质期(天)" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />
</el-form-item>
</el-col>
</el-row>
@ -77,22 +82,25 @@
<div class="span-sty"><span class="must">*</span> 品牌</div>
<el-form-item prop="brandName">
<el-select v-model="formobj.brandName" placeholder="请选择品牌" class="addinputw" @change="selectBrandChange">
<el-option v-for="item in brandList" :key="item.sid" :label="item.brandName" :value="item.sid"/>
<el-option v-for="item in brandList" :key="item.sid" :label="item.brandName" :value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty"><span class="must">*</span> 厂家</div>
<el-form-item prop="manufacturerName">
<el-select v-model="formobj.manufacturerName" placeholder="请选择厂家" class="addinputw" @change="selectfacturerChange">
<el-option v-for="item in facturerList" :key="item.sid" :label="item.manufacturerName" :value="item.sid"/>
<el-select v-model="formobj.manufacturerName" placeholder="请选择厂家" class="addinputw"
@change="selectfacturerChange">
<el-option v-for="item in facturerList" :key="item.sid" :label="item.manufacturerName"
:value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">原厂标志</div>
<el-form-item>
<el-radio-group v-model="formobj.isOriginalFactory" size="medium" style="margin-left: 120px;" @change="selectIsOriginalFactory">
<el-radio-group v-model="formobj.isOriginalFactory" size="medium" style="margin-left: 120px;"
@change="selectIsOriginalFactory">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
@ -103,13 +111,15 @@
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 库存上限</div>
<el-form-item prop="inventoryAlertUpperLimit">
<el-input v-model="formobj.inventoryAlertUpperLimit" placeholder="库存上限" class="addinputw addinputInfo" clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"/>
<el-input v-model="formobj.inventoryAlertUpperLimit" placeholder="库存上限" class="addinputw addinputInfo"
clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty"><span class="must">*</span> 库存下限</div>
<el-form-item prop="inventoryAlertLowerLimit">
<el-input v-model="formobj.inventoryAlertLowerLimit" placeholder="库存下限" class="addinputw addinputInfo" clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"/>
<el-input v-model="formobj.inventoryAlertLowerLimit" placeholder="库存下限" class="addinputw addinputInfo"
clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />
</el-form-item>
</el-col>
</el-row>
@ -117,44 +127,48 @@
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 排序</div>
<el-form-item prop="sortNo">
<el-input v-model="formobj.sortNo" placeholder="排序" class="addinputw addinputInfo" clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"/>
<el-input v-model="formobj.sortNo" placeholder="排序" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">备注</div>
<el-form-item>
<el-input v-model="formobj.skuRemarks" placeholder="备注" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.skuRemarks" placeholder="备注" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">锁定销售</div>
<div class="span-sty">锁定销售价</div>
<el-form-item>
<el-radio-group v-model="formobj.isLockingSalesPrice" size="small" style="margin-left: 120px;" @change="selectIsLockingSalesPrice">
<el-radio-group v-model="formobj.isLockingSalesPrice" size="small" style="margin-left: 120px;"
@change="selectIsLockingSalesPrice">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">销售</div>
<div class="span-sty">销售价</div>
<el-form-item>
<el-input v-model="formobj.minimumSalesPrice" placeholder="销售底价" class="addinputw addinputInfo" clearable oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"/>
<el-input v-model="formobj.minimumSalesPrice" placeholder="销售价" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">三包价格</div>
<el-form-item>
<el-input v-model="formobj.standardPurchasePrice" placeholder="三包价格" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"/>
<el-input v-model="formobj.standardPurchasePrice" placeholder="三包价格" class="addinputw addinputInfo"
clearable
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">首保价格</div>
<el-form-item>
<el-input v-model="formobj.agencyPrice" placeholder="首保价格" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"/>
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" />
</el-form-item>
</el-col>
</el-row>
@ -162,7 +176,8 @@
<el-col :span="24">
<div class="span-sty">商品图片</div>
<el-form-item>
<upload-img ref="uploadImg" class="addinputw addinputInfo" v-model="imgList" :limit="50" bucket="map" :upload-data="{ type: '0001' }" @change="backData"/>
<upload-img ref="uploadImg" class="addinputw addinputInfo" v-model="imgList" :limit="50" bucket="map"
:upload-data="{ type: '0001' }" @change="backData" />
</el-form-item>
</el-col>
</el-row>
@ -172,289 +187,292 @@
</template>
<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 req5 from '@/api/goods/unit.js'
import { getOrgSidByPath } from '@/api/Common/dictcommons'
import uploadImg from '@/components/uploadFile/uploadImg'
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 req5 from '@/api/goods/unit.js'
import {
getOrgSidByPath
} from '@/api/Common/dictcommons'
import uploadImg from '@/components/uploadFile/uploadImg'
export default {
components: {
uploadImg
},
data() {
return {
listLoading: false,
activeNames: ['1'],
imgList: [],
submitdisabled: false,
formobj: {
sid: '',
userSid: '',
orgPath: '',
useOrgSid: '',
createOrgSid: '',
goodsName: '',
goodsCode: '',
goodsPY: '',
barCode: '',
goodsUnitSid: '',
goodsUnitName: '',
goodsTypeSid: '',
goodsTypeName: '',
indexes: '',
shelfLife: '',
brandSid: '',
brandName: '',
manufacturerSid: '',
manufacturerName: '',
isOriginalFactory: '2',
isOriginalFactoryValue: '',
sortNo: '',
skuRemarks: '',
inventoryAlertUpperLimit: '',
inventoryAlertLowerLimit: '',
isLockingSalesPrice: '2',
isLockingSalesPriceValue: '',
minimumSalesPrice: '',
standardPurchasePrice: '',
agencyPrice: '',
picPath: []
},
brandList: [],
cateList: [],
facturerList: [],
unitNameList: [],
rules: {
goodsName: [{
required: true,
message: '商品名称不能为空',
trigger: 'blur'
}],
goodsCode: [{
required: true,
message: '商品编码不能为空',
trigger: 'blur'
}],
goodsUnitName: [{
required: true,
message: '请选择计量单位',
trigger: 'change'
}],
goodsTypeName: [{
required: true,
message: '请选择商品类别',
trigger: 'change'
}],
brandName: [{
required: true,
message: '请选择商品品牌',
trigger: 'change'
}],
manufacturerName: [{
required: true,
message: '请选择商品厂家',
trigger: 'change'
}],
sortNo: [{
required: true,
message: '商品排序不能为空',
trigger: 'blur'
}],
inventoryAlertUpperLimit: [{
required: true,
message: '商品上限不能为空',
trigger: 'blur'
}],
inventoryAlertLowerLimitt: [{
required: true,
message: '商品下限不能为空',
trigger: 'blur'
}]
}
}
},
methods: {
selectIsOriginalFactory(val) {
console.log('selectIsOriginalFactory》》》》', val)
this.formobj.isOriginalFactoryValue = val === '1' ? '是' : '否'
},
selectIsLockingSalesPrice(val) {
console.log('selectIsLockingSalesPrice》》》》', val)
this.formobj.isLockingSalesPriceValue = val === '1' ? '是' : '否'
},
initData(deptSid) {
var parpams = { useOrgSid: deptSid }
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
})
req5.getAllUnit(parpams).then(resp => {
this.unitNameList = resp.data
})
export default {
components: {
uploadImg
},
showAdd(userSid, orgSid, deptSid) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.formobj.userSid = userSid
this.formobj.useOrgSid = deptSid
this.formobj.createOrgSid = orgSid
this.initData(deptSid)
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initGoods(row.sid).then(resp => {
if (resp.success) {
this.formobj = resp.data
this.initData(this.formobj.useOrgSid)
for (var i = 0; i < resp.data.picPath.length; i++) {
var item = resp.data.picPath[i]
this.imgList.push({
url: item.url
})
}
data() {
return {
listLoading: false,
activeNames: ['1'],
imgList: [],
submitdisabled: false,
formobj: {
sid: '',
userSid: '',
orgPath: '',
useOrgSid: '',
createOrgSid: '',
goodsName: '',
goodsCode: '',
goodsPY: '',
barCode: '',
goodsUnitSid: '',
goodsUnitName: '',
goodsTypeSid: '',
goodsTypeName: '',
indexes: '',
shelfLife: '',
brandSid: '',
brandName: '',
manufacturerSid: '',
manufacturerName: '',
isOriginalFactory: '2',
isOriginalFactoryValue: '',
sortNo: '',
skuRemarks: '',
inventoryAlertUpperLimit: '',
inventoryAlertLowerLimit: '',
isLockingSalesPrice: '2',
isLockingSalesPriceValue: '',
minimumSalesPrice: '',
standardPurchasePrice: '',
agencyPrice: '',
picPath: []
},
brandList: [],
cateList: [],
facturerList: [],
unitNameList: [],
rules: {
goodsName: [{
required: true,
message: '商品名称不能为空',
trigger: 'blur'
}],
goodsCode: [{
required: true,
message: '商品编码不能为空',
trigger: 'blur'
}],
goodsUnitName: [{
required: true,
message: '请选择计量单位',
trigger: 'change'
}],
goodsTypeName: [{
required: true,
message: '请选择商品类别',
trigger: 'change'
}],
brandName: [{
required: true,
message: '请选择商品品牌',
trigger: 'change'
}],
manufacturerName: [{
required: true,
message: '请选择商品厂家',
trigger: 'change'
}],
sortNo: [{
required: true,
message: '商品排序不能为空',
trigger: 'blur'
}],
inventoryAlertUpperLimit: [{
required: true,
message: '商品上限不能为空',
trigger: 'blur'
}],
inventoryAlertLowerLimitt: [{
required: true,
message: '商品下限不能为空',
trigger: 'blur'
}]
}
}).catch(e => {
this.formobj = row
})
},
selectBrandChange(val) {
const choose = this.brandList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectBrandChange', choose)
this.formobj.brandSid = choose[0].sid
this.formobj.brandName = choose[0].brandName
},
selectCateChange(val) {
const choose = this.cateList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectCateChange', choose)
this.formobj.goodsTypeSid = choose[0].sid
this.formobj.goodsTypeName = choose[0].goodsTypeName
},
selectfacturerChange(val) {
const choose = this.facturerList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectfacturerChange', choose)
this.formobj.manufacturerSid = choose[0].sid
this.formobj.manufacturerName = choose[0].manufacturerName
},
selectunitNameChange(val) {
const choose = this.unitNameList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectunitNameChange', choose)
this.formobj.goodsUnitSid = choose[0].sid
this.formobj.goodsUnitName = choose[0].unitName
},
backData(value) {
console.log('backData》》》》', value)
console.log('imgList', this.imgList)
this.formobj.picPath = this.imgList
}
},
saveOrUpdate() {
console.log('>>>>>>>>>saveOrUpdate', this.formobj)
this.$refs['form_obj'].validate((valid) => {
if (valid) {
req.saveGoods(this.formobj).then(resp => {
if (resp.success) {
this.$message({
showClose: true,
type: 'success',
message: resp.msg
methods: {
selectIsOriginalFactory(val) {
console.log('selectIsOriginalFactory》》》》', val)
this.formobj.isOriginalFactoryValue = val === '1' ? '是' : '否'
},
selectIsLockingSalesPrice(val) {
console.log('selectIsLockingSalesPrice》》》》', val)
this.formobj.isLockingSalesPriceValue = val === '1' ? '是' : '否'
},
initData(deptSid) {
var parpams = {
useOrgSid: deptSid
}
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
})
req5.getAllUnit(parpams).then(resp => {
this.unitNameList = resp.data
})
},
showAdd(userSid, orgSid, deptSid) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.formobj.userSid = userSid
this.formobj.useOrgSid = deptSid
this.formobj.createOrgSid = orgSid
this.initData(deptSid)
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initGoods(row.sid).then(resp => {
if (resp.success) {
this.formobj = resp.data
this.initData(this.formobj.useOrgSid)
for (var i = 0; i < resp.data.picPath.length; i++) {
var item = resp.data.picPath[i]
this.imgList.push({
url: item.url
})
this.handleReturn('true')
} else {
// resp.code
}
}).catch(() => {
})
}
}).catch(e => {
this.formobj = row
})
},
selectBrandChange(val) {
const choose = this.brandList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectBrandChange', choose)
this.formobj.brandSid = choose[0].sid
this.formobj.brandName = choose[0].brandName
},
selectCateChange(val) {
const choose = this.cateList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectCateChange', choose)
this.formobj.goodsTypeSid = choose[0].sid
this.formobj.goodsTypeName = choose[0].goodsTypeName
},
selectfacturerChange(val) {
const choose = this.facturerList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectfacturerChange', choose)
this.formobj.manufacturerSid = choose[0].sid
this.formobj.manufacturerName = choose[0].manufacturerName
},
selectunitNameChange(val) {
const choose = this.unitNameList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectunitNameChange', choose)
this.formobj.goodsUnitSid = choose[0].sid
this.formobj.goodsUnitName = choose[0].unitName
},
backData(value) {
console.log('backData》》》》', value)
console.log('imgList', this.imgList)
this.formobj.picPath = this.imgList
},
saveOrUpdate() {
console.log('>>>>>>>>>saveOrUpdate', this.formobj)
this.$refs['form_obj'].validate((valid) => {
if (valid) {
req.saveGoods(this.formobj).then(resp => {
if (resp.success) {
this.$message({
showClose: true,
type: 'success',
message: resp.msg
})
this.handleReturn('true')
} else {
// resp.code
}
}).catch(() => {})
}
})
},
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
this.formobj = {
sid: '',
userSid: '',
orgPath: '',
useOrgSid: '',
createOrgSid: '',
goodsName: '',
goodsCode: '',
goodsPY: '',
barCode: '',
goodsUnitSid: '',
goodsUnitName: '',
goodsTypeSid: '',
goodsTypeName: '',
indexes: '',
shelfLife: '',
brandSid: '',
brandName: '',
manufacturerSid: '',
manufacturerName: '',
isOriginalFactory: '2',
isOriginalFactoryValue: '',
sortNo: '',
skuRemarks: '',
inventoryAlertUpperLimit: '',
inventoryAlertLowerLimit: '',
isLockingSalesPrice: '2',
isLockingSalesPriceValue: '',
minimumSalesPrice: '',
standardPurchasePrice: '',
agencyPrice: '',
picPath: []
}
})
},
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
this.formobj = {
sid: '',
userSid: '',
orgPath: '',
useOrgSid: '',
createOrgSid: '',
goodsName: '',
goodsCode: '',
goodsPY: '',
barCode: '',
goodsUnitSid: '',
goodsUnitName: '',
goodsTypeSid: '',
goodsTypeName: '',
indexes: '',
shelfLife: '',
brandSid: '',
brandName: '',
manufacturerSid: '',
manufacturerName: '',
isOriginalFactory: '2',
isOriginalFactoryValue: '',
sortNo: '',
skuRemarks: '',
inventoryAlertUpperLimit: '',
inventoryAlertLowerLimit: '',
isLockingSalesPrice: '2',
isLockingSalesPriceValue: '',
minimumSalesPrice: '',
standardPurchasePrice: '',
agencyPrice: '',
picPath: []
this.imgList = []
this.$emit('doback')
}
this.imgList = []
this.$emit('doback')
}
}
}
</script>
<style scoped>
/deep/ .el-form-item__error {
margin-left: 120px !important;
}
/deep/ .el-form-item__error {
margin-left: 120px !important;
}
.must {
color: #f00;
}
.must {
color: #f00;
}
.span-sty {
width: 130px !important;
}
.span-sty {
width: 130px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.first_row {
border-top: 1px solid #E0E3EB;
}
.first_row {
border-top: 1px solid #E0E3EB;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.el-radio /deep/ .el-radio__label {
.el-radio /deep/ .el-radio__label {
font-size: 14px !important;
font-size: 14px !important;
}
}
</style>

398
yxt-as-ui/src/views/goods/goods/goodsInfo2.vue

@ -1,209 +1,211 @@
<template>
<div>
<div class="tab-header webtop">
<!-- 标题 -->
<div>商品信息</div>
<!-- start 添加修改按钮 -->
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
<div>
<div class="tab-header webtop">
<!-- 标题 -->
<div>商品信息</div>
<!-- start 添加修改按钮 -->
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
<!-- end 添加修改按钮 -->
<!-- end 详情按钮 -->
</div>
<!-- end 添加修改按钮 -->
<!-- end 详情按钮 -->
</div>
<div class="listconadd">
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" class="formaddcopy02">
<!-- <div class="title">
<el-form ref="form_obj" :model="formobj" class="formaddcopy02">
<!-- <div class="title">
<div>基础信息</div>
</div> -->
<el-row class="first_row">
<el-col :span="6">
<div class="span-sty">商品名称</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">商品编码</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsCode}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">条形码</div>
<el-form-item>
<span class="addinputInfo">{{formobj.barCode}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">拼音缩写</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsPY}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">计量单位</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsUnitName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">商品类别</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsTypeName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">规格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.indexes}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">保质期()</div>
<el-form-item>
<span class="addinputInfo">{{formobj.shelfLife}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">品牌</div>
<el-form-item>
<span class="addinputInfo">{{formobj.brandName}}</span>
</el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">厂家</div>
<el-form-item>
<span class="addinputInfo">{{formobj.manufacturerName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">原厂标志</div>
<el-form-item>
<el-radio-group v-model="formobj.isOriginalFactory" :disabled="true" size="small" style="margin-left: 120px;">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">库存上限</div>
<el-form-item>
<span class="addinputInfo">{{formobj.inventoryAlertUpperLimit}}</span>
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">库存下限</div>
<el-form-item>
<span class="addinputInfo">{{formobj.inventoryAlertLowerLimit}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">排序</div>
<el-form-item>
<span class="addinputInfo">{{formobj.sortNo}}</span>
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">备注</div>
<el-form-item>
<span class="addinputInfo">{{formobj.skuRemarks}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">锁定销售定价</div>
<el-form-item>
<el-radio-group v-model="formobj.isLockingSalesPrice" :disabled="true" size="small" style="margin-left: 120px;">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">销售底价</div>
<el-form-item>
<span class="addinputInfo">{{formobj.minimumSalesPrice}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">三包价格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.standardPurchasePrice}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">首保价格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.agencyPrice}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">规格图片</div>
<el-form-item>
<template slot-scope="scope">
<span v-for="(item,index) in formobj.picPath" :key="index" class="addinputInfo">
<el-popover placement="left" trigger="click" width="300">
<img :src="item.url" width="100%" />
<img slot="reference" :src="item.url" :alt="item.url"
style="max-height: 70px;max-width: 70px; padding: 5px" />
</el-popover>
</span>
</template>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-row class="first_row">
<el-col :span="6">
<div class="span-sty">商品名称</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">图号</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsCode}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">条形码</div>
<el-form-item>
<span class="addinputInfo">{{formobj.barCode}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">拼音缩写</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsPY}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">计量单位</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsUnitName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">商品类别</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsTypeName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">规格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.indexes}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">保质期()</div>
<el-form-item>
<span class="addinputInfo">{{formobj.shelfLife}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">品牌</div>
<el-form-item>
<span class="addinputInfo">{{formobj.brandName}}</span>
</el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">厂家</div>
<el-form-item>
<span class="addinputInfo">{{formobj.manufacturerName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">原厂标志</div>
<el-form-item>
<el-radio-group v-model="formobj.isOriginalFactory" :disabled="true" size="small"
style="margin-left: 120px;">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">库存上限</div>
<el-form-item>
<span class="addinputInfo">{{formobj.inventoryAlertUpperLimit}}</span>
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">库存下限</div>
<el-form-item>
<span class="addinputInfo">{{formobj.inventoryAlertLowerLimit}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">排序</div>
<el-form-item>
<span class="addinputInfo">{{formobj.sortNo}}</span>
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">备注</div>
<el-form-item>
<span class="addinputInfo">{{formobj.skuRemarks}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">锁定销售价</div>
<el-form-item>
<el-radio-group v-model="formobj.isLockingSalesPrice" :disabled="true" size="small"
style="margin-left: 120px;">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">销售价</div>
<el-form-item>
<span class="addinputInfo">{{formobj.minimumSalesPrice}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">三包价格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.standardPurchasePrice}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">首保价格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.agencyPrice}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">规格图片</div>
<el-form-item>
<template slot-scope="scope">
<span v-for="(item,index) in formobj.picPath" :key="index" class="addinputInfo">
<el-popover placement="left" trigger="click" width="300">
<img :src="item.url" width="100%" />
<img slot="reference" :src="item.url" :alt="item.url"
style="max-height: 70px;max-width: 70px; padding: 5px" />
</el-popover>
</span>
</template>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</div>
</div>
</template>
<script>

20
yxt-as-ui/src/views/goods/goods/index.vue

@ -77,7 +77,7 @@
</template>
</el-table-column> -->
<el-table-column fixed prop="goodsName" label="商品名称" width="120" align="center" />
<el-table-column prop="goodsCode" label="商品编码" width="120" align="center" />
<el-table-column fixed prop="goodsCode" label="图号" width="120" align="center" />
<el-table-column prop="goodsPY" label="拼音缩写" width="100" align="center" />
<el-table-column prop="barCode" label="商品条码" width="100" align="center" />
<el-table-column prop="goodsUnitName" label="计量单位" width="100" align="center" />
@ -90,7 +90,7 @@
<el-table-column prop="inventoryAlertUpperLimit" label="库存上限" width="100" align="center" />
<el-table-column prop="inventoryAlertLowerLimit" label="库存下限" width="100" align="center" />
<el-table-column prop="isLockingSalesPriceValue" label="锁定销售价" width="100" align="center" />
<el-table-column prop="minimumSalesPrice" label="销售价" width="100" align="center" />
<el-table-column prop="minimumSalesPrice" label="销售价" width="100" align="center" />
<el-table-column prop="standardPurchasePrice" label="三包价格" width="100" align="center" />
<el-table-column prop="agencyPrice" label="首保价格" width="100" align="center" />
<el-table-column label="商品图片" align="center" width="100">
@ -147,7 +147,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './goodsAdd2.vue'
import divInfo from './goodsInfo2.vue'
import { getOrgSidByPath } from '@/api/Common/dictcommons'
import {
getOrgSidByPath
} from '@/api/Common/dictcommons'
export default {
components: {
ButtonBar,
@ -231,7 +233,10 @@
},
methods: {
initData() {
var parpams = { useOrgSid: window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage.getItem('defaultOrgPath').lastIndexOf('/') + 1) }
var parpams = {
useOrgSid: window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage.getItem(
'defaultOrgPath').lastIndexOf('/') + 1)
}
//
req2.getAllBrand(parpams).then(resp => {
console.log('>>>>>>>>>getAllBrand', resp)
@ -362,12 +367,15 @@
toAdd() {
this.viewState = 2
var orgSid = ''
getOrgSidByPath({ orgPath: window.sessionStorage.getItem('defaultOrgPath') }).then((res) => {
getOrgSidByPath({
orgPath: window.sessionStorage.getItem('defaultOrgPath')
}).then((res) => {
if (res.success) {
orgSid = res.data
}
})
this.$refs['divadd'].showAdd(window.sessionStorage.getItem('userSid'), orgSid, window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage.getItem('defaultOrgPath').lastIndexOf('/') + 1))
this.$refs['divadd'].showAdd(window.sessionStorage.getItem('userSid'), orgSid, window.sessionStorage.getItem(
'defaultOrgPath').substring(window.sessionStorage.getItem('defaultOrgPath').lastIndexOf('/') + 1))
},
toEdit() {

15
yxt-as-ui/src/views/storage/adjustment/index.vue

@ -60,15 +60,15 @@
<el-button type="primary" size="mini" @click="toInfo(scope.row)">查看</el-button>
</template>
</el-table-column>
<!-- <el-table-column label="流程状态" width="180" header-align="center">
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column> -->
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="useOrgName" label="分公司" align="center" />
</el-table-column>
<!-- <el-table-column prop="nodeState" label="流程状态" align="center" /> -->
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="useOrgName" label="分公司" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
<el-table-column prop="createTime" label="申请日期" align="center" />
<el-table-column prop="finishTime" label="办结日期" align="center" />
@ -85,8 +85,7 @@
</div>
</div>
<!--新增及修改 -->
<adjustmentAdd v-show="viewState == 2 || viewState == 3" ref="divAdd" @doback="resetState"
@reloadlist="getList" />
<adjustmentAdd v-show="viewState == 2 || viewState == 3" ref="divAdd" @doback="resetState" @reloadlist="getList" />
<!-- 详情 -->
<adjustmentInfo v-show="viewState == 4" ref="divInfo" @doback="resetState" />
<!-- 流程审批记录 -->
@ -302,7 +301,7 @@
}
this.init()
},
toAdd(){
toAdd() {
this.viewState = 3
this.$refs['divAdd'].showAdd()
},

387
yxt-as-ui/src/views/storage/inventory/inventoryRefer.vue

@ -2,7 +2,7 @@
<div class="app-container">
<!--列表页面-->
<div v-show="viewState == 1">
<button-bar view-title="出入库查询" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<button-bar view-title="出入库查询" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<!--Start查询列表部分-->
<div class="main-content">
<div class="searchcon">
@ -10,42 +10,44 @@
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="商品ID">
<el-input v-model="listQuery.params.goodsID" placeholder="" clearable/>
<el-input v-model="listQuery.params.goodsID" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品名称">
<el-input v-model="listQuery.params.goodsSpuName" placeholder="" clearable/>
<el-input v-model="listQuery.params.goodsSpuName" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品编码">
<el-input v-model="listQuery.params.goodsSkuCode" placeholder="" clearable/>
<el-form-item label="图号">
<el-input v-model="listQuery.params.goodsSkuCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="仓库">
<el-input v-model="listQuery.params.warehouseName" placeholder="" clearable/>
<el-input v-model="listQuery.params.warehouseName" placeholder="" clearable />
</el-form-item>
<el-form-item label="库位">
<el-input v-model="listQuery.params.warehouseRackCode" placeholder="" clearable/>
<el-input v-model="listQuery.params.warehouseRackCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="供应商">
<el-input v-model="listQuery.params.supplierName" placeholder="" clearable/>
<el-input v-model="listQuery.params.supplierName" placeholder="" clearable />
</el-form-item>
<el-form-item label="来源单号">
<el-input v-model="listQuery.params.billNo" placeholder="" clearable/>
<el-input v-model="listQuery.params.billNo" placeholder="" clearable />
</el-form-item>
<el-form-item label="单据类型">
<el-input v-model="listQuery.params.billType" placeholder="" clearable/>
<el-input v-model="listQuery.params.billType" placeholder="" clearable />
</el-form-item>
<el-form-item label="业务类型">
<el-input v-model="listQuery.params.busTypeValue" placeholder="" clearable/>
<el-input v-model="listQuery.params.busTypeValue" placeholder="" clearable />
</el-form-item>
<el-form-item label="发生时间">
<el-date-picker v-model="listQuery.params.createTimeStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.createTimeStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd"
type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.createTimeEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.createTimeEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd"
type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
<el-form-item label="操作人">
<el-input v-model="listQuery.params.createByName" placeholder="" clearable/>
<el-input v-model="listQuery.params.createByName" placeholder="" clearable />
</el-form-item>
<el-form-item label="经办人">
<el-input v-model="listQuery.params.handlerName" placeholder="" clearable/>
<el-input v-model="listQuery.params.handlerName" placeholder="" clearable />
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -57,12 +59,13 @@
<!--End查询列表部分-->
<div class="listtop">
<div class="tit">商品出入库列表</div>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current"
:limit.sync="listQuery.size" class="pagination" @pagination="getList" />
</div>
<!--Start 主页面主要部分 -->
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" :border="true" style="width: 100%;">
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center"/>
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="150" />
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="180" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="120" />
@ -92,9 +95,10 @@
</div>
<!--End 主页面主要部分-->
<div class="pages">
<div class="tit"/>
<div class="tit" />
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current"
:limit.sync="listQuery.size" class="pagination" @pagination="getList" />
</div>
<!--End查询列表部分-->
</div>
@ -103,191 +107,190 @@
</template>
<script>
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import req from '@/api/storage/inventory'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import req from '@/api/storage/inventory'
export default {
name: 'InventoryRefer',
components: {
Pagination,
pageye,
ButtonBar
},
data() {
return {
btndisabled: false,
btnList: [
{
type: 'primary',
size: 'small',
icon: 'export',
btnKey: 'doExport',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
viewState: 1, // 1 2 3 4
tableKey: 0,
list: [],
sids: [], // SIDs
FormLoading: false,
listLoading: false,
//
listQuery: {
current: 1,
size: 5,
total: 0,
params: {
goodsID: '',
billNo: '',
billType: '',
busTypeValue: '',
billObjName: '',
batchNumber: '',
goodsSpuName: '',
goodsSkuCode: '',
warehouseName: '',
warehouseRackCode: '',
createTimeStart: '',
createTimeEnd: '',
supplierName: '',
createByName: '',
handlerName: '',
userSid: '',
orgPath: '',
menuUrl: ''
export default {
name: 'InventoryRefer',
components: {
Pagination,
pageye,
ButtonBar
},
data() {
return {
btndisabled: false,
btnList: [{
type: 'primary',
size: 'small',
icon: 'export',
btnKey: 'doExport',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
viewState: 1, // 1 2 3 4
tableKey: 0,
list: [],
sids: [], // SIDs
FormLoading: false,
listLoading: false,
//
listQuery: {
current: 1,
size: 5,
total: 0,
params: {
goodsID: '',
billNo: '',
billType: '',
busTypeValue: '',
billObjName: '',
batchNumber: '',
goodsSpuName: '',
goodsSkuCode: '',
warehouseName: '',
warehouseRackCode: '',
createTimeStart: '',
createTimeEnd: '',
supplierName: '',
createByName: '',
handlerName: '',
userSid: '',
orgPath: '',
menuUrl: ''
}
}
}
}
},
created() {
//
this.getList()
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doExport':
this.doExport()
break
case 'doClose':
this.doClose()
break
default:
break
}
created() {
//
this.getList()
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
//
getList() {
this.listLoading = true
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.listQuery.params.menuUrl = this.$route.path
req.pageList(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.list = []
this.listQuery.total = 0
this.searchxianshitit = '显示查询条件'
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery = {
current: 1,
size: 5,
total: 0,
params: {
goodsID: '',
billNo: '',
billType: '',
busTypeValue: '',
billObjName: '',
batchNumber: '',
goodsSpuName: '',
goodsSkuCode: '',
warehouseName: '',
warehouseRackCode: '',
createTimeStart: '',
createTimeEnd: '',
supplierName: '',
createByName: '',
handlerName: '',
userSid: '',
orgPath: '',
menuUrl: ''
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doExport':
this.doExport()
break
case 'doClose':
this.doClose()
break
default:
break
}
}
this.getList()
},
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.exportExcel(this.listQuery.params).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
getList() {
this.listLoading = true
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.listQuery.params.menuUrl = this.$route.path
req.pageList(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
} else {
this.list = []
this.listQuery.total = 0
}
})
const fileName = '出入库记录' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery = {
current: 1,
size: 5,
total: 0,
params: {
goodsID: '',
billNo: '',
billType: '',
busTypeValue: '',
billObjName: '',
batchNumber: '',
goodsSpuName: '',
goodsSkuCode: '',
warehouseName: '',
warehouseRackCode: '',
createTimeStart: '',
createTimeEnd: '',
supplierName: '',
createByName: '',
handlerName: '',
userSid: '',
orgPath: '',
menuUrl: ''
}
}
this.getList()
},
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.exportExcel(this.listQuery.params).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '出入库记录' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
}
}
}
}
</script>
<style scoped>
</style>

50
yxt-as-ui/src/views/storage/oldPartsCope/index.vue

@ -75,7 +75,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号 " width="180" align="center" />
<el-table-column prop="useOrgName" label="分公司" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
@ -101,6 +106,13 @@
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
<divInfo v-show="viewState == 4" ref="divinfo" @doback="resetState" @reloadlist="loadList" />
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -111,6 +123,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './oldPartsCopeAdd.vue'
import divInfo from './oldPartsCopeInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -121,6 +136,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
@ -194,12 +212,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
selectionLineChangeHandle(val) {
console.log("val", val);

48
yxt-as-ui/src/views/storage/oldPartsFactory/index.vue

@ -69,7 +69,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" width="120" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号" width="180" align="center" />
<el-table-column prop="useOrgName" label="分公司" width="120" align="center" />
<el-table-column prop="deptName" label="申请部门" width="120" align="center" />
@ -176,6 +181,11 @@
</el-form>
</el-dialog>
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -188,6 +198,9 @@
import divAdd from './oldPartsFactoryAdd.vue'
import divInfo from './oldPartsFactoryInfo.vue'
import manufacturerconfirmInfo from './manufacturerconfirmInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -199,6 +212,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
dialogVisible: false,
dialogVisible2: false,
fileList: [],
@ -266,12 +282,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
handleClose() {
this.dialogVisible = false
},

48
yxt-as-ui/src/views/storage/oldpPartStocktaking/index.vue

@ -60,7 +60,12 @@
@click="toReport(scope.row)">盘库报告</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" width="120" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="deptName" label="部门" width="120" align="center" />
<el-table-column prop="billNo" label="盘点编号" width="120" align="center" />
<el-table-column prop="createTime" label="生成日期" width="120" align="center" />
@ -237,6 +242,11 @@
</el-dialog>
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -260,6 +270,9 @@
import {
selAllByOrgSidPath
} from '@/api/Common/dictcommons'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
@ -274,6 +287,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
showList: '2',
dialogVisible: false,
dialogVisible2: false,
@ -400,6 +416,8 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
@ -427,6 +445,34 @@
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
getWarehouseArea(sid) {
this.dialogParams.params.warehouseAreaSid = ''
this.dialogParams.params.warehouseAreaName = ''

49
yxt-as-ui/src/views/storage/oldpPartStocktakingLoss/index.vue

@ -61,7 +61,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
<el-table-column prop="createByName" label="申请人" align="center" />
@ -86,6 +91,12 @@
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
<divInfo v-show="viewState == 4" ref="divinfo" @doback="resetState" @reloadlist="loadList" />
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -96,6 +107,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './oldpPartStocktakingLossAdd.vue'
import divInfo from './oldpPartStocktakingLossInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -106,6 +120,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
@ -158,12 +175,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
toPrintLabel() {
if (this.selectionList.length != 1) {
this.$message({

49
yxt-as-ui/src/views/storage/oldpPartStocktakingSurplus/index.vue

@ -61,7 +61,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
<el-table-column prop="createByName" label="申请人" align="center" />
@ -86,6 +91,12 @@
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
<divInfo v-show="viewState == 4" ref="divinfo" @doback="resetState" @reloadlist="loadList" />
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -96,6 +107,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './oldpPartStocktakingSurplusAdd.vue'
import divInfo from './oldpPartStocktakingSurplusInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -106,6 +120,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
@ -158,12 +175,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
toPrintLabel() {
if (this.selectionList.length != 1) {
this.$message({

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

@ -60,7 +60,12 @@
@click="toReport(scope.row)">盘库报告</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" width="120" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="deptName" label="部门" width="120" align="center" />
<el-table-column prop="billNo" label="盘点编号" width="120" align="center" />
<el-table-column prop="createTime" label="生成日期" width="120" align="center" />
@ -237,6 +242,11 @@
</el-dialog>
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -260,6 +270,9 @@
import {
selAllByOrgSidPath
} from '@/api/Common/dictcommons'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
@ -274,6 +287,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
showList: '2',
dialogVisible: false,
dialogVisible2: false,
@ -400,6 +416,8 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
@ -421,6 +439,34 @@
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
getWarehouseArea(sid) {
this.dialogParams.params.warehouseAreaSid = ''
this.dialogParams.params.warehouseAreaName = ''

49
yxt-as-ui/src/views/storage/stocktakingLoss/index.vue

@ -61,7 +61,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
<el-table-column prop="createByName" label="申请人" align="center" />
@ -85,7 +90,11 @@
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
<divInfo v-show="viewState == 4" ref="divinfo" @doback="resetState" @reloadlist="loadList" />
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -96,6 +105,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './stocktakingLossAdd.vue'
import divInfo from './stocktakingLossInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -106,6 +118,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
@ -158,12 +173,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
toPrintLabel() {
if (this.selectionList.length != 1) {
this.$message({

49
yxt-as-ui/src/views/storage/stocktakingSurplus/index.vue

@ -61,7 +61,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
<el-table-column prop="createByName" label="申请人" align="center" />
@ -85,7 +90,11 @@
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
<divInfo v-show="viewState == 4" ref="divinfo" @doback="resetState" @reloadlist="loadList" />
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -96,6 +105,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './stocktakingSurplusAdd.vue'
import divInfo from './stocktakingSurplusInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -106,6 +118,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
@ -158,12 +173,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
toPrintLabel() {
if (this.selectionList.length != 1) {
this.$message({

153
yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue

@ -19,6 +19,19 @@
<el-row class="first_row">
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 仓库类型</div>
<el-form-item prop="warehouseTypeValue">
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 选择所属仓库</div>
@ -41,6 +54,11 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 选择所属库区</div>
<el-form-item prop="locationName">
@ -51,9 +69,6 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 库位编码</div>
<el-form-item prop="rackCode">
@ -61,7 +76,7 @@
oninput="this.value=this.value.replace(/[^\w_-]/g,'');" />
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item>
<el-input v-model="formobj.remarks" placeholder="备注" class="addinputw addinputInfo" clearable />
@ -113,6 +128,9 @@
import req2 from '@/api/warehouse/warehouse.js'
import req3 from '@/api/warehouse/warehouseArea.js'
import req4 from '@/api/warehouse/warehouseZone.js'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {},
data() {
@ -129,6 +147,8 @@
locationName: '',
locationSid: '',
remarks: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -137,6 +157,7 @@
warehouseList: [],
warehouseZoneList: [],
warehouseAreaList: [],
warehouseTypeList: [],
rules: {
warehouseName: [{
required: true,
@ -162,7 +183,7 @@
}
},
created() {
this.initData()
},
methods: {
@ -175,20 +196,53 @@
req2.getAllWarehouse(parpams).then(resp => {
this.warehouseList = resp.data
})
},
getWarehouseArea(sid) {
var params = {
qySid: sid
type: "warehouse",
psid: '0'
}
req3.getAllWarehouseareaByZoneSid(params).then(resp => {
console.log('>>>>>>>>>getAllWarehousearea', resp)
this.warehouseAreaList = resp.data
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('>>>>>>>>>selectWarehouseChange', choose)
this.formobj.warehouseTypeKey = choose[0].dictKey
this.formobj.warehouseTypeValue = choose[0].dictValue
this.formobj.warehouseSid = ''
this.formobj.warehouseName = ''
this.formobj.zoneSid = ''
this.formobj.zoneName = ''
this.formobj.locationSid = ''
this.formobj.locationName = ''
this.getWarehouseList(this.formobj.warehouseTypeValue)
},
getWarehouseList(val) {
var parpams = {
useOrgSid: window.sessionStorage.getItem('departmentSid'),
warehouseTypeValue: val
}
req2.selectWarehouseByType(parpams).then(resp => {
this.warehouseList = resp.data
})
},
selectWarehouseChange(val) {
const choose = this.warehouseList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
@ -220,7 +274,17 @@
this.formobj.locationName = ''
this.getWarehouseArea(choose[0].sid)
},
getWarehouseArea(sid) {
var params = {
qySid: sid
}
req3.getAllWarehouseareaByZoneSid(params).then(resp => {
console.log('>>>>>>>>>getAllWarehousearea', resp)
this.warehouseAreaList = resp.data
}).catch(() => {})
},
selectWarehouseAreaChange(val) {
const choose = this.warehouseAreaList.filter((item) => item.sid == val)
@ -265,7 +329,66 @@
type: 'success',
message: resp.msg
})
this.handleReturn('true')
this.$confirm('是否继续添加仓库区域信息?', '温馨提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//
var warehouseTypeKey = this.formobj.warehouseTypeKey
var warehouseTypeValue = this.formobj.warehouseTypeValue
var warehouseName = this.formobj.warehouseName
var warehouseSid = this.formobj.warehouseSid
var zoneName = this.formobj.zoneName
var zoneSid = this.formobj.zoneSid
var locationName = this.formobj.locationName
var locationSid = this.formobj.locationSid
this.formobj = {
sid: '',
rackName: '',
rackCode: '',
warehouseName: warehouseName,
warehouseSid: warehouseSid,
zoneName: zoneName,
zoneSid: zoneSid,
locationName: locationName,
locationSid: locationSid,
warehouseTypeKey: warehouseTypeKey,
warehouseTypeValue: warehouseTypeValue,
remarks: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
}).catch(() => {
//
this.formobj = {
sid: '',
rackName: '',
rackCode: '',
warehouseName: '',
warehouseSid: '',
zoneName: '',
zoneSid: '',
locationName: '',
locationSid: '',
remarks: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$emit('doback')
});
} else {
// resp.code
}
@ -288,6 +411,8 @@
locationName: '',
locationSid: '',
remarks: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -296,12 +421,14 @@
this.$emit('doback')
},
showAdd() {
this.initData()
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.initData()
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})

54
yxt-as-ui/src/views/warehouse/goodsShelves/index.vue

@ -15,10 +15,10 @@
<el-form-item label="库位编码">
<el-input v-model="queryParams.params.code" placeholder="" clearable />
</el-form-item>
<el-form-item label="所属库">
<el-select v-model="queryParams.params.warehouseName" placeholder="所属仓库" class="addinputw addinputInfo"
@change="selectWarehouseChange">
<el-option v-for="item in warehouseList" :key="item.sid" :label="item.warehouseName"
<el-form-item label="所属库">
<el-select v-model="queryParams.params.warehouseAreaName" placeholder="所属库区"
class="addinputw addinputInfo" @change="selectWrehouseAreaChange">
<el-option v-for="item in warehouseAreaList" :key="item.sid" :label="item.areaName"
:value="item.sid" />
</el-select>
</el-form-item>
@ -28,14 +28,22 @@
:value="item.sid" />
</el-select>
</el-form-item>
<el-form-item label="所属库">
<el-select v-model="queryParams.params.warehouseAreaName" placeholder="所属库区"
class="addinputw addinputInfo" @change="selectWrehouseAreaChange">
<el-option v-for="item in warehouseAreaList" :key="item.sid" :label="item.areaName"
<el-form-item label="所属库">
<el-select v-model="queryParams.params.warehouseName" placeholder="所属仓库" class="addinputw addinputInfo"
@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.warehouseTypeValue" placeholder="请选择所属仓库类型">
<el-option v-for="item in warehouseTypeList" :key="item.dictValue" :label="item.dictValue"
:value="item.dictValue" />
</el-select>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
@ -65,12 +73,15 @@
inactive-value="2" @change="enableChange(scope.row.sid,scope.row.isEnable)" />
</template>
</el-table-column>
<!-- <el-table-column prop="rackName" label="库位名称" align="center" /> -->
<el-table-column prop="warehouseName" label="所属仓库" align="center" />
<el-table-column prop="zoneName" label="所属区域" align="center" />
<el-table-column prop="locationName" label="所属库区" align="center" />
<el-table-column prop="rackCode" label="库位编码" align="center" />
<el-table-column prop="locationName" label="所属库区" align="center" />
<el-table-column prop="zoneName" label="所属区域" align="center" />
<el-table-column prop="warehouseName" label="所属仓库" align="center" />
<el-table-column prop="warehouseTypeValue" label="所属仓库类型" align="center" />
<el-table-column prop="remarks" label="备注" align="center" />
<el-table-column prop="deptName" label="隶属部门 " align="center" />
<el-table-column prop="createOrgName" label="分公司 " align="center" />
</el-table>
</div>
<!-- End 项目列表 -->
@ -97,6 +108,9 @@
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import divAdd from './goodsShelvesAdd.vue'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {
ButtonBar,
@ -160,7 +174,8 @@
warehouseZoneList: [],
warehouseAreaList: [],
sids: [],
selectionList: []
selectionList: [],
warehouseTypeList: [],
}
},
mounted() {
@ -183,6 +198,18 @@
this.sids = aa
},
getwarehouse() {
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
var parpams = {
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
}
@ -392,6 +419,7 @@
},
resetState() {
this.viewState = 1
this.loadList()
},
enableChange(sid, state) {
console.log('sid', sid)

30
yxt-as-ui/src/views/warehouse/warehouse/index.vue

@ -9,6 +9,12 @@
</el-button>
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<el-form-item label="仓库类型">
<el-select v-model="queryParams.params.warehouseTypeValue" placeholder="请选择仓库类型">
<el-option v-for="item in warehouseTypeList" :key="item.dictValue" :label="item.dictValue"
:value="item.dictValue" />
</el-select>
</el-form-item>
<el-form-item label="仓库名称">
<el-input v-model="queryParams.params.name" placeholder="" clearable />
</el-form-item>
@ -50,6 +56,7 @@
inactive-value="0" @change="enableChange(scope.row.sid,scope.row.usageStatus)" />
</template>
</el-table-column>
<el-table-column prop="warehouseTypeValue" label="仓库类型" align="center" />
<el-table-column prop="warehouseName" label="仓库名称" align="center" />
<el-table-column prop="warehouseCode" label="仓库编码" align="center" />
<el-table-column prop="manager" label="仓库主管" align="center" />
@ -57,6 +64,8 @@
<el-table-column prop="squareMeter" label="占地面积" align="center" />
<el-table-column prop="address" label="仓库地址" align="center" />
<el-table-column prop="sortNo" label="排序" align="center" />
<el-table-column prop="deptName" label="隶属部门 " align="center" />
<el-table-column prop="createOrgName" label="分公司 " align="center" />
</el-table>
</div>
<!-- End 项目列表 -->
@ -82,6 +91,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './warehouseAdd.vue'
import divInfo from './warehouseInfo.vue'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {
ButtonBar,
@ -132,13 +144,15 @@
size: 10,
total: 0,
params: {
warehouseTypeValue: "",
name: '',
code: "",
address: ""
}
},
sids: [],
selectionList: []
selectionList: [],
warehouseTypeList: [],
}
},
mounted() {
@ -146,6 +160,18 @@
},
created() {
this.loadList()
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
},
methods: {
selectionLineChangeHandle(val) {
@ -225,6 +251,7 @@
size: 10,
total: 0,
params: {
warehouseTypeValue: "",
name: '',
code: "",
address: ""
@ -301,6 +328,7 @@
resetState() {
this.viewState = 1
this.loadList()
},
enableChange(sid, state) {
console.log('sid', sid)

94
yxt-as-ui/src/views/warehouse/warehouse/warehouseAdd.vue

@ -29,10 +29,16 @@
</el-col>
<el-col :span="16">
<div class="span-sty"><span class="must">*</span> 仓库名称</div>
<el-form-item prop="warehouseName">
<el-input v-model="formobj.warehouseName" placeholder="仓库名称" class="addinputw addinputInfo" clearable />
<div class="span-sty"><span class="must">*</span> 仓库类型</div>
<el-form-item prop="warehouseTypeValue">
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
</el-form-item>
</el-col>
</el-row>
@ -40,14 +46,10 @@
<el-row>
<el-col :span="8">
<div class="span-sty">仓库类型</div>
<el-form-item prop="warehouseTypeValue">
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
<div class="span-sty"><span class="must">*</span> 仓库名称</div>
<el-form-item prop="warehouseName">
<el-input v-model="formobj.warehouseName" placeholder="按配件所属车辆品牌命名" class="addinputw addinputInfo"
clearable />
</el-form-item>
</el-col>
@ -232,6 +234,11 @@
message: '请选择仓库管理员',
trigger: 'change'
}],
warehouseTypeValue: [{
required: true,
message: '请选择仓库类型',
trigger: 'change'
}],
}
}
},
@ -303,7 +310,70 @@
type: 'success',
message: resp.msg
})
this.handleReturn('true')
this.$confirm('是否继续添加仓库信息?', '温馨提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//
var warehouseTypeKey = this.formobj.warehouseTypeKey
var warehouseTypeValue = this.formobj.warehouseTypeValue
this.formobj = {
sid: '',
warehouseName: '',
warehouseCode: '由系统自动生成',
warehouseTypeKey: warehouseTypeKey,
warehouseTypeValue: warehouseTypeValue,
contacts: "",
mob: "",
telephone: "",
manager: '',
longitude: '',
latitude: '',
usageStatus: "1",
address: '',
squareMeter: '',
sortNo: '',
remarks: '',
warehouseType: "0",
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
}).catch(() => {
//
this.formobj = {
sid: '',
warehouseName: '',
warehouseCode: '由系统自动生成',
warehouseTypeKey: '',
warehouseTypeValue: '',
contacts: "",
mob: "",
telephone: "",
manager: '',
longitude: '',
latitude: '',
usageStatus: "1",
address: '',
squareMeter: '',
sortNo: '',
remarks: '',
warehouseType: "0",
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$emit('doback')
});
} else {
// resp.code
}

9
yxt-as-ui/src/views/warehouse/warehouse/warehouseInfo.vue

@ -26,10 +26,11 @@
</el-col>
<el-col :span="16">
<div class="span-sty">仓库名称</div>
<div class="span-sty">仓库类型</div>
<el-form-item>
<span class="addinputInfo">{{formobj.warehouseName}}</span>
<span class="addinputInfo">{{formobj.warehouseTypeValue}}</span>
</el-form-item>
</el-col>
</el-row>
@ -37,9 +38,9 @@
<el-row>
<el-col :span="8">
<div class="span-sty">仓库类型</div>
<div class="span-sty">仓库名称</div>
<el-form-item>
<span class="addinputInfo">{{formobj.warehouseTypeValue}}</span>
<span class="addinputInfo">{{formobj.warehouseName}}</span>
</el-form-item>
</el-col>

52
yxt-as-ui/src/views/warehouse/warehouseArea/index.vue

@ -9,19 +9,27 @@
</el-button>
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<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.code" placeholder="" clearable />
</el-form-item>
<el-form-item label="库区类型">
<el-select v-model="queryParams.params.warehouseAreaTypeName" placeholder="库区类型"
class="addinputw addinputInfo" @change="selectWrehouseAreaTypeChange">
<el-option v-for="item in warehouseAreaTypeLsit" :key="item.sid" :label="item.warehouseAreaTypeName"
:value="item.sid" />
</el-select>
<el-form-item label="库区编码">
<el-input v-model="queryParams.params.code" placeholder="" clearable />
</el-form-item>
<el-form-item label="所属区域">
<el-select v-model="queryParams.params.zoneSid" placeholder="所属区域"
@change="selectWarehouseZoneChange">
<el-option v-for="item in warehouseZoneList" :key="item.sid" :label="item.zoneName"
:value="item.sid" />
</el-select>
</el-form-item>
</el-form-item>
<el-form-item label="所属仓库">
<el-select v-model="queryParams.params.warehouseName" placeholder="所属仓库"
@ -31,13 +39,12 @@
</el-select>
</el-form-item>
<el-form-item label="所属区域">
<el-select v-model="queryParams.params.zoneSid" placeholder="所属区域" @change="selectWarehouseZoneChange">
<el-option v-for="item in warehouseZoneList" :key="item.sid" :label="item.zoneName"
:value="item.sid" />
<el-form-item label="所属仓库类型">
<el-select v-model="queryParams.params.warehouseTypeValue" placeholder="所属仓库类型">
<el-option v-for="item in warehouseTypeList" :key="item.dictValue" :label="item.dictValue"
:value="item.dictValue" />
</el-select>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
@ -68,12 +75,16 @@
</template>
</el-table-column>
<el-table-column prop="areaName" label="库区名称" align="center" />
<el-table-column prop="areaTypeName" label="库区类型" align="center" />
<el-table-column prop="areaCode" label="库区编码" align="center" />
<el-table-column prop="volume" label="库区容量" align="center" />
<el-table-column prop="unit" label="计量单位" align="center" />
<el-table-column prop="areaTypeName" label="库区类型" align="center" />
<el-table-column prop="warehouseName" label="所属仓库" align="center" />
<el-table-column prop="zoneName" label="所属区域" align="center" />
<el-table-column prop="warehouseName" label="所属仓库" align="center" />
<el-table-column prop="warehouseTypeValue" label="所属仓库类型" align="center" />
<el-table-column prop="deptName" label="隶属部门 " align="center" />
<el-table-column prop="createOrgName" label="分公司 " align="center" />
</el-table>
</div>
<!-- End 项目列表 -->
@ -100,6 +111,9 @@
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import divAdd from './warehouseAreaAdd.vue'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {
ButtonBar,
@ -157,13 +171,15 @@
warehouseName: '',
zoneSid: '',
zoneName: '',
warehouseTypeValue: "",
}
},
warehouseList: [],
warehouseZoneList: [],
warehouseAreaTypeLsit: [],
sids: [],
selectionList: []
selectionList: [],
warehouseTypeList: [],
}
},
mounted() {
@ -196,6 +212,18 @@
console.log('>>>>>>>>>getAllWarehouse', resp)
this.warehouseList = resp.data
}).catch(() => {})
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
},
getWarehouseAreaType() {
var parpams = {
@ -315,6 +343,7 @@
warehouseName: '',
zoneSid: '',
zoneName: '',
warehouseTypeValue: "",
}
}
this.loadList()
@ -388,6 +417,7 @@
resetState() {
this.viewState = 1
this.loadList()
},
enableChange(sid, state) {
console.log('sid', sid)

215
yxt-as-ui/src/views/warehouse/warehouseArea/warehouseAreaAdd.vue

@ -19,6 +19,20 @@
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row class="first_row">
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 仓库类型</div>
<el-form-item prop="warehouseTypeValue">
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 选择所属仓库</div>
@ -42,16 +56,27 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 库区类型</div>
<el-form-item prop="areaTypeName">
<el-select v-model="formobj.areaTypeName" placeholder="请选择库区类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeValueChange">
<el-option v-for="item in areaTypeList" :key="item.sid" :label="item.warehouseAreaTypeName"
:value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 库区名称</div>
<el-form-item prop="areaName">
<el-input v-model="formobj.areaName" placeholder="库区名称" class="addinputw addinputInfo" clearable />
<el-input v-model="formobj.areaName" placeholder="按配件类型命名" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">库区编码</div>
<el-form-item prop="areaCode">
@ -61,6 +86,10 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">库区容量</div>
@ -77,21 +106,8 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 库区类型</div>
<el-form-item prop="areaTypeName">
<el-select v-model="formobj.areaTypeName" placeholder="请选择库区类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeValueChange">
<el-option v-for="item in warehouseTypeList" :key="item.sid" :label="item.warehouseAreaTypeName"
:value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">备注</div>
<el-form-item>
<el-input v-model="formobj.remarks" placeholder="备注" class="addinputw addinputInfo" clearable />
@ -112,6 +128,9 @@
import req2 from '@/api/warehouse/warehouse.js'
import req3 from '@/api/warehouse/warehouseAreaType.js'
import req4 from '@/api/warehouse/warehouseZone.js'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {},
data() {
@ -130,6 +149,8 @@
zoneSid: '',
areaTypeSid: "",
areaTypeName: "",
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -138,8 +159,14 @@
},
warehouseList: [],
warehouseZoneList: [],
areaTypeList: [],
warehouseTypeList: [],
rules: {
warehouseTypeValue: [{
required: true,
message: '请选择仓库类型',
trigger: 'change'
}],
warehouseName: [{
required: true,
message: '请选择所属仓库',
@ -164,20 +191,27 @@
}
}
},
created() {
this.initData()
},
created() {},
methods: {
initData() {
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
var parpams = {
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
}
req2.getAllWarehouse(parpams).then(resp => {
this.warehouseList = resp.data
})
req3.getAllWarehouseareatype(parpams).then(resp => {
this.warehouseTypeList = resp.data
this.areaTypeList = resp.data
})
},
@ -185,43 +219,6 @@
saveOrUpdate() {
console.log('>>>>>>>>>saveOrUpdate', this.formobj)
// if (this.formobj.warehouseSid == '' || this.formobj.warehouseName == '') {
// this.$message({
// showClose: true,
// type: 'warning',
// message: ""
// })
// return
// }
// if (this.formobj.areaName == '') {
// this.$message({
// showClose: true,
// type: 'warning',
// message: ""
// })
// return
// }
// if (this.formobj.areaCode == '') {
// this.$message({
// showClose: true,
// type: 'warning',
// message: ""
// })
// return
// }
// if (this.formobj.areaTypeSid == '' || this.formobj.areaTypeName == '') {
// this.$message({
// showClose: true,
// type: 'warning',
// message: ""
// })
// return
// }
this.$refs['form_obj'].validate((valid) => {
if (valid) {
@ -234,7 +231,65 @@
type: 'success',
message: resp.msg
})
this.handleReturn('true')
this.$confirm('是否继续添加仓库区域信息?', '温馨提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//
var warehouseTypeKey = this.formobj.warehouseTypeKey
var warehouseTypeValue = this.formobj.warehouseTypeValue
var warehouseName = this.formobj.warehouseName
var warehouseSid = this.formobj.warehouseSid
var zoneName = this.formobj.zoneName
var zoneSid = this.formobj.zoneSid
this.formobj = {
sid: '',
areaName: '',
areaCode: '由系统自动生成',
volume: '',
unit: '',
remarks: '',
warehouseName: warehouseName,
warehouseSid: warehouseSid,
zoneName: zoneName,
zoneSid: zoneSid,
areaTypeSid: "",
areaTypeName: "",
warehouseTypeKey: warehouseTypeKey,
warehouseTypeValue: warehouseTypeValue,
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
}).catch(() => {
//
this.formobj = {
sid: '',
zoneName: '',
zoneCode: '由系统自动生成',
volume: '',
unit: '',
remarks: '',
warehouseName: '',
warehouseSid: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$emit('doback')
});
} else {
// resp.code
}
@ -259,6 +314,8 @@
zoneSid: '',
areaTypeSid: "",
areaTypeName: "",
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -268,12 +325,14 @@
this.$emit('doback')
},
showAdd() {
this.initData()
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.initData()
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
@ -288,6 +347,36 @@
this.formobj = row
})
},
selectWarehouseTypeChange(val) {
const choose = this.warehouseTypeList.filter((item) => item.dictKey == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
this.formobj.warehouseTypeKey = choose[0].dictKey
this.formobj.warehouseTypeValue = choose[0].dictValue
this.formobj.warehouseSid = ''
this.formobj.warehouseName = ''
this.formobj.zoneSid = ''
this.formobj.zoneName = ''
this.getWarehouseList(this.formobj.warehouseTypeValue)
},
getWarehouseList(val) {
var parpams = {
useOrgSid: window.sessionStorage.getItem('departmentSid'),
warehouseTypeValue: val
}
req2.selectWarehouseByType(parpams).then(resp => {
this.warehouseList = resp.data
})
},
selectWarehouseChange(val) {
const choose = this.warehouseList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
@ -316,7 +405,7 @@
},
selectWarehouseTypeValueChange(val) {
const choose = this.warehouseTypeList.filter((item) => item.sid == val)
const choose = this.areaTypeList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseTypeValueChange', choose)
this.formobj.areaTypeSid = choose[0].sid
this.formobj.areaTypeName = choose[0].warehouseAreaTypeName

32
yxt-as-ui/src/views/warehouse/warehouseZone/warehouseZone.vue

@ -22,6 +22,13 @@
</el-select>
</el-form-item>
<el-form-item label="仓库类型">
<el-select v-model="queryParams.params.warehouseTypeValue" placeholder="请选择仓库类型">
<el-option v-for="item in warehouseTypeList" :key="item.dictValue" :label="item.dictValue"
:value="item.dictValue" />
</el-select>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -58,6 +65,9 @@
<el-table-column prop="unit" label="计量单位" align="center" />
<el-table-column prop="remarks" label="备注" align="center" />
<el-table-column prop="warehouseName" label="所属仓库" align="center" />
<el-table-column prop="warehouseTypeValue" label="仓库类型" align="center" />
<el-table-column prop="deptName" label="隶属部门 " align="center" />
<el-table-column prop="createOrgName" label="分公司 " align="center" />
</el-table>
</div>
<!-- End 项目列表 -->
@ -84,6 +94,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './warehouseZoneAdd.vue'
// import divInfo from './warehouseInfo.vue'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {
ButtonBar,
@ -134,6 +147,7 @@
size: 10,
total: 0,
params: {
warehouseTypeValue: "",
name: '',
code: "",
address: ""
@ -142,6 +156,7 @@
sids: [],
selectionList: [],
warehouseList: [],
warehouseTypeList: [],
}
},
mounted() {
@ -173,6 +188,19 @@
console.log('>>>>>>>>>getAllWarehouse', resp)
this.warehouseList = resp.data
}).catch(() => {})
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
},
//
clicksearchShow() {
@ -240,7 +268,8 @@
params: {
name: '',
code: "",
address: ""
address: "",
warehouseTypeValue: "",
}
}
this.loadList()
@ -313,6 +342,7 @@
resetState() {
this.viewState = 1
this.loadList()
},
enableChange(sid, state) {
console.log('sid', sid)

137
yxt-as-ui/src/views/warehouse/warehouseZone/warehouseZoneAdd.vue

@ -19,6 +19,20 @@
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row class="first_row">
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 仓库类型</div>
<el-form-item prop="warehouseTypeValue">
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 选择所属仓库</div>
@ -38,6 +52,10 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">区域编码</div>
<el-form-item prop="zoneCode">
@ -47,9 +65,6 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">区域面积</div>
@ -66,13 +81,16 @@
</el-form-item>
</el-col>
<el-col :span="8">
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
<el-form-item>
<el-input v-model="formobj.remarks" placeholder="备注" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
@ -83,6 +101,9 @@
<script>
import req from '@/api/warehouse/warehouseZone.js'
import req2 from '@/api/warehouse/warehouse.js'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {},
data() {
@ -98,6 +119,8 @@
remarks: '',
warehouseName: '',
warehouseSid: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -105,7 +128,13 @@
},
warehouseList: [],
warehouseTypeList: [],
rules: {
warehouseTypeValue: [{
required: true,
message: '请选择仓库类型',
trigger: 'change'
}],
warehouseName: [{
required: true,
message: '请选择所属仓库',
@ -121,16 +150,20 @@
}
},
created() {
this.initData()
},
methods: {
initData() {
var parpams = {
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
var params = {
type: "warehouse",
psid: '0'
}
req2.getAllWarehouse(parpams).then(resp => {
this.warehouseList = resp.data
})
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
},
@ -148,7 +181,58 @@
type: 'success',
message: resp.msg
})
this.handleReturn('true')
this.$confirm('是否继续添加仓库区域信息?', '温馨提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//
var warehouseTypeKey = this.formobj.warehouseTypeKey
var warehouseTypeValue = this.formobj.warehouseTypeValue
var warehouseName = this.formobj.warehouseName
var warehouseSid = this.formobj.warehouseSid
this.formobj = {
sid: '',
zoneName: '',
zoneCode: '由系统自动生成',
volume: '',
unit: '',
remarks: '',
warehouseName: warehouseName,
warehouseSid: warehouseSid,
warehouseTypeKey: warehouseTypeKey,
warehouseTypeValue: warehouseTypeValue,
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
}).catch(() => {
//
this.formobj = {
sid: '',
zoneName: '',
zoneCode: '由系统自动生成',
volume: '',
unit: '',
remarks: '',
warehouseName: '',
warehouseSid: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$emit('doback')
});
} else {
// resp.code
}
@ -169,6 +253,8 @@
remarks: '',
warehouseName: '',
warehouseSid: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -178,6 +264,7 @@
this.$emit('doback')
},
showAdd() {
this.initData()
this.title = "【新增】"
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
@ -185,6 +272,7 @@
},
showEdit(row) {
this.initData()
this.title = "【编辑】",
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
@ -199,6 +287,31 @@
.catch(e => {
this.formobj = row
})
},
selectWarehouseTypeChange(val) {
const choose = this.warehouseTypeList.filter((item) => item.dictKey == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
this.formobj.warehouseTypeKey = choose[0].dictKey
this.formobj.warehouseTypeValue = choose[0].dictValue
this.formobj.warehouseSid = ''
this.formobj.warehouseName = ''
this.getWarehouseList(this.formobj.warehouseTypeValue)
},
getWarehouseList(val) {
var parpams = {
useOrgSid: window.sessionStorage.getItem('departmentSid'),
warehouseTypeValue: val
}
req2.selectWarehouseByType(parpams).then(resp => {
this.warehouseList = resp.data
})
},
selectWarehouseChange(val) {
const choose = this.warehouseList.filter((item) => item.sid == val)

5
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaMapper.xml

@ -6,12 +6,15 @@
<select id="listPage" resultType="com.yxt.wms.biz.base.wmswarehousearea.WmsWarehouseAreaVo">
select
a.*,b.warehouseName as warehouseName,c.warehouseAreaTypeName as areaTypeName,z.zoneName
a.*,b.warehouseName as warehouseName,c.warehouseAreaTypeName as areaTypeName,z.zoneName,
b.warehouseTypeValue,s.`name` as deptName,
so.`name` as createOrgName
from wms_warehouse_area a
left join wms_warehouse_info b on b.sid=a.warehouseSid
left join wms_warehouse_zone z on z.sid=a.zoneSid
left join wms_warehouse_area_type c on c.sid =a.areaTypeSid
LEFT JOIN anrui_portal.sys_organization as s ON b.useOrgSid = s.sid
LEFT JOIN anrui_portal.sys_organization as so ON b.createOrgSid = so.sid
<where>
${ew.sqlSegment}
</where>

1
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaQuery.java

@ -15,6 +15,7 @@ public class WmsWarehouseAreaQuery implements Query {
private String warehouseSid;//仓库
private String areaTypeSid;//库区类型
private String zoneSid;//区域类型
private String warehouseTypeValue;//区域类型
@ApiModelProperty("菜单路由")
private String menuUrl;

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaService.java

@ -95,6 +95,9 @@ public class WmsWarehouseAreaService extends MybatisBaseService<WmsWarehouseArea
if (StringUtils.isNotBlank(query.getWarehouseSid())) {
qw.eq("b.sid", query.getWarehouseSid());
}
if (StringUtils.isNotBlank(query.getWarehouseTypeValue())) {
qw.eq("b.warehouseTypeValue", query.getWarehouseTypeValue());
}
if (StringUtils.isNotBlank(query.getZoneSid())) {
qw.eq("z.sid", query.getZoneSid());
}

4
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaVo.java

@ -34,6 +34,8 @@ public class WmsWarehouseAreaVo implements Vo {
private String zoneName;//区域名称
private String areaTypeName;//货区类型名称
private String userSid;
private String warehouseTypeValue;
private String deptName;
private String createOrgName;
}

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseareatype/WmsWarehouseAreaTypeVo.java

@ -28,4 +28,6 @@ public class WmsWarehouseAreaTypeVo implements Vo {
private String createOrgSid;//创建组织sid
private String orgPath;
private String userSid;
private String deptName;
private String createOrgName;
}

5
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoMapper.xml

@ -6,10 +6,13 @@
<select id="listPage" resultType="com.yxt.wms.biz.base.wmswarehouseinfo.WmsWarehouseInfoVo">
SELECT
w.*
w.*,
s.`name` as deptName,
so.`name` as createOrgName
FROM
wms_warehouse_info as w
LEFT JOIN anrui_portal.sys_organization as s ON w.useOrgSid = s.sid
LEFT JOIN anrui_portal.sys_organization as so ON w.createOrgSid = so.sid
<where>
${ew.sqlSegment}
</where>

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoVo.java

@ -45,4 +45,6 @@ public class WmsWarehouseInfoVo implements Vo {
private String useOrgSid;//创建组织sid
private String createOrgSid;//创建组织sid
private List<WmsWarehouseExtendVo> wmsWarehouseExtendVos;
private String deptName;
private String createOrgName;
}

5
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.xml

@ -6,12 +6,15 @@
<select id="listPage" resultType="com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackVo">
select
a.*,b.areaName as locationName ,c.warehouseName as warehouseName,z.zoneName
a.*,b.areaName as locationName ,c.warehouseName as warehouseName,z.zoneName,c.warehouseTypeValue,
s.`name` as deptName,
so.`name` as createOrgName
from wms_warehouse_rack a
left join wms_warehouse_area b on b.sid =a.locationSid
left join wms_warehouse_info c on c.sid = a.warehouseSid
left join wms_warehouse_zone z on z.sid = a.zoneSid
LEFT JOIN anrui_portal.sys_organization as s ON c.useOrgSid = s.sid
LEFT JOIN anrui_portal.sys_organization as so ON c.createOrgSid = so.sid
<where>
${ew.sqlSegment}
</where>

1
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackQuery.java

@ -15,6 +15,7 @@ public class WmsWarehouseRackQuery implements Query {
private String warehouseSid;//仓库
private String areaTypeSid;//库区类型
private String zoneSid;//区域类型
private String warehouseTypeValue;
@ApiModelProperty("菜单路由")
private String menuUrl;
@ApiModelProperty("组织全路径sid")

4
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java

@ -97,6 +97,10 @@ public class WmsWarehouseRackService extends MybatisBaseService<WmsWarehouseRack
if (StringUtils.isNotBlank(query.getZoneSid())) {
qw.eq("z.sid", query.getZoneSid());
}
if (StringUtils.isNotBlank(query.getWarehouseTypeValue())) {
qw.eq("c.warehouseTypeValue", query.getWarehouseTypeValue());
}
qw.ne("a.isDelete", "1");
IPage<WmsWarehouseRack> page = PagerUtil.queryToPage(pq);
IPage<WmsWarehouseRackVo> pagging = baseMapper.listPage(page, qw);

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackVo.java

@ -32,4 +32,7 @@ public class WmsWarehouseRackVo implements Vo {
private String userSid;
private String zoneSid;//区域sid
private String zoneName;//区域名称
private String warehouseTypeValue;
private String deptName;
private String createOrgName;
}

5
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneMapper.xml

@ -15,10 +15,13 @@
<select id="listPage" resultType="com.yxt.wms.biz.base.wmswarehousezone.WmsWarehouseZoneVo">
select
a.*,b.warehouseName as warehouseName,b.warehouseTypeValue as warehouseTypeValue
a.*,b.warehouseName as warehouseName,b.warehouseTypeValue as warehouseTypeValue,
s.`name` as deptName,
so.`name` as createOrgName
from wms_warehouse_zone a
left join wms_warehouse_info b on b.sid=a.warehouseSid
LEFT JOIN anrui_portal.sys_organization as s ON b.useOrgSid = s.sid
LEFT JOIN anrui_portal.sys_organization as so ON b.createOrgSid = so.sid
<where>
${ew.sqlSegment}
</where>

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneVo.java

@ -24,4 +24,6 @@ public class WmsWarehouseZoneVo implements Vo {
private String unit;//计量单位
private String warehouseName;//仓库名称
private String warehouseTypeValue;//仓库类型
private String deptName;
private String createOrgName;
}

Loading…
Cancel
Save