From e7fdc9967246ec64cc4f27d514c4ac1bdd488933 Mon Sep 17 00:00:00 2001
From: 杜洪波 <1074825718@qq.com>
Date: 星期一, 13 十月 2025 18:07:55 +0800
Subject: [PATCH] 代码提交
---
src/main/java/com/product/administration/service/LeaveRequestService.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 57 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/product/administration/service/LeaveRequestService.java b/src/main/java/com/product/administration/service/LeaveRequestService.java
index 3eb4b21..3dd8c9d 100644
--- a/src/main/java/com/product/administration/service/LeaveRequestService.java
+++ b/src/main/java/com/product/administration/service/LeaveRequestService.java
@@ -9,6 +9,10 @@
import com.product.core.service.support.AbstractBaseService;
import com.product.core.service.support.QueryFilterService;
import com.product.core.spring.context.SpringMVCContextHolder;
+
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
import java.util.Date;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -80,6 +84,31 @@
}
}
+
+ /**
+ * 璁$畻璇峰亣澶╂暟
+ * @param fs
+ * @return
+ * @throws BaseException
+ */
+ public FieldSetEntity getDay(FieldSetEntity fs) throws BaseException {
+ DataTableEntity dt = baseDao.listTable(com.product.org.admin.config.CmnConst.PRODUCT_SYS_COMPANY_HOLIDAY, "date_holiday >=? and date_holiday<=?", new String[]{fs.getString("start_time"), fs.getString("end_time")});
+ String dateStr1 = fs.getString("start_time");
+ String dateStr2 = fs.getString("end_time");
+
+ // 浣跨敤DateTimeFormatter瑙f瀽鏃ユ湡瀛楃涓�
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+
+ // 灏嗗瓧绗︿覆瑙f瀽涓篖ocalDate瀵硅薄
+ LocalDate date1 = LocalDate.parse(dateStr1, formatter);
+ LocalDate date2 = LocalDate.parse(dateStr2, formatter);
+
+ // 璁$畻涓や釜鏃ユ湡涔嬮棿鐨勫ぉ鏁板樊
+ long daysBetween = java.time.Duration.between(date1.atStartOfDay(), date2.atStartOfDay()).toDays()+1;
+ fs.setValue("day",daysBetween-dt.getRows());
+
+ return fs;
+ }
/**
* @Date: 2020-03-30 16:43
* @Author: ZhouJie
@@ -88,4 +117,32 @@
public boolean deleteLeaveRequest(FieldSetEntity fs) throws BaseException {
return baseDao.delete(CmnConst.PRODUCT_SYS_ASK_FOR_LEAVE,CmnConst.UUID+"=?",new Object[]{fs.getString(CmnConst.UUID)});
}
+
+ /**
+ * 鏍规嵁鐢宠浜哄拰璇峰亣鏃ユ湡鑾峰彇璇峰亣鍗曟嵁
+ * @param fs
+ * @return
+ */
+ public FieldSetEntity getLeave(FieldSetEntity fs){
+ return baseDao.getFieldSetByFilter(CmnConst.PRODUCT_SYS_ASK_FOR_LEAVE,"user_id=? and DATE_FORMAT(start_time,'%Y-%m-%d')<=? and DATE_FORMAT(end_time,'%Y-%m-%d')>=?",new String[]{fs.getString("user_id"),fs.getString("date"),fs.getString("date")},false);
+ }
+
+ /**
+ *
+ * @param fs
+ * @return
+ */
+ public DataTableEntity leaveList(FieldSetEntity fs){
+ String a="";
+ ArrayList<String> list = new ArrayList<>();
+ if (!StringUtils.isEmpty(fs.getString("yearAndMonth"))){
+ a="(DATE_FORMAT( start_time, '%Y-%m' )=? or DATE_FORMAT( end_time, '%Y-%m' )=?) and user_id=? and";
+ list.add(fs.getString("yearAndMonth"));
+ list.add(fs.getString("yearAndMonth"));
+ list.add(fs.getString("created_by"));
+ }
+ DataTableEntity dt = baseDao.listTable(CmnConst.PRODUCT_SYS_ASK_FOR_LEAVE, a + " flow_flag = 2", list.toArray());
+ baseDao.loadPromptData(dt);
+ return dt;
+ }
}
--
Gitblit v1.9.2