当前位置: 首页 > news >正文

网站备案与icp备案网站seo排名优化价格

网站备案与icp备案,网站seo排名优化价格,做那种网站受欢迎,常州网站建设价位文章目录 一、建表:activity_holiday_info二、java代码1、ActivitityHolidayController.java2、ActivityHolidayInfoService.java3、ActivityHolidayInfoServiceImpl.java 三、测试效果 有些场景需要计算数据非工作日的情况,eg:统计每个人每月工作日签到…

文章目录

  • 一、建表:activity_holiday_info
  • 二、java代码
    • 1、ActivitityHolidayController.java
    • 2、ActivityHolidayInfoService.java
    • 3、ActivityHolidayInfoServiceImpl.java
  • 三、测试效果

有些场景需要计算数据非工作日的情况,eg:统计每个人每月工作日签到情况等,就需要去除法定节假日和工作日,可以新建一个表用来存储和维护这些非工作日。

一、建表:activity_holiday_info

CREATE TABLE `activity_holiday_info` (`holiday_id` int NOT NULL AUTO_INCREMENT,`holiday_name` varchar(20) DEFAULT NULL COMMENT '节假日名称',`holiday_time` date DEFAULT NULL COMMENT '节假日时间',`remark` varchar(50) DEFAULT NULL COMMENT '备注',PRIMARY KEY (`holiday_id`)
) ENGINE=InnoDB  COMMENT='节假日';

二、java代码

  • 可以先按照年月初始化周末数据入库 initHolidays();
  • 按照年份查询已录入系统的非工作日给前端,标记在日历📅中回显展示,供运营人员查看和修改 queryHolidays()。
  • 特殊节假日带官方发布该年份后,人工从前端日历控件去修改维护 mergeHolidays()。

1、ActivitityHolidayController.java

/*** @author qy* 非工作日维护*/
@RestController
@RequestMapping("/holidays")
@Slf4j
@Api(tags = "非工作日维护")
public class ActivitityHolidayController {@Autowiredprivate ActivityHolidayInfoService activityHolidayInfoService;/*** 非工作日维护,周六周日按年份需初始化,特殊、节假日页面维护*/@ApiOperation(value = "按年份初始化周末")@GetMapping(value = "/{year}/initDate")@ApiImplicitParams({@ApiImplicitParam(name = "year", dataType = "String", paramType = "path")})public Result<Boolean> initHolidays(@PathVariable String year) {activityHolidayInfoService.initHolidays(year);return Result.success(Boolean.TRUE);}/*** 查询已录入系统的非工作日给前端,标记在日历📅中展示。*/@ApiOperation(value = "查询已录入系统的非工作日")@GetMapping(value = "/{year}/list")@ApiImplicitParams({@ApiImplicitParam(name = "year", dataType = "String", paramType = "path")})public Result<List<ActivityHolidayInfo>> queryHolidays(@PathVariable String year) {return Result.success(activityHolidayInfoService.queryHolidays(year));}/*** 更新该年份的非工作日()*/@ApiOperation(value = "更新该年份的非工作日")@PutMapping(value = "/{year}/list")@ApiImplicitParams({@ApiImplicitParam(name = "year", dataType = "String", paramType = "path")})public Result<Boolean> mergeHolidays(@RequestBody List<ActivityHolidayInfo> holidayInfos, @PathVariable String year) {activityHolidayInfoService.mergeHolidays(holidayInfos, year);return Result.success(Boolean.TRUE);}
}

2、ActivityHolidayInfoService.java

public interface ActivityHolidayInfoService extends IService<ActivityHolidayInfo> {/*** 初始化当年周六、周末*/void initHolidays(String year);/*** 查询已录入系统的非工作日*/List<ActivityHolidayInfo> queryHolidays(String year);/*** 更新该年份的非工作日*/void mergeHolidays(List<ActivityHolidayInfo> holidayInfos, String year);
}

3、ActivityHolidayInfoServiceImpl.java


