|
|
@@ -1,49 +1,77 @@
|
|
|
<!-- 用户编辑弹窗 -->
|
|
|
<template>
|
|
|
- <ele-modal width="60%" :visible="visible" :append-to-body="true" :close-on-click-modal="true"
|
|
|
- custom-class="ele-dialog-form" :title="isUpdate ? '修改干燥区' : '新增干燥区'" @update:visible="updateVisible">
|
|
|
+ <ele-modal
|
|
|
+ width="60%"
|
|
|
+ :visible="visible"
|
|
|
+ :append-to-body="true"
|
|
|
+ :close-on-click-modal="true"
|
|
|
+ custom-class="ele-dialog-form"
|
|
|
+ :title="isUpdate ? '修改干燥区' : '新增干燥区'"
|
|
|
+ @update:visible="updateVisible"
|
|
|
+ >
|
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
|
|
|
-
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="干燥区编码:" prop="code">
|
|
|
- <el-input clearable :disabled="true" v-model="form.code" placeholder="干燥区编码" />
|
|
|
+ <el-input
|
|
|
+ clearable
|
|
|
+ :disabled="true"
|
|
|
+ v-model="form.code"
|
|
|
+ placeholder="干燥区编码"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="干燥区名称:" prop="name">
|
|
|
- <el-input clearable v-model="form.name" placeholder="请输入干燥区名称" />
|
|
|
+ <el-input
|
|
|
+ clearable
|
|
|
+ v-model="form.name"
|
|
|
+ placeholder="请输入干燥区名称"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="分类:" prop="categoryLevelName">
|
|
|
- <el-input v-model="form.categoryLevelName" @click.native="openCategory" readonly />
|
|
|
+ <el-input
|
|
|
+ v-model="form.categoryLevelName"
|
|
|
+ @click.native="openCategory"
|
|
|
+ readonly
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
-
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="状态:" prop="status">
|
|
|
- <DictSelection dictName="台账状态" clearable v-model="form.status">
|
|
|
+ <DictSelection
|
|
|
+ dictName="干燥区状态"
|
|
|
+ clearable
|
|
|
+ v-model="form.status"
|
|
|
+ >
|
|
|
</DictSelection>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="规格:" prop="specification">
|
|
|
- <el-input clearable v-model="form.specification" placeholder="请输入规格" />
|
|
|
+ <el-input
|
|
|
+ clearable
|
|
|
+ v-model="form.specification"
|
|
|
+ placeholder="请输入规格"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
-
|
|
|
<el-col :span="24">
|
|
|
<el-form-item label="位置:" prop="region">
|
|
|
- <el-input clearable v-model="form.region" placeholder="请输入位置" />
|
|
|
+ <el-input
|
|
|
+ clearable
|
|
|
+ v-model="form.region"
|
|
|
+ placeholder="请输入位置"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
-
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
<template v-slot:footer>
|
|
|
@@ -53,146 +81,134 @@
|
|
|
</el-button>
|
|
|
</template>
|
|
|
|
|
|
-
|
|
|
- <CategoryDialog ref="categoryRefs" @chooseCategory="changeCategory"></CategoryDialog>
|
|
|
+ <CategoryDialog
|
|
|
+ ref="categoryRefs"
|
|
|
+ @chooseCategory="changeCategory"
|
|
|
+ ></CategoryDialog>
|
|
|
</ele-modal>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+ import CategoryDialog from './CategoryDialog.vue';
|
|
|
+ import { getCode } from '@/api/codeManagement/index.js';
|
|
|
+ import { save, update } from '@/api/ledgerAssets/dryArea';
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-import CategoryDialog from './CategoryDialog.vue'
|
|
|
-import { getCode } from '@/api/codeManagement/index.js';
|
|
|
-import { save, update } from '@/api/ledgerAssets/dryArea';
|
|
|
-
|
|
|
-export default {
|
|
|
- components: {
|
|
|
- CategoryDialog
|
|
|
- },
|
|
|
- props: {
|
|
|
- // 弹窗是否打开
|
|
|
- visible: Boolean,
|
|
|
- // 修改回显的数据
|
|
|
- data: Object,
|
|
|
- rootId: [Number, String],
|
|
|
- },
|
|
|
- data() {
|
|
|
- const defaultForm = {
|
|
|
- code: '',
|
|
|
- name: '',
|
|
|
- categoryLevelName: '',
|
|
|
- categoryLevelId: '',
|
|
|
- status: '',
|
|
|
- region: '',
|
|
|
- specification: ''
|
|
|
- };
|
|
|
- return {
|
|
|
- defaultForm,
|
|
|
- // 表单数据
|
|
|
- form: { ...defaultForm },
|
|
|
- // 表单验证规则
|
|
|
- rules: {
|
|
|
- name: [
|
|
|
- { required: true, message: '请输入干燥区名称', trigger: 'blur' }
|
|
|
- ],
|
|
|
- categoryLevelName: [
|
|
|
- { required: true, message: '请选择分类', trigger: 'change' }
|
|
|
- ],
|
|
|
-
|
|
|
- status: [
|
|
|
- { required: true, message: '请选择状态', trigger: 'change' }
|
|
|
- ],
|
|
|
-
|
|
|
-
|
|
|
- region: [
|
|
|
- { required: true, message: '请输入位置', trigger: 'blur' }
|
|
|
- ],
|
|
|
-
|
|
|
-
|
|
|
- },
|
|
|
- // 提交状态
|
|
|
- loading: false,
|
|
|
- // 是否是修改
|
|
|
- isUpdate: false
|
|
|
- };
|
|
|
- },
|
|
|
-
|
|
|
-
|
|
|
- computed: {
|
|
|
- // 是否开启响应式布局
|
|
|
- styleResponsive() {
|
|
|
- return this.$store.state.theme.styleResponsive;
|
|
|
- }
|
|
|
- },
|
|
|
- methods: {
|
|
|
- /* 保存编辑 */
|
|
|
- save() {
|
|
|
- this.$refs.form.validate((valid) => {
|
|
|
- if (!valid) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- this.loading = true;
|
|
|
- if (!this.isUpdate) {
|
|
|
- delete this.form.id;
|
|
|
- }
|
|
|
- const data = {
|
|
|
- ...this.form
|
|
|
- };
|
|
|
- const saveOrUpdate = this.isUpdate ? update : save;
|
|
|
- saveOrUpdate(data)
|
|
|
- .then((msg) => {
|
|
|
- this.loading = false;
|
|
|
- this.$message.success(msg);
|
|
|
- this.updateVisible(false);
|
|
|
- this.$emit('done');
|
|
|
- })
|
|
|
- .catch((e) => {
|
|
|
- this.loading = false;
|
|
|
-
|
|
|
- });
|
|
|
- });
|
|
|
+ export default {
|
|
|
+ components: {
|
|
|
+ CategoryDialog
|
|
|
},
|
|
|
- /* 更新visible */
|
|
|
- updateVisible(value) {
|
|
|
- this.$emit('update:visible', value);
|
|
|
+ props: {
|
|
|
+ // 弹窗是否打开
|
|
|
+ visible: Boolean,
|
|
|
+ // 修改回显的数据
|
|
|
+ data: Object,
|
|
|
+ rootId: [Number, String]
|
|
|
},
|
|
|
-
|
|
|
- openCategory() {
|
|
|
- this.$refs.categoryRefs.open(this.rootId, '选择分类')
|
|
|
+ data() {
|
|
|
+ const defaultForm = {
|
|
|
+ code: '',
|
|
|
+ name: '',
|
|
|
+ categoryLevelName: '',
|
|
|
+ categoryLevelId: '',
|
|
|
+ status: '',
|
|
|
+ region: '',
|
|
|
+ specification: ''
|
|
|
+ };
|
|
|
+ return {
|
|
|
+ defaultForm,
|
|
|
+ // 表单数据
|
|
|
+ form: { ...defaultForm },
|
|
|
+ // 表单验证规则
|
|
|
+ rules: {
|
|
|
+ name: [
|
|
|
+ { required: true, message: '请输入干燥区名称', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ categoryLevelName: [
|
|
|
+ { required: true, message: '请选择分类', trigger: 'change' }
|
|
|
+ ],
|
|
|
+
|
|
|
+ status: [
|
|
|
+ { required: true, message: '请选择状态', trigger: 'change' }
|
|
|
+ ],
|
|
|
+
|
|
|
+ region: [{ required: true, message: '请输入位置', trigger: 'blur' }]
|
|
|
+ },
|
|
|
+ // 提交状态
|
|
|
+ loading: false,
|
|
|
+ // 是否是修改
|
|
|
+ isUpdate: false
|
|
|
+ };
|
|
|
},
|
|
|
|
|
|
-
|
|
|
- changeCategory(row) {
|
|
|
- this.$set(this.form, 'categoryLevelName', row.name)
|
|
|
- this.$set(this.form, 'categoryLevelId', row.id)
|
|
|
+ computed: {
|
|
|
+ // 是否开启响应式布局
|
|
|
+ styleResponsive() {
|
|
|
+ return this.$store.state.theme.styleResponsive;
|
|
|
+ }
|
|
|
},
|
|
|
+ methods: {
|
|
|
+ /* 保存编辑 */
|
|
|
+ save() {
|
|
|
+ this.$refs.form.validate((valid) => {
|
|
|
+ if (!valid) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ this.loading = true;
|
|
|
+ if (!this.isUpdate) {
|
|
|
+ delete this.form.id;
|
|
|
+ }
|
|
|
+ const data = {
|
|
|
+ ...this.form
|
|
|
+ };
|
|
|
+ const saveOrUpdate = this.isUpdate ? update : save;
|
|
|
+ saveOrUpdate(data)
|
|
|
+ .then((msg) => {
|
|
|
+ this.loading = false;
|
|
|
+ this.$message.success(msg);
|
|
|
+ this.updateVisible(false);
|
|
|
+ this.$emit('done');
|
|
|
+ })
|
|
|
+ .catch((e) => {
|
|
|
+ this.loading = false;
|
|
|
+ });
|
|
|
+ });
|
|
|
+ },
|
|
|
+ /* 更新visible */
|
|
|
+ updateVisible(value) {
|
|
|
+ this.$emit('update:visible', value);
|
|
|
+ },
|
|
|
|
|
|
+ openCategory() {
|
|
|
+ this.$refs.categoryRefs.open(this.rootId, '选择分类');
|
|
|
+ },
|
|
|
|
|
|
- async _getCode() {
|
|
|
- const code = await getCode('dryArea');
|
|
|
- this.form.code = code;
|
|
|
- },
|
|
|
-
|
|
|
+ changeCategory(row) {
|
|
|
+ this.$set(this.form, 'categoryLevelName', row.name);
|
|
|
+ this.$set(this.form, 'categoryLevelId', row.id);
|
|
|
+ },
|
|
|
|
|
|
- },
|
|
|
- watch: {
|
|
|
- visible(visible) {
|
|
|
- if (visible) {
|
|
|
- if (this.data) {
|
|
|
- this.$util.assignObject(this.form, {
|
|
|
- ...this.data,
|
|
|
- });
|
|
|
- this.isUpdate = true;
|
|
|
+ async _getCode() {
|
|
|
+ const code = await getCode('dryArea');
|
|
|
+ this.form.code = code;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ visible(visible) {
|
|
|
+ if (visible) {
|
|
|
+ if (this.data) {
|
|
|
+ this.$util.assignObject(this.form, {
|
|
|
+ ...this.data
|
|
|
+ });
|
|
|
+ this.isUpdate = true;
|
|
|
+ } else {
|
|
|
+ this.isUpdate = false;
|
|
|
+ this._getCode();
|
|
|
+ }
|
|
|
} else {
|
|
|
- this.isUpdate = false;
|
|
|
- this._getCode();
|
|
|
+ this.$refs.form.clearValidate();
|
|
|
+ this.form = { ...this.defaultForm };
|
|
|
}
|
|
|
- } else {
|
|
|
- this.$refs.form.clearValidate();
|
|
|
- this.form = { ...this.defaultForm };
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
-};
|
|
|
+ };
|
|
|
</script>
|