Explorar o código

增加个人考勤分页列表查看。

tomatozq %!s(int64=5) %!d(string=hai) anos
pai
achega
a10658d5f9

+ 2 - 2
common/src/main/resources/mapper/business/WorkAttendance.xml

@@ -97,8 +97,8 @@
 			select * from business_work_attendance
 		]]>
         <where>
-            <if test="searchParams.id != null">
-                and ID_ like #{searchParams.id}
+            <if test="searchParams.personId != null">
+                and person_id like #{searchParams.personId}
             </if>
         </where>
         <foreach item="sort" collection="sortList" open="order by" separator=",">

+ 5 - 0
web/src/main/java/com/jpsoft/smart/modules/mobile/controller/PersonDeviceFilterLogController.java

@@ -5,6 +5,8 @@ import com.jpsoft.smart.config.TemperatureConfig;
 import com.jpsoft.smart.modules.base.dto.PersonDeviceFilterLogDTO;
 import com.jpsoft.smart.modules.base.entity.*;
 import com.jpsoft.smart.modules.base.service.*;
+import com.jpsoft.smart.modules.business.entity.WorkAttendance;
+import com.jpsoft.smart.modules.business.service.WorkAttendanceService;
 import com.jpsoft.smart.modules.common.dto.MessageResult;
 import com.jpsoft.smart.modules.common.dto.Sort;
 import com.jpsoft.smart.modules.common.utils.JwtUtil;
@@ -55,6 +57,9 @@ public class PersonDeviceFilterLogController {
     @Autowired
     private TemperatureConfig temperatureConfig;
 
+    @Autowired
+    private WorkAttendanceService workAttendanceService;
+
     @ApiOperation(value="体温记录(正常、异常)")
     @RequestMapping(value = "detail",method = RequestMethod.POST)
     @ApiImplicitParams({

+ 80 - 0
web/src/main/java/com/jpsoft/smart/modules/mobile/controller/WorkAttendanceApiController.java

@@ -0,0 +1,80 @@
+package com.jpsoft.smart.modules.mobile.controller;
+
+import com.github.pagehelper.Page;
+import com.jpsoft.smart.config.TemperatureConfig;
+import com.jpsoft.smart.modules.base.entity.PersonInfo;
+import com.jpsoft.smart.modules.base.service.AlarmConfigService;
+import com.jpsoft.smart.modules.base.service.CompanyInfoService;
+import com.jpsoft.smart.modules.base.service.PersonInfoService;
+import com.jpsoft.smart.modules.business.entity.WorkAttendance;
+import com.jpsoft.smart.modules.business.service.WorkAttendanceService;
+import com.jpsoft.smart.modules.common.dto.MessageResult;
+import com.jpsoft.smart.modules.common.dto.Sort;
+import com.jpsoft.smart.modules.common.utils.PojoUtils;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@RestController
+@RequestMapping("/mobile/workAttendance")
+@Slf4j
+public class WorkAttendanceApiController {
+    @Autowired
+    private PersonInfoService personInfoService;
+
+    @Autowired
+    private CompanyInfoService companyInfoService;
+
+    @Autowired
+    private AlarmConfigService alarmConfigService;
+
+    @Autowired
+    private TemperatureConfig temperatureConfig;
+
+    @Autowired
+    private WorkAttendanceService workAttendanceService;
+
+    @ApiOperation(value="考勤记录")
+    @RequestMapping(value = "pageList",method = RequestMethod.POST)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name="token",value = "令牌",required = true,paramType = "form"),
+            @ApiImplicitParam(name="subject",value = "目标(不传)",paramType = "form")
+    })
+    public MessageResult<Map> pageList(@RequestParam(value="pageIndex",defaultValue="1") int pageIndex,
+                                       @RequestParam(value="pageSize",defaultValue="20") int pageSize,
+                                       @RequestAttribute String subject, String token){
+        MessageResult<Map> msgResult = new MessageResult<>();
+
+        try {
+            Map<String, Object> searchParams = new HashMap<>();
+
+            List<Sort> sortList = new ArrayList<>();
+            sortList.add(new Sort("record_time", "desc"));
+
+            PersonInfo personInfo = personInfoService.get(Long.valueOf(subject));
+
+            searchParams.put("personId", personInfo.getId());
+
+            Page<WorkAttendance> page = workAttendanceService.pageSearch(searchParams, pageIndex, pageSize, true, sortList);
+
+            msgResult.setData(PojoUtils.pageWrapper(page));
+            msgResult.setResult(true);
+        }
+        catch (Exception ex){
+            log.error(ex.getMessage(),ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
+}