feat: 设备管理优化-0513-申购、计划、合同、订单复制到设备管理

演示数据2.0
chenhc 11 months ago
parent ca2f8ec806
commit 2f55d9eb30

@ -65,6 +65,29 @@
</invDeviceUsageEditDialog>
</el-tab-pane>
<el-tab-pane label="采购合同" v-if="this.visibleFull">
<invDevicePurContractDialog v-if="viewCheckVisible "
:idQuery="filterQuery"
:rowData="this.rowData"
>
</invDevicePurContractDialog>
</el-tab-pane>
<el-tab-pane label="采购订单" v-if="this.visibleFull">
<invDevicePurOrderDialog v-if="viewCheckVisible "
:idQuery="filterQuery"
:rowData="this.rowData"
>
</invDevicePurOrderDialog>
</el-tab-pane>
<el-tab-pane label="申购记录" v-if="this.visibleFull">
<invDevicePurApplyDialog v-if="viewCheckVisible "
:idQuery="filterQuery"
:rowData="this.rowData"
>
</invDevicePurApplyDialog>
</el-tab-pane>
</el-tabs>
<el-dialog
:title="formMap[formName]"
@ -125,6 +148,9 @@ import checkResultPanel from "@/views/dev/invDeviceEditDialog.vue";
import technical from "@/views/dev/invTechniclDialog.vue";
import invDeviceUserEditDialog from "@/views/dev/invDeviceUserEditDialog.vue";
import invDeviceUsageEditDialog from "@/views/dev/invDeviceUsageEditDialog.vue";
import invDevicePurContractDialog from "@/views/dev/invDevicePurContractDialog.vue";
import invDevicePurOrderDialog from "@/views/dev/invDevicePurOrderDialog.vue";
import invDevicePurApplyDialog from "@/views/dev/invDevicePurApplyDialog.vue";
import invDeviceInspectEditDialog from "@/views/dev/invDeviceInspectEditDialog.vue";
import invDeviceCheckEditDialog from "@/views/dev/invDeviceCheckEditDialog.vue";
import {getBasicUnitMaintains, getCorpList} from "@/api/basic/basicUnitMaintain";
@ -142,6 +168,10 @@ export default {
visible: {
type: Boolean,
required: true
},
visibleFull: {
type: Boolean,
required: true
}
},
name: "DeptDeviceDetail",
@ -457,7 +487,10 @@ export default {
invDeviceUsageEditDialog,
invDeviceInspectEditDialog,
invDeviceCheckEditDialog,
deviceSubModifyDialog
deviceSubModifyDialog,
invDevicePurContractDialog,
invDevicePurOrderDialog,
invDevicePurApplyDialog
},
created() {
this.filterQuery = this.rowData

@ -123,6 +123,7 @@
:rowData="this.curDevRow"
:editSaveDev="editSaveDev"
:visible="false"
:visibleFull="true"
@refresh="rowClickDetail"
>
</deptDeviceDetail>

@ -0,0 +1,122 @@
<template>
<div>
<el-table v-loading="loading" :data="list" style="width: 100%" border highlight-current-row :default-sort="defaultSort" >
<el-table-column label="序号" type="index" width="60"></el-table-column>
<el-table-column label="申购单号" prop="billNo"></el-table-column>
<el-table-column label="到货部门" prop="targetDeptName"></el-table-column>
<el-table-column label="到货仓库" prop="targetInvName"></el-table-column>
<el-table-column label="申购仓库" prop="invName"></el-table-column>
<el-table-column label="紧急程度" prop="emergency">
<template slot-scope="scope">
{{ emergencyMap[scope.row.emergency] }}
</template>
</el-table-column>
<el-table-column label="到货截止" prop="arrivalTime"></el-table-column>
<el-table-column label="单据状态" prop="status">
<template slot-scope="scope">
<el-tag :type="(scope.row.status) | statusFilterType">
{{ statusMap[scope.row.status] }}
</el-tag>
</template>
</el-table-column>
<el-table-column label="备注" prop="remark"></el-table-column>
<el-table-column label="创建时间" prop="createTime" ></el-table-column>
<el-table-column label="操作" width="120">
<template slot-scope="scope">
<el-button type="text" size="small">详情 </el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="filterQuery.page"
:limit.sync="filterQuery.limit"
@pagination="handleCurrentChange"
></pagination>
</div>
</template>
<script>
export default {
name: 'invDevicePurApplyDialog',
props: {
idQuery: {
type: Object,
required: true
},
rowData: {
type: Object,
required: true
}
},
watch: {
rowData: function(newVal, oldVal) {
this.searchData(newVal)
}
}
,
data() {
return {
loading:false,
list:[],
total:0,
filterQuery:{
limit:1,
page:10
}
}
}
,
methods: {
}
,
created() {
},
components: {
}
}
</script>
<style scoped>
.itemTag {
float: left;
text-align: left;
margin-top: 10px;
width: 120px;
}
.text {
width: 100%;
font-size: 13px;
font-family: "Microsoft YaHei";
}
.el-card {
margin-right: 20px;
margin-top: 15px;
/*transition: all .5s;*/
}
.el-row {
display: flex;
flex-wrap: wrap;
}
.el-col {
border-radius: 4px;
flex-wrap: wrap;
}
</style>

@ -0,0 +1,119 @@
<template>
<div>
<el-table v-loading="loading" :data="list" style="width: 100%" border highlight-current-row :default-sort="defaultSort" >
<el-table-column label="序号" type="index" width="60"></el-table-column>
<el-table-column label="合同编号" prop="code"></el-table-column>
<el-table-column label="合同名称" prop="name"></el-table-column>
<el-table-column label="往来单位/供应商" prop="fromCorp"></el-table-column>
<el-table-column label="合同仓库" prop="invCode" :formatter="invCodeFormat"></el-table-column>
<el-table-column label="合同状态" prop="status" >
<template slot-scope="scope">
<el-tag :type="(scope.row.status == 0? 1:scope.row.status ) | statusFilterType">
{{ statusMap[(scope.row.status == 0? 1:scope.row.status ) ] }}
</el-tag>
</template>
</el-table-column>
<el-table-column label="合同类型" prop="type" :formatter="typeFormat"></el-table-column>
<el-table-column label="付款方式" prop="payType"></el-table-column>
<el-table-column label="合同签订日期" prop="contractDate"></el-table-column>
<el-table-column label="备注" prop="remark"></el-table-column>
<el-table-column label="操作" width="120">
<template slot-scope="scope">
<el-button type="text" size="small">详情 </el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="filterQuery.page"
:limit.sync="filterQuery.limit"
@pagination="handleCurrentChange"
></pagination>
</div>
</template>
<script>
export default {
name: 'invDevicePurContractDialog',
props: {
idQuery: {
type: Object,
required: true
},
rowData: {
type: Object,
required: true
}
},
watch: {
rowData: function(newVal, oldVal) {
this.searchData(newVal)
}
}
,
data() {
return {
loading:false,
list:[],
total:0,
filterQuery:{
limit:1,
page:10
}
}
}
,
methods: {
}
,
created() {
},
components: {
}
}
</script>
<style scoped>
.itemTag {
float: left;
text-align: left;
margin-top: 10px;
width: 120px;
}
.text {
width: 100%;
font-size: 13px;
font-family: "Microsoft YaHei";
}
.el-card {
margin-right: 20px;
margin-top: 15px;
/*transition: all .5s;*/
}
.el-row {
display: flex;
flex-wrap: wrap;
}
.el-col {
border-radius: 4px;
flex-wrap: wrap;
}
</style>

@ -0,0 +1,120 @@
<template>
<div>
<el-table v-loading="loading" :data="list" style="width: 100%" border highlight-current-row
:default-sort="defaultSort"
>
<el-table-column label="序号" type="index" width="60"></el-table-column>
<el-table-column label="采购单号" prop="billNo" width="160"></el-table-column>
<el-table-column label="采购部门" prop="deptName" width="120"></el-table-column>
<el-table-column label="采购仓库" prop="invName" width="120"></el-table-column>
<el-table-column label="申购仓库" prop="applyInvName" width="120"></el-table-column>
<el-table-column label="申购人" prop="applyCreateBy" width="120"></el-table-column>
<el-table-column label="供应商" prop="supName" width="180"></el-table-column>
<el-table-column label="紧急程度" prop="emergency" width="120">
<template slot-scope="scope">
{{ emergencyMap[scope.row.emergency] }}
</template>
</el-table-column>
<el-table-column label="到货截止" prop="arrivalTime" width="160"></el-table-column>
<el-table-column label="单据状态" prop="status" width="120">
<template slot-scope="scope">
<el-tag :type="(scope.row.status) | statusFilterType">
{{ statusMap[scope.row.status] }}
</el-tag>
</template>
</el-table-column>
<el-table-column label="创建时间" prop="createTime"></el-table-column>
<el-table-column label="操作" width="120">
<template slot-scope="scope">
<el-button type="text" size="small">详情</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="filterQuery.page"
:limit.sync="filterQuery.limit"
@pagination="handleCurrentChange"
></pagination>
</div>
</template>
<script>
export default {
name: 'invDevicePurOrderDialog',
props: {
idQuery: {
type: Object,
required: true
},
rowData: {
type: Object,
required: true
}
},
watch: {
rowData: function(newVal, oldVal) {
this.searchData(newVal)
}
}
,
data() {
return {
loading: false,
list: [],
total: 0,
filterQuery: {
limit: 1,
page: 10
}
}
}
,
methods: {}
,
created() {
},
components: {}
}
</script>
<style scoped>
.itemTag {
float: left;
text-align: left;
margin-top: 10px;
width: 120px;
}
.text {
width: 100%;
font-size: 13px;
font-family: "Microsoft YaHei";
}
.el-card {
margin-right: 20px;
margin-top: 15px;
/*transition: all .5s;*/
}
.el-row {
display: flex;
flex-wrap: wrap;
}
.el-col {
border-radius: 4px;
flex-wrap: wrap;
}
</style>

@ -235,7 +235,8 @@ export default {
importPlan(index, row) {
this.loading = true;
let tQuery = {
id: row.id
id: row.id,
pageType: this.pageType
}
importPlan(tQuery).then((response) => {
if (response.code == 20000) {

Loading…
Cancel
Save