|
@@ -1,217 +1,141 @@
|
|
|
<template>
|
|
|
<a-card :bordered="false" :title="modalTitle" v-show="visible">
|
|
|
- <a-row :gutter="48" slot="extra">
|
|
|
- <a-col :md="48" :sm="48">
|
|
|
- <span class="table-page-search-submitButtons" style="float: right" >
|
|
|
-<!-- <a-button style="margin-left: 8px" type="primary" @click="finish()">完成</a-button>-->
|
|
|
- <a-button style="margin-left: 8px" type="primary" @click="save()">保存</a-button>
|
|
|
- <a-button style="margin-left: 8px" @click="handleCancel()">返回</a-button>
|
|
|
- </span>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <title-divider title="基本信息" width="90px"></title-divider>
|
|
|
- <a-form :form="form">
|
|
|
- <a-form-item v-show="false" >
|
|
|
- <a-input v-decorator="['id']" type="hidden"/>
|
|
|
- <a-input v-decorator="['sbId']" type="hidden"/>
|
|
|
- <a-input v-decorator="['repairId']" type="hidden"/>
|
|
|
- </a-form-item>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="12" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="编号"
|
|
|
- :labelCol="BaseTool.Constant.labelCol"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol">
|
|
|
- <a-input
|
|
|
- disabled="disabled"
|
|
|
- v-decorator="['no']"
|
|
|
- />
|
|
|
- </a-form-item>
|
|
|
+ <div v-show="visible2">
|
|
|
+ <a-row :gutter="48" slot="extra">
|
|
|
+ <a-col :md="48" :sm="48">
|
|
|
+ <span class="table-page-search-submitButtons" style="float: right" >
|
|
|
+ <!-- <a-button style="margin-left: 8px" type="primary" @click="finish()">完成</a-button>-->
|
|
|
+ <a-button style="margin-left: 8px" type="primary" @click="save()">保存</a-button>
|
|
|
+ <a-button style="margin-left: 8px" @click="handleCancel()">返回</a-button>
|
|
|
+ </span>
|
|
|
</a-col>
|
|
|
</a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="12" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="分析时间"
|
|
|
- :labelCol="BaseTool.Constant.labelCol"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol"
|
|
|
- >
|
|
|
- <a-date-picker
|
|
|
- style="width: 100%"
|
|
|
- v-decorator="['analyzeTime', {rules: [{required: true, message: '分析时间不能为空'}]}]"
|
|
|
- :format="BaseTool.Date.PICKER_NORM_DATE_PATTERN" />
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="24" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="故障现象"
|
|
|
- :labelCol="BaseTool.Constant.labelCol2"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol2">
|
|
|
- <a-textarea
|
|
|
- :auto-size="{ minRows: 5 }"
|
|
|
- v-decorator="['problemDesc', {rules: [{required: true, message: '分析时间不能为空'}]}]"
|
|
|
- />
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="24" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- :labelCol="BaseTool.Constant.labelCol2"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
- label="检查处理过程"
|
|
|
- >
|
|
|
- <a-textarea
|
|
|
- :auto-size="{ minRows: 5 }"
|
|
|
- v-decorator="['checkProcess', {rules: [{required: true, message: '检查处理过程不能为空'}]}]"/>
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="24" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- :labelCol="BaseTool.Constant.labelCol2"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
- label="原因分析">
|
|
|
- <a-textarea
|
|
|
- :auto-size="{ minRows: 5 }"
|
|
|
- v-decorator="['reasonAnalysis', {rules: [{required: true, message: '原因分析不能为空'}]}]" />
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <title-divider title="改进措施" width="90px"></title-divider>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="12" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="更新维修计划"
|
|
|
- :labelCol="BaseTool.Constant.labelCol"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol">
|
|
|
- <a-checkbox :checked="changeRepairPlan" v-model="changeRepairPlan"></a-checkbox>
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="24" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="内容"
|
|
|
- v-show="changeRepairPlan"
|
|
|
- :labelCol="BaseTool.Constant.labelCol2"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
- >
|
|
|
- <a-textarea
|
|
|
- :auto-size="{ minRows: 5 }"
|
|
|
- v-decorator="['changeRepairPlanContent']" />
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="12" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="更新备件计划"
|
|
|
- :labelCol="BaseTool.Constant.labelCol"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol">
|
|
|
- <a-checkbox :checked="changeSparePlan" v-model="changeSparePlan"></a-checkbox>
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="24" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="内容"
|
|
|
- v-show="changeSparePlan"
|
|
|
- :labelCol="BaseTool.Constant.labelCol2"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
- >
|
|
|
- <a-textarea
|
|
|
- :auto-size="{ minRows: 5 }"
|
|
|
- v-decorator="['changeSparePlanContent']" />
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="12" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="人员培训"
|
|
|
- :labelCol="BaseTool.Constant.labelCol"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol">
|
|
|
- <a-checkbox :checked="userTeach" v-model="userTeach"></a-checkbox>
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="24" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="内容"
|
|
|
- v-show="userTeach"
|
|
|
- :labelCol="BaseTool.Constant.labelCol2"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
- >
|
|
|
- <a-textarea
|
|
|
- :auto-size="{ minRows: 5 }"
|
|
|
- v-decorator="['userTeachContent']" />
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="12" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="设备改造升级"
|
|
|
- :labelCol="BaseTool.Constant.labelCol"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol">
|
|
|
- <a-checkbox :checked="sbChange" v-model="sbChange"></a-checkbox>
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="24" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="内容"
|
|
|
- v-show="sbChange"
|
|
|
- :labelCol="BaseTool.Constant.labelCol2"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
- >
|
|
|
- <a-textarea
|
|
|
- :auto-size="{ minRows: 5 }"
|
|
|
- v-decorator="['sbChangeContent']" />
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="12" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="其他"
|
|
|
- :labelCol="BaseTool.Constant.labelCol"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol">
|
|
|
- <a-checkbox :checked="otherChange" v-model="otherChange"></a-checkbox>
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
- <a-col :lg="24" :md="24" :sm="24">
|
|
|
- <a-form-item
|
|
|
- label="内容"
|
|
|
- v-show="otherChange"
|
|
|
- :labelCol="BaseTool.Constant.labelCol2"
|
|
|
- :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
- >
|
|
|
- <a-textarea
|
|
|
- :auto-size="{ minRows: 5 }"
|
|
|
- v-decorator="['otherChangeContent']" />
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
- </a-row>
|
|
|
- </a-form>
|
|
|
+ <title-divider title="基本信息" width="90px"></title-divider>
|
|
|
+ <a-form :form="form">
|
|
|
+ <a-form-item v-show="false" >
|
|
|
+ <a-input v-decorator="['id']" type="hidden"/>
|
|
|
+ <a-input v-decorator="['sbId']" type="hidden"/>
|
|
|
+ <a-input v-decorator="['repairId']" type="hidden"/>
|
|
|
+ </a-form-item>
|
|
|
+ <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
+ <a-col :lg="12" :md="24" :sm="24">
|
|
|
+ <a-form-item
|
|
|
+ label="编号"
|
|
|
+ :labelCol="BaseTool.Constant.labelCol"
|
|
|
+ :wrapperCol="BaseTool.Constant.wrapperCol">
|
|
|
+ <a-input
|
|
|
+ disabled="disabled"
|
|
|
+ v-decorator="['no']"
|
|
|
+ />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
+ <a-col :lg="12" :md="24" :sm="24">
|
|
|
+ <a-form-item
|
|
|
+ label="分析时间"
|
|
|
+ :labelCol="BaseTool.Constant.labelCol"
|
|
|
+ :wrapperCol="BaseTool.Constant.wrapperCol"
|
|
|
+ >
|
|
|
+ <a-date-picker
|
|
|
+ style="width: 100%"
|
|
|
+ v-decorator="['analyzeTime', {rules: [{required: true, message: '分析时间不能为空'}]}]"
|
|
|
+ :format="BaseTool.Date.PICKER_NORM_DATE_PATTERN" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
+ <a-col :lg="24" :md="24" :sm="24">
|
|
|
+ <a-form-item
|
|
|
+ label="故障现象"
|
|
|
+ :labelCol="BaseTool.Constant.labelCol2"
|
|
|
+ :wrapperCol="BaseTool.Constant.wrapperCol2">
|
|
|
+ <a-textarea
|
|
|
+ :auto-size="{ minRows: 5 }"
|
|
|
+ v-decorator="['problemDesc', {rules: [{required: true, message: '分析时间不能为空'}]}]"
|
|
|
+ />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
+ <a-col :lg="24" :md="24" :sm="24">
|
|
|
+ <a-form-item
|
|
|
+ :labelCol="BaseTool.Constant.labelCol2"
|
|
|
+ :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
+ label="检查处理过程"
|
|
|
+ >
|
|
|
+ <a-textarea
|
|
|
+ :auto-size="{ minRows: 5 }"
|
|
|
+ v-decorator="['checkProcess', {rules: [{required: true, message: '检查处理过程不能为空'}]}]"/>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
+ <a-col :lg="24" :md="24" :sm="24">
|
|
|
+ <a-form-item
|
|
|
+ :labelCol="BaseTool.Constant.labelCol2"
|
|
|
+ :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
+ label="原因分析">
|
|
|
+ <a-textarea
|
|
|
+ :auto-size="{ minRows: 5 }"
|
|
|
+ v-decorator="['reasonAnalysis', {rules: [{required: true, message: '原因分析不能为空'}]}]" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ <title-divider title="改进措施" width="90px"></title-divider>
|
|
|
+ <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
+ <a-col :lg="24" :md="24" :sm="24">
|
|
|
+ <a-form-item
|
|
|
+ label="改进类别1"
|
|
|
+ :labelCol="BaseTool.Constant.labelCol2"
|
|
|
+ :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
+ >
|
|
|
+ <a-select @change="changeType" style="width: 70%" v-decorator="['type', {rules: [{required: true, message: '改进类别不能为空'}]}]" placeholder="请选择">
|
|
|
+ <a-select-option
|
|
|
+ v-for="(label,value) in typeMap"
|
|
|
+ :key="value"
|
|
|
+ :label="label"
|
|
|
+ :value="parseInt(value)">{{ label }}
|
|
|
+ </a-select-option>
|
|
|
+ </a-select>
|
|
|
+ <a-button v-show="type==1" style="margin-left: 10px" @ok="handleOk" @click="handleViewCheck()" type="default" >保养项目完善</a-button>
|
|
|
+ <a-button v-show="type==2" style="margin-left: 10px" type="default" @ok="handleOk" @click="handleViewBom()">备件bom完善</a-button>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ <a-row class="form-row" :gutter="BaseTool.Constant.row.gutter">
|
|
|
+ <a-col :lg="24" :md="24" :sm="24">
|
|
|
+ <a-form-item
|
|
|
+ label="改进内容"
|
|
|
+ :labelCol="BaseTool.Constant.labelCol2"
|
|
|
+ :wrapperCol="BaseTool.Constant.wrapperCol2"
|
|
|
+ >
|
|
|
+ <a-textarea
|
|
|
+ :auto-size="{ minRows: 5 }"
|
|
|
+ v-decorator="['changeRepairPlanContent']" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ </a-form>
|
|
|
+ </div>
|
|
|
+ <detail-sb-check ref="detailSbCheckModal" @ok="handleOk"/>
|
|
|
+ <detail-sb-bom ref="detailSbBomModal" @ok="handleOk"/>
|
|
|
</a-card>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import { addRepairReason, updateRepairReason, finishRepairReason } from '@/api/repair/repair-reason'
|
|
|
import pick from 'lodash.pick'
|
|
|
+import DetailSbBom from '@/views/sb/modelbom/modules/DetailSbBom'
|
|
|
+import DetailSbCheck from '@/views/check/checkstandard/modules/DetailSbCheck'
|
|
|
+import { fetchSbInfo } from '@/api/sb/info'
|
|
|
|
|
|
export default {
|
|
|
name: 'BaseRepairReason',
|
|
|
+ components: {
|
|
|
+ DetailSbCheck,
|
|
|
+ DetailSbBom
|
|
|
+ },
|
|
|
data () {
|
|
|
return {
|
|
|
confirmLoading: false,
|
|
@@ -224,8 +148,12 @@ export default {
|
|
|
otherChange: false,
|
|
|
addFlag: false,
|
|
|
statusMap: {},
|
|
|
+ typeMap: {},
|
|
|
+ type: 0,
|
|
|
form: this.$form.createForm(this),
|
|
|
- visible: false
|
|
|
+ visible: false,
|
|
|
+ visible2: false,
|
|
|
+ model: null
|
|
|
// 下拉框map
|
|
|
}
|
|
|
},
|
|
@@ -233,11 +161,18 @@ export default {
|
|
|
created () {
|
|
|
// 下拉框map
|
|
|
this.statusMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.REPAIR_REASON_STATUS)
|
|
|
+ this.typeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.REPAIR_REASON_TYPE)
|
|
|
},
|
|
|
methods: {
|
|
|
+ changeType (value) {
|
|
|
+ console.log(this.type)
|
|
|
+ this.type = value
|
|
|
+ },
|
|
|
base (record, repairForm = {}) {
|
|
|
this.visible = true
|
|
|
+ this.visible2 = true
|
|
|
this.currentTab = 0
|
|
|
+ this.model = repairForm
|
|
|
const { form: { setFieldsValue } } = this
|
|
|
// 如果是空标识添加
|
|
|
if (this.BaseTool.Object.isBlank(record)) {
|
|
@@ -355,8 +290,24 @@ export default {
|
|
|
this.confirmLoading = false
|
|
|
this.form.resetFields()
|
|
|
this.$emit('ok', values)
|
|
|
+ },
|
|
|
+ handleOk (values) {
|
|
|
+ this.visible2 = true
|
|
|
+ },
|
|
|
+ handleViewCheck () {
|
|
|
+ this.visible2 = false
|
|
|
+ fetchSbInfo({ id: this.model.sbId }).then(res => {
|
|
|
+ const modal = this.$refs.detailSbCheckModal
|
|
|
+ modal.base(res.data)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handleViewBom (record) {
|
|
|
+ this.visible2 = false
|
|
|
+ fetchSbInfo({ id: this.model.sbId }).then(res => {
|
|
|
+ const modal = this.$refs.detailSbBomModal
|
|
|
+ modal.base(res.data)
|
|
|
+ })
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
}
|
|
|
</script>
|