提交 93856473 authored 作者: 李秋林's avatar 李秋林

推送飞书-添加上下班打卡间隔时间(小时)

上级 2deff724
......@@ -28,6 +28,7 @@ target/
build/
!**/src/main/**/build/
!**/src/test/**/build/
/logs
### VS Code ###
.vscode/
package com.wangxiaolu.export.service.impl;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
import com.wangxiaolu.export.mapper.FeishuSheetRecordMapper;
......@@ -18,6 +19,7 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import javax.swing.*;
import java.util.*;
import java.util.stream.Collectors;
......@@ -148,12 +150,19 @@ public class ActivityToFeishuSheetServiceImpl implements ActivityToFeishuSheetSe
// S-V: 上班打卡时间/地点 午休下班打卡时间/地点 午休上班打卡时间/地点 下班打卡时间/地点
if (Objects.nonNull(clockDo)){
List<Object> rowClockData = new ArrayList<>();
if (Objects.nonNull(clockDo.getClockInTime()) && Objects.nonNull(clockDo.getClockOutTime())){
long tl = DateUtil.between(clockDo.getClockInTime(), clockDo.getClockOutTime(), DateUnit.MINUTE);
long hour = tl / 60;
long minute = tl % 60;
rowClockData.add(String.valueOf(hour) + minute);
}else {
rowClockData.add("0");
}
rowClockData.add("【"+DateUtil.formatDateTime(clockDo.getClockInTime())+"】" + clockDo.getClockInAddress());
rowClockData.add("【"+DateUtil.formatDateTime(clockDo.getNoonClockOutTime())+"】" + clockDo.getNoonClockOutAddress());
rowClockData.add("【"+DateUtil.formatDateTime(clockDo.getNoonClockInTime())+"】" + clockDo.getNoonClockInAddress());
rowClockData.add("【"+DateUtil.formatDateTime(clockDo.getClockOutTime())+"】" + clockDo.getClockOutAddress());
String range =String.format(rangFormat, "S", "V");
String range =String.format(rangFormat, "S", "W");
updateClockData(range,rowClockData);
}
......@@ -200,22 +209,22 @@ public class ActivityToFeishuSheetServiceImpl implements ActivityToFeishuSheetSe
Map<Integer, String> clockMap = activityClock.stream().collect(Collectors.toMap(TemporaryActivityPhotoDO::getType, TemporaryActivityPhotoDO::getPhotoUrl));
// 上班打卡照片 >>>
if (clockMap.containsKey(4)) {
valuesImageToSheet(String.format(rangFormat, "W", "W"), clockMap.get(4));
valuesImageToSheet(String.format(rangFormat, "X", "X"), clockMap.get(4));
}
// 午休下班打卡照片 >>>
if (clockMap.containsKey(5)) {
valuesImageToSheetByRobot2(String.format(rangFormat, "X", "X"), clockMap.get(5));
valuesImageToSheetByRobot2(String.format(rangFormat, "Y", "Y"), clockMap.get(5));
}
// 午休上班打卡照片 >>>
if (clockMap.containsKey(6)) {
valuesImageToSheet(String.format(rangFormat, "Y", "Y"), clockMap.get(6));
valuesImageToSheet(String.format(rangFormat, "Z", "Z"), clockMap.get(6));
}
// 下班打卡照片 >>>
if (clockMap.containsKey(7)) {
valuesImageToSheetByRobot2(String.format(rangFormat, "Z", "Z"), clockMap.get(7));
valuesImageToSheetByRobot2(String.format(rangFormat, "AA", "AA"), clockMap.get(7));
}
log.info("上传打卡照片完成,行号:{}", rowNumStr);
......@@ -226,22 +235,22 @@ public class ActivityToFeishuSheetServiceImpl implements ActivityToFeishuSheetSe
int photosType1Size = photosType1.size();
// 推广试吃照片1 >>>
if (!(photosType1Size < 1 || Objects.isNull(photosType1.get(0)))) {
valuesImageToSheet(String.format(rangFormat, "AA", "AA"), photosType1.get(0).getPhotoUrl());
valuesImageToSheet(String.format(rangFormat, "AB", "AB"), photosType1.get(0).getPhotoUrl());
}
// 推广试吃照片2 >>>
if (!(photosType1Size < 2 || Objects.isNull(photosType1.get(1)))) {
valuesImageToSheetByRobot2(String.format(rangFormat, "AB", "AB"), photosType1.get(1).getPhotoUrl());
valuesImageToSheetByRobot2(String.format(rangFormat, "AC", "AC"), photosType1.get(1).getPhotoUrl());
}
// 推广试吃照片3 >>>
if (!(photosType1Size < 3 || Objects.isNull(photosType1.get(2)))) {
valuesImageToSheet(String.format(rangFormat, "AC", "AC"), photosType1.get(2).getPhotoUrl());
valuesImageToSheet(String.format(rangFormat, "AD", "AD"), photosType1.get(2).getPhotoUrl());
}
// 推广试吃照片4 >>>
if (!(photosType1Size < 4 || Objects.isNull(photosType1.get(3)))) {
valuesImageToSheetByRobot2(String.format(rangFormat, "AD", "AD"), photosType1.get(3).getPhotoUrl());
valuesImageToSheetByRobot2(String.format(rangFormat, "AE", "AE"), photosType1.get(3).getPhotoUrl());
}
log.info("上传推广-试吃照片完成,行号:{}", rowNumStr);
......@@ -252,22 +261,22 @@ public class ActivityToFeishuSheetServiceImpl implements ActivityToFeishuSheetSe
int photosType2Size = photosType2.size();
// 推广互动照片1 >>>
if (!(photosType2Size < 1 || Objects.isNull(photosType2.get(0)))) {
valuesImageToSheet(String.format(rangFormat, "AE", "AE"), photosType2.get(0).getPhotoUrl());
valuesImageToSheet(String.format(rangFormat, "AF", "AF"), photosType2.get(0).getPhotoUrl());
}
// 推广互动照片2 >>>
if (!(photosType2Size < 2 || Objects.isNull(photosType2.get(1)))) {
valuesImageToSheetByRobot2(String.format(rangFormat, "AF", "AF"), photosType2.get(1).getPhotoUrl());
valuesImageToSheetByRobot2(String.format(rangFormat, "AG", "AG"), photosType2.get(1).getPhotoUrl());
}
// 推广互动照片3 >>>
if (!(photosType2Size < 3 || Objects.isNull(photosType2.get(2)))) {
valuesImageToSheet(String.format(rangFormat, "AG", "AG"), photosType2.get(2).getPhotoUrl());
valuesImageToSheet(String.format(rangFormat, "AH", "AH"), photosType2.get(2).getPhotoUrl());
}
// 推广互动照片4 >>>
if (!(photosType2Size < 4 || Objects.isNull(photosType2.get(3)))) {
valuesImageToSheetByRobot2(String.format(rangFormat, "AH", "AH"), photosType2.get(3).getPhotoUrl());
valuesImageToSheetByRobot2(String.format(rangFormat, "AI", "AI"), photosType2.get(3).getPhotoUrl());
}
log.info("上传推广-互动照片完成,行号:{}", rowNumStr);
......@@ -278,22 +287,22 @@ public class ActivityToFeishuSheetServiceImpl implements ActivityToFeishuSheetSe
int photosType3Size = photosType3.size();
// 推广成交照片1 >>>
if (!(photosType3Size < 1 || Objects.isNull(photosType3.get(0)))) {
valuesImageToSheet(String.format(rangFormat, "AI", "AI"), photosType3.get(0).getPhotoUrl());
valuesImageToSheet(String.format(rangFormat, "AJ", "AJ"), photosType3.get(0).getPhotoUrl());
}
// 推广成交照片2 >>>
if (!(photosType3Size < 2 || Objects.isNull(photosType3.get(1)))) {
valuesImageToSheetByRobot2(String.format(rangFormat, "AJ", "AJ"), photosType3.get(1).getPhotoUrl());
valuesImageToSheetByRobot2(String.format(rangFormat, "AK", "AK"), photosType3.get(1).getPhotoUrl());
}
// 推广成交照片3 >>>
if (!(photosType3Size < 3 || Objects.isNull(photosType3.get(2)))) {
valuesImageToSheet(String.format(rangFormat, "AK", "AK"), photosType3.get(2).getPhotoUrl());
valuesImageToSheet(String.format(rangFormat, "AL", "AL"), photosType3.get(2).getPhotoUrl());
}
// 推广成交照片4 >>>
if (!(photosType3Size < 4 || Objects.isNull(photosType3.get(3)))) {
valuesImageToSheetByRobot2(String.format(rangFormat, "AL", "AL"), photosType3.get(3).getPhotoUrl());
valuesImageToSheetByRobot2(String.format(rangFormat, "AM", "AM"), photosType3.get(3).getPhotoUrl());
}
log.info("上传推广-成交照片完成,行号:{}", rowNumStr);
}
......
package com.wangxiaolu.export;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.Date;
@SpringBootTest
class WangxiaoluExportApplicationTests {
@Test
void contextLoads() {
Date date1 = new Date(2024, 10, 28, 10, 02);
Date date2 = new Date(2024, 10, 28, 14, 46);
long between1 = DateUtil.between(date1, date2, DateUnit.HOUR);
long between2 = DateUtil.between(date1, date2, DateUnit.MINUTE) / 60;
System.out.println(between1);
System.out.println(between2);
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论