src/views/procurementManagement/procurementInvoiceLedger/index.vue
@@ -47,13 +47,13 @@
        :tableLoading="loading"
        :tableData="dataList"
        :isSelection="true"
        height="calc(100vh - 15em)"
        height="calc(100vh - 19.5em)"
        :isShowSummary="true"
        :summaryMethod="summarizeMainTable"
        :page="{
          current: pagination.currentPage,
          size: pagination.pageSize,
          total: 0,
          total: pagination.total,
        }"
        @selection-change="handleSelectionChange"
        @pagination="changePage"
@@ -73,6 +73,14 @@
                <el-dropdown-item :icon="Upload" command="upload">
                  上传
                </el-dropdown-item>
                <el-dropdown-item
                  v-if="row.commonFiles.length !== 0"
                  :icon="Delete"
                  command="delete"
                  style="color: #f56c6c;"
                >
                  删除
                </el-dropdown-item>
              </el-dropdown-menu>
            </template>
          </el-dropdown>
@@ -81,10 +89,16 @@
          <el-button
            type="primary"
            text
            :icon="EditPen"
            @click="openEdit(row.id)"
            @click="openEdit(row)"
          >
            编辑
          </el-button>
          <el-button
            type="primary"
            text
            @click="handleDelete(row)"
          >
            删除
          </el-button>
        </template>
      </PIMTable>
@@ -103,15 +117,22 @@
  Search,
  Upload,
  EditPen,
  Delete,
} from "@element-plus/icons-vue";
import {
  productRecordPage,
  productUploadFile,
   delRegistration,
   productRecordPage,
   productUploadFile,
} from "@/api/procurementManagement/procurementInvoiceLedger.js";
import { delCommonFile } from "@/api/publicApi/commonFile.js";
import { onMounted } from "vue";
import { ElMessageBox } from "element-plus";
import { ElMessageBox, ElMessage } from "element-plus";
import UploadModal from "./Modal/UploadModal.vue";
import EditModal from "./Modal/EditModal.vue";
import useUserStore from "@/store/modules/user.js";
import {delInvoiceLedgerByRegProductId} from "@/api/salesManagement/invoiceLedger.js";
import dayjs from "dayjs";
const userStore = useUserStore();
defineOptions({
  name: "来票台账",
@@ -136,7 +157,8 @@
  {
    purchaseContractNumber: undefined, // 采购合同号
    supplierName: undefined, // 供应商
    createdAt: [], // 来票日期
    // 设置来票日期范围为当天
    createdAt: [dayjs().startOf('day').format('YYYY-MM-DD'), dayjs().endOf('day').format('YYYY-MM-DD')], // 来票日期
  },
  [
    {
@@ -148,11 +170,6 @@
      label: "销售合同号",
      prop: "salesContractNo",
      width: 150,
    },
    {
      label: "客户名称",
      prop: "customerName",
      width: 240,
    },
    {
      label: "供应商名称",
@@ -204,17 +221,22 @@
      width: 200,
    },
    {
      label: "录入人",
      prop: "issUer",
      width: 200,
    },
    {
      label: "附件",
      align: "center",
      prop: "commonFiles",
      dataType: "slot",
         fixed: "right",
      slot: "commonFilesRef",
      width: 150,
      width: 120,
    },
    {
      fixed: "right",
      width: 120,
      width: 150,
      label: "操作",
      dataType: "slot",
      slot: "operation",
@@ -272,8 +294,9 @@
  });
};
const changePage = ({ page }) => {
const changePage = ({ page, limit }) => {
  pagination.currentPage = page;
   pagination.pageSize = limit;
  onCurrentChange(page);
};
@@ -286,6 +309,29 @@
      console.log(row.commonFiles);
      openUoload(row.ticketRegistrationId);
      break;
    case "delete":
      // 删除所有附件
      if (row.commonFiles.length > 0) {
        ElMessageBox.confirm(`确认删除该记录的所有附件吗?`, '提示', {
          confirmButtonText: '确定',
          cancelButtonText: '取消',
          type: 'warning'
        }).then(() => {
          // 获取所有附件的ID
          const fileIds = row.commonFiles.map(file => file.id);
          delCommonFile(fileIds).then(() => {
            ElMessage.success('删除成功')
            // 刷新数据
            getTableData();
          }).catch(() => {
            ElMessage.error('删除失败')
          })
        }).catch(() => {
          ElMessage.info('已取消删除')
        })
      }
      break;
  }
};
@@ -293,8 +339,8 @@
  modalRef.value.handleImport(id);
};
const openEdit = (id) => {
  editmodalRef.value.open(id);
const openEdit = (row) => {
  editmodalRef.value.open(row);
};
// 上传成功后做什么
@@ -308,6 +354,26 @@
    getTableData();
  }
};
// 删除
const handleDelete = (row) => {
   let ids = [];
   ids.push(row.id);
   ElMessageBox.confirm("该开票台账将被删除,是否确认删除", {
      confirmButtonText: "确认",
      cancelButtonText: "取消",
      type: "warning",
   })
      .then(() => {
         loading.value = true;
         delRegistration(ids).then((res) => {
            getTableData();
         });
         loading.value = false;
      })
      .catch(() => {
         proxy.$modal.msg("已取消");
      });
};
onMounted(() => {
  getTableData();