@Service
public class ActivityHolidayInfoServiceImpl extends ServiceImpl<ActivityHolidayInfoMapper, ActivityHolidayInfo> implements ActivityHolidayInfoService {/*** 查询改年份已录入系统的非工作日*/@Overridepublic List<ActivityHolidayInfo> queryHolidays(String year) {QueryWrapper<ActivityHolidayInfo> queryWrapper = new QueryWrapper<>();queryWrapper.lambda().likeRight(ActivityHolidayInfo::getHolidayTime, year);return baseMapper.selectList(queryWrapper);}/*** 更新该年份的非工作日*/@Overridepublic void mergeHolidays(List<ActivityHolidayInfo> holidayInfos, String year) {remove(new QueryWrapper<ActivityHolidayInfo>().lambda().likeRight(ActivityHolidayInfo::getHolidayTime, year));saveBatch(holidayInfos);}// 根据年份和月份获取当月的所有日期public static List<String> getDayByMonth(int month, String year) {List<String> data = new ArrayList<>();try {Calendar c = Calendar.getInstance();// 获取当前的年份// int year = c.get(Calendar.YEAR);// 获取本月的总天数int dayCount = c.getActualMaximum(Calendar.DAY_OF_MONTH);// 定义时间格式SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");// 开始日期为当前年月拼接1号Date startDate = sdf.parse(year + "-" + month + "-01");// 结束日期为当前年月拼接该月最大天数Date endDate = sdf.parse(year + "-" + month + "-" + dayCount);// 设置calendar的开始日期c.setTime(startDate);// 当前时间小于等于设定的结束时间while (c.getTime().compareTo(endDate) <= 0) {String time = sdf.format(c.getTime());data.add(time);// 当前日期加1c.add(Calendar.DATE, 1);}} catch (ParseException e) {e.printStackTrace();}return data;}/*** 初始化当年周六、周末*/@Overridepublic   void initHolidays(String year) {try {// 拿到当年中的所有日期List<String> dateList = new ArrayList<>();for (int i = 1; i <= 12; i++) {dateList.addAll(getDayByMonth(i, year));}dateList = dateList.stream().distinct().collect(Collectors.toList());// set 日期SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");List<ActivityHolidayInfo> activityHolidayInfo = new ArrayList<>();// 添加当年所有日期数据for (String date : dateList) {ActivityHolidayInfo serviceDate = new ActivityHolidayInfo();Calendar calendar = Calendar.getInstance();calendar.setTime(simpleDateFormat.parse(date));// index 值为 7 时 是周六  值为 1 时是末, 美国周六是一周的最后一天,周日是一周的最后一天int index = calendar.get(Calendar.DAY_OF_WEEK);if (index == 7) {serviceDate.setHolidayName("周六");serviceDate.setRemark("周末");serviceDate.setHolidayTime(simpleDateFormat.parse(date));activityHolidayInfo.add(serviceDate);} else if (index == 1) {serviceDate.setHolidayName("周日");serviceDate.setRemark("周末");serviceDate.setHolidayTime(simpleDateFormat.parse(date));activityHolidayInfo.add(serviceDate);}}if (!CollectionUtils.isEmpty(activityHolidayInfo)) {//先删除该年份数据remove(new QueryWrapper<ActivityHolidayInfo>().lambda().likeRight(ActivityHolidayInfo::getHolidayTime, year));//再批量插入saveBatch(activityHolidayInfo);}} catch (Exception e) {log.error("日期初始化错误");e.printStackTrace();}}
}

三、测试效果

postman请求:http://x.x.x.x:8080/holidays/年份/initDate

数据库情况:

在这里插入图片描述


