|
@@ -33,7 +33,7 @@
|
|
|
<el-form-item label="节点编码:">
|
|
|
<el-input v-model="formModel.nodeCode" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="节点名称:">
|
|
|
+ <el-form-item label="节点名称:" prop="nodeName">
|
|
|
<el-input v-model="formModel.nodeName" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="节点类型:">
|
|
@@ -83,7 +83,7 @@
|
|
|
|
|
|
<script setup>
|
|
|
import { nextTick, onMounted, ref, watch } from 'vue'
|
|
|
-import { arrToId, getArrValue, getObjVal, getObjValue, getRandom } from 'js-fast-way'
|
|
|
+import { arrToId, formValidate, getArrValue, getObjValue, getRandom } from 'js-fast-way'
|
|
|
import unitApi from '~api/project/debit/project/unit.js'
|
|
|
import { useAppStore } from '~src/store'
|
|
|
import { getStoreValue, setStoreValue } from '~src/utils/storage'
|
|
@@ -275,12 +275,20 @@ const treeModalTitle = ref('')
|
|
|
//弹窗表单
|
|
|
const formRef = ref(null)
|
|
|
const formModel = ref({})
|
|
|
-const formRules = ref({})
|
|
|
+const formRules = ref({
|
|
|
+ nodeName: {
|
|
|
+ required: true,
|
|
|
+ trigger: 'blur',
|
|
|
+ message: '请输入节点名称',
|
|
|
+ },
|
|
|
+})
|
|
|
|
|
|
//弹窗保存
|
|
|
const addNodeLoading = ref(false)
|
|
|
const treeModalSave = async () => {
|
|
|
if (menuType.value === 'edit') {
|
|
|
+ const isValidate = await formValidate(formRef.value)
|
|
|
+ if (!isValidate) return false
|
|
|
const { error, code } = await unitApi.updateForm({
|
|
|
...formModel.value,
|
|
|
|
|
@@ -294,6 +302,8 @@ const treeModalSave = async () => {
|
|
|
}
|
|
|
}
|
|
|
if (menuType.value === 'add') {
|
|
|
+ const isValidate = await formValidate(formRef.value)
|
|
|
+ if (!isValidate) return false
|
|
|
const { error, code } = await unitApi.addNode({
|
|
|
...formModel.value,
|
|
|
|