|
@@ -89,17 +89,32 @@
|
|
|
</el-form>
|
|
|
</HcDialog>
|
|
|
|
|
|
+ <!--复制节点-->
|
|
|
<!--复制节点-->
|
|
|
<HcDialog :show="copyNodeModal" title="复制节点" :widths="copyNodeTabKey === '1'?'600px':'1200px'" @close="copyNodeModal = false">
|
|
|
<el-form ref="formCopyNodeModelRef" :model="formCopyNodeModel" :rules="formCopyNodeModelRules" label-width="auto" size="large" v-if="copyNodeTabKey !== '3'">
|
|
|
<el-form-item label="节点名称" prop="title" style="margin-bottom: 0;">
|
|
|
<el-input v-model="formCopyNodeModel.title" placeholder="请输入节点名称"/>
|
|
|
</el-form-item>
|
|
|
+ <el-form-item label="划分编号" prop="partitionCode" style="margin-top: 10px;" v-if="copyNodeTabKey === '1'">
|
|
|
+ <el-input v-model="formCopyNodeModel.partitionCode" placeholder="请输入划分编号"/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+
|
|
|
+ <el-form ref="formCopyNodeModelRef" :model="formCopyNodeModel" :rules="formCopyNodeModelRules" label-width="auto" size="large" v-if="copyNodeTabKey === '3'">
|
|
|
+ <el-form-item label="所属方" prop="classify" style="margin-bottom: 0;">
|
|
|
+ <!-- <el-input v-model="formCopyNodeModel.classify" placeholder="请输入节点名称"/> -->
|
|
|
+ <el-checkbox-group v-model="classifyList">
|
|
|
+ <el-checkbox label="施工" />
|
|
|
+ <el-checkbox label="监理" />
|
|
|
+ </el-checkbox-group>
|
|
|
+ </el-form-item>
|
|
|
</el-form>
|
|
|
<div class="copy-node-many-box" v-if="copyNodeTabKey !== '1'">
|
|
|
+
|
|
|
<div class="copy-node-many-tree">
|
|
|
<el-scrollbar>
|
|
|
- <WbsTree :autoExpandKeys="treeAutoExpandKeys" :projectId="projectId" :contractId="contractId" idPrefix="tree-node-copy-" :isAutoClick="false" :isAutoKeys="false" @nodeTap="copyNodeElTreeClick"/>
|
|
|
+ <WbsTree :autoExpandKeys="TreeAutoExpandKeys" :projectId="projectId" :contractId="contractId" idPrefix="tree-node-copy-" :isAutoClick="false" :isAutoKeys="false" @nodeTap="copyNodeElTreeClick"/>
|
|
|
</el-scrollbar>
|
|
|
</div>
|
|
|
<div class="copy-node-many-table">
|
|
@@ -115,6 +130,15 @@
|
|
|
</el-form>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
+ <el-table-column prop="nodeName" label="划分编号" v-if="copyNodeTabKey === '2'">
|
|
|
+ <template #default="{row}">
|
|
|
+ <el-form ref="copyNodeTableRef" :model="row" :rules="copyNodeTableRules" label-width="0" size="large">
|
|
|
+ <el-form-item prop="partitionCode" style="margin-bottom: 0;">
|
|
|
+ <el-input v-model="row.partitionCode" placeholder="请输入划分编号"/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
<el-table-column prop="action" label="操作" width="120" align="center">
|
|
|
<template #default="{_,$index}">
|
|
|
<el-button type="danger" plain @click="copyNodeTableDel($index)">删除</el-button>
|
|
@@ -607,6 +631,7 @@ const copyNodeTabChange = (key) => {
|
|
|
const copyNodeLoading = ref(false)
|
|
|
const formCopyNodeModel = ref({})
|
|
|
const copyNodeTable = ref([])
|
|
|
+const classifyList=ref([])
|
|
|
|
|
|
//复制树被点击
|
|
|
const copyNodeElTreeClick = ({data}) => {
|
|
@@ -674,10 +699,24 @@ const copyNodeTableDel = (index) => {
|
|
|
copyNodeTable.value.splice(index,1)
|
|
|
}
|
|
|
//复制节点
|
|
|
+//复制节点
|
|
|
const copyNodeClick = async () => {
|
|
|
const type = copyNodeTabKey.value
|
|
|
const form = formCopyNodeModel.value
|
|
|
const table = copyNodeTable.value
|
|
|
+ let classify=''
|
|
|
+ let arr=[]
|
|
|
+ if(classifyList.value.length>0){
|
|
|
+ classifyList.value.forEach((item)=>{
|
|
|
+ if(item==='施工'){
|
|
|
+ arr.push(1)
|
|
|
+ }else if(item==='监理'){
|
|
|
+ arr.push(2)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ classify=arr.join(',')
|
|
|
+ }
|
|
|
+
|
|
|
//效验数据
|
|
|
if (type === '1') {
|
|
|
const validate = await formValidate(formCopyNodeModelRef.value)
|
|
@@ -690,10 +729,11 @@ const copyNodeClick = async () => {
|
|
|
window?.$message?.warning('请先在左侧选择要复制到的节点')
|
|
|
}
|
|
|
} else if (type === '3') {
|
|
|
- if (table.length > 0) {
|
|
|
- await copyContractNodeSubmitBusinessData(form,table)
|
|
|
+ if (table.length > 0&&classify.length>0) {
|
|
|
+
|
|
|
+ await copyContractNodeSubmitBusinessData(form,table,classify)
|
|
|
} else {
|
|
|
- window?.$message?.warning('请先在左侧选择要复制的节点')
|
|
|
+ window?.$message?.warning('请先在左侧选择要复制的节点或选择所属方')
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -715,12 +755,14 @@ const copyContractTreeNode = async (type, form,table) => {
|
|
|
window?.location?.reload() //刷新页面
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
//复制数据
|
|
|
-const copyContractNodeSubmitBusinessData = async (form,table) => {
|
|
|
+const copyContractNodeSubmitBusinessData = async (form,table,classify) => {
|
|
|
copyNodeLoading.value = true
|
|
|
const {error, code} = await wbsApi.copyContractNodeSubmitBusinessData({
|
|
|
needCopyPrimaryKeyId: form?.primaryKeyId || '',
|
|
|
- copyBatchToPaths: table
|
|
|
+ copyBatchToPaths: table,
|
|
|
+ classify:classify
|
|
|
})
|
|
|
//判断状态
|
|
|
if (!error && code === 200) {
|
|
@@ -728,6 +770,9 @@ const copyContractNodeSubmitBusinessData = async (form,table) => {
|
|
|
copyNodeLoading.value = false
|
|
|
copyNodeModal.value = false
|
|
|
window?.location?.reload() //刷新页面
|
|
|
+ }else{
|
|
|
+ copyNodeLoading.value = false
|
|
|
+ // copyNodeModal.value = false
|
|
|
}
|
|
|
}
|
|
|
|