Bladeren bron

变更令

ZaiZai 1 jaar geleden
bovenliggende
commit
5dee7443c0
1 gewijzigde bestanden met toevoegingen van 32 en 6 verwijderingen
  1. 32 6
      src/views/alter/admin/components/order/addModal.vue

+ 32 - 6
src/views/alter/admin/components/order/addModal.vue

@@ -165,7 +165,7 @@
 import { nextTick, ref, watch } from 'vue'
 import { useAppStore } from '~src/store'
 import { getDictionaryData } from '~uti/tools'
-import { arrToKey, deepClone, getArrValue, getObjValue, isArray, isNullES } from 'js-fast-way'
+import { arrToKey, formValidate, getArrValue, getObjValue, isArray, isNullES } from 'js-fast-way'
 import ChangeRequest from './changeRequest.vue'
 import unitApi from '~api/project/debit/contract/unit'
 import mainApi from '~api/alter/admin/order'
@@ -261,7 +261,7 @@ const treeNodeCheck = (_, { checkedKeys }) => {
 
 //基础表单
 const baseFormRef = ref(null)
-const baseForm = ref({})
+const baseForm = ref({ fileList: [] })
 const baseFormRules = {
     changeNumber: {
         required: true,
@@ -431,16 +431,42 @@ const uploadFileSuccess = ({ resData }) => {
     uploadFileRef.value?.setModalShow(false)
 }
 
-
 //保存
-const addModalSave = () => {
-    emit('finish')
-    addModalClose()
+const addModalSave = async () => {
+    const isValidate = await formValidate(baseFormRef.value)
+    if (!isValidate) return false
+    const form = baseForm.value, table = tableData.value
+    if (table.length <= 0) {
+        window.$message.warning('请先添加变更申请部位')
+        return false
+    }
+    form.nodeList = table
+    form.projectId = projectId.value
+    form.contractId = contractId.value
+    //发起请求
+    let res = {}
+    if (isNullES(dataId.value)) {
+        //新增
+        res = await mainApi.add(form)
+    } else {
+        //修改
+        res = await mainApi.edit(form)
+    }
+    //处理数据
+    const { code, msg } = res
+    if (code === 200) {
+        window.$message.success('保存成功')
+        addModalClose()
+        emit('finish')
+    } else {
+        window.$message.error(msg ?? '保存失败')
+    }
 }
 
 //关闭弹窗
 const addModalClose = () => {
     isShow.value = false
+    baseForm.value = { fileList: [] }
     emit('close')
 }
 </script>