Selaa lähdekoodia

进出记录、详情 查询

wangchao 4 vuotta sitten
vanhempi
commit
3c8ced1379

+ 91 - 0
security-protection-service/src/main/java/com/ai/bss/security/protection/controller/InAndOutRecordController.java

@ -0,0 +1,91 @@
1
package com.ai.bss.security.protection.controller;
2
3
4
import com.ai.abc.api.model.CommonResponse;
5
import com.ai.bss.components.common.model.PageBean;
6
import com.ai.bss.security.protection.model.AiQuery;
7
import com.ai.bss.security.protection.model.AttendanceReport;
8
import com.ai.bss.security.protection.service.interfaces.AttendanceReportService;
9
import com.ai.bss.security.protection.service.interfaces.InAndOutRecordService;
10
import com.ai.bss.security.protection.utils.EbcConstant;
11
import org.slf4j.Logger;
12
import org.slf4j.LoggerFactory;
13
import org.springframework.beans.factory.annotation.Autowired;
14
import org.springframework.stereotype.Controller;
15
import org.springframework.web.bind.annotation.ModelAttribute;
16
import org.springframework.web.bind.annotation.RequestMapping;
17
import org.springframework.web.bind.annotation.ResponseBody;
18
19
import java.util.HashMap;
20
import java.util.Map;
21
22
/**
23
 * 进出记录
24
 */
25
@Controller
26
@RequestMapping("/inAndOutRecord")
27
public class InAndOutRecordController {
28
	Logger logger = LoggerFactory.getLogger(InAndOutRecordController.class);
29
30
	@Autowired
31
	InAndOutRecordService inAndOutRecordService;
32
33
	/**
34
	 * 分页查询进出记录
35
	 * @param  aiQuery
36
	 *                                workOrgRoleId: 组织标识
37
	 *                                aiIdenModel: AI识别模型
38
	 *                                relateEmployeeRoleId: 员工ID
39
	 *                                relateEmployeeName : 员工名称(精确匹配)
40
	 *                                relateEmployeeNameAsLike : 员工名称(模糊匹配)
41
	 *                                beginTime: 执行时间(开始)
42
	 *                                endTime: 执行时间(结束)
43
	 */
44
45
	@ResponseBody
46
	@RequestMapping("/queryPageInAndOutRecord")
47
	public CommonResponse<PageBean<Map<String,Object>>> queryPageInAndOutRecord(@ModelAttribute AiQuery aiQuery) throws Exception {
48
		// 当前页数
49
		int pageNumber = aiQuery.getPageNumber() < 1 ? 1 : aiQuery.getPageNumber();
50
		// 每页条数
51
		int pageSize = aiQuery.getPageSize() < 1 ? EbcConstant.DEFAULT_PAGE_SIZE : aiQuery.getPageSize();
52
53
		Map<String, Object> params = new HashMap<>();
54
		params.put("relateEmployeeRoleId",aiQuery.getRelateEmployeeRoleId());
55
		params.put("relateEmployeeName",aiQuery.getRelateEmployeeName());
56
		params.put("relateEmployeeNameAsLike",aiQuery.getRelateEmployeeNameAsLike());
57
		params.put("beginTime",aiQuery.getBeginTime());
58
		params.put("endTime",aiQuery.getEndTime());
59
60
		CommonResponse<PageBean<Map<String,Object>>> commonResponse = inAndOutRecordService.queryPageInAndOutRecord(params, pageNumber, pageSize);
61
62
63
		return commonResponse;
64
65
	}
66
67
	/**
68
	 * 查询识别详情
69
	 *  							month :月份 (yyyy-MM格式),必选
70
	 *                              orgId:所属组织ID,必选
71
	 *                              id:个人编码(员工编码)
72
	 *                              nameAsLike:姓名(模糊匹配)
73
	 *                              mainJobPositionId: 职位
74
	 */
75
76
	@ResponseBody
77
	@RequestMapping("/queryIdentifyDetails")
78
	public CommonResponse<PageBean<Map<String,Object>>> queryIdentifyDetails(@ModelAttribute AttendanceReport attendanceReport) throws Exception {
79
80
		Map<String, Object> params = new HashMap<>();
81
		params.put("month",attendanceReport.getMonth());
82
		params.put("orgId",attendanceReport.getOrgCode());
83
		params.put("id",attendanceReport.getId());
84
		params.put("nameAsLike",attendanceReport.getNameAsLike());
85
		params.put("mainJobPositionId",attendanceReport.getMainJobPositionId());
86
		CommonResponse<PageBean<Map<String,Object>>> commonResponse= inAndOutRecordService.queryIdentifyDetails(params);
87
88
		return commonResponse;
89
90
	}
91
}

+ 10 - 2
security-protection-service/src/main/java/com/ai/bss/security/protection/model/AiQuery.java

