From 9d22bf2b596d8f5627f671f009b3f42d71d73bf4 Mon Sep 17 00:00:00 2001 From: zm <2369059705qq.com> Date: 星期一, 04 十一月 2024 16:02:07 +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