|
@@ -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>
|