From 0160f427f48cdbdacf1ce8466982a1d3c6f3cc05 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 30 六月 2025 15:14:54 +0800
Subject: [PATCH] 人员管理-新增入职、新增离职页面

---
 src/views/personnelManagement/dimission/index.vue |  191 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 191 insertions(+), 0 deletions(-)

diff --git a/src/views/personnelManagement/dimission/index.vue b/src/views/personnelManagement/dimission/index.vue
new file mode 100644
index 0000000..3692930
--- /dev/null
+++ b/src/views/personnelManagement/dimission/index.vue
@@ -0,0 +1,191 @@
+<template>
+  <div class="app-container">
+    <div class="search_form">
+      <div>
+        <span class="search_title">濮撳悕锛�</span>
+        <el-input
+            v-model="searchForm.customerName"
+            style="width: 240px"
+            placeholder="璇疯緭鍏ュ悕绉版悳绱�"
+            @change="handleQuery"
+            clearable
+            :prefix-icon="Search"
+        />
+        <el-button type="primary" @click="handleQuery" style="margin-left: 10px"
+        >鎼滅储</el-button
+        >
+      </div>
+      <div>
+        <el-button type="primary" @click="openForm('add')">鏂板绂昏亴</el-button>
+      </div>
+    </div>
+    <div class="table_list">
+      <PIMTable
+          rowKey="id"
+          :column="tableColumn"
+          :tableData="tableData"
+          :page="page"
+          :isSelection="true"
+          @selection-change="handleSelectionChange"
+          :tableLoading="tableLoading"
+          @pagination="pagination"
+          :total="total"
+      ></PIMTable>
+    </div>
+    <form-dia ref="formDia"></form-dia>
+  </div>
+</template>
+
+<script setup>
+import { Search } from "@element-plus/icons-vue";
+import { ref } from "vue";
+import FormDia from "@/views/personnelManagement/onboarding/components/formDia.vue";
+
+const data = reactive({
+  searchForm: {
+    customerName: "",
+  },
+  form: {
+    salesLedgerId: "",
+    customerName: "",
+    salesman: "",
+    projectName: "",
+    productData: [],
+  },
+  rules: {
+    salesLedgerId: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
+  },
+});
+const { searchForm, form, rules } = toRefs(data);
+const tableColumn = ref([
+  {
+    label: "鐘舵��",
+    prop: "paymentDate",
+    dataType: "tag",
+    formatData: (params) => {
+      if (params == 0) {
+        return "鍦ㄨ亴";
+      } else if (params == 1) {
+        return "绂昏亴";
+      } else {
+        return null;
+      }
+    },
+    formatType: (params) => {
+      if (params == 0) {
+        return "primary";
+      } else if (params == 1) {
+        return "danger";
+      } else {
+        return null;
+      }
+    },
+  },
+  {
+    label: "鍛樺伐缂栧彿",
+    prop: "supplierName",
+  },
+  {
+    label: "濮撳悕",
+    prop: "currentPaymentAmount",
+  },
+  {
+    label: "鎬у埆",
+    prop: "paymentMethod",
+  },
+  {
+    label: "绫嶈疮",
+    prop: "registrant",
+  },
+  {
+    label: "宀椾綅",
+    prop: "registrationtDate",
+  },
+  {
+    label: "瀹跺涵浣忓潃",
+    prop: "registrationtDate",
+  },
+  {
+    label: "绗竴瀛﹀巻",
+    prop: "registrationtDate",
+  },
+  {
+    label: "涓撲笟",
+    prop: "registrationtDate",
+  },
+  {
+    label: "韬唤璇佸彿",
+    prop: "registrationtDate",
+  },
+  {
+    label: "骞撮緞",
+    prop: "registrationtDate",
+  },
+  {
+    label: "鑱旂郴鐢佃瘽",
+    prop: "registrationtDate",
+  },
+  {
+    label: "绱ф�ヨ仈绯讳汉",
+    prop: "registrationtDate",
+  },
+  {
+    label: "鑱旂郴鐢佃瘽",
+    prop: "registrationtDate",
+  },
+  {
+    label: "鍚堝悓骞撮檺",
+    prop: "registrationtDate",
+  },
+  {
+    label: "鍚堝悓寮�濮嬫棩鏈�",
+    prop: "registrationtDate",
+  },
+  {
+    label: "鍚堝悓缁撴潫鏃ユ湡",
+    prop: "registrationtDate",
+  },
+]);
+const tableData = ref([]);
+const selectedRows = ref([]);
+const tableLoading = ref(false);
+const page = reactive({
+  current: 1,
+  size: 100,
+});
+const total = ref(0);
+const formDia = ref()
+const { proxy } = getCurrentInstance()
+
+// 鏌ヨ鍒楄〃
+/** 鎼滅储鎸夐挳鎿嶄綔 */
+const handleQuery = () => {
+  page.current = 1;
+  getList();
+};
+const pagination = (obj) => {
+  page.current = obj.page;
+  page.size = obj.limit;
+  getList();
+};
+const getList = () => {
+  tableLoading.value = true;
+  
+};
+// 琛ㄦ牸閫夋嫨鏁版嵁
+const handleSelectionChange = (selection) => {
+  console.log("selection", selection);
+  selectedRows.value = selection.filter(
+      (item) => item.salesContractNo !== undefined
+  );
+};
+
+// 鎵撳紑寮规
+const openForm = (type, row) => {
+  nextTick(() => {
+    formDia.value?.openDialog(type, row)
+  })
+};
+</script>
+
+<style scoped></style>

--
Gitblit v1.9.3