import AntModal from '@/components/pt/dialog/AntModal' import { getSysShip, addSysShip, updateSysShip } from '@/api/system/sysShip' import { getAllSysWharf } from '@/api/system/sysWharf' export default { name: 'CreateForm', props: { statusOptions: { type: Array, required: true } }, components: { AntModal }, data () { return { open: false, closeDialog: true, spinning: false, delayTime: 100, labelCol: { span: 4 }, wrapperCol: { span: 14 }, loading: false, disabled: false, total: 0, id: undefined, formTitle: '添加船只管理', // 表单参数 wharfList: [], travelList: [ { id: '1', name: '由西向东(正向)' }, { id: '0', name: '由东向西(反向)' } ], form: {}, rules: { shipNum: [{ required: true, message: '船只编号不能为空', trigger: 'blur' }], shipNanme: [{ required: true, message: '船只名称不能为空', trigger: 'blur' }] } } }, filters: {}, created () { this._getAllSysWharf() }, computed: {}, watch: {}, mounted () {}, methods: { _getAllSysWharf() { getAllSysWharf().then(res => { this.wharfList = res.data }) }, onClose () { this.open = false this.reset() this.$emit('close') }, // 取消按钮 cancel () { this.open = false this.reset() this.$emit('close') }, // 表单重置 reset () { this.form = { id: undefined, shipNum: undefined, shipNanme: undefined, gpsDeviceNum: undefined, nuclearLoadNum: undefined, lat: undefined, lng: undefined, status: '0', wharf: undefined, travel: undefined } }, /** 新增按钮操作 */ handleAdd () { this.reset() this.open = true this.formTitle = '添加船只管理' }, /** 修改按钮操作 */ handleUpdate (row) { this.reset() this.open = true this.spinning = !this.spinning const sysShipId = row.id getSysShip(sysShipId).then(response => { this.form = response.data this.formTitle = '修改船只管理' this.spinning = !this.spinning }) }, /** 提交按钮 */ submitForm: function (closeDialog) { this.closeDialog = closeDialog this.disabled = true this.$refs.form.validate(valid => { if (valid) { const saveForm = JSON.parse(JSON.stringify(this.form)) if (this.form.id !== undefined) { updateSysShip(saveForm).then(response => { this.$message.success('更新成功', 3) this.open = false this.$emit('ok') this.$emit('close') this.disabled = false }) } else { addSysShip(saveForm).then(response => { this.$message.success('新增成功', 3) this.open = false this.$emit('ok') this.$emit('close') this.disabled = false }) } } else { this.disabled = false return false } }) }, back () { const index = '/system/sysship/index' this.$router.push(index) } } }