|
@@ -6,14 +6,53 @@
|
|
|
<a-row :gutter="48">
|
|
|
<a-col :md="8" :sm="24">
|
|
|
<a-form-item label="关键字">
|
|
|
- <a-input v-model="queryParam.keyword" placeholder="请输入单号"/>
|
|
|
+ <a-input v-model="queryParam.keyword" placeholder="请输入名称/编码"/>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="8" :sm="24">
|
|
|
- <a-form-item label="入库类型">
|
|
|
- <a-select v-model="queryParam.type" placeholder="请选择">
|
|
|
+ <a-form-item label="品牌">
|
|
|
+ <a-input v-model="queryParam.brand" placeholder="模糊查询"/>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="8" :sm="24">
|
|
|
+ <a-form-item label="类型">
|
|
|
+ <a-tree-select
|
|
|
+ style="width: 100%"
|
|
|
+ :dropdownStyle="{ maxHeight: '400px', overflow: 'auto' }"
|
|
|
+ :treeData="spareTypeTreeData"
|
|
|
+ :treeNodeFilterProp="'title'"
|
|
|
+ :showSearch="true"
|
|
|
+ v-model="queryParam.typeId"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ </a-tree-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="8" :sm="24">
|
|
|
+ <a-form-item label="规格型号">
|
|
|
+ <a-input v-model="queryParam.ggxh" placeholder="模糊查询"/>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="8" :sm="24">
|
|
|
+ <a-form-item label="原厂编号">
|
|
|
+ <a-input v-model="queryParam.initNo" placeholder="模糊查询"/>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="8" :sm="24">
|
|
|
+ <a-form-item label="生产商">
|
|
|
+ <a-input v-model="queryParam.producerName" placeholder="名称模糊查询"/>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="8" :sm="24">
|
|
|
+ <a-form-item label="供应商">
|
|
|
+ <a-input v-model="queryParam.supplierName" placeholder="名称模糊查询"/>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="8" :sm="24">
|
|
|
+ <a-form-item label="等级">
|
|
|
+ <a-select v-model="queryParam.level" placeholder="请选择">
|
|
|
<a-select-option
|
|
|
- v-for="(label,value) in typeMap"
|
|
|
+ v-for="(label,value) in levelMap"
|
|
|
:key="value"
|
|
|
:label="label"
|
|
|
:value="parseInt(value)">{{ label }}
|
|
@@ -21,7 +60,36 @@
|
|
|
</a-select>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
- <a-col :md="8 || 24" :sm="24">
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="用途">
|
|
|
+ <a-select v-model="queryParam.yt" placeholder="请选择">
|
|
|
+ <a-select-option
|
|
|
+ v-for="(label,value) in ytMap"
|
|
|
+ :key="value"
|
|
|
+ :label="label"
|
|
|
+ :value="parseInt(value)">{{ label }}
|
|
|
+ </a-select-option>
|
|
|
+ </a-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="是否专用">
|
|
|
+ <a-select v-model="queryParam.isSpecial" placeholder="请选择">
|
|
|
+ <a-select-option
|
|
|
+ v-for="(label,value) in specialMap"
|
|
|
+ :key="value"
|
|
|
+ :label="label"
|
|
|
+ :value="parseInt(value)">{{ label }}
|
|
|
+ </a-select-option>
|
|
|
+ </a-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="关联设备">
|
|
|
+ <a-input v-model="queryParam.model" placeholder="新号/旧号/名称/规格"/>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6 || 24" :sm="24">
|
|
|
<span class="table-page-search-submitButtons">
|
|
|
<a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
|
|
|
<a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>
|
|
@@ -52,6 +120,7 @@
|
|
|
rowKey="id"
|
|
|
:columns="columns"
|
|
|
:data="loadData"
|
|
|
+ :scroll="{x: 1500, y: BaseTool.Constant.scrollY}"
|
|
|
:alert="options.alert"
|
|
|
:rowSelection="options.rowSelection"
|
|
|
showPagination="auto"
|
|
@@ -93,6 +162,7 @@
|
|
|
<script>
|
|
|
import { STable, Ellipsis } from '@/components'
|
|
|
import BaseForm from './modules/BaseForm'
|
|
|
+import { fetchSpareTypeTree } from '@/api/sqarepartmanage/sparetype'
|
|
|
import Detail from './modules/Detail'
|
|
|
import { getInStoreFormPage, deleteInStoreForms, fetchInStoreForm, updateStore, updateStoreBack, exportInStoreForm } from '@/api/store/instoreform'
|
|
|
import PrintInStoreForm from '@/views/store/instoreform/modules/PrintInStoreForm'
|
|
@@ -123,6 +193,8 @@ export default {
|
|
|
columns: [
|
|
|
{
|
|
|
title: '序号',
|
|
|
+ checked: true,
|
|
|
+ width: '50px',
|
|
|
dataIndex: 'index',
|
|
|
customRender: (text, record, index) => {
|
|
|
return `${(this.$refs.table.localPagination.current - 1) * this.$refs.table.localPagination.pageSize + index + 1}`
|
|
@@ -130,30 +202,139 @@ export default {
|
|
|
},
|
|
|
{
|
|
|
title: '入库单号',
|
|
|
+ checked: true,
|
|
|
+ width: 150,
|
|
|
dataIndex: 'inNo'
|
|
|
},
|
|
|
{
|
|
|
title: '入库类型',
|
|
|
+ checked: true,
|
|
|
dataIndex: 'type',
|
|
|
+ width: 150,
|
|
|
customRender: (text, record, index) => {
|
|
|
return this.BaseTool.Object.getField(this.typeMap, text)
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
+ title: '备件编码',
|
|
|
+ dataIndex: 'no',
|
|
|
+ checked: true,
|
|
|
+ width: '150px'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '备件名称',
|
|
|
+ dataIndex: 'name',
|
|
|
+ checked: true,
|
|
|
+ width: '150px'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '规格型号',
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
+ dataIndex: 'ggxh'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '品牌',
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
+ dataIndex: 'brand'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '备件价值',
|
|
|
+ dataIndex: 'initialValue',
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return this.BaseTool.Amount.formatter(text)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
+ title: '数量',
|
|
|
+ dataIndex: 'inNum'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
title: '总价',
|
|
|
dataIndex: 'totalPrice'
|
|
|
},
|
|
|
+ {
|
|
|
+ title: '计量单位',
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
+ dataIndex: 'unit'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '当前库存',
|
|
|
+ dataIndex: 'currentStock',
|
|
|
+ checked: true,
|
|
|
+ width: '100px',
|
|
|
+ scopedSlots: { customRender: 'status' }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '最高库存',
|
|
|
+ checked: true,
|
|
|
+ width: '100px',
|
|
|
+ dataIndex: 'maxStock'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '最低库存',
|
|
|
+ checked: true,
|
|
|
+ width: '100px',
|
|
|
+ dataIndex: 'minStock'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '等级',
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
+ dataIndex: 'level',
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return this.BaseTool.Object.getField(this.levelMap, text)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '生产商',
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
+ dataIndex: 'producerId',
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return record.producerName
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '用途',
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
+ dataIndex: 'yt',
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return this.BaseTool.Object.getField(this.ytMap, text)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '备注',
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
+ dataIndex: 'remark'
|
|
|
+ },
|
|
|
{
|
|
|
title: '状态',
|
|
|
+ width: '150px',
|
|
|
+ checked: true,
|
|
|
dataIndex: 'status',
|
|
|
scopedSlots: { customRender: 'status' }
|
|
|
},
|
|
|
{
|
|
|
+ checked: true,
|
|
|
+ width: '150px',
|
|
|
title: '创建日期',
|
|
|
dataIndex: 'createdTime'
|
|
|
},
|
|
|
{
|
|
|
title: '仓库',
|
|
|
+ width: '150px',
|
|
|
+ checked: true,
|
|
|
dataIndex: 'storeId',
|
|
|
customRender: (text, record, index) => {
|
|
|
return record.storeName
|
|
@@ -161,6 +342,7 @@ export default {
|
|
|
},
|
|
|
{
|
|
|
title: '操作',
|
|
|
+ fixed: 'right',
|
|
|
key: 'action',
|
|
|
width: '200px',
|
|
|
align: 'center',
|
|
@@ -169,6 +351,12 @@ export default {
|
|
|
],
|
|
|
// 下拉框map
|
|
|
typeMap: {},
|
|
|
+ levelMap: {},
|
|
|
+ specialMap: {},
|
|
|
+ ytMap: {},
|
|
|
+ unitMap: {},
|
|
|
+ spareTypeTreeData: [],
|
|
|
+
|
|
|
// 加载数据方法 必须为 Promise 对象
|
|
|
loadData: parameter => {
|
|
|
parameter = {
|
|
@@ -201,7 +389,14 @@ export default {
|
|
|
// 下拉框map
|
|
|
this.typeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.IN_STORE_FORM_TYPE)
|
|
|
this.statusMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.IN_STORE_FORM_STATUS)
|
|
|
+ this.levelMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SPARE_PART_INFO_LEVEL)
|
|
|
+ this.unitMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBINFO_UNIT)
|
|
|
+ this.ytMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SPARE_USE_TYPE)
|
|
|
+ this.specialMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.YES_NO)
|
|
|
this.tableOption()
|
|
|
+ fetchSpareTypeTree({}).then(res => {
|
|
|
+ this.spareTypeTreeData = res.data
|
|
|
+ })
|
|
|
},
|
|
|
methods: {
|
|
|
tableOption () {
|