吉安感知网项目-前端
shuishen
2026-01-20 da48a901ca4c3c251927e3494ae655ef84828796
applications/task-work-order/src/views/orderView/orderDataManage/supplyAdd/index.vue
@@ -37,13 +37,16 @@
      <div class="gd-table-toolbar">
         <el-button :icon="Plus" color="#4C34FF" type="primary" @click="openForm('add')">供需填报新增</el-button>
<!--         <el-button :icon="Delete" color="#4C34FF" :disabled="!selectedIds.length" @click="handleDelete()">删除</el-button>-->
      </div>
      <div class="gd-table-container" v-loading="loading">
         <div class="gd-table-content gd-table-content-bg">
            <el-table class="gd-table" :data="list" @selection-change="handleSelectionChange">
               <el-table-column type="selection" width="46" />
            <el-table class="gd-table" :data="list">
               <el-table-column label="序号" width="60" align="center">
            <template #default="scope">
               {{ ((searchParams.current - 1) * searchParams.size + scope.$index + 1).toString().padStart(2, '0') }}
            </template>
         </el-table-column>
               <el-table-column prop="demandName" show-overflow-tooltip label="需求名称" />
               <el-table-column prop="demandType" show-overflow-tooltip label="需求类型">
                  <template v-slot="{ row }">
@@ -125,7 +128,6 @@
const total = ref(0) // 总条数
const loading = ref(true) // 列表加载中
const list = ref([]) // 列表数据
const selectedIds = ref([]) // 勾选的ID列表
const queryParamsRef = ref(null) // 查询表单实例
const dialogRef = ref(null) // 弹框实例
const dialogVisible = ref(false)
@@ -145,7 +147,10 @@
}
provide('deptTree', deptTree)
provide('treeProps', treeProps)
const detailDemandStatus = ref('')
provide('detailDemandStatus', detailDemandStatus)
const reasonForRejection = ref('') //拒绝原因
provide('reasonForRejection', reasonForRejection)
// 根据部门ID获取部门名称
function getDeptNameById(deptId, deptList) {
   if (!deptId || !Array.isArray(deptList)) return ''
@@ -193,6 +198,7 @@
// 新增/编辑/查看 弹框
function openForm(mode, row) {
   detailDemandStatus.value = row?.demandStatus
   // 对于所有审批相关状态(申请中、审核通过、审核拒绝)都使用申请详情弹框
   if (mode === 'view' && ['1', '2', '3'].includes(row?.demandStatus)) {
      // 使用申请详情弹框
@@ -218,24 +224,18 @@
// 删除
async function handleDelete(row) {
   const tips = row ? '该条' : '选中的项'
   await ElMessageBox.confirm(`确认删除${tips}吗?`, '提示', {
   await ElMessageBox.confirm('确认删除该条记录吗?', '提示', {
      type: 'warning',
      customClass: 'gd-confirm-custom',
      confirmButtonClass: 'gd-confirm-button',
      cancelButtonClass: 'gd-confirm-cancel-button',
   })
   const ids = row ? row.id : selectedIds.value.join(',')
   await gdSupplyDemandRemoveApi({ ids })
   await gdSupplyDemandRemoveApi({ ids: row.id })
   ElMessage.success('删除成功')
   selectedIds.value = []
   getList()
}
// 勾选值设置
function handleSelectionChange(rows) {
   selectedIds.value = rows.map(item => item.id)
}
// 获取字典
function getDictList() {