中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

湛江免費(fèi)建站模板短視頻剪輯培訓(xùn)班多少錢

湛江免費(fèi)建站模板,短視頻剪輯培訓(xùn)班多少錢,做網(wǎng)站可以賺錢嗎,大學(xué)生網(wǎng)頁(yè)設(shè)計(jì)實(shí)訓(xùn)報(bào)告文章目錄 一、建表:activity_holiday_info二、java代碼1、ActivitityHolidayController.java2、ActivityHolidayInfoService.java3、ActivityHolidayInfoServiceImpl.java 三、測(cè)試效果 有些場(chǎng)景需要計(jì)算數(shù)據(jù)非工作日的情況,eg:統(tǒng)計(jì)每個(gè)人每月工作日簽到…

文章目錄

  • 一、建表:activity_holiday_info
  • 二、java代碼
    • 1、ActivitityHolidayController.java
    • 2、ActivityHolidayInfoService.java
    • 3、ActivityHolidayInfoServiceImpl.java
  • 三、測(cè)試效果

有些場(chǎng)景需要計(jì)算數(shù)據(jù)非工作日的情況,eg:統(tǒng)計(jì)每個(gè)人每月工作日簽到情況等,就需要去除法定節(jié)假日和工作日,可以新建一個(gè)表用來(lái)存儲(chǔ)和維護(hù)這些非工作日。

一、建表:activity_holiday_info

CREATE TABLE `activity_holiday_info` (`holiday_id` int NOT NULL AUTO_INCREMENT,`holiday_name` varchar(20) DEFAULT NULL COMMENT '節(jié)假日名稱',`holiday_time` date DEFAULT NULL COMMENT '節(jié)假日時(shí)間',`remark` varchar(50) DEFAULT NULL COMMENT '備注',PRIMARY KEY (`holiday_id`)
) ENGINE=InnoDB  COMMENT='節(jié)假日';

二、java代碼

  • 可以先按照年月初始化周末數(shù)據(jù)入庫(kù) initHolidays();
  • 按照年份查詢已錄入系統(tǒng)的非工作日給前端,標(biāo)記在日歷📅中回顯展示,供運(yùn)營(yíng)人員查看和修改 queryHolidays()。
  • 特殊節(jié)假日帶官方發(fā)布該年份后,人工從前端日歷控件去修改維護(hù) mergeHolidays()。

1、ActivitityHolidayController.java

/*** @author qy* 非工作日維護(hù)*/
@RestController
@RequestMapping("/holidays")
@Slf4j
@Api(tags = "非工作日維護(hù)")
public class ActivitityHolidayController {@Autowiredprivate ActivityHolidayInfoService activityHolidayInfoService;/*** 非工作日維護(hù),周六周日按年份需初始化,特殊、節(jié)假日頁(yè)面維護(hù)*/@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);}/*** 查詢已錄入系統(tǒng)的非工作日給前端,標(biāo)記在日歷📅中展示。*/@ApiOperation(value = "查詢已錄入系統(tǒng)的非工作日")@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> {/*** 初始化當(dāng)年周六、周末*/void initHolidays(String year);/*** 查詢已錄入系統(tǒng)的非工作日*/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 {/*** 查詢改年份已錄入系統(tǒng)的非工作日*/@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);}// 根據(jù)年份和月份獲取當(dāng)月的所有日期public static List<String> getDayByMonth(int month, String year) {List<String> data = new ArrayList<>();try {Calendar c = Calendar.getInstance();// 獲取當(dāng)前的年份// int year = c.get(Calendar.YEAR);// 獲取本月的總天數(shù)int dayCount = c.getActualMaximum(Calendar.DAY_OF_MONTH);// 定義時(shí)間格式SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");// 開(kāi)始日期為當(dāng)前年月拼接1號(hào)Date startDate = sdf.parse(year + "-" + month + "-01");// 結(jié)束日期為當(dāng)前年月拼接該月最大天數(shù)Date endDate = sdf.parse(year + "-" + month + "-" + dayCount);// 設(shè)置calendar的開(kāi)始日期c.setTime(startDate);// 當(dāng)前時(shí)間小于等于設(shè)定的結(jié)束時(shí)間while (c.getTime().compareTo(endDate) <= 0) {String time = sdf.format(c.getTime());data.add(time);// 當(dāng)前日期加1c.add(Calendar.DATE, 1);}} catch (ParseException e) {e.printStackTrace();}return data;}/*** 初始化當(dāng)年周六、周末*/@Overridepublic   void initHolidays(String year) {try {// 拿到當(dāng)年中的所有日期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<>();// 添加當(dāng)年所有日期數(shù)據(jù)for (String date : dateList) {ActivityHolidayInfo serviceDate = new ActivityHolidayInfo();Calendar calendar = Calendar.getInstance();calendar.setTime(simpleDateFormat.parse(date));// index 值為 7 時(shí) 是周六  值為 1 時(shí)是末, 美國(guó)周六是一周的最后一天,周日是一周的最后一天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)) {//先刪除該年份數(shù)據(jù)remove(new QueryWrapper<ActivityHolidayInfo>().lambda().likeRight(ActivityHolidayInfo::getHolidayTime, year));//再批量插入saveBatch(activityHolidayInfo);}} catch (Exception e) {log.error("日期初始化錯(cuò)誤");e.printStackTrace();}}
}

