<template>
|
<j-modal
|
:confirmLoading='confirmLoading'
|
:okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
|
:title='title'
|
:visible='visible'
|
:width='800'
|
cancelText='关闭'
|
centered
|
switchFullscreen
|
@cancel='handleCancel'
|
@ok='handleOk'
|
>
|
|
<a-spin :spinning='spinning'>
|
<a-form-model
|
ref='form'
|
:model='model'
|
:rules='validatorRules'
|
>
|
<a-divider
|
orientation='center'
|
style='font-size: large;font-style: italic;color: #66aeed;'
|
> 报废(转让)信息
|
</a-divider>
|
<a-row :gutter='24'>
|
<a-col :span='12'>
|
<a-form-model-item
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
label='单据号'
|
prop='code'
|
>
|
<a-input
|
v-model='model.code'
|
disabled
|
/>
|
</a-form-model-item>
|
</a-col>
|
<a-col :span='12'>
|
<a-form-model-item
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
label='设备编码'
|
prop='equipmentId'
|
>
|
<lx-search-equipment-select
|
v-model='model.equipmentId'
|
disabled
|
placeholder='请输入设备编号或名称搜索'
|
></lx-search-equipment-select>
|
</a-form-model-item>
|
</a-col>
|
</a-row>
|
<a-row :gutter='24'>
|
<a-col :span='12'>
|
<a-form-model-item
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
label='申请人'
|
prop='reportUser_dictText'
|
>
|
<a-input
|
v-model='model.reportUser_dictText'
|
disabled
|
/>
|
</a-form-model-item>
|
</a-col>
|
<a-col :span='12'>
|
<a-form-model-item
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
label='处置原因'
|
prop='scrapReason'
|
>
|
<a-input
|
v-model='model.scrapReason'
|
disabled
|
/>
|
</a-form-model-item>
|
</a-col>
|
</a-row>
|
<a-row :gutter='24'>
|
<a-col :span='12'>
|
<a-form-model-item
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
label='备注'
|
prop='remark'
|
>
|
<a-textarea
|
v-model='model.remark'
|
disabled
|
/>
|
</a-form-model-item>
|
</a-col>
|
</a-row>
|
<div v-if='approvalDisable'>
|
<a-divider
|
orientation='center'
|
style='font-size: large;font-style: italic;color: #66aeed;'
|
> 管理员报废(转让)审核
|
</a-divider>
|
<a-row :gutter='24'>
|
<a-col :span='12'>
|
<a-form-model-item
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
label='审批类型'
|
prop='approvalDealType'
|
>
|
<j-dict-select-tag
|
v-model='model.approvalDealType'
|
:disabled='disableSubmit || initialAcceptanceDisable'
|
dictCode='approved_rejected'
|
placeholder='请选择处理类型'
|
type='radio'
|
/>
|
</a-form-model-item>
|
</a-col>
|
<a-col :span='12'>
|
<a-form-model-item
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
label='审批意见'
|
prop='approvalComment'
|
>
|
<a-textarea
|
v-model='model.approvalComment'
|
:disabled='disableSubmit || returnDisable'
|
placeholder='请输入意见'
|
/>
|
</a-form-model-item>
|
</a-col>
|
</a-row>
|
</div>
|
</a-form-model>
|
</a-spin>
|
</j-modal>
|
</template>
|
|
<script>
|
import { getAction, httpAction } from '@/api/manage'
|
import LxSearchEquipmentSelect from '@views/eam/equipment/modules/LxSearchEquipmentSelect.vue'
|
|
export default {
|
name: 'EquipmentScrapApprovalModal',
|
components: {
|
LxSearchEquipmentSelect
|
},
|
props: {
|
selectShenpiData: {
|
type: Object
|
}
|
},
|
data() {
|
return {
|
title: '操作',
|
visible: false,
|
editable: false,
|
model: {},
|
treeData: [],
|
labelCol: {
|
xs: { span: 24 },
|
sm: { span: 5 }
|
},
|
wrapperCol: {
|
xs: { span: 24 },
|
sm: { span: 18 }
|
},
|
labelColLong: {
|
xs: { span: 24 },
|
sm: { span: 2 }
|
},
|
wrapperColLong: {
|
xs: { span: 24 },
|
sm: { span: 21 }
|
},
|
confirmLoading: false,
|
spinning: false,
|
imageSrc: null,
|
validatorRules: {
|
approvalDealType: [
|
{ required: true, message: '请选择通过或驳回!' }
|
],
|
unsealApprovalDealType: [
|
{ required: true, message: '请选择通过或驳回!' }
|
],
|
approvalComment: [
|
{ required: true, message: '请输入审批意见!' }
|
],
|
unsealApprovalComment: [
|
{ required: true, message: '请输入审批意见!' }
|
],
|
returnComment: [
|
{ required: true, message: '请输入归还备注!' }
|
],
|
confirmComment: [
|
{ required: true, message: '请输入确认意见!' }
|
]
|
},
|
url: {
|
queryById: '/eam/eamEquipmentScrap/queryById',
|
approval: '/eam/eamEquipmentScrap/approval',
|
loadProductionOptions: '/mdc/mdcProduction/loadProductionTreeOptions'
|
},
|
disableSubmit: false
|
}
|
},
|
created() {
|
this.loadAllProductionTree()
|
},
|
computed: {
|
approvalDisable: function () {
|
return ['WAIT_SUBMIT', 'WAIT_CHECK', 'COMPLETE'].includes(this.model.scrapStatus)
|
}
|
},
|
methods: {
|
async handleDetail(item) {
|
this.initParams()
|
this.model = {}
|
let res = await getAction(this.url.queryById, { id: item.dataId })
|
this.model = Object.assign({}, res.result)
|
this.model.dataId = item.dataId
|
this.model.taskId = item.id
|
this.model.userId = item.assignee
|
this.model.instanceId = item.procInstId
|
this.model.values = item.variables
|
this.spinning = false
|
},
|
|
recordDetail(record) {
|
console.log('record', record)
|
this.initParams()
|
this.model = Object.assign({}, record)
|
},
|
|
initParams() {
|
this.visible = true
|
this.spinning = true
|
},
|
|
async handleOk() {
|
const that = this
|
// 触发表单验证
|
this.$refs.form.validate(valid => {
|
if (valid) {
|
that.confirmLoading = that.spinning = true
|
let httpurl = this.url.approval
|
let method = 'put'
|
httpAction(httpurl, this.model, method).then((res) => {
|
if (res.success) {
|
that.$message.success(res.message)
|
that.$emit('searchReset')
|
that.close()
|
} else {
|
that.$message.warning(res.message)
|
}
|
}).finally(() => {
|
that.confirmLoading = that.spinning = false
|
})
|
} else {
|
return false
|
}
|
})
|
},
|
handleCancel() {
|
this.close()
|
},
|
|
close() {
|
this.$emit('close')
|
this.visible = false
|
this.$refs.form.clearValidate()
|
},
|
loadAllProductionTree() {
|
//加载车间选择树
|
getAction(this.url.loadProductionOptions).then(res => {
|
if (res.success) {
|
this.treeData = [...res.result]
|
} else {
|
that.$message.warning(res.message)
|
}
|
})
|
}
|
}
|
}
|
</script>
|
|
<style lang='less' scoped>
|
</style>
|