| | |
| | | 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.Date; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Component; |
| | |
| | | if(!StringUtils.isEmpty(dataFilter)){ |
| | | filter += " and "+dataFilter; |
| | | } |
| | | DataTableEntity dt = baseDao.listTable(CmnConst.PRODUCT_SYS_ASK_FOR_LEAVE,filter,null,null,"created_utc_datetime desc",fs.getInteger(CmnConst.PAGESIZE),fs.getInteger(CmnConst.CPAGE),false); |
| | | DataTableEntity dt = baseDao.listTable(CmnConst.PRODUCT_SYS_ASK_FOR_LEAVE,filter,null,null,"id desc",fs.getInteger(CmnConst.PAGESIZE),fs.getInteger(CmnConst.CPAGE),false); |
| | | baseDao.loadPromptData(dt); |
| | | return dt; |
| | | } |
| | |
| | | * 请假申请保存 |
| | | */ |
| | | public String saveLeaveRequest(FieldSetEntity fs) throws BaseException { |
| | | // fs.setValue("org_level_uuid", SpringMVCContextHolder.getCurrentUser().getOrg_level_uuid());//公司 |
| | | // fs.setValue("fill_in_time", new Date());//填单时间 |
| | | // fs.setValue("department_uuid", SpringMVCContextHolder.getCurrentUser().getOrg_level_uuid());//部门 |
| | | fs.setValue("created_by", SpringMVCContextHolder.getCurrentUser().getUser_id());//姓名 |
| | | fs.setValue("flow_flag", 0); |
| | | if(StringUtils.isEmpty(fs.getString(CmnConst.UUID))){ |
| | | return baseDao.add(fs); |
| | | DataTableEntity dataTableEntity = baseDao.listTable(CmnConst.PRODUCT_SYS_ASK_FOR_LEAVE, " uuid not in (?) and user_id=? and ((start_time<=? and end_time>=?) or(start_time<=? and end_time>=?))" |
| | | , new String[]{StringUtils.isEmpty(fs.getUUID())?"":fs.getUUID(), fs.getString("user_id"), fs.getString("start_time"), fs.getString("start_time"), fs.getString("end_time"), fs.getString("end_time")}); |
| | | if (dataTableEntity.getRows()>0){ |
| | | return "1"; |
| | | }else { |
| | | baseDao.update(fs); |
| | | return fs.getString(CmnConst.UUID); |
| | | if (StringUtils.isEmpty(fs.getString(CmnConst.UUID))) { |
| | | fs.setValue("created_by", SpringMVCContextHolder.getCurrentUser().getUser_id()); |
| | | fs.setValue("created_utc_datetime", new Date()); |
| | | fs.setValue("org_level_uuid", SpringMVCContextHolder.getCurrentUser().getOrg_level_uuid()); |
| | | return baseDao.add(fs); |
| | | } else { |
| | | fs.setValue("updated_by", SpringMVCContextHolder.getCurrentUser().getUser_id()); |
| | | fs.setValue("updated_utc_datetime", new Date()); |
| | | baseDao.update(fs); |
| | | return fs.getString(CmnConst.UUID); |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 计算请假天数 |
| | | * @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解析日期字符串 |
| | | DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); |
| | | |
| | | // 将字符串解析为LocalDate对象 |
| | | 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 |