三、測(cè)試效果

postman請(qǐng)求:http://x.x.x.x:8080/holidays/年份/initDate

數(shù)據(jù)庫(kù)情況:

在這里插入圖片描述

http://www.risenshineclean.com/news/32623.html

相關(guān)文章:

  • 剛建的網(wǎng)站百度搜不到聯(lián)合早報(bào) 即時(shí)消息
  • 推廣網(wǎng)站怎么建設(shè)和維護(hù)seo資訊
  • 產(chǎn)品外包裝設(shè)計(jì)網(wǎng)站直通車關(guān)鍵詞優(yōu)化
  • 鄭州天梯網(wǎng)站制作seo研究協(xié)會(huì)
  • wordpress左邊欄網(wǎng)頁(yè)seo優(yōu)化
  • 哪家公司建網(wǎng)站好推廣代理平臺(tái)
  • 開(kāi)州快速建網(wǎng)站江蘇網(wǎng)頁(yè)定制
  • 外包做網(wǎng)站賺錢么讓手機(jī)變流暢的軟件下載
  • 網(wǎng)站站內(nèi)消息設(shè)計(jì)方案優(yōu)化大師官方
  • 個(gè)人網(wǎng)站建站指南營(yíng)銷策劃書模板
  • 網(wǎng)站創(chuàng)建時(shí)間查詢?cè)鯓油茝Vapp別人才愿意下載
  • 網(wǎng)站建設(shè)banner內(nèi)部?jī)?yōu)化
  • 做國(guó)外百科知識(shí)網(wǎng)站百度代理查詢
  • 網(wǎng)站動(dòng)態(tài)海報(bào)效果怎么做的寧波seo搜索引擎優(yōu)化公司
  • 做網(wǎng)頁(yè)賺錢seo排名優(yōu)化方式
  • 淘寶購(gòu)物券網(wǎng)站怎么做童程童美少兒編程怎樣收費(fèi)
  • 哪里有網(wǎng)站建設(shè)多少錢百度問(wèn)一問(wèn)付費(fèi)咨詢
  • 西寧網(wǎng)站建設(shè)嘉薦君博lseo優(yōu)化的主要內(nèi)容
  • wap歌詞廊坊seo推廣
  • 服務(wù)器 網(wǎng)站 app網(wǎng)絡(luò)營(yíng)銷的收獲與體會(huì)
  • 汽車做網(wǎng)站廣州網(wǎng)站建設(shè)推薦
  • 順的做網(wǎng)站便宜嗎seo主要優(yōu)化
  • wordpress 添加錨點(diǎn)seo服務(wù)外包客服
  • 怎樣更新網(wǎng)站內(nèi)容網(wǎng)絡(luò)營(yíng)銷五種方法
  • wordpress播客主題濰坊seo招聘
  • 前端基礎(chǔ)知識(shí)谷歌官方seo入門指南
  • 醫(yī)院的網(wǎng)站關(guān)鍵詞定位一般是什么seo優(yōu)化團(tuán)隊(duì)
  • 合肥大型網(wǎng)站sem是指什么
  • 更換網(wǎng)站模板比優(yōu)化更好的詞是
  • 網(wǎng)站開(kāi)發(fā)的形式是app營(yíng)銷