From 08528411802127b8856c34261ab34e8f2cd752c4 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期二, 28 二月 2023 12:31:38 +0800
Subject: [PATCH] 优化代码

---
 service-common/src/main/java/com/java110/common/api/AttendanceClassApi.java |  329 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 327 insertions(+), 2 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
old mode 100644
new mode 100755
index 1ee0b17..5b4c069
--- 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,8 +15,37 @@
  */
 package com.java110.common.api;
 
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.java110.common.bmo.attendanceClassesTask.IDeleteAttendanceClassesTaskBMO;
+import com.java110.common.bmo.attendanceClassesTask.IGetAttendanceClassesTaskBMO;
+import com.java110.common.bmo.attendanceClassesTask.ISaveAttendanceClassesTaskBMO;
+import com.java110.common.bmo.attendanceClassesTask.IUpdateAttendanceClassesTaskBMO;
+import com.java110.common.bmo.attendanceClassesTaskDetail.IDeleteAttendanceClassesTaskDetailBMO;
+import com.java110.common.bmo.attendanceClassesTaskDetail.IGetAttendanceClassesTaskDetailBMO;
+import com.java110.common.bmo.attendanceClassesTaskDetail.ISaveAttendanceClassesTaskDetailBMO;
+import com.java110.common.bmo.attendanceClassesTaskDetail.IUpdateAttendanceClassesTaskDetailBMO;
+import com.java110.common.bmo.attendanceLog.IDeleteAttendanceLogBMO;
+import com.java110.common.bmo.attendanceLog.IGetAttendanceLogBMO;
+import com.java110.common.bmo.attendanceLog.ISaveAttendanceLogBMO;
+import com.java110.common.bmo.attendanceLog.IUpdateAttendanceLogBMO;
+import com.java110.dto.attendanceClasses.AttendanceClassesTaskDetailDto;
+import com.java110.dto.attendanceClasses.AttendanceClassesTaskDto;
+import com.java110.dto.attendanceClasses.AttendanceLogDto;
+import com.java110.po.attendanceClassesTask.AttendanceClassesTaskPo;
+import com.java110.po.attendanceClassesTaskDetail.AttendanceClassesTaskDetailPo;
+import com.java110.po.attendanceLog.AttendanceLogPo;
+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
@@ -30,5 +59,301 @@
 @RequestMapping(value = "/attendanceClass")
 public class AttendanceClassApi {
 
+    @Autowired
+    private ISaveAttendanceClassesTaskBMO saveAttendanceClassesTaskBMOImpl;
+    @Autowired
+    private IUpdateAttendanceClassesTaskBMO updateAttendanceClassesTaskBMOImpl;
+    @Autowired
+    private IDeleteAttendanceClassesTaskBMO deleteAttendanceClassesTaskBMOImpl;
+
+    @Autowired
+    private IGetAttendanceClassesTaskBMO getAttendanceClassesTaskBMOImpl;
+
+
+    @Autowired
+    private ISaveAttendanceClassesTaskDetailBMO saveAttendanceClassesTaskDetailBMOImpl;
+    @Autowired
+    private IUpdateAttendanceClassesTaskDetailBMO updateAttendanceClassesTaskDetailBMOImpl;
+    @Autowired
+    private IDeleteAttendanceClassesTaskDetailBMO deleteAttendanceClassesTaskDetailBMOImpl;
+
+    @Autowired
+    private IGetAttendanceClassesTaskDetailBMO getAttendanceClassesTaskDetailBMOImpl;
+
+    @Autowired
+    private ISaveAttendanceLogBMO saveAttendanceLogBMOImpl;
+    @Autowired
+    private IUpdateAttendanceLogBMO updateAttendanceLogBMOImpl;
+    @Autowired
+    private IDeleteAttendanceLogBMO deleteAttendanceLogBMOImpl;
+
+    @Autowired
+    private IGetAttendanceLogBMO getAttendanceLogBMOImpl;
+
+    /**
+     * 寰俊淇濆瓨娑堟伅妯℃澘
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /attendanceClass/saveAttendanceClassesTask
+     * @path /app/attendanceClass/saveAttendanceClassesTask
+     */
+    @RequestMapping(value = "/saveAttendanceClassesTask", method = RequestMethod.POST)
+    public ResponseEntity<String> saveAttendanceClassesTask(@RequestBody JSONObject reqJson) {
+
+        Assert.hasKeyAndValue(reqJson, "classId", "璇锋眰鎶ユ枃涓湭鍖呭惈classId");
+
+        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, attendanceClassesTaskDetailPos);
+    }
+
+    /**
+     * 寰俊淇敼娑堟伅妯℃澘
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /attendanceClass/updateAttendanceClassesTask
+     * @path /app/attendanceClass/updateAttendanceClassesTask
+     */
+    @RequestMapping(value = "/updateAttendanceClassesTask", method = RequestMethod.POST)
+    public ResponseEntity<String> updateAttendanceClassesTask(@RequestBody JSONObject reqJson) {
+
+        Assert.hasKeyAndValue(reqJson, "classId", "璇锋眰鎶ユ枃涓湭鍖呭惈classId");
+        Assert.hasKeyAndValue(reqJson, "storeId", "璇锋眰鎶ユ枃涓湭鍖呭惈storeId");
+        Assert.hasKeyAndValue(reqJson, "taskId", "taskId涓嶈兘涓虹┖");
+
+
+        AttendanceClassesTaskPo attendanceClassesTaskPo = BeanConvertUtil.covertBean(reqJson, AttendanceClassesTaskPo.class);
+        return updateAttendanceClassesTaskBMOImpl.update(attendanceClassesTaskPo);
+    }
+
+    /**
+     * 寰俊鍒犻櫎娑堟伅妯℃澘
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /attendanceClass/deleteAttendanceClassesTask
+     * @path /app/attendanceClass/deleteAttendanceClassesTask
+     */
+    @RequestMapping(value = "/deleteAttendanceClassesTask", method = RequestMethod.POST)
+    public ResponseEntity<String> deleteAttendanceClassesTask(@RequestBody JSONObject reqJson) {
+        Assert.hasKeyAndValue(reqJson, "communityId", "灏忓尯ID涓嶈兘涓虹┖");
+
+        Assert.hasKeyAndValue(reqJson, "taskId", "taskId涓嶈兘涓虹┖");
+
+
+        AttendanceClassesTaskPo attendanceClassesTaskPo = BeanConvertUtil.covertBean(reqJson, AttendanceClassesTaskPo.class);
+        return deleteAttendanceClassesTaskBMOImpl.delete(attendanceClassesTaskPo);
+    }
+
+    /**
+     * 寰俊鍒犻櫎娑堟伅妯℃澘
+     *
+     * @param storeId 鍟嗘埛ID
+     * @return
+     * @serviceCode /attendanceClass/queryAttendanceClassesTask
+     * @path /app/attendanceClass/queryAttendanceClassesTask
+     */
+    @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 = "classId", required = false) String classId,
+                                                             @RequestParam(value = "staffId", required = false) String staffId,
+                                                             @RequestParam(value = "staffName", required = false) String staffName,
+                                                             @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);
+        attendanceClassesTaskDto.setStaffName(staffName);
+        attendanceClassesTaskDto.setStaffId(staffId);
+        if (!StringUtil.isEmpty(date)) {
+            String[] dates = date.split("-");
+            attendanceClassesTaskDto.setTaskYear(dates[0] + "");
+            attendanceClassesTaskDto.setTaskMonth(dates[1] + "");
+            if (dates.length == 3) {
+                attendanceClassesTaskDto.setTaskDay(dates[2] + "");
+            }
+        }
+        return getAttendanceClassesTaskBMOImpl.get(attendanceClassesTaskDto);
+    }
+
+
+    /**
+     * 寰俊淇濆瓨娑堟伅妯℃澘
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /attendanceClass/saveAttendanceClassesTaskDetail
+     * @path /app/attendanceClass/saveAttendanceClassesTaskDetail
+     */
+    @RequestMapping(value = "/saveAttendanceClassesTaskDetail", method = RequestMethod.POST)
+    public ResponseEntity<String> saveAttendanceClassesTaskDetail(@RequestBody JSONObject reqJson) {
+
+        Assert.hasKeyAndValue(reqJson, "taskId", "璇锋眰鎶ユ枃涓湭鍖呭惈taskId");
+        Assert.hasKeyAndValue(reqJson, "storeId", "璇锋眰鎶ユ枃涓湭鍖呭惈storeId");
+
+
+        AttendanceClassesTaskDetailPo attendanceClassesTaskDetailPo = BeanConvertUtil.covertBean(reqJson, AttendanceClassesTaskDetailPo.class);
+        return saveAttendanceClassesTaskDetailBMOImpl.save(attendanceClassesTaskDetailPo);
+    }
+
+    /**
+     * 寰俊淇敼娑堟伅妯℃澘
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /attendanceClass/updateAttendanceClassesTaskDetail
+     * @path /app/attendanceClass/updateAttendanceClassesTaskDetail
+     */
+    @RequestMapping(value = "/updateAttendanceClassesTaskDetail", method = RequestMethod.POST)
+    public ResponseEntity<String> updateAttendanceClassesTaskDetail(@RequestBody JSONObject reqJson) {
+
+        Assert.hasKeyAndValue(reqJson, "taskId", "璇锋眰鎶ユ枃涓湭鍖呭惈taskId");
+        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, finishAllTaskDetail);
+    }
+
+    /**
+     * 寰俊鍒犻櫎娑堟伅妯℃澘
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /attendanceClass/deleteAttendanceClassesTaskDetail
+     * @path /app/attendanceClass/deleteAttendanceClassesTaskDetail
+     */
+    @RequestMapping(value = "/deleteAttendanceClassesTaskDetail", method = RequestMethod.POST)
+    public ResponseEntity<String> deleteAttendanceClassesTaskDetail(@RequestBody JSONObject reqJson) {
+        Assert.hasKeyAndValue(reqJson, "communityId", "灏忓尯ID涓嶈兘涓虹┖");
+
+        Assert.hasKeyAndValue(reqJson, "detailId", "detailId涓嶈兘涓虹┖");
+
+
+        AttendanceClassesTaskDetailPo attendanceClassesTaskDetailPo = BeanConvertUtil.covertBean(reqJson, AttendanceClassesTaskDetailPo.class);
+        return deleteAttendanceClassesTaskDetailBMOImpl.delete(attendanceClassesTaskDetailPo);
+    }
+
+    /**
+     * 寰俊鍒犻櫎娑堟伅妯℃澘
+     *
+     * @param storeId 鍟嗘埛ID
+     * @return
+     * @serviceCode /attendanceClass/queryAttendanceClassesTaskDetail
+     * @path /app/attendanceClass/queryAttendanceClassesTaskDetail
+     */
+    @RequestMapping(value = "/queryAttendanceClassesTaskDetail", method = RequestMethod.GET)
+    public ResponseEntity<String> queryAttendanceClassesTaskDetail(@RequestHeader(value = "store-id") String storeId,
+                                                                   @RequestParam(value = "page") int page,
+                                                                   @RequestParam(value = "row") int row) {
+        AttendanceClassesTaskDetailDto attendanceClassesTaskDetailDto = new AttendanceClassesTaskDetailDto();
+        attendanceClassesTaskDetailDto.setPage(page);
+        attendanceClassesTaskDetailDto.setRow(row);
+        attendanceClassesTaskDetailDto.setStoreId(storeId);
+        return getAttendanceClassesTaskDetailBMOImpl.get(attendanceClassesTaskDetailDto);
+    }
+
+
+
+
+    /**
+     * 寰俊淇濆瓨娑堟伅妯℃澘
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /attendanceClass/saveAttendanceLog
+     * @path /app/attendanceClass/saveAttendanceLog
+     */
+    @RequestMapping(value = "/saveAttendanceLog", method = RequestMethod.POST)
+    public ResponseEntity<String> saveAttendanceLog(@RequestBody JSONObject reqJson) {
+
+        Assert.hasKeyAndValue(reqJson, "staffId", "璇锋眰鎶ユ枃涓湭鍖呭惈staffId");
+
+
+        AttendanceLogPo attendanceLogPo = BeanConvertUtil.covertBean(reqJson, AttendanceLogPo.class);
+        return saveAttendanceLogBMOImpl.save(attendanceLogPo);
+    }
+
+    /**
+     * 寰俊淇敼娑堟伅妯℃澘
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /attendanceClass/updateAttendanceLog
+     * @path /app/attendanceClass/updateAttendanceLog
+     */
+    @RequestMapping(value = "/updateAttendanceLog", method = RequestMethod.POST)
+    public ResponseEntity<String> updateAttendanceLog(@RequestBody JSONObject reqJson) {
+
+        Assert.hasKeyAndValue(reqJson, "staffId", "璇锋眰鎶ユ枃涓湭鍖呭惈staffId");
+        Assert.hasKeyAndValue(reqJson, "storeId", "璇锋眰鎶ユ枃涓湭鍖呭惈storeId");
+        Assert.hasKeyAndValue(reqJson, "logId", "logId涓嶈兘涓虹┖");
+
+
+        AttendanceLogPo attendanceLogPo = BeanConvertUtil.covertBean(reqJson, AttendanceLogPo.class);
+        return updateAttendanceLogBMOImpl.update(attendanceLogPo);
+    }
+
+    /**
+     * 寰俊鍒犻櫎娑堟伅妯℃澘
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /attendanceClass/deleteAttendanceLog
+     * @path /app/attendanceClass/deleteAttendanceLog
+     */
+    @RequestMapping(value = "/deleteAttendanceLog", method = RequestMethod.POST)
+    public ResponseEntity<String> deleteAttendanceLog(@RequestBody JSONObject reqJson) {
+        Assert.hasKeyAndValue(reqJson, "communityId", "灏忓尯ID涓嶈兘涓虹┖");
+
+        Assert.hasKeyAndValue(reqJson, "logId", "logId涓嶈兘涓虹┖");
+
+
+        AttendanceLogPo attendanceLogPo = BeanConvertUtil.covertBean(reqJson, AttendanceLogPo.class);
+        return deleteAttendanceLogBMOImpl.delete(attendanceLogPo);
+    }
+
+    /**
+     * 寰俊鍒犻櫎娑堟伅妯℃澘
+     *
+     * @param storeId 鍟嗘埛ID
+     * @return
+     * @serviceCode /attendanceClass/queryAttendanceLog
+     * @path /app/attendanceClass/queryAttendanceLog
+     */
+    @RequestMapping(value = "/queryAttendanceLog", method = RequestMethod.GET)
+    public ResponseEntity<String> queryAttendanceLog(@RequestHeader(value = "store-id") String storeId,
+                                                     @RequestParam(name = "staffName", required = false) String staffName,
+                                                     @RequestParam(name = "staffId", required = false) String staffId,
+                                                     @RequestParam(name = "date", required = false) String date,
+                                                     @RequestParam(value = "page") int page,
+                                                     @RequestParam(value = "row") int row) {
+        AttendanceLogDto attendanceLogDto = new AttendanceLogDto();
+        attendanceLogDto.setPage(page);
+        attendanceLogDto.setRow(row);
+        attendanceLogDto.setStoreId(storeId);
+        attendanceLogDto.setStaffId(staffId);
+        attendanceLogDto.setStaffName(staffName);
+
+        attendanceLogDto.setClockTime(date);
+
+        return getAttendanceLogBMOImpl.get(attendanceLogDto);
+    }
 
 }

--
Gitblit v1.8.0