|
@@ -49,13 +49,13 @@
|
|
|
<HcTitle title="质检关联清单">
|
|
|
<template #extra>
|
|
|
<el-button hc-btn type="primary" @click="linkDataClick(2)">关联</el-button>
|
|
|
- <el-button hc-btn type="primary">批量取消</el-button>
|
|
|
+ <el-button hc-btn type="primary" :loading="batchCancleload" @click="batchCancle">批量取消</el-button>
|
|
|
</template>
|
|
|
</HcTitle>
|
|
|
<div style="height: calc(50vh - 250px);">
|
|
|
<hc-table
|
|
|
:is-stripe="false" :column="qualtableColumn" :datas="qualtableData" :loading="tableLoading"
|
|
|
- is-new :index-style="{ width: 60 }" :row-style="tableRowStyle"
|
|
|
+ is-new :index-style="{ width: 60 }"
|
|
|
is-check @selection-change="tableSelectionChange"
|
|
|
>
|
|
|
<template #appStatusName="{ row }">
|
|
@@ -67,8 +67,8 @@
|
|
|
{{ row.appStatusName }}
|
|
|
</el-tag>
|
|
|
</template>
|
|
|
- <template #extra>
|
|
|
- <el-button hc-btn type="primary">取消关联</el-button>
|
|
|
+ <template #action="{ row }">
|
|
|
+ <el-button hc-btn type="primary" size="small" :loading="row?.load" @click="cancleLink(row)">取消关联</el-button>
|
|
|
</template>
|
|
|
</hc-table>
|
|
|
</div>
|
|
@@ -177,13 +177,13 @@
|
|
|
</hc-new-dialog>
|
|
|
<!--
|
|
|
关联资料 -->
|
|
|
- <linkData :link-modal="linkModal" :is-check-id="isCheckId" :check-ids="checkTreeId" @close="closeLink" @save="saveLink" />
|
|
|
+ <linkData :link-modal="linkModal" :is-check-id="isCheckId" :check-ids="checkTreeId" :right-tree-check="rightTreeCheck" @close="closeLink" @save="saveLink" />
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
import { nextTick, onMounted, ref } from 'vue'
|
|
|
-import { arrToId, getArrValue, getObjValue, getRandom } from 'js-fast-way'
|
|
|
+import { arrToId, arrToKey, getArrValue, getObjValue, getRandom } from 'js-fast-way'
|
|
|
import infoTable from './components/unit/info-table.vue'
|
|
|
import treeForm from './components/unit/tree-form.vue'
|
|
|
import rowData from './components/unit/row-data.vue'
|
|
@@ -285,7 +285,8 @@ const isInfoView = ref(false)
|
|
|
const checkTreeId = ref('')
|
|
|
const checkTreeLevel = ref('')
|
|
|
const treeNodeTap = ({ node, data, keys }) => {
|
|
|
-
|
|
|
+ treeClickdata.value = data
|
|
|
+
|
|
|
const { level } = node
|
|
|
checkTreeLevel.value = level
|
|
|
checkTreeId.value = data.id
|
|
@@ -298,6 +299,8 @@ const treeNodeTap = ({ node, data, keys }) => {
|
|
|
}
|
|
|
|
|
|
//获取节点详情
|
|
|
+//选中的节点数组
|
|
|
+const rightTreeCheck = ref([])
|
|
|
const curTreeData = ref({})
|
|
|
const getTreeNodeDetail = async ({ id }) => {
|
|
|
const { error, code, data } = await unitApi.getNodeDetail({ id })
|
|
@@ -305,6 +308,7 @@ const getTreeNodeDetail = async ({ id }) => {
|
|
|
curTreeData.value = getObjValue(data)
|
|
|
tableData.value = curTreeData.value['decompositionList']
|
|
|
qualtableData.value = curTreeData.value['linkNodeList']
|
|
|
+ rightTreeCheck.value = arrToKey(qualtableData.value, 'wbsTreeId', ',').split(',')
|
|
|
nodeOptions.value.forEach((ele) => {
|
|
|
if (curTreeData.value.nodeType === ele.dictKey) {
|
|
|
curTreeData.value.nodeTypeName = ele.dictValue
|
|
@@ -366,7 +370,7 @@ const treeMenuTap = ({ key, node, data, keys }) => {
|
|
|
isInfoView.value = node.isLeaf
|
|
|
menuType.value = key
|
|
|
getTreeNodeDetail(data)
|
|
|
- treeClickdata.value = data
|
|
|
+
|
|
|
setStoreValue('wbsTreeExpandKeys', keys)
|
|
|
TreeAutoExpandKeys.value = keys || []
|
|
|
if (data?.isLock !== 1) {
|
|
@@ -464,15 +468,17 @@ const tableColumn = ref([
|
|
|
const tableData = ref([])
|
|
|
//质检关联清单
|
|
|
const qualtableColumn = ref([
|
|
|
- { key: 'part ', name: '分/子分项部位', align: 'center' },
|
|
|
+ { key: 'part', name: '分/子分项部位', align: 'center' },
|
|
|
{ key: 'appStatusName', name: '审核状态', align: 'center' },
|
|
|
{ key: 'action', name: '操作', align: 'center' },
|
|
|
|
|
|
])
|
|
|
const qualtableData = ref([])
|
|
|
+const cancelKeys = ref('')
|
|
|
//多选事件
|
|
|
const tableSelectionChange = (rows) => {
|
|
|
console.log(rows)
|
|
|
+ cancelKeys.value = arrToKey(rows, 'wbsTreeId', ',')
|
|
|
}
|
|
|
//设置某一行的样式
|
|
|
const tableRowStyle = ({ row }) => {
|
|
@@ -653,15 +659,42 @@ const isCheckId = ref(1)
|
|
|
const linkLoading = ref(false)
|
|
|
const linkModal = ref(false)
|
|
|
const linkDataClick = (type)=>{
|
|
|
- console.log(type, 'type1111111')
|
|
|
linkModal.value = true
|
|
|
isCheckId.value = type
|
|
|
}
|
|
|
const closeLink = ()=>{
|
|
|
linkModal.value = false
|
|
|
+ getTreeNodeDetail(treeClickdata.value)
|
|
|
}
|
|
|
const saveLink = ()=>{
|
|
|
linkModal.value = false
|
|
|
- getTreeNodeDetail(treeClickdata)
|
|
|
+ getTreeNodeDetail(treeClickdata.value)
|
|
|
+}
|
|
|
+const cancleLink = async (row)=>{
|
|
|
+ row.load = true
|
|
|
+ const { error, code, msg } = await unitApi.deleteLinkWbsTree({ ids:row.wbsTreeId })
|
|
|
+ row.load = false
|
|
|
+ //判断状态
|
|
|
+ if (!error && code === 200) {
|
|
|
+ window?.$message?.success(msg)
|
|
|
+ console.log(treeClickdata.value, '11111111')
|
|
|
+ getTreeNodeDetail(treeClickdata.value)
|
|
|
+ } else {
|
|
|
+ window.$message.error(msg)
|
|
|
+ }
|
|
|
+}
|
|
|
+const batchCancleload = ref(false)
|
|
|
+const batchCancle = async ()=>{
|
|
|
+ batchCancleload.value = true
|
|
|
+ const { error, code, msg } = await unitApi.deleteLinkWbsTree({ ids:cancelKeys.value })
|
|
|
+ batchCancleload.value = false
|
|
|
+ //判断状态
|
|
|
+ if (!error && code === 200) {
|
|
|
+ window?.$message?.success(msg)
|
|
|
+ console.log(treeClickdata.value, '11111111')
|
|
|
+ getTreeNodeDetail(treeClickdata.value)
|
|
|
+ } else {
|
|
|
+ window.$message.error(msg)
|
|
|
+ }
|
|
|
}
|
|
|
</script>
|