Browse Source

20210819

tall3
zy_Java 4 years ago
parent
commit
431ac63b47
  1. 106
      common/src/main/java/com/ccsens/common/bean/po/SysHolidays.java
  2. 711
      common/src/main/java/com/ccsens/common/bean/po/SysHolidaysExample.java
  3. 30
      common/src/main/java/com/ccsens/common/persist/mapper/SysHolidaysMapper.java
  4. 258
      common/src/main/resources/mapper_raw/SysHolidaysMapper.xml
  5. 4
      util/src/main/java/com/ccsens/util/cron/NatureConstant.java
  6. 39
      util/src/main/java/com/ccsens/util/cron/NatureToDate.java

106
common/src/main/java/com/ccsens/common/bean/po/SysHolidays.java

@ -0,0 +1,106 @@
package com.ccsens.common.bean.po;
import java.io.Serializable;
import java.util.Date;
public class SysHolidays implements Serializable {
private Long id;
private String year;
private String holiday;
private String workday;
private Long operator;
private Date createdAt;
private Date updatedAt;
private Byte recStatus;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getYear() {
return year;
}
public void setYear(String year) {
this.year = year == null ? null : year.trim();
}
public String getHoliday() {
return holiday;
}
public void setHoliday(String holiday) {
this.holiday = holiday == null ? null : holiday.trim();
}
public String getWorkday() {
return workday;
}
public void setWorkday(String workday) {
this.workday = workday == null ? null : workday.trim();
}
public Long getOperator() {
return operator;
}
public void setOperator(Long operator) {
this.operator = operator;
}
public Date getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}
public Byte getRecStatus() {
return recStatus;
}
public void setRecStatus(Byte recStatus) {
this.recStatus = recStatus;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", year=").append(year);
sb.append(", holiday=").append(holiday);
sb.append(", workday=").append(workday);
sb.append(", operator=").append(operator);
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);
sb.append(", recStatus=").append(recStatus);
sb.append("]");
return sb.toString();
}
}

711
common/src/main/java/com/ccsens/common/bean/po/SysHolidaysExample.java