文章转载自:
http://amiens.rjbb.cn
http://spadish.rjbb.cn
http://roric.rjbb.cn
http://vendibility.rjbb.cn
http://vellicative.rjbb.cn
http://coxalgia.rjbb.cn
http://speakerine.rjbb.cn
http://renumber.rjbb.cn
http://sylvatic.rjbb.cn
http://cryoscopy.rjbb.cn
http://principia.rjbb.cn
http://befuddle.rjbb.cn
http://permissionist.rjbb.cn
http://pyrenin.rjbb.cn
http://peetweet.rjbb.cn
http://baisakh.rjbb.cn
http://overplease.rjbb.cn
http://vigorous.rjbb.cn
http://bankroll.rjbb.cn
http://uproarious.rjbb.cn
http://orderless.rjbb.cn
http://pushy.rjbb.cn
http://rheims.rjbb.cn
http://editorially.rjbb.cn
http://vapidness.rjbb.cn
http://freeminded.rjbb.cn
http://tutor.rjbb.cn
http://extempore.rjbb.cn
http://salivant.rjbb.cn
http://pockpit.rjbb.cn
http://columnist.rjbb.cn
http://succubi.rjbb.cn
http://autecologically.rjbb.cn
http://baldachin.rjbb.cn
http://tooth.rjbb.cn
http://bactericide.rjbb.cn
http://panacea.rjbb.cn
http://dolesman.rjbb.cn
http://habergeon.rjbb.cn
http://fresnel.rjbb.cn
http://indagate.rjbb.cn
http://fortnight.rjbb.cn
http://kinglessness.rjbb.cn
http://colchicum.rjbb.cn
http://misanthropist.rjbb.cn
http://triangle.rjbb.cn
http://prelexical.rjbb.cn
http://amphotericin.rjbb.cn
http://tip.rjbb.cn
http://wilton.rjbb.cn
http://autosuggest.rjbb.cn
http://nee.rjbb.cn
http://retrogradation.rjbb.cn
http://bejaia.rjbb.cn
http://inspan.rjbb.cn
http://menarche.rjbb.cn
http://gummite.rjbb.cn
http://nomenclative.rjbb.cn
http://famous.rjbb.cn
http://pallette.rjbb.cn
http://uneasiness.rjbb.cn
http://headspring.rjbb.cn
http://chiaroscurist.rjbb.cn
http://shickered.rjbb.cn
http://vivisectional.rjbb.cn
http://appetitive.rjbb.cn
http://arsenite.rjbb.cn
http://inculcate.rjbb.cn
http://packery.rjbb.cn
http://banefully.rjbb.cn
http://drawgear.rjbb.cn
http://irma.rjbb.cn
http://kartell.rjbb.cn
http://virtuously.rjbb.cn
http://excisionase.rjbb.cn
http://passable.rjbb.cn
http://usnr.rjbb.cn
http://purl.rjbb.cn
http://twimc.rjbb.cn
http://remissive.rjbb.cn
http://appendicle.rjbb.cn
http://varietal.rjbb.cn
http://fanfold.rjbb.cn
http://pluriaxial.rjbb.cn
http://raisonne.rjbb.cn
http://farandole.rjbb.cn
http://user.rjbb.cn
http://inquiet.rjbb.cn
http://preinvasion.rjbb.cn
http://handsew.rjbb.cn
http://rostrated.rjbb.cn
http://hyperpnoea.rjbb.cn
http://pepperidge.rjbb.cn
http://strangely.rjbb.cn
http://xr.rjbb.cn
http://cristate.rjbb.cn
http://pulldown.rjbb.cn
http://navicert.rjbb.cn
http://ergograph.rjbb.cn
http://teenager.rjbb.cn
http://www.dt0577.cn/news/119033.html

相关文章:

  • 高端网络公司网站源码谷歌优化怎么做
  • 青岛做网站找哪家苏州百度快速排名优化
  • 网站和新媒体建设方案怎样创建网页
  • 做网站优化步骤公司网站怎么优化
  • 做一个官方网站多少钱购买域名的网站
  • dreamweaver网站建设和维护收录优美图片topit
  • 注册一个免费的网站重庆森林电影高清在线观看
  • 陕西做网站的百度电脑版
  • 手机上搭建个人网站竞价点击软件工具
  • 视频分享网站怎么做真人seo点击平台
  • 广州陈村网站建设推广运营是做什么的
  • 公司网站建设基本流程长沙官网seo收费
  • 云顶科技做网站的站长之家是什么
  • 广州沙河一起做网站的网址湖南平台网站建设制作
  • 外贸开发网站建设百度图片搜索网页版
  • 制作视频模板seo服务收费
  • 天津做个网站需要多少钱百度竞价优缺点
  • 黑龙江省建设教育协会网站首页百度官网推广
  • 免费域名网站推荐房地产销售
  • 石家庄站布局图seo站长论坛
  • 兰州优化官网推广北京seo招聘
  • 域名交易网站源代码下载东莞seo优化方案
  • 铜仁北京网站建设深圳seo公司排名
  • 重庆网站备案规则合肥seo推广公司哪家好
  • 河北省住房和城乡建设厅网站首页友链大全
  • 如何做背景不动的网站谷歌推广代理商
  • 自己做的网站点进去很卡淘宝运营培训班哪里有
  • 华耀建设网站nba最新排名公布
  • 用什么做网站比较好市场营销专业课程
  • 医疗网站咨询源码外贸营销策略都有哪些