From 89897b7c2dee5dd79b3cbdfe8c6dfaa0abcfd580 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 02 二月 2021 13:15:43 +0800
Subject: [PATCH] 加入月考勤功能
---
service-common/src/main/java/com/java110/common/api/AttendanceClassApi.java | 74 ++++++++++++++++++++++++++++++++++--
1 files changed, 69 insertions(+), 5 deletions(-)
diff --git a/service-common/src/main/java/com/java110/common/api/AttendanceClassApi.java b/service-common/src/main/java/com/java110/common/api/AttendanceClassApi.java
index 3b33a48..12394e4 100644
--- a/service-common/src/main/java/com/java110/common/api/AttendanceClassApi.java
+++ b/service-common/src/main/java/com/java110/common/api/AttendanceClassApi.java
@@ -15,6 +15,7 @@
*/
package com.java110.common.api;
+import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.java110.common.bmo.attendanceClassesTask.IDeleteAttendanceClassesTaskBMO;
import com.java110.common.bmo.attendanceClassesTask.IGetAttendanceClassesTaskBMO;
@@ -30,9 +31,15 @@
import com.java110.po.attendanceClassesTaskDetail.AttendanceClassesTaskDetailPo;
import com.java110.utils.util.Assert;
import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.DateUtil;
+import com.java110.utils.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
+
+import java.util.Calendar;
+import java.util.Date;
+import java.util.List;
/**
* @ClassName AttendanceClassApi
@@ -79,11 +86,15 @@
public ResponseEntity<String> saveAttendanceClassesTask(@RequestBody JSONObject reqJson) {
Assert.hasKeyAndValue(reqJson, "classId", "璇锋眰鎶ユ枃涓湭鍖呭惈classId");
- Assert.hasKeyAndValue(reqJson, "storeId", "璇锋眰鎶ユ枃涓湭鍖呭惈storeId");
+
+ JSONArray attendanceClassesTaskDetails = reqJson.getJSONArray("attendanceClassesTaskDetails");
+
+ List<AttendanceClassesTaskDetailPo> attendanceClassesTaskDetailPos
+ = JSONArray.parseArray(attendanceClassesTaskDetails.toJSONString(), AttendanceClassesTaskDetailPo.class);
AttendanceClassesTaskPo attendanceClassesTaskPo = BeanConvertUtil.covertBean(reqJson, AttendanceClassesTaskPo.class);
- return saveAttendanceClassesTaskBMOImpl.save(attendanceClassesTaskPo);
+ return saveAttendanceClassesTaskBMOImpl.save(attendanceClassesTaskPo, attendanceClassesTaskDetailPos);
}
/**
@@ -136,11 +147,24 @@
@RequestMapping(value = "/queryAttendanceClassesTask", method = RequestMethod.GET)
public ResponseEntity<String> queryAttendanceClassesTask(@RequestHeader(value = "store-id") String storeId,
@RequestParam(value = "page") int page,
- @RequestParam(value = "row") int row) {
+ @RequestParam(value = "row") int row,
+ @RequestParam(value = "classId", required = false) String classId,
+ @RequestParam(value = "staffId", required = false) String staffId,
+ @RequestParam(name = "date", required = false) String date) throws Exception {
AttendanceClassesTaskDto attendanceClassesTaskDto = new AttendanceClassesTaskDto();
attendanceClassesTaskDto.setPage(page);
attendanceClassesTaskDto.setRow(row);
attendanceClassesTaskDto.setStoreId(storeId);
+ attendanceClassesTaskDto.setClassId(classId);
+ if (!StringUtil.isEmpty(date)) {
+ Date reqDate = DateUtil.getDateFromString(date, DateUtil.DATE_FORMATE_STRING_B);
+
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(reqDate);
+ attendanceClassesTaskDto.setTaskYear(calendar.get(Calendar.YEAR) + "");
+ attendanceClassesTaskDto.setTaskMonth((calendar.get(Calendar.MONTH) + 1) + "");
+ attendanceClassesTaskDto.setTaskDay(calendar.get(Calendar.DAY_OF_MONTH) + "");
+ }
return getAttendanceClassesTaskBMOImpl.get(attendanceClassesTaskDto);
}
@@ -176,12 +200,17 @@
public ResponseEntity<String> updateAttendanceClassesTaskDetail(@RequestBody JSONObject reqJson) {
Assert.hasKeyAndValue(reqJson, "taskId", "璇锋眰鎶ユ枃涓湭鍖呭惈taskId");
- Assert.hasKeyAndValue(reqJson, "storeId", "璇锋眰鎶ユ枃涓湭鍖呭惈storeId");
Assert.hasKeyAndValue(reqJson, "detailId", "detailId涓嶈兘涓虹┖");
+
+ boolean finishAllTaskDetail = false;
+
+ if (reqJson.containsKey("finishAllTaskDetail") && reqJson.getBoolean("finishAllTaskDetail")) {
+ finishAllTaskDetail = true;
+ }
AttendanceClassesTaskDetailPo attendanceClassesTaskDetailPo = BeanConvertUtil.covertBean(reqJson, AttendanceClassesTaskDetailPo.class);
- return updateAttendanceClassesTaskDetailBMOImpl.update(attendanceClassesTaskDetailPo);
+ return updateAttendanceClassesTaskDetailBMOImpl.update(attendanceClassesTaskDetailPo, finishAllTaskDetail);
}
/**
@@ -222,4 +251,39 @@
return getAttendanceClassesTaskDetailBMOImpl.get(attendanceClassesTaskDetailDto);
}
+ /**
+ * 娣诲姞璁惧鎺ュ彛绫�
+ * @serviceCode /attendanceClass/getMonthAttendance
+ * @path /app/attendanceClass/getMonthAttendance
+ * @return 鎴愬姛鎴栬�呭け璐�
+ * @throws Exception
+ */
+ @RequestMapping(path = "/getMonthAttendance", method = RequestMethod.GET)
+ public ResponseEntity<String> getMonthAttendance(
+ @RequestHeader(value = "store-id") String storeId,
+ @RequestParam int page,
+ @RequestParam int row,
+ @RequestParam(name = "classesId", required = false) String classesId,
+ @RequestParam(name = "staffName", required = false) String staffName,
+ @RequestParam(name = "date", required = false) String date,
+ @RequestParam(name = "departmentId", required = false) String departmentId
+ ) throws Exception {
+
+ AttendanceClassesTaskDto attendanceClassesTaskDto = new AttendanceClassesTaskDto();
+ attendanceClassesTaskDto.setPage(page);
+ attendanceClassesTaskDto.setRow(row);
+ attendanceClassesTaskDto.setClassId(classesId);
+ attendanceClassesTaskDto.setStaffName(staffName);
+ attendanceClassesTaskDto.setStoreId(storeId);
+
+ if (!StringUtil.isEmpty(date)) {
+ Date reqDate = DateUtil.getDateFromString(date, DateUtil.DATE_FORMATE_STRING_B);
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(reqDate);
+ attendanceClassesTaskDto.setTaskYear(calendar.get(Calendar.YEAR) + "");
+ attendanceClassesTaskDto.setTaskMonth((calendar.get(Calendar.MONTH) + 1) + "");
+ }
+ return getAttendanceClassesTaskDetailBMOImpl.getMonthAttendance(attendanceClassesTaskDto);
+ }
+
}
--
Gitblit v1.8.0