@ -0,0 +1,711 @@
package com.ccsens.common.bean.po;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class SysHolidaysExample {
protected String orderByClause;
protected boolean distinct;
protected List<Criteria> oredCriteria;
public SysHolidaysExample() {
oredCriteria = new ArrayList<Criteria>();
}
public void setOrderByClause(String orderByClause) {
this.orderByClause = orderByClause;
}
public String getOrderByClause() {
return orderByClause;
}
public void setDistinct(boolean distinct) {
this.distinct = distinct;
}
public boolean isDistinct() {
return distinct;
}
public List<Criteria> getOredCriteria() {
return oredCriteria;
}
public void or(Criteria criteria) {
oredCriteria.add(criteria);
}
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
return criteria;
}
public Criteria createCriteria() {
Criteria criteria = createCriteriaInternal();
if (oredCriteria.size() == 0) {
oredCriteria.add(criteria);
}
return criteria;
}
protected Criteria createCriteriaInternal() {
Criteria criteria = new Criteria();
return criteria;
}
public void clear() {
oredCriteria.clear();
orderByClause = null;
distinct = false;
}
protected abstract static class GeneratedCriteria {
protected List<Criterion> criteria;
protected GeneratedCriteria() {
super();
criteria = new ArrayList<Criterion>();
}
public boolean isValid() {
return criteria.size() > 0;
}
public List<Criterion> getAllCriteria() {
return criteria;
}
public List<Criterion> getCriteria() {
return criteria;
}
protected void addCriterion(String condition) {
if (condition == null) {
throw new RuntimeException("Value for condition cannot be null");
}
criteria.add(new Criterion(condition));
}
protected void addCriterion(String condition, Object value, String property) {
if (value == null) {
throw new RuntimeException("Value for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value));
}
protected void addCriterion(String condition, Object value1, Object value2, String property) {
if (value1 == null || value2 == null) {
throw new RuntimeException("Between values for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value1, value2));
}
public Criteria andIdIsNull() {
addCriterion("id is null");
return (Criteria) this;
}
public Criteria andIdIsNotNull() {
addCriterion("id is not null");
return (Criteria) this;
}
public Criteria andIdEqualTo(Long value) {
addCriterion("id =", value, "id");
return (Criteria) this;
}
public Criteria andIdNotEqualTo(Long value) {
addCriterion("id <>", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThan(Long value) {
addCriterion("id >", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThanOrEqualTo(Long value) {
addCriterion("id >=", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThan(Long value) {
addCriterion("id <", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThanOrEqualTo(Long value) {
addCriterion("id <=", value, "id");
return (Criteria) this;
}
public Criteria andIdIn(List<Long> values) {
addCriterion("id in", values, "id");
return (Criteria) this;
}
public Criteria andIdNotIn(List<Long> values) {
addCriterion("id not in", values, "id");
return (Criteria) this;
}
public Criteria andIdBetween(Long value1, Long value2) {
addCriterion("id between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andIdNotBetween(Long value1, Long value2) {
addCriterion("id not between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andYearIsNull() {
addCriterion("year is null");
return (Criteria) this;
}
public Criteria andYearIsNotNull() {
addCriterion("year is not null");
return (Criteria) this;
}
public Criteria andYearEqualTo(String value) {
addCriterion("year =", value, "year");
return (Criteria) this;
}
public Criteria andYearNotEqualTo(String value) {
addCriterion("year <>", value, "year");
return (Criteria) this;
}
public Criteria andYearGreaterThan(String value) {
addCriterion("year >", value, "year");
return (Criteria) this;
}
public Criteria andYearGreaterThanOrEqualTo(String value) {
addCriterion("year >=", value, "year");
return (Criteria) this;
}
public Criteria andYearLessThan(String value) {
addCriterion("year <", value, "year");
return (Criteria) this;
}
public Criteria andYearLessThanOrEqualTo(String value) {
addCriterion("year <=", value, "year");
return (Criteria) this;
}
public Criteria andYearLike(String value) {
addCriterion("year like", value, "year");
return (Criteria) this;
}
public Criteria andYearNotLike(String value) {
addCriterion("year not like", value, "year");
return (Criteria) this;
}
public Criteria andYearIn(List<String> values) {
addCriterion("year in", values, "year");
return (Criteria) this;
}
public Criteria andYearNotIn(List<String> values) {
addCriterion("year not in", values, "year");
return (Criteria) this;
}
public Criteria andYearBetween(String value1, String value2) {
addCriterion("year between", value1, value2, "year");
return (Criteria) this;
}
public Criteria andYearNotBetween(String value1, String value2) {
addCriterion("year not between", value1, value2, "year");
return (Criteria) this;
}
public Criteria andHolidayIsNull() {
addCriterion("holiday is null");
return (Criteria) this;
}
public Criteria andHolidayIsNotNull() {
addCriterion("holiday is not null");
return (Criteria) this;
}
public Criteria andHolidayEqualTo(String value) {
addCriterion("holiday =", value, "holiday");
return (Criteria) this;
}
public Criteria andHolidayNotEqualTo(String value) {
addCriterion("holiday <>", value, "holiday");
return (Criteria) this;
}
public Criteria andHolidayGreaterThan(String value) {
addCriterion("holiday >", value, "holiday");
return (Criteria) this;
}
public Criteria andHolidayGreaterThanOrEqualTo(String value) {
addCriterion("holiday >=", value, "holiday");
return (Criteria) this;
}
public Criteria andHolidayLessThan(String value) {
addCriterion("holiday <", value, "holiday");
return (Criteria) this;
}
public Criteria andHolidayLessThanOrEqualTo(String value) {
addCriterion("holiday <=", value, "holiday");
return (Criteria) this;
}
public Criteria andHolidayLike(String value) {
addCriterion("holiday like", value, "holiday");
return (Criteria) this;
}
public Criteria andHolidayNotLike(String value) {
addCriterion("holiday not like", value, "holiday");
return (Criteria) this;
}
public Criteria andHolidayIn(List<String> values) {
addCriterion("holiday in", values, "holiday");
return (Criteria) this;
}
public Criteria andHolidayNotIn(List<String> values) {
addCriterion("holiday not in", values, "holiday");
return (Criteria) this;
}
public Criteria andHolidayBetween(String value1, String value2) {
addCriterion("holiday between", value1, value2, "holiday");
return (Criteria) this;
}
public Criteria andHolidayNotBetween(String value1, String value2) {
addCriterion("holiday not between", value1, value2, "holiday");
return (Criteria) this;
}
public Criteria andWorkdayIsNull() {
addCriterion("workday is null");
return (Criteria) this;
}
public Criteria andWorkdayIsNotNull() {
addCriterion("workday is not null");
return (Criteria) this;
}
public Criteria andWorkdayEqualTo(String value) {
addCriterion("workday =", value, "workday");
return (Criteria) this;
}
public Criteria andWorkdayNotEqualTo(String value) {
addCriterion("workday <>", value, "workday");
return (Criteria) this;
}
public Criteria andWorkdayGreaterThan(String value) {
addCriterion("workday >", value, "workday");
return (Criteria) this;
}
public Criteria andWorkdayGreaterThanOrEqualTo(String value) {
addCriterion("workday >=", value, "workday");
return (Criteria) this;
}
public Criteria andWorkdayLessThan(String value) {
addCriterion("workday <", value, "workday");
return (Criteria) this;
}
public Criteria andWorkdayLessThanOrEqualTo(String value) {
addCriterion("workday <=", value, "workday");
return (Criteria) this;
}
public Criteria andWorkdayLike(String value) {
addCriterion("workday like", value, "workday");
return (Criteria) this;
}
public Criteria andWorkdayNotLike(String value) {
addCriterion("workday not like", value, "workday");
return (Criteria) this;
}
public Criteria andWorkdayIn(List<String> values) {
addCriterion("workday in", values, "workday");
return (Criteria) this;
}
public Criteria andWorkdayNotIn(List<String> values) {
addCriterion("workday not in", values, "workday");
return (Criteria) this;
}
public Criteria andWorkdayBetween(String value1, String value2) {
addCriterion("workday between", value1, value2, "workday");
return (Criteria) this;
}
public Criteria andWorkdayNotBetween(String value1, String value2) {
addCriterion("workday not between", value1, value2, "workday");
return (Criteria) this;
}
public Criteria andOperatorIsNull() {
addCriterion("operator is null");
return (Criteria) this;
}
public Criteria andOperatorIsNotNull() {
addCriterion("operator is not null");
return (Criteria) this;
}
public Criteria andOperatorEqualTo(Long value) {
addCriterion("operator =", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorNotEqualTo(Long value) {
addCriterion("operator <>", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorGreaterThan(Long value) {
addCriterion("operator >", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorGreaterThanOrEqualTo(Long value) {
addCriterion("operator >=", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorLessThan(Long value) {
addCriterion("operator <", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorLessThanOrEqualTo(Long value) {
addCriterion("operator <=", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorIn(List<Long> values) {
addCriterion("operator in", values, "operator");
return (Criteria) this;
}
public Criteria andOperatorNotIn(List<Long> values) {
addCriterion("operator not in", values, "operator");
return (Criteria) this;
}
public Criteria andOperatorBetween(Long value1, Long value2) {
addCriterion("operator between", value1, value2, "operator");
return (Criteria) this;
}
public Criteria andOperatorNotBetween(Long value1, Long value2) {
addCriterion("operator not between", value1, value2, "operator");
return (Criteria) this;
}
public Criteria andCreatedAtIsNull() {
addCriterion("created_at is null");
return (Criteria) this;
}
public Criteria andCreatedAtIsNotNull() {
addCriterion("created_at is not null");
return (Criteria) this;
}
public Criteria andCreatedAtEqualTo(Date value) {
addCriterion("created_at =", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotEqualTo(Date value) {
addCriterion("created_at <>", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThan(Date value) {
addCriterion("created_at >", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("created_at >=", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtLessThan(Date value) {
addCriterion("created_at <", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtLessThanOrEqualTo(Date value) {
addCriterion("created_at <=", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtIn(List<Date> values) {
addCriterion("created_at in", values, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotIn(List<Date> values) {
addCriterion("created_at not in", values, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtBetween(Date value1, Date value2) {
addCriterion("created_at between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotBetween(Date value1, Date value2) {
addCriterion("created_at not between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNull() {
addCriterion("updated_at is null");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNotNull() {
addCriterion("updated_at is not null");
return (Criteria) this;
}
public Criteria andUpdatedAtEqualTo(Date value) {
addCriterion("updated_at =", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotEqualTo(Date value) {
addCriterion("updated_at <>", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThan(Date value) {
addCriterion("updated_at >", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("updated_at >=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThan(Date value) {
addCriterion("updated_at <", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThanOrEqualTo(Date value) {
addCriterion("updated_at <=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtIn(List<Date> values) {
addCriterion("updated_at in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotIn(List<Date> values) {
addCriterion("updated_at not in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtBetween(Date value1, Date value2) {
addCriterion("updated_at between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotBetween(Date value1, Date value2) {
addCriterion("updated_at not between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andRecStatusIsNull() {
addCriterion("rec_status is null");
return (Criteria) this;
}
public Criteria andRecStatusIsNotNull() {
addCriterion("rec_status is not null");
return (Criteria) this;
}
public Criteria andRecStatusEqualTo(Byte value) {
addCriterion("rec_status =", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotEqualTo(Byte value) {
addCriterion("rec_status <>", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusGreaterThan(Byte value) {
addCriterion("rec_status >", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusGreaterThanOrEqualTo(Byte value) {
addCriterion("rec_status >=", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusLessThan(Byte value) {
addCriterion("rec_status <", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusLessThanOrEqualTo(Byte value) {
addCriterion("rec_status <=", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusIn(List<Byte> values) {
addCriterion("rec_status in", values, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotIn(List<Byte> values) {
addCriterion("rec_status not in", values, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusBetween(Byte value1, Byte value2) {
addCriterion("rec_status between", value1, value2, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotBetween(Byte value1, Byte value2) {
addCriterion("rec_status not between", value1, value2, "recStatus");
return (Criteria) this;
}
}
public static class Criteria extends GeneratedCriteria {
protected Criteria() {
super();
}
}
public static class Criterion {
private String condition;
private Object value;
private Object secondValue;
private boolean noValue;
private boolean singleValue;
private boolean betweenValue;
private boolean listValue;
private String typeHandler;
public String getCondition() {
return condition;
}
public Object getValue() {
return value;
}
public Object getSecondValue() {
return secondValue;
}
public boolean isNoValue() {
return noValue;
}
public boolean isSingleValue() {
return singleValue;
}
public boolean isBetweenValue() {
return betweenValue;
}
public boolean isListValue() {
return listValue;
}
public String getTypeHandler() {
return typeHandler;
}
protected Criterion(String condition) {
super();
this.condition = condition;
this.typeHandler = null;
this.noValue = true;
}
protected Criterion(String condition, Object value, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.typeHandler = typeHandler;
if (value instanceof List<?>) {
this.listValue = true;
} else {
this.singleValue = true;
}
}
protected Criterion(String condition, Object value) {
this(condition, value, null);
}
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.secondValue = secondValue;
this.typeHandler = typeHandler;
this.betweenValue = true;
}
protected Criterion(String condition, Object value, Object secondValue) {
this(condition, value, secondValue, null);
}
}
}

30
common/src/main/java/com/ccsens/common/persist/mapper/SysHolidaysMapper.java

@ -0,0 +1,30 @@
package com.ccsens.common.persist.mapper;
import com.ccsens.common.bean.po.SysHolidays;
import com.ccsens.common.bean.po.SysHolidaysExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface SysHolidaysMapper {
long countByExample(SysHolidaysExample example);
int deleteByExample(SysHolidaysExample example);
int deleteByPrimaryKey(Long id);
int insert(SysHolidays record);
int insertSelective(SysHolidays record);
List<SysHolidays> selectByExample(SysHolidaysExample example);
SysHolidays selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") SysHolidays record, @Param("example") SysHolidaysExample example);
int updateByExample(@Param("record") SysHolidays record, @Param("example") SysHolidaysExample example);
int updateByPrimaryKeySelective(SysHolidays record);
int updateByPrimaryKey(SysHolidays record);
}

258
common/src/main/resources/mapper_raw/SysHolidaysMapper.xml

@ -0,0 +1,258 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ccsens.common.persist.mapper.SysHolidaysMapper">
<resultMap id="BaseResultMap" type="com.ccsens.common.bean.po.SysHolidays">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="year" jdbcType="VARCHAR" property="year" />
<result column="holiday" jdbcType="VARCHAR" property="holiday" />
<result column="workday" jdbcType="VARCHAR" property="workday" />
<result column="operator" jdbcType="BIGINT" property="operator" />
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="rec_status" jdbcType="TINYINT" property="recStatus" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
id, year, holiday, workday, operator, created_at, updated_at, rec_status
</sql>
<select id="selectByExample" parameterType="com.ccsens.common.bean.po.SysHolidaysExample" resultMap="BaseResultMap">
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from t_sys_holidays
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from t_sys_holidays
where id = #{id,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from t_sys_holidays
where id = #{id,jdbcType=BIGINT}
</delete>
<delete id="deleteByExample" parameterType="com.ccsens.common.bean.po.SysHolidaysExample">
delete from t_sys_holidays
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</delete>
<insert id="insert" parameterType="com.ccsens.common.bean.po.SysHolidays">
insert into t_sys_holidays (id, year, holiday,
workday, operator, created_at,
updated_at, rec_status)
values (#{id,jdbcType=BIGINT}, #{year,jdbcType=VARCHAR}, #{holiday,jdbcType=VARCHAR},
#{workday,jdbcType=VARCHAR}, #{operator,jdbcType=BIGINT}, #{createdAt,jdbcType=TIMESTAMP},
#{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT})
</insert>
<insert id="insertSelective" parameterType="com.ccsens.common.bean.po.SysHolidays">
insert into t_sys_holidays
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="year != null">
year,
</if>
<if test="holiday != null">
holiday,
</if>
<if test="workday != null">
workday,
</if>
<if test="operator != null">
operator,
</if>
<if test="createdAt != null">
created_at,
</if>
<if test="updatedAt != null">
updated_at,
</if>
<if test="recStatus != null">
rec_status,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=BIGINT},
</if>
<if test="year != null">
#{year,jdbcType=VARCHAR},
</if>
<if test="holiday != null">
#{holiday,jdbcType=VARCHAR},
</if>
<if test="workday != null">
#{workday,jdbcType=VARCHAR},
</if>
<if test="operator != null">
#{operator,jdbcType=BIGINT},
</if>
<if test="createdAt != null">
#{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
#{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
#{recStatus,jdbcType=TINYINT},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.ccsens.common.bean.po.SysHolidaysExample" resultType="java.lang.Long">
select count(*) from t_sys_holidays
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
update t_sys_holidays
<set>
<if test="record.id != null">
id = #{record.id,jdbcType=BIGINT},
</if>
<if test="record.year != null">
year = #{record.year,jdbcType=VARCHAR},
</if>
<if test="record.holiday != null">
holiday = #{record.holiday,jdbcType=VARCHAR},
</if>
<if test="record.workday != null">
workday = #{record.workday,jdbcType=VARCHAR},
</if>
<if test="record.operator != null">
operator = #{record.operator,jdbcType=BIGINT},
</if>
<if test="record.createdAt != null">
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
</if>
<if test="record.updatedAt != null">
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="record.recStatus != null">
rec_status = #{record.recStatus,jdbcType=TINYINT},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
update t_sys_holidays
set id = #{record.id,jdbcType=BIGINT},
year = #{record.year,jdbcType=VARCHAR},
holiday = #{record.holiday,jdbcType=VARCHAR},
workday = #{record.workday,jdbcType=VARCHAR},
operator = #{record.operator,jdbcType=BIGINT},
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
rec_status = #{record.recStatus,jdbcType=TINYINT}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.ccsens.common.bean.po.SysHolidays">
update t_sys_holidays
<set>
<if test="year != null">
year = #{year,jdbcType=VARCHAR},
</if>
<if test="holiday != null">
holiday = #{holiday,jdbcType=VARCHAR},
</if>
<if test="workday != null">
workday = #{workday,jdbcType=VARCHAR},
</if>
<if test="operator != null">
operator = #{operator,jdbcType=BIGINT},
</if>
<if test="createdAt != null">
created_at = #{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
rec_status = #{recStatus,jdbcType=TINYINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.ccsens.common.bean.po.SysHolidays">
update t_sys_holidays
set year = #{year,jdbcType=VARCHAR},
holiday = #{holiday,jdbcType=VARCHAR},
workday = #{workday,jdbcType=VARCHAR},
operator = #{operator,jdbcType=BIGINT},
created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
rec_status = #{recStatus,jdbcType=TINYINT}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

4
util/src/main/java/com/ccsens/util/cron/NatureConstant.java

@ -58,5 +58,9 @@ public class NatureConstant {
public static final String WORKDAY_MONTH = "每月最后一个工作日";
public static final String WORKDAY_WEEK = "每周最后一个工作日";
public static final String WORKDAY_YEAR = "每年最后一个工作日";
public static final String WORKDAY = "每[周月年]最后一个工作日";
public static final String REDIS_YEAR_WORKDAY = "workday_";
}

39
util/src/main/java/com/ccsens/util/cron/NatureToDate.java

@ -1,12 +1,18 @@
package com.ccsens.util.cron;
import cn.hutool.core.util.ObjectUtil;
import com.ccsens.util.DateUtil;
import com.ccsens.util.RedisUtil;
import com.ccsens.util.StringUtil;
import com.ccsens.util.exception.BaseException;
import com.ccsens.util.message.SwitchoverProjectUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.util.CollectionUtils;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
@ -47,7 +53,7 @@ public class NatureToDate {
// System.out.println("第1天:" + generateDates("第1天", start, end));
// System.out.println("每40分钟:" + generateDates("每40分钟", start, end));
// System.out.println("每月15号下午5点:" + generateDates("每月15号下午5点", start, end));
System.out.println("每月最后一个工作日:" + generateDates("每最后一个工作日", start, end));
System.out.println("每月最后一个工作日:" + generateDates("每最后一个工作日", start, end));
// log.info("周一到周五 8点-9点: " + generateDates("周一到周五 18点", start, end));
// log.info("每年3月5号前: " + generateDates("每年03月05号前", start, end));
@ -146,7 +152,8 @@ public class NatureToDate {
CronConstant.TaskDate taskDate = getTaskDate(startDate, endDate, Calendar.YEAR, num-1, 1);
taskDates.add(taskDate);
return taskDates;
} else if(StringUtil.isMatch(nature, NatureConstant.WORKDAY_MONTH)){
}
else if(StringUtil.isMatch(nature, NatureConstant.WORKDAY_MONTH)){
//每月最后一个工作日
getLastWorkdayByMonth(taskDates,startDate, endDate);
return taskDates;
@ -158,7 +165,6 @@ public class NatureToDate {
getLastWorkdayByYear(taskDates,startDate, endDate);
return taskDates;
}
return null;
}
@ -222,12 +228,25 @@ public class NatureToDate {
*/
public static void getLastWorkday(List<CronConstant.TaskDate> taskDates, Date startDate, Date endDate) {
DateFormat df = new SimpleDateFormat("MM-dd");
//中国法定节假日期
String isHoliday = "01-01,01-02,01-03,02-11,02-12,02-13,02-14,02-15,02-16,"
+ "02-17,04-03,04-04,04-05,05-01,05-02,05-03,05-04,05-05,06-12,06-13,"
+ "06-14,09-19,09-20,09-21,10-01,10-02,10-03,10-04,10-05,10-06,10-07";
// 节假前后加班日期
String overDay = "02-07,02-20,04-25,05-08,09-18,09-26,10-09";
DateFormat yearFormat = new SimpleDateFormat("yy");
//获取本年节假日信息
String holiday = "";
String overDay = "";
String key = NatureConstant.REDIS_YEAR_WORKDAY + yearFormat.format(startDate);
// Object o = redisUtil.get(key);
// if(ObjectUtil.isNull(o)){
//中国法定节假日期
holiday = "01-01,01-02,01-03,02-11,02-12,02-13,02-14,02-15,02-16,"
+ "02-17,04-03,04-04,04-05,05-01,05-02,05-03,05-04,05-05,06-12,06-13,"
+ "06-14,09-19,09-20,09-21,10-01,10-02,10-03,10-04,10-05,10-06,10-07";
// 节假前后加班日期
overDay = "02-07,02-20,04-25,05-08,09-18,09-26,10-09";
// }else {
//
// }
Calendar min = Calendar.getInstance();
Calendar max = Calendar.getInstance();
min.setTime(startDate);
@ -235,7 +254,7 @@ public class NatureToDate {
while (min.before(max)) {
int i = max.get(Calendar.DAY_OF_WEEK);
//是节假前后加班日期 || (不是周末 && 不是节假日)
if (overDay.contains(df.format(max.getTime())) || ((i != 1 && i != 7) && !isHoliday.contains(df.format(max.getTime())))) {
if (overDay.contains(df.format(max.getTime())) || ((i != 1 && i != 7) && !holiday.contains(df.format(max.getTime())))) {
CronConstant.TaskDate taskDate = new CronConstant.TaskDate();
taskDate.setStartDate(DateUtil.getYMD(max.getTime()));
max.add(Calendar.DATE, 1);

Loading…
Cancel
Save