@ -37,9 +37,9 @@ public class AiQuery {
37 37
38 38
    private String workEmployeeRoleId; // 处理人
39 39
40
    private String beginTime; // 报警开始时间
40
    private String beginTime; // 报警开始时间  执行时间(开始)
41 41
42
    private String endTime; // 报警结束时间
42
    private String endTime; // 报警结束时间  执行时间(结束)
43 43
44 44
    private String workOrgRoleId; // 组织ID
45 45
@ -48,4 +48,12 @@ public class AiQuery {
48 48
    private String workTaskId; // 任务ID
49 49
50 50
    private String processMemo; // 处理详情必选
51
52
    private String relateEmployeeRoleId; // 员工ID
53
54
    private String relateEmployeeName; // 员工名称(精确匹配)
55
56
    private String relateEmployeeNameAsLike; // 员工名称(模糊匹配)
57
58
51 59
}

+ 69 - 0
security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/InAndOutRecordServiceImpl.java

@ -0,0 +1,69 @@
1
package com.ai.bss.security.protection.service.impl;
2
3
import com.ai.abc.api.model.CommonRequest;
4
import com.ai.abc.api.model.CommonResponse;
5
import com.ai.bss.components.common.model.PageBean;
6
import com.ai.bss.security.protection.service.interfaces.InAndOutRecordService;
7
import com.ai.bss.user.dto.EmployeeDto;
8
import com.ai.bss.user.service.api.EmployeeService;
9
import com.ai.bss.work.safety.service.api.AiTaskQuery;
10
import org.apache.bcel.verifier.statics.LONG_Upper;
11
import org.springframework.beans.factory.annotation.Autowired;
12
import org.springframework.stereotype.Service;
13
14
import java.util.List;
15
import java.util.Map;
16
17
/**
18
 * @Auther: 王超
19
 * @Date: 2020/12/15 14:34
20
 * @Description:
21
 */
22
@Service
23
public class InAndOutRecordServiceImpl implements InAndOutRecordService {
24
25
    @Autowired
26
    AiTaskQuery aiTaskQuery;
27
28
    @Autowired
29
    EmployeeService employeeService;
30
31
32
    @Override
33
    public CommonResponse<PageBean<Map<String, Object>>> queryPageInAndOutRecord(Map<String, Object> params, int pageNumber, int pageSize) {
34
35
        CommonResponse<PageBean<Map<String, Object>>> queryResult = aiTaskQuery.queryAiIdenLog(new CommonRequest<>(params, pageNumber, pageSize));
36
37
        List<Map<String, Object>> inAndOutRecordList = queryResult.getData().getData();
38
39
        if(null!=inAndOutRecordList&&inAndOutRecordList.size()>0){
40
            inAndOutRecordList.forEach((inAndOutRecord)->{
41
                if(null!=inAndOutRecord.get("relateEmployeeRoleId")){
42
                    long relateEmployeeRoleId = Long.parseLong((String) inAndOutRecord.get("relateEmployeeRoleId"));
43
44
                    EmployeeDto employeeDto = new EmployeeDto();
45
                    employeeDto.setId(relateEmployeeRoleId);
46
                    CommonRequest<EmployeeDto> request = CommonRequest.<EmployeeDto>builder().data(employeeDto).build();
47
                    CommonResponse<EmployeeDto> response = employeeService.queryEmployee(request);
48
                    EmployeeDto employee = response.getData();
49
50
                    if(employee!=null){
51
                        inAndOutRecord.put("headerUrl", employee.getHeaderUrl());
52
                        inAndOutRecord.put("name", employee.getName());
53
                        inAndOutRecord.put("mainJobPosition", employee.getMainJobPosition());
54
                        inAndOutRecord.put("orgName", employee.getOrgName());
55
                        inAndOutRecord.put("organizeCode", employee.getOrganizeCode());
56
                        inAndOutRecord.put("code", employee.getCode());
57
                    }
58
                }
59
            });
60
        }
61
62
        return queryResult;
63
    }
64
65
    @Override
66
    public CommonResponse<PageBean<Map<String, Object>>> queryIdentifyDetails(Map<String, Object> params) {
67
        return null;
68
    }
69
}

+ 12 - 0
security-protection-service/src/main/java/com/ai/bss/security/protection/service/interfaces/InAndOutRecordService.java

@ -0,0 +1,12 @@
1
package com.ai.bss.security.protection.service.interfaces;
2
3
import com.ai.abc.api.model.CommonResponse;
4
import com.ai.bss.components.common.model.PageBean;
5
6
import java.util.Map;
7
8
public interface InAndOutRecordService {
9
    CommonResponse<PageBean<Map<String, Object>>> queryPageInAndOutRecord(Map<String, Object> params, int pageNumber, int pageSize);
10
11
    CommonResponse<PageBean<Map<String, Object>>> queryIdentifyDetails(Map<String, Object> params);
12
}