From 32f10392ab00b07e85c0b4229037c30af7c3f28e Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期二, 27 一月 2026 10:42:49 +0800
Subject: [PATCH] 浪潮对接单点登录:mis调整2

---
 src/views/personnelManagement/onboarding/index.vue |   98 ++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 81 insertions(+), 17 deletions(-)

diff --git a/src/views/personnelManagement/onboarding/index.vue b/src/views/personnelManagement/onboarding/index.vue
index d36f2e5..ff74882 100644
--- a/src/views/personnelManagement/onboarding/index.vue
+++ b/src/views/personnelManagement/onboarding/index.vue
@@ -4,12 +4,12 @@
       <div>
         <span class="search_title">濮撳悕锛�</span>
         <el-input
-          v-model="searchForm.staffName"
-          style="width: 240px"
-          placeholder="璇疯緭鍏ュ鍚嶆悳绱�"
-          @change="handleQuery"
-          clearable
-          :prefix-icon="Search"
+            v-model="searchForm.staffName"
+            style="width: 240px"
+            placeholder="璇疯緭鍏ュ鍚嶆悳绱�"
+            @change="handleQuery"
+            clearable
+            :prefix-icon="Search"
         />
         <span style="margin-left: 10px;"  class="search_title">鍚堝悓寮�濮嬫棩鏈燂細</span>
         <el-date-picker
@@ -28,7 +28,7 @@
             @change="(date) => handleDateChange(date,2)"
         />
         <el-button type="primary" @click="handleQuery" style="margin-left: 10px"
-          >鎼滅储</el-button
+        >鎼滅储</el-button
         >
       </div>
       <div>
@@ -39,15 +39,15 @@
     </div>
     <div class="table_list">
       <PIMTable
-        rowKey="id"
-        :column="tableColumn"
-        :tableData="tableData"
-        :page="page"
-        :isSelection="true"
-        @selection-change="handleSelectionChange"
-        :tableLoading="tableLoading"
-        @pagination="pagination"
-        :total="page.total"
+          rowKey="id"
+          :column="tableColumn"
+          :tableData="tableData"
+          :page="page"
+          :isSelection="true"
+          @selection-change="handleSelectionChange"
+          :tableLoading="tableLoading"
+          @pagination="pagination"
+          :total="page.total"
       ></PIMTable>
     </div>
     <form-dia ref="formDia" @close="handleQuery"></form-dia>
@@ -151,8 +151,39 @@
     width:150
   },
   {
-    label: "鍚堝悓骞撮檺",
+    label: "璇曠敤鏈燂紙鏈堬級",
+    prop: "probationPeriod",
+    width: 120,
+  },
+  // {
+  //   label: "杞鏃ユ湡",
+  //   prop: "probationEndDate",
+  //   width: 120,
+  //   formatData: (row) => {
+  //     // 淇敼涓轰娇鐢ㄥ悎鍚屽紑濮嬫棩鏈熻绠楄浆姝f棩鏈�
+  //     if (row.contractStartTime && row.probationPeriod) {
+  //       // 璁$畻杞鏃ユ湡锛堝悎鍚屽紑濮嬫棩鏈熷姞涓婅瘯鐢ㄦ湡鏈堟暟锛�
+  //       return dayjs(row.contractStartTime).add(row.probationPeriod, 'month').format('YYYY-MM-DD');
+  //     }
+  //     return '';
+  //   },
+  //   formatType: (row) => {
+  //     // 淇敼涓轰娇鐢ㄥ悎鍚屽紑濮嬫棩鏈熸鏌ユ槸鍚︿复杩戣浆姝o紙7澶╁唴锛�
+  //     if (row.contractStartTime && row.probationPeriod) {
+  //       const probationEndDate = dayjs(row.contractStartTime).add(row.probationPeriod, 'month');
+  //       const daysUntilProbationEnd = probationEndDate.diff(dayjs(), 'day');
+
+  //       if (daysUntilProbationEnd >= 0 && daysUntilProbationEnd <= 7) {
+  //         return 'warning'; // 浣跨敤璀﹀憡鏍峰紡鏍囪涓磋繎杞鐨勫憳宸�
+  //       }
+  //     }
+  //     return '';
+  //   }
+  // },
+  {
+    label: "鍚堝悓骞撮檺锛堝勾锛�",
     prop: "contractTerm",
+    width: 120,
   },
   {
     label: "鍚堝悓寮�濮嬫棩鏈�",
@@ -222,10 +253,43 @@
     tableLoading.value = false;
     tableData.value = res.data.records
     page.total = res.data.total;
+
+    // 妫�鏌ユ槸鍚︽湁涓磋繎杞鐨勫憳宸ュ苟鎻愰啋
+    checkProbationEnding(tableData.value);
   }).catch(err => {
     tableLoading.value = false;
   })
 };
+// 妫�鏌ヤ复杩戣浆姝g殑鍛樺伐骞舵彁閱�
+const checkProbationEnding = (data) => {
+  const probationEndingSoon = [];
+
+  data.forEach(item => {
+    // 淇敼涓轰娇鐢ㄥ悎鍚屽紑濮嬫棩鏈熸鏌�
+    if (item.contractStartTime && item.probationPeriod) {
+      const probationEndDate = dayjs(item.contractStartTime).add(item.probationPeriod, 'month');
+      const daysUntilProbationEnd = probationEndDate.diff(dayjs(), 'day');
+
+      if (daysUntilProbationEnd >= 0 && daysUntilProbationEnd <= 7) {
+        probationEndingSoon.push({
+          staffName: item.staffName,
+          probationEndDate: probationEndDate.format('YYYY-MM-DD'),
+          daysLeft: daysUntilProbationEnd
+        });
+      }
+    }
+  });
+
+  if (probationEndingSoon.length > 0) {
+    let message = '浠ヤ笅鍛樺伐灏嗗湪7澶╁唴杞锛歕n';
+    probationEndingSoon.forEach(item => {
+      message += `${item.staffName}锛�${item.probationEndDate}锛岃繕鏈�${item.daysLeft}澶╋級\n`;
+    });
+
+    // 鏄剧ず鎻愰啋娑堟伅
+    proxy.$modal.msgInfo(message);
+  }
+};
 // 琛ㄦ牸閫夋嫨鏁版嵁
 const handleSelectionChange = (selection) => {
   selectedRows.value = selection;

--
Gitblit v1.9.3