|
@@ -1,6 +1,6 @@
|
|
|
<template>
|
|
|
<div>
|
|
|
- <a-card :bordered="false" class="top" style="margin-bottom:1%">
|
|
|
+ <a-card :bordered="false" class="top" style="margin-bottom:1%;margin-top:1%">
|
|
|
|
|
|
<!-- 查询区域 -->
|
|
|
<div class="table-page-search-wrapper">
|
|
@@ -8,73 +8,96 @@
|
|
|
<a-row :gutter="24">
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="存货编码">
|
|
|
- <a-input-search placeholder="请输入" v-model="queryParam.planningOrganization" @search="onSearch"></a-input-search>
|
|
|
+ <a-input-search placeholder="请输入" v-model="queryParam.inventoryCode" @search="onSearch"></a-input-search>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="存货名称">
|
|
|
- <a-input placeholder="请输入" v-model="queryParam.documentNumber"></a-input>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.inventoryName"></a-input>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="颜色">
|
|
|
- <a-range-picker v-model="documentData" style="width: 100%;" @change="changeStartDate" />
|
|
|
- <!-- <a-date-picker showTime valueFormat="YYYY-MM-DD" format = "YYYY-MM-DD" v-model="queryParam.transferDate" style="width: 100%"/> -->
|
|
|
+ <a-input-search placeholder="请输入" v-model="queryParam.color" @search="onSearch"></a-input-search>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="定尺">
|
|
|
- <a-select v-model="queryParam.documentStatus" style='width:100%' >
|
|
|
- <a-select-option value='1'> 1</a-select-option>
|
|
|
- </a-select>
|
|
|
+ <a-input-search placeholder="请输入" v-model="queryParam.fixedLength" @search="onSearch"></a-input-search>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<template v-if="toggleSearchStatus">
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="合金">
|
|
|
- <a-input-search placeholder="请输入" v-model="queryParam.salesman" @search="onSearch"></a-input-search>
|
|
|
+ <a-input-search placeholder="请输入" v-model="queryParam.alloy" @search="onSearch"></a-input-search>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="标准">
|
|
|
- <a-input-search placeholder="请输入" v-model="queryParam.planningDepartment" @search="onSearch"></a-input-search>
|
|
|
+ <a-input-search placeholder="请输入" v-model="queryParam.standard" @search="onSearch"></a-input-search>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="规格">
|
|
|
- <a-input placeholder="请输入" v-model="queryParam.projectCode"></a-input>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.specs"></a-input>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="型号">
|
|
|
- <a-input-search placeholder="请输入" v-model="queryParam.project" @search="onSearch"></a-input-search>
|
|
|
+ <a-input-search placeholder="请输入" v-model="queryParam.model" @search="onSearch"></a-input-search>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="安全库存">
|
|
|
- <a-input placeholder="请输入" v-model="queryParam.remark"></a-input>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.safetyStock"></a-input>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="最高库存">
|
|
|
- <a-input placeholder="请输入" v-model="queryParam.processingOrderNumber"></a-input>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.maxStock"></a-input>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="起订点">
|
|
|
- <a-input placeholder="请输入" v-model="queryParam.changeOrderVersion"></a-input>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.startingPoint"></a-input>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="辅单位">
|
|
|
- <a-input placeholder="请输入" v-model="queryParam.Source"></a-input>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.auxiliaryUnit"></a-input>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
<a-col :md="4" :sm="24">
|
|
|
<a-form-item label="单位">
|
|
|
- <a-select v-model="queryParam.type" style='width:100%' >
|
|
|
- <a-select-option value='1'> 1</a-select-option>
|
|
|
- </a-select>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.unit"></a-input>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="4" :sm="24">
|
|
|
+ <a-form-item label="按辅计量计算" prop='isAuxiliaryUnit'>
|
|
|
+ <a-select v-model="queryParam.isAuxiliaryUnit" style='width:100%' >
|
|
|
+ <a-select-option value='是'> 是</a-select-option>
|
|
|
+ <a-select-option value='否'> 否</a-select-option>
|
|
|
+ </a-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="4" :sm="24">
|
|
|
+ <a-form-item label="米重" prop='meterWeight'>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.meterWeight"></a-input>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="4" :sm="24">
|
|
|
+ <a-form-item label="窗号" prop='windowNo'>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.windowNo"></a-input>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="4" :sm="24">
|
|
|
+ <a-form-item label="装饰面周长" prop='decorationLength'>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.decorationLength"></a-input>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="4" :sm="24">
|
|
|
+ <a-form-item label="专用区" prop='exclusiveZone'>
|
|
|
+ <a-input placeholder="请输入" v-model="queryParam.exclusiveZone"></a-input>
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
</template>
|
|
@@ -97,15 +120,13 @@
|
|
|
<a-card class="middle" style="margin-bottom:1%">
|
|
|
<!-- 操作按钮区域 -->
|
|
|
<div class="table-operator">
|
|
|
- <a-button type="danger" size="small" @click='addList'>新增</a-button>
|
|
|
- <!-- <a-button >修改</a-button> -->
|
|
|
- <a-button size="small">删除</a-button>
|
|
|
- <a-button size="small">提交</a-button>
|
|
|
- <a-button size="small">审核</a-button>
|
|
|
- <a-button size="small">弃审</a-button>
|
|
|
- <a-button size="small">流程</a-button>
|
|
|
- <a-button type="danger" size="small">输出</a-button>
|
|
|
- <a-button type="danger" size="small">打印</a-button>
|
|
|
+ <a-button type="primary" size="small" @click='addList'>新增</a-button>
|
|
|
+ <a-button size="small" @click='editList'>修改</a-button>
|
|
|
+ <a-button size="small" @click='delectList'>删除</a-button>
|
|
|
+ <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl">
|
|
|
+ <a-button type="primary" size="small">导入</a-button>
|
|
|
+ </a-upload>
|
|
|
+ <a-button type="primary" size="small" @click="exportList('安全库存列表')">导出</a-button>
|
|
|
</div>
|
|
|
|
|
|
<!-- table区域-begin -->
|
|
@@ -118,7 +139,7 @@
|
|
|
:columns="columns"
|
|
|
:dataSource="dataSource"
|
|
|
:pagination="ipagination"
|
|
|
- :scroll="{ x: 1500, y: 300 }"
|
|
|
+ :scroll="{ x: 2500, y: 300 }"
|
|
|
:rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
|
|
|
@change="handleTableChange"
|
|
|
>
|
|
@@ -128,6 +149,7 @@
|
|
|
<!-- table区域-end -->
|
|
|
|
|
|
</a-card>
|
|
|
+ <safetyStockListAdd ref="safetyStockListAdd" @ok='searchQuery'></safetyStockListAdd>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -135,22 +157,36 @@
|
|
|
|
|
|
import { JeecgListMixin } from '@/mixins/JeecgListMixin'
|
|
|
import moment from 'dayjs'
|
|
|
- import { httpAction ,getAction} from '@/api/manage'
|
|
|
+ import { httpAction ,getAction,postAction,putAction,deleteAction,downFile} from '@/api/manage'
|
|
|
import {queryDepartTreeList} from '@/api/api'
|
|
|
+ import safetyStockListAdd from './modules/safetyStockListAdd'
|
|
|
//---------workflow by fhf end -------------
|
|
|
export default {
|
|
|
name: "SafetyStockList",
|
|
|
mixins: [JeecgListMixin],
|
|
|
components: {
|
|
|
+ safetyStockListAdd
|
|
|
},
|
|
|
data () {
|
|
|
return {
|
|
|
description: '安全库存列表页面',
|
|
|
queryParam:{},
|
|
|
selectedRowKeys:[],
|
|
|
+ selectedRow:[],
|
|
|
documentData:[],
|
|
|
toggleSearchStatus:true,
|
|
|
- dataSource:[],
|
|
|
+ dataSource:[{}],
|
|
|
+ ipagination:{
|
|
|
+ current: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ pageSizeOptions: ['10', '20', '30'],
|
|
|
+ showTotal: (total, range) => {
|
|
|
+ return range[0] + '-' + range[1] + ' 共' + total + '条'
|
|
|
+ },
|
|
|
+ showQuickJumper: true,
|
|
|
+ showSizeChanger: true,
|
|
|
+ total: 0
|
|
|
+ },
|
|
|
// 表头
|
|
|
columns: [
|
|
|
{
|
|
@@ -166,122 +202,247 @@
|
|
|
{
|
|
|
title: '存货编码',
|
|
|
align:"center",
|
|
|
- dataIndex: 'planningOrganization',
|
|
|
+ dataIndex: 'inventoryCode',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '存货名称',
|
|
|
align:"center",
|
|
|
- dataIndex: 'documentNumber',
|
|
|
+ dataIndex: 'inventoryName',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '颜色',
|
|
|
align:"center",
|
|
|
- dataIndex: 'documentData',
|
|
|
+ dataIndex: 'color',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '定尺',
|
|
|
align:"center",
|
|
|
- dataIndex: 'documentStatus',
|
|
|
+ dataIndex: 'fixedLength',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '合金',
|
|
|
align:"center",
|
|
|
- dataIndex: 'salesman',
|
|
|
+ dataIndex: 'alloy',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '标准',
|
|
|
align:"center",
|
|
|
- dataIndex: 'planningDepartment',
|
|
|
+ dataIndex: 'standard',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '规格',
|
|
|
align:"center",
|
|
|
- dataIndex: 'projectCode',
|
|
|
+ dataIndex: 'specs',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '型号',
|
|
|
align:"center",
|
|
|
- dataIndex: 'remark',
|
|
|
+ dataIndex: 'model',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '安全库存',
|
|
|
align:"center",
|
|
|
- dataIndex: 'processingOrderNumber',
|
|
|
+ dataIndex: 'safetyStock',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '最高库存',
|
|
|
align:"center",
|
|
|
- dataIndex: 'changeOrderVersion',
|
|
|
+ dataIndex: 'maxStock',
|
|
|
+ ellipsis: true,
|
|
|
+
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '起订点',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'startingPoint',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '辅单位',
|
|
|
align:"center",
|
|
|
- dataIndex: 'Source',
|
|
|
+ dataIndex: 'auxiliaryUnit',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '单位',
|
|
|
align:"center",
|
|
|
- dataIndex: 'type',
|
|
|
+ dataIndex: 'unit',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
{
|
|
|
title: '按辅计量计算',
|
|
|
align:"center",
|
|
|
- dataIndex: 'Creator',
|
|
|
+ dataIndex: 'isAuxiliaryUnit',
|
|
|
+ ellipsis: true,
|
|
|
+
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '米重',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'meterWeight',
|
|
|
+ ellipsis: true,
|
|
|
+
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '窗号',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'windowNo',
|
|
|
+ ellipsis: true,
|
|
|
+
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '装饰面周长',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'decorationLength',
|
|
|
+ ellipsis: true,
|
|
|
+
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '专用区',
|
|
|
+ align:"center",
|
|
|
+ dataIndex: 'exclusiveZone',
|
|
|
ellipsis: true,
|
|
|
|
|
|
},
|
|
|
],
|
|
|
+ url: {
|
|
|
+ list: "/production/safetyStock/list",
|
|
|
+ },
|
|
|
+ importExcelUrl:'/production/safetyStock/importExcel',
|
|
|
// ---------workflow by fhf start -------------
|
|
|
serviceName: 'assetAllocationService',
|
|
|
// ---------workflow by fhf end -------------
|
|
|
}
|
|
|
- },
|
|
|
- computed: {
|
|
|
- },
|
|
|
-
|
|
|
- created () {
|
|
|
-
|
|
|
+ },
|
|
|
+ created () {
|
|
|
+ this.getTableList()
|
|
|
+ },
|
|
|
+ computed: {
|
|
|
+ importExcelUrl: function(){
|
|
|
+ return `${window._CONFIG['domianURL']}/${this.importExcelUrl}`;
|
|
|
+ },
|
|
|
},
|
|
|
methods: {
|
|
|
+ getTableList(){
|
|
|
+ getAction('/production/safetyStock/list',this.queryParam).then(res=>{
|
|
|
+ if(res.success){
|
|
|
+ this.dataSource =res.result.records
|
|
|
+ this.ipagination = {
|
|
|
+ total: res.result.total,
|
|
|
+ current: res.result.current,
|
|
|
+ pageSize: res.result.size
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ this.$message.error(res.message);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
//单据日期
|
|
|
changeStartDate(){
|
|
|
|
|
|
},
|
|
|
onSearch(){
|
|
|
- this.$refs.materialProcurementSearch.visible = true
|
|
|
+ // this.$refs.materialProcurementSearch.visible = true
|
|
|
+ },
|
|
|
+ exportList(fileName){
|
|
|
+ downFile('/production/safetyStock/exportXls', this.queryParam).then(data => {
|
|
|
+ if (!data) {
|
|
|
+ this.$message.warning('文件下载失败')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (typeof window.navigator.msSaveBlob !== 'undefined') {
|
|
|
+ window.navigator.msSaveBlob(new Blob([data], { type: 'application/vnd.ms-excel' }), fileName + '.xlsx')
|
|
|
+ } else {
|
|
|
+ let url = window.URL.createObjectURL(new Blob([data], { type: 'application/vnd.ms-excel' }))
|
|
|
+ let link = document.createElement('a')
|
|
|
+ link.style.display = 'none'
|
|
|
+ link.href = url
|
|
|
+ link.setAttribute('download', fileName + '.xlsx')
|
|
|
+ document.body.appendChild(link)
|
|
|
+ link.click()
|
|
|
+ document.body.removeChild(link) // 下载完成移除元素
|
|
|
+ window.URL.revokeObjectURL(url) // 释放掉blob对象
|
|
|
+ }
|
|
|
+ })
|
|
|
},
|
|
|
searchReset(){
|
|
|
this.queryParam={}
|
|
|
+ this.getTableList()
|
|
|
+ },
|
|
|
+ searchQuery(){
|
|
|
+ this.queryParam.pageNo = '1'
|
|
|
+ this.getTableList()
|
|
|
},
|
|
|
addList(){
|
|
|
- this.$refs.materialProcurementAdd.visible=true
|
|
|
+ this.$refs.safetyStockListAdd.visible=true
|
|
|
+ this.$refs.safetyStockListAdd.defaultMethod='add'
|
|
|
+ },
|
|
|
+ editList(){
|
|
|
+ if(this.selectedRowKeys.length==0){
|
|
|
+ this.$message.warning('请勾选数据!')
|
|
|
+ }else if(this.selectedRowKeys.length>1){
|
|
|
+ this.$message.warning('只可勾选一条数据')
|
|
|
+ }else{
|
|
|
+ this.$refs.safetyStockListAdd.visible=true
|
|
|
+ this.$refs.safetyStockListAdd.defaultMethod='edit'
|
|
|
+ this.$refs.safetyStockListAdd.getEditData(this.selectedRowKeys[0])
|
|
|
+ }
|
|
|
+ },
|
|
|
+ delectList(){
|
|
|
+ if(this.selectedRowKeys.length==0){
|
|
|
+ this.$message.warning('请勾选数据!')
|
|
|
+ }else if(this.selectedRowKeys.length>1){
|
|
|
+ var ids = this.selectedRowKeys.toString()
|
|
|
+ var that = this
|
|
|
+ deleteAction('/production/safetyStock/deleteBatch', {ids: ids}).then((res) => {
|
|
|
+ if (res.success) {
|
|
|
+ this.$message.success('删除成功!');
|
|
|
+ this.getTableList()
|
|
|
+ } else {
|
|
|
+ that.$message.error(res.message);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ deleteAction('/production/safetyStock/delete', {id: this.selectedRowKeys[0]}).then((res) => {
|
|
|
+ if (res.success) {
|
|
|
+ this.$message.success('删除成功!');
|
|
|
+ this.getTableList()
|
|
|
+ } else {
|
|
|
+ that.$message.error(res.message);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
},
|
|
|
onSelectChange(selectedRowKeys, selectionRows) {
|
|
|
this.selectedRowKeys = selectedRowKeys;
|
|
|
+ this.selectedRow = selectionRows;
|
|
|
+ },
|
|
|
+ handleTableChange(pagination, filters, sorter) {
|
|
|
+ // console.log('当前页信息>>>>',pagination)
|
|
|
+ this.queryParam.pageNo = pagination.current
|
|
|
+ this.queryParam.pageSize = pagination.pageSize
|
|
|
+ this.getTableList()
|
|
|
},
|
|
|
}
|
|
|
}
|
|
@@ -324,7 +485,7 @@
|
|
|
width: calc(100% + 9px);//减去滚动条的宽度
|
|
|
}
|
|
|
/deep/.middle>.ant-card-body{
|
|
|
- padding-bottom:2px;
|
|
|
+ padding-bottom:14px;
|
|
|
padding-top:14px;
|
|
|
}
|
|
|
/deep/.ant-select-sm .ant-select-selection__rendered{
|