From 2e770d5ad27afd5cec0ea8759ca37504a883b42f Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期三, 08 五月 2024 14:50:25 +0800
Subject: [PATCH] 2024-5-8 绩效管理-班次后端开发完成
---
performance-server/src/main/java/com/yuanchu/mom/mapper/PerformanceShiftMapper.java | 5 ++---
performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml | 9 +++++----
performance-server/src/main/java/com/yuanchu/mom/service/impl/PerformanceShiftServiceImpl.java | 39 ++++++++++++++++++++-------------------
performance-server/src/main/java/com/yuanchu/mom/service/PerformanceShiftService.java | 3 +--
performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java | 2 +-
5 files changed, 29 insertions(+), 29 deletions(-)
diff --git a/performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java b/performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java
index bc1cb77..158c0ee 100644
--- a/performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java
+++ b/performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java
@@ -37,7 +37,7 @@
@ApiOperation(value = "缁╂晥绠$悊-鐝-鍒嗛〉鏌ヨ")
@PostMapping("page")
- public Result<?> performanceShiftPage(Integer size, Integer current, LocalDateTime time, String userName, String laboratory) {
+ public Result<?> performanceShiftPage(Integer size, Integer current, String time, String userName, String laboratory) {
return Result.success(performanceShiftService.performanceShiftPage(new Page<>(current, size), time, userName, laboratory));
}
diff --git a/performance-server/src/main/java/com/yuanchu/mom/mapper/PerformanceShiftMapper.java b/performance-server/src/main/java/com/yuanchu/mom/mapper/PerformanceShiftMapper.java
index 3f54661..e126761 100644
--- a/performance-server/src/main/java/com/yuanchu/mom/mapper/PerformanceShiftMapper.java
+++ b/performance-server/src/main/java/com/yuanchu/mom/mapper/PerformanceShiftMapper.java
@@ -1,12 +1,11 @@
package com.yuanchu.mom.mapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.mom.pojo.PerformanceShift;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.data.repository.query.Param;
-import java.time.LocalDateTime;
import java.util.Map;
/**
@@ -21,7 +20,7 @@
IPage<Map<String, Object>> performanceShiftPage(
Page<Object> page,
- @Param("time") LocalDateTime time,
+ @Param("time") String time,
@Param("userName") String userName,
@Param("laboratory") String laboratory
);
diff --git a/performance-server/src/main/java/com/yuanchu/mom/service/PerformanceShiftService.java b/performance-server/src/main/java/com/yuanchu/mom/service/PerformanceShiftService.java
index 7e9a5a5..1274d30 100644
--- a/performance-server/src/main/java/com/yuanchu/mom/service/PerformanceShiftService.java
+++ b/performance-server/src/main/java/com/yuanchu/mom/service/PerformanceShiftService.java
@@ -6,7 +6,6 @@
import com.yuanchu.mom.dto.PerformanceShiftAddDto;
import com.yuanchu.mom.pojo.PerformanceShift;
-import java.time.LocalDateTime;
import java.util.Map;
/**
@@ -21,7 +20,7 @@
void performanceShiftAdd(PerformanceShiftAddDto performanceShiftAddDto);
- IPage<Map<String, Object>> performanceShiftPage(Page<Object> page, LocalDateTime time, String userName, String laboratory);
+ IPage<Map<String, Object>> performanceShiftPage(Page<Object> page, String time, String userName, String laboratory);
void performanceShiftUpdate(String shift, Integer id);
}
diff --git a/performance-server/src/main/java/com/yuanchu/mom/service/impl/PerformanceShiftServiceImpl.java b/performance-server/src/main/java/com/yuanchu/mom/service/impl/PerformanceShiftServiceImpl.java
index d10ef88..fcd6b5c 100644
--- a/performance-server/src/main/java/com/yuanchu/mom/service/impl/PerformanceShiftServiceImpl.java
+++ b/performance-server/src/main/java/com/yuanchu/mom/service/impl/PerformanceShiftServiceImpl.java
@@ -48,35 +48,36 @@
}
@Override
- public IPage<Map<String, Object>> performanceShiftPage(Page<Object> page, LocalDateTime time, String userName, String laboratory) {
+ public IPage<Map<String, Object>> performanceShiftPage(Page<Object> page, String time, String userName, String laboratory) {
IPage<Map<String, Object>> mapIPage = baseMapper.performanceShiftPage(page, time, userName, laboratory);
List<Enums> shiftType = enumService.selectEnumByCategory("鐝绫诲瀷");
for (Map<String, Object> i : mapIPage.getRecords()) {
String[] shiftTimes = i.get("shiftTime").toString().split(";");
int totalAttendance = 0;
- Map<Object, Object> map = new HashMap<>();
- for (Enums enums : shiftType) {
- int num = 0;
- // 鍒嗗壊鏃ユ湡
- for (String shiftTime : shiftTimes) {
- Map<Object, Object> hashMap = new HashMap<>();
- String[] shiftTimeAndShift = shiftTime.split("锛�");
+ List<Object> map = new ArrayList<>();
+ // 鍒嗗壊鏃ユ湡
+ for (String shiftTime : shiftTimes) {
+ Map<Object, Object> hashMap = new HashMap<>();
+ String[] shiftTimeAndShift = shiftTime.split("锛�");
+ for (Enums enums : shiftType) {
+ int num = 0;
if (enums.getValue().equals(shiftTimeAndShift[1])) {
num++;
}
- hashMap.put("id", shiftTimeAndShift[2]);
- hashMap.put("shift", shiftTimeAndShift[1]);
- hashMap.put("weekly", DateUtil.weekOfYear(DateUtil.parse(shiftTimeAndShift[0])));
- hashMap.put("time", shiftTimeAndShift[0]);
- map.put(getWeek(shiftTimeAndShift[0]), hashMap);
+ i.put(enums.getLabel(), num);
+ if (!enums.getValue().equals("3") && !enums.getValue().equals("4")) {
+ i.put("totalAttendance", totalAttendance += num);
+ }
}
- i.put(enums.getLabel(), num);
- i.put("list", map);
- if(!enums.getValue().equals("3") && !enums.getValue().equals("4")) {
- i.put("totalAttendance", totalAttendance += num);
- }
- i.remove("shiftTime");
+ hashMap.put("id", shiftTimeAndShift[2]);
+ hashMap.put("shift", shiftTimeAndShift[1]);
+ hashMap.put("weekly", DateUtil.weekOfYear(DateUtil.parse(shiftTimeAndShift[0])));
+ hashMap.put("time", shiftTimeAndShift[0]);
+ hashMap.put("headerTime", getWeek(shiftTimeAndShift[0]));
+ map.add(hashMap);
}
+ i.put("list", map);
+ i.remove("shiftTime");
}
return mapIPage;
}
diff --git a/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml b/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml
index a1c5d61..cc7e1d4 100644
--- a/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml
+++ b/performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml
@@ -8,15 +8,16 @@
GROUP_CONCAT(s.work_time, '锛�', s.shift, '锛�', s.id SEPARATOR ';') AS shiftTime
FROM performance_shift s
LEFT JOIN user u on u.id = s.user_id
- GROUP BY u.id
<where>
<if test="time != null and time != ''">
- and s.work_time in DATE_FORMAT(#{time}, '%Y-%m-%d')
+ and DATE_FORMAT(s.work_time, '%Y-%m') = DATE_FORMAT(#{time}, '%Y-%m' )
</if>
<if test="userName != null and userName != ''">
- and s.name concat('%', #{userName}, '%')
+ and u.name like concat('%', #{userName}, '%')
</if>
- <if test="laboratory != null and laboratory != ''"></if>
+ <if test="laboratory != null and laboratory != ''">
+ </if>
</where>
+ GROUP BY u.id
</select>
</mapper>
--
Gitblit v1.9.3