| | |
| | | <template> |
| | | <j-modal |
| | | :title="title" |
| | | :width="width" |
| | | :visible="visible" |
| | | switchFullscreen |
| | | @ok="handleOk" |
| | | :okButtonProps="{ class:{'jee-hidden': disableSubmit} }" |
| | | @cancel="handleCancel" |
| | | cancelText="关闭"> |
| | | <eam-report-accidents-register-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></eam-report-accidents-register-form> |
| | | <j-modal :title="title" :width="1200" :visible="visible" :confirmLoading="confirmLoading" switchFullscreen |
| | | @ok="handleOk" @cancel="handleCancel" cancelText="关闭"> |
| | | <a-spin :spinning="confirmLoading"> |
| | | <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelCol" :wrapperCol="wrapperCol"> |
| | | <a-row> |
| | | <a-col :span="customSpan"> |
| | | <a-form-model-item label="废品件号" prop="scrapPartNumber"> |
| | | <a-input placeholder="请输入废品件号" |
| | | v-model="model.scrapPartNumber"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="customSpan"> |
| | | <a-form-model-item label="废品件数" prop="scrapPartQuantity"> |
| | | <a-input-number placeholder="请输入废品件数" |
| | | v-model="model.scrapPartQuantity" :min="0" style="width: 100%"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="customSpan"> |
| | | <a-form-model-item label="废品价值" prop="scrapPartValue"> |
| | | <a-input-number placeholder="请输入废品价值" |
| | | v-model="model.scrapPartValue" style="width: 100%"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="customSpan"> |
| | | <a-form-model-item label="是否有设备操作证" prop="operationCertificate"> |
| | | <j-dict-select-tag dict-code="yn" type="radio" |
| | | placeholder="请选择是否有设备操作证" |
| | | v-model="model.operationCertificate"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="customSpan"> |
| | | <a-form-model-item label="是否断电重启" prop="powerOffRestart"> |
| | | <j-dict-select-tag dict-code="yn" type="radio" |
| | | placeholder="请选择是否断电重启" v-model="model.powerOffRestart"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="customSpan"> |
| | | <a-form-model-item label="是否为批次首件" prop="batchFirstPiece"> |
| | | <j-dict-select-tag dict-code="yn" type="radio" |
| | | placeholder="请选择是否为批次首件" |
| | | v-model="model.batchFirstPiece"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="customSpan"> |
| | | <a-form-model-item label="变动因素" prop="variableFactors"> |
| | | <j-dict-select-tag type="radio" dict-code="yn" |
| | | placeholder="请选择变动因素" v-model="model.variableFactors" |
| | | @change="handleRadioChange"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="customSpan" v-if="Boolean(+model.variableFactors)"> |
| | | <a-form-model-item label="变动因素内容" prop="variableFactorsValue"> |
| | | <j-dict-select-tag dict-code="variable_factors_value" |
| | | placeholder="请选择变动因素内容" v-model="model.variableFactorsValue"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="customSpan"> |
| | | <a-form-model-item label="执行程序"> |
| | | <a-input placeholder="请输入执行程序" v-model="model.executeNc"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="24"> |
| | | <a-form-model-item label="事故现象" prop="accidentPhenomenon" :labelCol="labelColLong" |
| | | :wrapperCol="wrapperColLong"> |
| | | <a-textarea placeholder="请输入事故现象" v-model="model.accidentPhenomenon"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="24"> |
| | | <a-form-model-item label="采取措施" prop="measure" :labelCol="labelColLong" :wrapperCol="wrapperColLong"> |
| | | <a-textarea placeholder="请输入采取措施" v-model="model.measure"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="24"> |
| | | <a-form-model-item label="造成结果" prop="causingResults" :labelCol="labelColLong" |
| | | :wrapperCol="wrapperColLong"> |
| | | <a-textarea placeholder="请输入造成结果" v-model="model.causingResults"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-row> |
| | | </a-form-model> |
| | | </a-spin> |
| | | </j-modal> |
| | | </template> |
| | | |
| | | <script> |
| | | import { httpAction } from '@/api/manage' |
| | | import moment from 'moment' |
| | | |
| | | import EamReportAccidentsRegisterForm from './EamReportAccidentsRegisterForm' |
| | | export default { |
| | | name: 'EamReportAccidentsRegisterModal', |
| | | components: { |
| | | EamReportAccidentsRegisterForm |
| | | }, |
| | | data () { |
| | | data() { |
| | | return { |
| | | title:'', |
| | | width:800, |
| | | title: '操作', |
| | | visible: false, |
| | | disableSubmit: false |
| | | customSpan: 8, |
| | | model: {}, |
| | | labelCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 9 } |
| | | }, |
| | | wrapperCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 12 } |
| | | }, |
| | | labelColLong: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 3 } |
| | | }, |
| | | wrapperColLong: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 20 } |
| | | }, |
| | | confirmLoading: false, |
| | | validatorRules: { |
| | | scrapPartNumber: [{ required: true, message: '请输入废品件号', trigger: 'change' }], |
| | | scrapPartQuantity: [{ required: true, message: '请输入废品件数', trigger: 'change' }], |
| | | scrapPartValue: [{ required: true, message: '请输入废品价值', trigger: 'change' }], |
| | | operationCertificate: [{ required: true, message: '请选择是否有设备操作证', trigger: 'change' }], |
| | | powerOffRestart: [{ required: true, message: '请选择是否断电重启', trigger: 'change' }], |
| | | batchFirstPiece: [{ required: true, message: '请选择是否为批次首件', trigger: 'change' }], |
| | | variableFactors: [{ required: true, message: '请选择变动因素', trigger: 'change' }], |
| | | variableFactorsValue: [{ |
| | | validator: this.variableFactorsValueValidator, |
| | | message: '请选择变动因素内容', |
| | | trigger: 'change' |
| | | }], |
| | | accidentPhenomenon: [{ required: true, message: '请输入事故现象', trigger: 'change' }], |
| | | measure: [{ required: true, message: '请输入采取措施', trigger: 'change' }], |
| | | causingResults: [{ required: true, message: '请输入造成结果', trigger: 'change' }] |
| | | }, |
| | | url: { |
| | | add: '/eam/eamReportAccidentsRegister/add', |
| | | edit: '/eam/eamReportAccidentsRegister/edit' |
| | | } |
| | | } |
| | | }, |
| | | created() { |
| | | }, |
| | | methods: { |
| | | add () { |
| | | this.visible=true |
| | | this.$nextTick(()=>{ |
| | | this.$refs.realForm.add(); |
| | | add() { |
| | | //初始化默认值 |
| | | this.edit({}) |
| | | }, |
| | | |
| | | edit(record) { |
| | | this.model = Object.assign({}, record) |
| | | this.visible = true |
| | | }, |
| | | |
| | | handleOk() { |
| | | const that = this |
| | | // 触发表单验证 |
| | | this.$refs.form.validate(valid => { |
| | | if (valid) { |
| | | that.confirmLoading = true |
| | | let httpurl = '' |
| | | let method = '' |
| | | if (!this.model.id) { |
| | | httpurl += this.url.add |
| | | method = 'post' |
| | | } else { |
| | | httpurl += this.url.edit |
| | | method = 'put' |
| | | } |
| | | httpAction(httpurl, this.model, method).then((res) => { |
| | | if (res.success) { |
| | | that.$message.success(res.message) |
| | | that.$emit('ok') |
| | | } else { |
| | | that.$message.warning(res.message) |
| | | } |
| | | }).finally(() => { |
| | | that.confirmLoading = false |
| | | that.close() |
| | | }) |
| | | } else { |
| | | return false |
| | | } |
| | | }) |
| | | }, |
| | | edit (record) { |
| | | this.visible=true |
| | | this.$nextTick(()=>{ |
| | | this.$refs.realForm.edit(record); |
| | | }) |
| | | |
| | | /**\ |
| | | * 单选框值发生改变时触发 |
| | | * @param value 单选框值 |
| | | * @param key 单选框关联字段 |
| | | */ |
| | | handleRadioChange(value, key) { |
| | | if (value !== '1') delete this.model.variableFactorsValue |
| | | }, |
| | | close () { |
| | | this.$emit('close'); |
| | | this.visible = false; |
| | | |
| | | /** |
| | | * 变动因素内容校验 |
| | | * @param rule |
| | | * @param value 变动因素内容字段值 |
| | | * @param callback 结果回调函数 |
| | | */ |
| | | variableFactorsValueValidator(rule, value, callback) { |
| | | if (this.model.variableFactors === '1') { |
| | | if (!value) { |
| | | callback(new Error()) |
| | | } else { |
| | | callback() |
| | | } |
| | | } else { |
| | | callback() |
| | | } |
| | | }, |
| | | handleOk () { |
| | | this.$refs.realForm.submitForm(); |
| | | }, |
| | | submitCallback(){ |
| | | this.$emit('ok'); |
| | | this.visible = false; |
| | | }, |
| | | handleCancel () { |
| | | |
| | | handleCancel() { |
| | | this.close() |
| | | }, |
| | | |
| | | close() { |
| | | this.$emit('close') |
| | | this.visible = false |
| | | this.$refs.form.clearValidate() |
| | | } |
| | | } |
| | | } |