Browse Source

2025-03-07

备品备件优化
java8
fengyuan_yang 10 months ago
parent
commit
2c05404068
  1. 14
      src/api/partspare/partspare.js
  2. 46
      src/views/modules/eam/eam_device_list.vue
  3. 1
      src/views/modules/partspare/partspare-add-or-update.vue
  4. 425
      src/views/modules/partspare/partspare.vue
  5. 31
      src/views/modules/partspare/resourcespare-add-or-update.vue
  6. 74
      src/views/modules/partspare/resourcespare.vue

14
src/api/partspare/partspare.js

@ -1,7 +1,5 @@
import {createAPI} from "@/utils/httpRequest.js";
// 备品备件信息
// 获取列表
@ -22,5 +20,17 @@ export const deletePartSpare = data => createAPI(`/pms/partspare/deletePartSpare
// 修改在途信息
export const updatePartSpareInTransit = data => createAPI(`/pms/partspare/updatePartSpareInTransit`, 'post', data)
// 查设备集合
export const getObjectList = data => createAPI(`/pms/partspare/getObjectList`, 'post', data)
// 根据条件查询可选设备
export const getObjectListBy = data => createAPI(`/pms/partspare/getObjectListBy`, 'post', data)
// 新增备品备件设备
export const addPartSpareObject = data => createAPI(`/pms/partspare/addPartSpareObject`, 'post', data)
// 删除备品备件设备
export const deletePartSpareObject = data => createAPI(`/pms/partspare/deletePartSpareObject`, 'post', data)

46
src/views/modules/eam/eam_device_list.vue

@ -160,12 +160,12 @@
<!-- 设备备件 -->
<el-tab-pane label="设备备件" name="device_part">
<el-form :inline="true" label-position="top" style="margin-top: 5px">
<el-button type="primary" @click="addSpareModal()">新增备件</el-button>
<el-button type="primary" @click="copyObject('spare')">复制到其他设备</el-button>
</el-form>
<!-- <el-form :inline="true" label-position="top" style="margin-top: 5px">-->
<!-- <el-button type="primary" @click="addSpareModal()">新增备件</el-button>-->
<!-- <el-button type="primary" @click="copyObject('spare')">复制到其他设备</el-button>-->
<!-- </el-form>-->
<el-table
:height="secondHeight"
:height="secondHeight + 25"
:data="devicePartList"
border
style="width: 100%;">
@ -185,10 +185,9 @@
</template>
</el-table-column>
<el-table-column
fixed="right"
header-align="center"
align="center"
width="100"
min-width="60"
label="操作">
<template slot-scope="scope">
<a type="text" size="small" @click="deleteObjectSpare(scope.row)">删除</a>
@ -980,8 +979,10 @@
columnSortable: true,
sortLv: 0,
status: true,
fixed: false
}, {
fixed: false,
columnWidth: 100,
},
{
columnProp: 'partDescription',
headerAlign: 'center',
align: 'left',
@ -991,8 +992,10 @@
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
}, {
fixed: false,
columnWidth: 200,
},
{
columnProp: 'qtyUsable',
headerAlign: 'center',
align: 'right',
@ -1002,7 +1005,21 @@
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
fixed: false,
columnWidth: 80,
},
{
columnProp: 'coreFlagDesc',
headerAlign: 'center',
align: 'center',
columnLabel: '是否核心备件',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false,
columnWidth: 80,
},
],
columnCheckItemArray: [
@ -3290,7 +3307,7 @@
this.$nextTick(() => {
this.height = window.innerHeight / 2 - 10
/*第二个表格高度的动态调整*/
this.secondHeight = window.innerHeight - this.height - 235
this.secondHeight = window.innerHeight - this.height - 225
})
this.$nextTick(() => {
//this.recordWidth = window.innerWidth - this.toolInstanceIdWidth - 270
@ -3581,8 +3598,7 @@
//
getDevicePartData () {
getDevicePartList(this.currentRow).then(({data}) => {
//
if (data && data.code == 200) {
if (data && data.code === 200) {
this.devicePartList = data.rows
} else {
this.devicePartList = []

1
src/views/modules/partspare/partspare-add-or-update.vue

@ -1,7 +1,6 @@
<template>
<div class="mod-partspare">
<el-dialog
@close="closeDialog"
v-drag
:title=" !this.addOrUpdate ? '新增' : '修改'"
:close-on-click-modal="false"

425
src/views/modules/partspare/partspare.vue

@ -1,31 +1,37 @@
<template>
<div class="mod-config">
<!-- <div>-->
<!-- <span @click="favoriteFunction()">-->
<!-- <icon-svg :name="favorite?'xiangqufill':'xiangqu'" class="sl-svg"></icon-svg>-->
<!-- </span>-->
<!-- </div>-->
<el-row>
<el-col :span="24">
<el-form :inline="true" label-position="top" :model="queryForm" @keyup.enter.native="getDataList()">
<el-form :inline="true" label-position="top" :model="queryForm">
<el-form-item label="BU">
<el-select v-model="queryForm.buNo" placeholder="请选择" style="width: 80px">
<el-option label="全部" value=""></el-option>
<el-option
v-for = "i in buList"
:key = "i.buNo"
:label = "i.buDesc"
:value = "i.buNo">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="备品备件编码">
<el-input v-model="queryForm.partNo" clearable></el-input>
<el-input v-model="queryForm.partNo" style="width: 100px" clearable></el-input>
</el-form-item>
<el-form-item label="备品备件名称">
<el-input v-model="queryForm.partDescription" clearable></el-input>
<el-input v-model="queryForm.partDescription" style="width: 150px" clearable></el-input>
</el-form-item>
<el-form-item label="规格型号">
<el-input v-model="queryForm.spec" clearable></el-input>
<el-input v-model="queryForm.spec" style="width: 150px" clearable></el-input>
</el-form-item>
<el-form-item label="状态">
<el-select v-model="queryForm.active">
<el-select v-model="queryForm.active" style="width: 80px">
<el-option value="" label="全部"></el-option>
<el-option value="Y" label="启用"></el-option>
<el-option value="N" label="禁用"></el-option>
</el-select>
</el-form-item>
<el-form-item label="是否核心备件">
<el-select v-model="queryForm.coreFlag">
<el-select v-model="queryForm.coreFlag" style="width: 80px">
<el-option value="" label="全部"></el-option>
<el-option value="Y" label="是"></el-option>
<el-option value="N" label="否"></el-option>
@ -34,19 +40,7 @@
<el-form-item label="仓库">
<el-select v-model="queryForm.warehouseId">
<el-option value="" label="全部"></el-option>
<el-option v-for="(item,index) in wareHouseList "
:key="item.warehouseId" :value="item.warehouseId" :label="item.warehouseName"></el-option>
</el-select>
</el-form-item>
<el-form-item label="BU">
<el-select v-model="queryForm.buNo" placeholder="请选择" style="width: 120px">
<el-option label="全部" value=""> </el-option>
<el-option
v-for = "i in buList"
:key = "i.buNo"
:label = "i.buDesc"
:value = "i.buNo">
</el-option>
<el-option v-for="(item,index) in wareHouseList " :key="item.warehouseId" :value="item.warehouseId" :label="item.warehouseName"></el-option>
</el-select>
</el-form-item>
<el-form-item label=" ">
@ -76,6 +70,9 @@
:data="dataList"
border
:height="height"
:row-style="rowStyle"
@row-click="partClickRow"
@current-change="changeCurrentRow"
v-loading="dataListLoading"
style="width: 100%;">
<el-table-column
@ -90,20 +87,20 @@
:label="item.columnLabel">
<template slot-scope="scope">
<span v-if="!item.columnHidden"> {{ scope.row[item.columnProp] }}</span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
style="width: 100px; height: 80px"/></span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span>
</template>
</el-table-column>
<el-table-column
fixed="right"
header-align="center"
align="center"
width="150"
width="200"
label="操作">
<template slot-scope="scope">
<el-link type="text" size="small" @click="getInTransit(scope.row)">在途信息</el-link>
<el-link type="text" size="small" @click="addOrUpdateHandle(scope.row)">| 修改</el-link>
<el-link type="text" size="small" @click="deleteHandle(scope.row)">| 删除</el-link>
<el-link style="cursor: pointer" @click="getInTransit(scope.row)">在途信息</el-link>
<el-link style="cursor: pointer" @click="addOrUpdateHandle(scope.row)">| 修改</el-link>
<el-link style="cursor: pointer" @click="deleteHandle(scope.row)">| 删除</el-link>
<el-link style="cursor: pointer" @click="addPartSpareObject(scope.row)">| 备件设备</el-link>
</template>
</el-table-column>
</el-table>
@ -119,6 +116,7 @@
</el-pagination>
</el-col>
</el-row>
<!-- 弹窗,在途信息 -->
<el-dialog
@close="closeDialog"
@ -127,36 +125,145 @@
:close-on-click-modal="false"
width="300px"
:visible.sync="inTransitVisible">
<el-form label-position="top"
label-width="120px">
<el-form label-position="top" label-width="120px">
<el-form-item label="备品备件编码" prop="partNo">
<el-input :disabled="true" v-model="inTransit.partNo"></el-input>
</el-form-item>
<el-form-item label="在途信息">
<el-input type="textarea" v-model="inTransit.inTransitInfo"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button style="margin-top: 30px" type="primary" @click="inTransitFormSubmit()">确定</el-button>
<el-button type="primary" @click="inTransitVisible = false">取消</el-button>
</span>
</el-dialog>
<!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
<!-- 设备-> 快速新增 -->
<el-dialog title="新增" :close-on-click-modal="false" v-drag :visible.sync="objectModelFlag" width="900px">
<div style="font-size: 12px">
<el-form :inline="true" label-position="top" :model="objectData">
<el-form-item :label="'设备编码'">
<el-input v-model="objectData.objectID" clearable style="width: 100px"></el-input>
</el-form-item>
<el-form-item :label="'设备名称'">
<el-input v-model="objectData.objectDesc" clearable style="width: 200px"></el-input>
</el-form-item>
<el-form-item :label="' '">
<el-button type="primary" @click="getObjectList">查询</el-button>
</el-form-item>
</el-form>
</div>
<el-container style="margin-top: 0px;">
<el-main style="width: 350px; padding: 1px">
<span style="font-size: 12px" >可选设备</span>
<el-table
height="400px"
:data="objectList1"
border
ref="objectTable1"
@row-click="objectClickRow1"
@selection-change="selectionObject1"
highlight-current-row
style="width: 100%">
<el-table-column
type="selection"
header-align="center"
align="center"
width="50">
</el-table-column>
<el-table-column
prop="objectID"
header-align="center"
align="center"
min-width="100"
label="设备编码">
</el-table-column>
<el-table-column
prop="objectDesc"
header-align="center"
align="left"
min-width="200"
label="设备名称">
</el-table-column>
</el-table>
</el-main>
<el-main style="width: 111px;padding: -1px">
<div style="margin-top: 182px;margin-left: 18px">
<el-button type="primary" @click="addObject">添加>></el-button>
</div>
<div style="margin-top: 15px;margin-left: 18px">
<el-button type="primary" @click="deleteObject">删除<<</el-button>
</div>
</el-main>
<el-main style="width: 350px;padding: 1px">
<span style="font-size: 12px" >已有设备</span>
<el-table
height="400px"
:data="objectList2"
border
ref="objectTable2"
@row-click="objectClickRow2"
@selection-change="selectionObject2"
highlight-current-row
style="width: 100%">
<el-table-column
type="selection"
header-align="center"
align="center"
width="50">
</el-table-column>
<el-table-column
prop="objectID"
header-align="center"
align="center"
min-width="100"
label="设备编码">
</el-table-column>
<el-table-column
prop="objectDesc"
header-align="center"
align="center"
min-width="200"
label="设备名称">
</el-table-column>
</el-table>
</el-main>
</el-container>
<el-footer style="height:40px;margin-top: 20px;text-align:center">
<el-button type="primary" @click="objectModelFlag = false">关闭</el-button>
</el-footer>
</el-dialog>
</div>
</template>
<script>
import AddOrUpdate from './partspare-add-or-update'
import {getTableDefaultListLanguage, getTableUserListLanguage} from "@/api/table.js"
import {
getPartSpareList, deletePartSpare, getPartSpareInfo, updatePartSpareInTransit
getTableDefaultListLanguage,
getTableUserListLanguage
} from "@/api/table.js"
import {
getPartSpareList,
deletePartSpare,
getPartSpareInfo,
updatePartSpareInTransit,
getObjectList, //
getObjectListBy, //
addPartSpareObject, //
deletePartSpareObject, //
} from '@/api/partspare/partspare.js'
import {
getWareHouseList,
} from '@/api/partspare/wareHouseEntity.js'
import {userFavoriteList, saveUserFavorite, removeUserFavorite} from '@/api/userFavorite.js'
import {
userFavoriteList,
saveUserFavorite,
removeUserFavorite
} from '@/api/userFavorite.js'
import {getAllBuList}from '@/api/factory/site.js'
export default {
data() {
@ -217,7 +324,7 @@ export default {
sortLv: 0,
status: true,
fixed: 'left',
columnWidth: 140,
columnWidth: 70,
},
{
userId: this.$store.state.user.name,
@ -235,7 +342,7 @@ export default {
sortLv: 0,
status: true,
fixed: 'left',
columnWidth: 100,
columnWidth: 60,
},
{
userId: this.$store.state.user.name,
@ -253,7 +360,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -271,7 +378,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 200,
},
{
userId: this.$store.state.user.name,
@ -289,7 +396,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 150,
},
{
userId: this.$store.state.user.name,
@ -307,7 +414,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 60,
},
{
userId: this.$store.state.user.name,
@ -317,7 +424,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'coreFlag',
headerAlign: "center",
align: "left",
align: "center",
columnLabel: '是否核心备件',
columnHidden: false,
columnImage: false,
@ -343,7 +450,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 200,
},
{
userId: this.$store.state.user.name,
@ -353,7 +460,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'stock',
headerAlign: "center",
align: "left",
align: "right",
columnLabel: '库存数量',
columnHidden: false,
columnImage: false,
@ -361,7 +468,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -371,7 +478,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'stockInArrive',
headerAlign: "center",
align: "left",
align: "right",
columnLabel: '待检仓库库存数量',
columnHidden: false,
columnImage: false,
@ -379,7 +486,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -389,7 +496,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'stockInQuality',
headerAlign: "center",
align: "left",
align: "right",
columnLabel: '隔离仓库库存数量',
columnHidden: false,
columnImage: false,
@ -397,7 +504,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -407,7 +514,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'stockInConsignment',
headerAlign: "center",
align: "left",
align: "right",
columnLabel: '异地仓库库存数量',
columnHidden: false,
columnImage: false,
@ -415,7 +522,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -425,7 +532,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'stockInPicking',
headerAlign: "center",
align: "left",
align: "right",
columnLabel: '正常库存数量',
columnHidden: false,
columnImage: false,
@ -433,7 +540,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -443,7 +550,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'stockinActive',
headerAlign: "center",
align: "left",
align: "right",
columnLabel: '无效库存数量',
columnHidden: false,
columnImage: false,
@ -451,7 +558,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -461,7 +568,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'qtyonPo',
headerAlign: "center",
align: "left",
align: "right",
columnLabel: '在途订单数量',
columnHidden: false,
columnImage: false,
@ -469,7 +576,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -479,7 +586,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'minStock',
headerAlign: "center",
align: "left",
align: "right",
columnLabel: '最低库存数量',
columnHidden: false,
columnImage: false,
@ -487,7 +594,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -505,7 +612,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -523,7 +630,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -533,7 +640,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'sCodeControlFlag',
headerAlign: "center",
align: "left",
align: "center",
columnLabel: '是否启用序列号管理',
columnHidden: false,
columnImage: false,
@ -541,7 +648,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
@ -552,7 +659,7 @@ export default {
tableName: "备品备件信息表",
columnProp: 'safetyStock',
headerAlign: "center",
align: "left",
align: "right",
columnLabel: '安全库存数量',
columnHidden: false,
columnImage: false,
@ -560,7 +667,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
}, {
userId: this.$store.state.user.name,
functionId:200101101,
@ -577,7 +684,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 80,
}, {
userId: this.$store.state.user.name,
functionId:200101101,
@ -594,9 +701,21 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 150,
},
],
objectSelections1: [],
objectSelections2: [],
objectList1: [],
objectList2: [],
objectData: {
site: '',
buNo: '',
objectID: '',
objectDesc: '',
},
objectModelFlag: false,
partCurrentRow: {},
}
},
components: {
@ -608,16 +727,135 @@ export default {
this.height = window.innerHeight - 170
})
},
created() {
created () {
//
this.getTableUserColumn(this.$route.meta.menuId+'table',1)
this. getBu ()
},
activated() {
this.getBu()
this.getDataList()
this.getWareHouseList()
},
methods: {
rowStyle ({row}) {
if (this.partCurrentRow.partNo === row.partNo) {
return { 'background-color': '#E8F7F6', cursor: 'pointer' };
}
},
partClickRow (row,column) {
this.partCurrentRow = JSON.parse(JSON.stringify(row))
},
changeCurrentRow (row, oldRow) {
//
if (row) {
this.partCurrentRow = JSON.parse(JSON.stringify(row))
}
},
addPartSpareObject (row) {
this.objectSelections1 = null
this.objectSelections2 = null
getObjectList(row).then(({data}) => {
this.objectList1 = data.row1
this.objectList2 = data.row2
})
this.objectData = {
site: row.site,
buNo: row.buNo,
objectID: '',
objectDesc: '',
}
this.objectModelFlag = true
},
//
getObjectList () {
//
getObjectListBy(this.objectData).then(({data}) => {
if (data && data.code === 0) {
this.objectList1 = data.rows
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
//
objectClickRow1 (row) {
this.$refs.objectTable1.toggleRowSelection(row)
},
//
objectClickRow2 (row) {
this.$refs.objectTable2.toggleRowSelection(row)
},
selectionObject1 (val) {
this.objectSelections1 = val
},
selectionObject2 (val) {
this.objectSelections2 = val
},
//
addObject () {
if (this.objectSelections1 == null || this.objectSelections1.length === 0) {
this.$message.warning('请选择可选设备!')
return
}
let inData = {
site: this.partCurrentRow.site,
buNo: this.partCurrentRow.buNo,
partNo: this.partCurrentRow.partNo,
objectList: this.objectSelections1
}
addPartSpareObject(inData).then(({data}) => {
if (data && data.code === 0) {
getObjectList(this.partCurrentRow).then(({data}) => {
this.objectList1 = data.row1
this.objectList2 = data.row2
})
this.objectSelections1 = []
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
//
deleteObject () {
if(this.objectSelections2 == null || this.objectSelections2.length === 0){
this.$message.warning('请选择已有设备!')
return
}
let inData = {
site: this.partCurrentRow.site,
buNo: this.partCurrentRow.buNo,
partNo: this.partCurrentRow.partNo,
objectList: this.objectSelections2
}
deletePartSpareObject(inData).then(({data}) => {
if (data && data.code === 0) {
getObjectList(this.partCurrentRow).then(({data}) => {
this.objectList1 = data.row1
this.objectList2 = data.row2
})
this.objectSelections2 = []
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
//
favoriteIsOk() {
let userFavorite = {
@ -632,6 +870,7 @@ export default {
}
})
},
// OR
favoriteFunction() {
let userFavorite = {
@ -659,6 +898,7 @@ export default {
}
},
//
getWareHouseList() {
let wareHouse = {
@ -672,6 +912,7 @@ export default {
}
})
},
//excel
async createExportData() {
this.queryForm.limit = -1
@ -682,13 +923,8 @@ export default {
return this.exportList;
},
startDownload() {
// this.exportData = this.dataList
},
finishDownload() {
},
startDownload() {},
finishDownload() {},
fields() {
let json = "{"
this.columnList.forEach((item, index) => {
@ -703,6 +939,7 @@ export default {
return s
},
// end
//
getDataList() {
@ -720,17 +957,20 @@ export default {
this.dataListLoading = false
})
},
//
sizeChangeHandle(val) {
this.pageSize = val
this.pageIndex = 1
this.getDataList()
},
//
currentChangeHandle(val) {
this.pageIndex = val
this.getDataList()
},
// /
addOrUpdateHandle(row) {
this.addOrUpdateVisible = true
@ -738,6 +978,7 @@ export default {
this.$refs.addOrUpdate.init(row)
})
},
//
deleteHandle(row) {
this.$confirm(`确定执行删除操作?`, '提示', {
@ -755,6 +996,7 @@ export default {
})
})
},
//
getInTransit(row) {
this.inTransitVisible = true
@ -765,6 +1007,7 @@ export default {
}
})
},
//
inTransitFormSubmit() {
updatePartSpareInTransit(this.inTransit).then(({data}) =>{
@ -775,8 +1018,8 @@ export default {
this.$message.warning(data.msg)
}
})
},
//
async getTableUserColumn (tableId, columnId) {
let queryTableUser = {
@ -793,15 +1036,6 @@ export default {
case 1:
this.columnList = data.rows
break;
// case 2:
// this.columnDetailList = data.rows
// break;
// case 3:
// this.columnList2 = data.rows
// break;
// case 4:
// this.columnList3 = data.rows
// break;
}
} else {
this.getColumnList(tableId, columnId)
@ -822,21 +1056,11 @@ export default {
case 1:
this.columnList = data.rows
break;
// case 2:
// this.columnDetailList = data.rows
// break;
// case 3:
// this.columnList2 = data.rows
// break;
// case 4:
// this.columnList3 = data.rows
// break;
}
} else {
// this.showDefault = true.
}
})
},
getBu () {
let tempData = {
username: this.$store.state.user.name,
@ -847,6 +1071,7 @@ export default {
}
})
},
closeDialog() {
}

31
src/views/modules/partspare/resourcespare-add-or-update.vue

@ -1,14 +1,7 @@
<template>
<div>
<el-dialog
width="340px"
@close="closeDialog"
:title="!this.addOrUpdate ? '新增' : '修改'"
:close-on-click-modal="false"
:visible.sync="visible">
<el-form :model="dataForm" label-position="top" :inline="true" ref="dataForm"
@keyup.enter.native="dataFormSubmit()"
label-width="120px">
<el-dialog width="340px" :title="!this.addOrUpdate ? '新增' : '修改'" :close-on-click-modal="false" :visible.sync="visible">
<el-form :model="dataForm" label-position="top" :inline="true" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="120px">
<el-form-item required>
<el-link @click="getBaseList(113)" slot="label">设备编码</el-link>
<el-input v-model="dataForm.resourceId" :disabled="addOrUpdate"></el-input>
@ -24,7 +17,7 @@
<el-input disabled v-model="dataForm.partDesc"></el-input>
</el-form-item>
<el-form-item required label="可用数量">
<el-input-number style="width: 146px" :min="0" v-model="dataForm.qtyUsable"></el-input-number>
<el-input-number :controls="false" :step="0" :min="0" style="width: 140px" v-model="dataForm.qtyUsable"></el-input-number>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
@ -57,8 +50,8 @@ export default {
qtyUsable: '',
delflag: '',
createdBy: '',
site: this.$store.state.user.site,
partBuNo:'',
site: '',
partBuNo: ''
},
addOrUpdate: false,
}
@ -86,7 +79,7 @@ export default {
})
},
/* 列表方法的回调 */
getBaseData(val) {
getBaseData (val) {
if (this.tagNo === 113) {
this.dataForm.resourceId = val.ObjectID
this.dataForm.resourceName = val.ObjectDesc
@ -98,12 +91,14 @@ export default {
this.dataForm.partBuNo = val.Bu_no
}
},
init(row) {
init (row) {
this.addOrUpdate = row ? true : false
this.visible = true
this.$nextTick(() => {
if (this.addOrUpdate) {
this.dataForm.site = row.site
this.dataForm.buNo = row.buNo
this.dataForm.resourceId = row.resourceId
this.dataForm.partNo = row.partNo
getResourceSpareInfo(this.dataForm).then(({data}) => {
@ -123,10 +118,10 @@ export default {
},
//
dataFormSubmit() {
if(this.dataForm.partBuNo!==this.dataForm.buNo){
this.$message.error("设备和备件的BuNo不一致!")
return
}
// if (this.dataForm.partBuNo !== this.dataForm.buNo) {
// this.$message.error("BuNo")
// return
// }
if (this.addOrUpdate) {
updateResourceSpare(this.dataForm).then(({data}) => {
if (data && data.code === 0) {

74
src/views/modules/partspare/resourcespare.vue

@ -1,10 +1,5 @@
<template>
<div class="mod-config">
<!-- <div>-->
<!-- <span @click="favoriteFunction()">-->
<!-- <icon-svg :name="favorite?'xiangqufill':'xiangqu'" class="sl-svg"></icon-svg>-->
<!-- </span>-->
<!-- </div>-->
<el-row>
<el-col :span="24">
<el-form :inline="true" label-position="top" :model="queryForm" @keyup.enter.native="getDataList()">
@ -70,8 +65,7 @@
:label="item.columnLabel">
<template slot-scope="scope">
<span v-if="!item.columnHidden"> {{ scope.row[item.columnProp] }}</span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
style="width: 100px; height: 80px"/></span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span>
</template>
</el-table-column>
<el-table-column
@ -144,6 +138,24 @@ export default {
addOrUpdateVisible: false,
//
columnList: [
{
userId: this.$store.state.user.name,
functionId: 200101102,
serialNumber: '200101102TableSite',
tableId: "200101102Table",
tableName: "设备备品配件信息表",
columnProp: 'site',
headerAlign: "center",
align: "left",
columnLabel: '工厂编码',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 70,
},
{
userId: this.$store.state.user.name,
functionId: 200101102,
@ -160,7 +172,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 80,
columnWidth: 60,
},
{
userId: this.$store.state.user.name,
@ -178,8 +190,9 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
}, {
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
functionId: 200101102,
serialNumber: '200101102TableResourceDesc',
@ -195,7 +208,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 150,
},
{
userId: this.$store.state.user.name,
@ -213,7 +226,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
@ -231,25 +244,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
},
{
userId: this.$store.state.user.name,
functionId: 200101102,
serialNumber: '200101102TableSite',
tableId: "200101102Table",
tableName: "设备备品配件信息表",
columnProp: 'site',
headerAlign: "center",
align: "left",
columnLabel: '工厂编码',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 200,
},
{
userId: this.$store.state.user.name,
@ -259,7 +254,7 @@ export default {
tableName: "设备备品配件信息表",
columnProp: 'qtyUsable',
headerAlign: "center",
align: "left",
align: "right",
columnLabel: '可用数量',
columnHidden: false,
columnImage: false,
@ -267,29 +262,30 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 140,
columnWidth: 80,
},
],
}
},
components: {
AddOrUpdate
},
activated() {
this.favoriteIsOk()
this.getDataList()
},
mounted() {
this.$nextTick(() => {
this.height = window.innerHeight - 190
})
},
created() {
//
this.getTableUserColumn(this.$route.meta.menuId+'table',1)
this. getBu ()
this.getBu()
this.favoriteIsOk()
this.getDataList()
},
methods: {
//
favoriteIsOk() {

Loading…
Cancel
Save