ソースを参照

修改员工列表返回的格式

konghl 4 年 前
コミット
a5de3ede4d
共有20 個のファイルを変更した694 個の追加167 個の削除を含む
  1. 1 1
      location-rescue-service/src/main/java/com/ai/bss/location/rescue/controller/WorkEmployeeController.java
  2. 1 1
      location-rescue-service/src/main/java/com/ai/bss/location/rescue/service/impl/WorkEmployeeServiceImpl.java
  3. 1 1
      location-rescue-service/src/main/java/com/ai/bss/location/rescue/service/interfaces/WorkEmployeeService.java
  4. 1 0
      location-rescue-service/src/main/resources/application.properties
  5. 97 0
      security-protection-service/src/main/java/com/ai/bss/security/protection/controller/AiIdenLogManageController.java
  6. 1 1
      security-protection-service/src/main/java/com/ai/bss/security/protection/controller/AttendanceCommonController.java
  7. 30 4
      security-protection-service/src/main/java/com/ai/bss/security/protection/controller/EmployeeManagementController.java
  8. 32 23
      security-protection-service/src/main/java/com/ai/bss/security/protection/controller/InAndOutRecordController.java
  9. 2 0
      security-protection-service/src/main/java/com/ai/bss/security/protection/model/AttendanceReport.java
  10. 245 0
      security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/AiIdenLogManageServiceImpl.java
  11. 2 2
      security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/AttendanceCommonServiceImpl.java
  12. 100 26
      security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/EmployeeManagementServiceImpl.java
  13. 8 12
      security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/MonitorVideoLogManageServiceImpl.java
  14. 8 11
      security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/UploadFileServiceImpl.java
  15. 50 46
      security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/WorkOrderManagementServiceImpl.java
  16. 71 0
      security-protection-service/src/main/java/com/ai/bss/security/protection/service/interfaces/AiIdenLogManageService.java
  17. 2 2
      security-protection-service/src/main/java/com/ai/bss/security/protection/service/interfaces/AttendanceCommonService.java
  18. 9 1
      security-protection-service/src/main/java/com/ai/bss/security/protection/service/interfaces/EmployeeManagementService.java
  19. 13 36
      security-protection-service/src/main/java/com/ai/bss/security/protection/service/task/AiResultRecordKafkaTask.java
  20. 20 0
      security-protection-service/src/main/java/com/ai/bss/security/protection/utils/EbcConstant.java

+ 1 - 1
location-rescue-service/src/main/java/com/ai/bss/location/rescue/controller/WorkEmployeeController.java

@ -34,7 +34,7 @@ public class WorkEmployeeController {
34 34
     */
35 35
    @ResponseBody
36 36
    @RequestMapping("/queryWorkEmployee")
37
    public CommonResponse<PageBean<UserDto>> queryWorkEmployee(@RequestBody CommonRequest<UserDto> request) throws Exception {
37
    public CommonResponse<PageBean<Map<String, Object>>> queryWorkEmployee(@RequestBody CommonRequest<UserDto> request) throws Exception {
38 38
		/*UserDto userDto = new UserDto();
39 39
		userDto.setOrgId(params.get("orgId"));
40 40
		userDto.setCode(params.get("code"));

+ 1 - 1
location-rescue-service/src/main/java/com/ai/bss/location/rescue/service/impl/WorkEmployeeServiceImpl.java

@ -43,7 +43,7 @@ public class WorkEmployeeServiceImpl implements WorkEmployeeService {
43 43
	private CharSpecService charSpecService;
44 44
45 45
	@Override
46
	public CommonResponse<PageBean<UserDto>> queryWorkEmployee(CommonRequest<UserDto> request) throws Exception {
46
	public CommonResponse<PageBean<Map<String, Object>>> queryWorkEmployee(CommonRequest<UserDto> request) throws Exception {
47 47
		// TODO 组织编码
48 48
		// request.getData().setOrgCode("0000");
49 49
		return userDtoQuery.queryWorkEmployee(request);

+ 1 - 1
location-rescue-service/src/main/java/com/ai/bss/location/rescue/service/interfaces/WorkEmployeeService.java

@ -20,7 +20,7 @@ public interface WorkEmployeeService {
20 20
	 * @return
21 21
	 * @throws Exception
22 22
	 */
23
	CommonResponse<PageBean<UserDto>> queryWorkEmployee(CommonRequest<UserDto> request) throws Exception;
23
	CommonResponse<PageBean<Map<String, Object>>> queryWorkEmployee(CommonRequest<UserDto> request) throws Exception;
24 24
25 25
	CommonResponse<List<Organization>> queryAllOrganize(CommonRequest<Organization> params) throws Exception;
26 26

+ 1 - 0
location-rescue-service/src/main/resources/application.properties

@ -23,6 +23,7 @@ spring.main.allow-bean-definition-overriding=true
23 23
24 24
#kafka
25 25
#kafka.bootstrap-servers=47.105.160.21:9090
26
#http://10.19.90.34:8187/mock/startMackData?sId=99&f=5&topic0=DeviceLocationKong&topic1=IndividualAlarmKong
26 27
kafka.bootstrap-servers=10.19.90.34:9090
27 28
kafka.topic.deviceLocation=Topic_IoT_DeviceLocation
28 29
kafka.topic.alarm=Topic_IoT_IndividualAlarm

+ 97 - 0
security-protection-service/src/main/java/com/ai/bss/security/protection/controller/AiIdenLogManageController.java

@ -0,0 +1,97 @@
1
package com.ai.bss.security.protection.controller;
2
3
import java.util.HashMap;
4
import java.util.List;
5
import java.util.Map;
6
7
import org.apache.commons.lang.StringUtils;
8
import org.springframework.beans.factory.annotation.Autowired;
9
import org.springframework.stereotype.Controller;
10
import org.springframework.web.bind.annotation.ModelAttribute;
11
import org.springframework.web.bind.annotation.RequestMapping;
12
import org.springframework.web.bind.annotation.RequestParam;
13
import org.springframework.web.bind.annotation.ResponseBody;
14
15
import com.ai.abc.api.model.CommonResponse;
16
import com.ai.bss.components.common.model.PageBean;
17
import com.ai.bss.security.protection.model.AttendanceReport;
18
import com.ai.bss.security.protection.service.interfaces.AiIdenLogManageService;
19
import com.ai.bss.security.protection.utils.EbcConstant;
20
21
@Controller
22
@RequestMapping("/aiIdenLogManagement")
23
public class AiIdenLogManageController {
24
25
	@Autowired
26
	private AiIdenLogManageService aiIdenLogManageService;
27
28
	/**
29
	 * 分页查询AI执行结果信息
30
	 * @param attendanceReport
31
	 * @return
32
	 * @throws Exception
33
	 */
34
	@ResponseBody
35
	@RequestMapping("/queryPageAiIdenLog")
36
	public CommonResponse<PageBean<Map<String, Object>>> queryPageAiIdenLog(
37
			@ModelAttribute AttendanceReport attendanceReport) throws Exception {
38
		// 当前页数
39
		int pageNumber = attendanceReport.getPageNumber() < 1 ? 1 : attendanceReport.getPageNumber();
40
		// 每页条数
41
		int pageSize = attendanceReport.getPageSize() < 1 ? EbcConstant.DEFAULT_PAGE_SIZE
42
				: attendanceReport.getPageSize();
43
44
		Map<String, Object> params = new HashMap<String, Object>();
45
		params.put("beginTime", attendanceReport.getBeginDay());
46
		params.put("endTime", attendanceReport.getEndDay());
47
		params.put("relateEmployeeNameAsLike", attendanceReport.getNameAsLike());
48
		params.put("aiIdenModel", EbcConstant.AI_MODEL_FACE);
49
50
		return aiIdenLogManageService.queryPageAiIdenLog(params, pageNumber, pageSize);
51
	}
52
53
	/**
54
	 * 查询所有AI执行结果的图片列表
55
	 * @param attendanceReport
56
	 * @return
57
	 * @throws Exception
58
	 */
59
	@ResponseBody
60
	@RequestMapping("/queryAllAiIdenLogPicture")
61
	public CommonResponse<List<Map<String, Object>>> queryAllAiIdenLogPicture(
62
			@ModelAttribute AttendanceReport attendanceReport) throws Exception {
63
		if (StringUtils.isEmpty(attendanceReport.getId())) {
64
			return CommonResponse.fail("504", "查询失败");
65
		}
66
67
		// 当前页数
68
		int pageNumber = attendanceReport.getPageNumber() < 1 ? 1 : attendanceReport.getPageNumber();
69
		// 每页条数
70
		int pageSize = attendanceReport.getPageSize() < 1 ? 10 : attendanceReport.getPageSize();
71
72
		Map<String, Object> params = new HashMap<String, Object>();
73
		params.put("beginTime", attendanceReport.getBeginDay());
74
		params.put("endTime", attendanceReport.getEndDay());
75
		params.put("resourceToolId", attendanceReport.getId());
76
		params.put("aiIdenModel", EbcConstant.AI_MODEL_CLOTHING_CODE);
77
78
		return aiIdenLogManageService.queryAllAiIdenLogPicture(params, pageNumber, pageSize);
79
	}
80
81
	/**
82
	 * 查询单个AI执行结果详情
83
	 * @param aiIdenLogId
84
	 * @return
85
	 * @throws Exception
86
	 */
87
	@ResponseBody
88
	@RequestMapping("/queryOneAiIdenLog")
89
	public CommonResponse<Map<String, Object>> queryOneAiIdenLog(@RequestParam Long aiIdenLogId) throws Exception {
90
		if (aiIdenLogId == null) {
91
			return CommonResponse.fail("500", "查询失败");
92
		}
93
94
		return aiIdenLogManageService.queryOneAiIdenLog(aiIdenLogId);
95
	}
96
97
}

+ 1 - 1
security-protection-service/src/main/java/com/ai/bss/security/protection/controller/AttendanceCommonController.java

@ -43,7 +43,7 @@ public class AttendanceCommonController {
43 43
     */
44 44
    @ResponseBody
45 45
    @RequestMapping("/queryWorkEmployee")
46
    public CommonResponse<PageBean<UserDto>> queryWorkEmployee(@RequestBody CommonRequest<UserDto> request) throws Exception {
46
    public CommonResponse<PageBean<Map<String, Object>>> queryWorkEmployee(@RequestBody CommonRequest<UserDto> request) throws Exception {
47 47
48 48
        return attendanceCommonService.queryWorkEmployee(request);
49 49
    }

+ 30 - 4
security-protection-service/src/main/java/com/ai/bss/security/protection/controller/EmployeeManagementController.java

@ -25,6 +25,8 @@ import com.ai.bss.user.dto.UserDto;
25 25
26 26
/**
27 27
 * 用户信息
28
 * @author konghl@asiainfo.com
29
 * 2020-12-24
28 30
 */
29 31
@Controller
30 32
@RequestMapping("/employeeManagement")
@ -41,7 +43,7 @@ public class EmployeeManagementController {
41 43
	 */
42 44
	@ResponseBody
43 45
	@RequestMapping("/queryEmployeeList")
44
	public CommonResponse<PageBean<UserDto>> queryEmployeeList(@ModelAttribute AttendanceReport attendanceReport)
46
	public CommonResponse<PageBean<Map<String, Object>>> queryEmployeeList(@ModelAttribute AttendanceReport attendanceReport)
45 47
			throws Exception {
46 48
		// 当前页数
47 49
		int pageNumber = attendanceReport.getPageNumber() < 1 ? 1 : attendanceReport.getPageNumber();
@ -50,9 +52,8 @@ public class EmployeeManagementController {
50 52
				: attendanceReport.getPageSize();
51 53
52 54
		UserDto userDto = new UserDto();
53
		if (StringUtils.isNotEmpty(attendanceReport.getOrgId())) {
54
			userDto.setOrgId(attendanceReport.getOrgId());
55
		}
55
		userDto.setOrgId(attendanceReport.getOrgId());
56
		userDto.setId(attendanceReport.getId());
56 57
57 58
		return employeeManagementService.queryEmployeeList(userDto, pageNumber, pageSize);
58 59
	}
@ -203,4 +204,29 @@ public class EmployeeManagementController {
203 204
204 205
		return employeeManagementService.queryCycleChildOrg(orgId);
205 206
	}
207
208
	/**
209
	 * 根据部门ID查询下级及下下级部门的员工列表
210
	 * @param orgId
211
	 * @return
212
	 * @throws Exception
213
	 */
214
	@ResponseBody
215
	@RequestMapping("/queryEmployeeListByOrgId")
216
	public CommonResponse<List<Map<String, Object>>> queryEmployeeListByOrgId(
217
			@RequestParam(required = false) Long orgId) throws Exception {
218
		if (orgId == null || orgId < 0) {
219
			return CommonResponse.ok(new ArrayList<Map<String, Object>>());
220
		}
221
222
		// 当前页数
223
		int pageNumber = 1;
224
		// 每页条数
225
		int pageSize = EbcConstant.COMBOBOX_MAXNUM;
226
227
		List<Map<String, Object>> resultList = employeeManagementService.queryEmployeeListByOrgId(orgId, pageNumber,
228
				pageSize);
229
230
		return CommonResponse.ok(resultList);
231
	}
206 232
}

+ 32 - 23
security-protection-service/src/main/java/com/ai/bss/security/protection/controller/InAndOutRecordController.java

@ -5,6 +5,7 @@ import com.ai.abc.api.model.CommonResponse;
5 5
import com.ai.bss.components.common.model.PageBean;
6 6
import com.ai.bss.security.protection.model.AiQuery;
7 7
import com.ai.bss.security.protection.model.AttendanceReport;
8
import com.ai.bss.security.protection.service.interfaces.AiIdenLogManageService;
8 9
import com.ai.bss.security.protection.service.interfaces.AttendanceReportService;
9 10
import com.ai.bss.security.protection.service.interfaces.InAndOutRecordService;
10 11
import com.ai.bss.security.protection.utils.EbcConstant;
@ -14,6 +15,7 @@ import org.springframework.beans.factory.annotation.Autowired;
14 15
import org.springframework.stereotype.Controller;
15 16
import org.springframework.web.bind.annotation.ModelAttribute;
16 17
import org.springframework.web.bind.annotation.RequestMapping;
18
import org.springframework.web.bind.annotation.RequestParam;
17 19
import org.springframework.web.bind.annotation.ResponseBody;
18 20
19 21
import java.util.HashMap;
@ -28,40 +30,47 @@ public class InAndOutRecordController {
28 30
	Logger logger = LoggerFactory.getLogger(InAndOutRecordController.class);
29 31
30 32
	@Autowired
31
	InAndOutRecordService inAndOutRecordService;
33
	private AiIdenLogManageService aiIdenLogManageService;
32 34
33 35
	/**
34
	 * 分页查询进出记录 (查询识别详情)
35
	 * @param  aiQuery
36
	 *                                workOrgRoleId: 组织标识
37
	 *                                aiIdenModel: AI识别模型
38
	 *                                relateEmployeeRoleId: 员工ID
39
	 *                                relateEmployeeName : 员工名称(精确匹配)
40
	 *                                relateEmployeeNameAsLike : 员工名称(模糊匹配)
41
	 *                                beginTime: 执行时间(开始)
42
	 *                                endTime: 执行时间(结束)
36
	 * 分页查询进出记录
37
	 * @param attendanceReport
38
	 * @return
39
	 * @throws Exception
43 40
	 */
44
45 41
	@ResponseBody
46 42
	@RequestMapping("/queryPageInAndOutRecord")
47
	public CommonResponse<PageBean<Map<String,Object>>> queryPageInAndOutRecord(@ModelAttribute AiQuery aiQuery) throws Exception {
43
	public CommonResponse<PageBean<Map<String, Object>>> queryPageInAndOutRecord(
44
			@ModelAttribute AttendanceReport attendanceReport) throws Exception {
48 45
		// 当前页数
49
		int pageNumber = aiQuery.getPageNumber() < 1 ? 1 : aiQuery.getPageNumber();
46
		int pageNumber = attendanceReport.getPageNumber() < 1 ? 1 : attendanceReport.getPageNumber();
50 47
		// 每页条数
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());
48
		int pageSize = attendanceReport.getPageSize() < 1 ? EbcConstant.DEFAULT_PAGE_SIZE
49
				: attendanceReport.getPageSize();
59 50
60
		CommonResponse<PageBean<Map<String,Object>>> commonResponse = inAndOutRecordService.queryPageInAndOutRecord(params, pageNumber, pageSize);
51
		Map<String, Object> params = new HashMap<String, Object>();
52
		params.put("beginTime", attendanceReport.getBeginDay());
53
		params.put("endTime", attendanceReport.getEndDay());
54
		params.put("relateEmployeeNameAsLike", attendanceReport.getNameAsLike());
55
		params.put("aiIdenModel",EbcConstant.AI_MODEL_FACE);
61 56
57
		return aiIdenLogManageService.queryPageAiIdenLog(params, pageNumber, pageSize);
58
	}
62 59
63
		return commonResponse;
60
	/**
61
	 * 查询单个识别详情
62
	 * @param aiIdenLogId
63
	 * @return
64
	 * @throws Exception
65
	 */
66
	@ResponseBody
67
	@RequestMapping("/queryOneInAndOutRecord")
68
	public CommonResponse<Map<String, Object>> queryOneInAndOutRecord(@RequestParam Long aiIdenLogId) throws Exception {
69
		if (aiIdenLogId == null) {
70
			return CommonResponse.fail("500", "查询失败");
71
		}
64 72
73
		return aiIdenLogManageService.queryOneAiIdenLog(aiIdenLogId);
65 74
	}
66 75
67 76
}

+ 2 - 0
security-protection-service/src/main/java/com/ai/bss/security/protection/model/AttendanceReport.java

@ -13,6 +13,8 @@ public class AttendanceReport implements Serializable {
13 13
14 14
    private  String code; //编号
15 15
    
16
    private  String name; //名称
17
    
16 18
    private  String nameAsLike; //姓名(模糊)
17 19
18 20
    private  String orgId; //组织id

+ 245 - 0
security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/AiIdenLogManageServiceImpl.java

@ -0,0 +1,245 @@
1
package com.ai.bss.security.protection.service.impl;
2
3
import java.util.ArrayList;
4
import java.util.HashMap;
5
import java.util.List;
6
import java.util.Map;
7
8
import org.apache.commons.lang.StringUtils;
9
import org.springframework.beans.factory.annotation.Autowired;
10
import org.springframework.stereotype.Service;
11
import org.springframework.util.CollectionUtils;
12
13
import com.ai.abc.api.model.CommonRequest;
14
import com.ai.abc.api.model.CommonResponse;
15
import com.ai.bss.components.common.model.PageBean;
16
import com.ai.bss.security.protection.model.EbcMonitorVideoLog;
17
import com.ai.bss.security.protection.service.interfaces.AiIdenLogManageService;
18
import com.ai.bss.security.protection.service.interfaces.CharSpecService;
19
import com.ai.bss.security.protection.service.interfaces.MonitorVideoLogManageService;
20
import com.ai.bss.security.protection.service.interfaces.UploadFileService;
21
import com.ai.bss.security.protection.utils.DateUtil;
22
import com.ai.bss.security.protection.utils.EbcConstant;
23
import com.ai.bss.user.dto.EmployeeDto;
24
import com.ai.bss.user.service.api.EmployeeService;
25
import com.ai.bss.work.safety.model.AiIdenLog;
26
import com.ai.bss.work.safety.service.api.AiTaskCommand;
27
import com.ai.bss.work.safety.service.api.AiTaskQuery;
28
import com.alibaba.fastjson.JSON;
29
import com.alibaba.fastjson.JSONArray;
30
import com.alibaba.fastjson.TypeReference;
31
32
@Service
33
public class AiIdenLogManageServiceImpl implements AiIdenLogManageService {
34
35
	@Autowired
36
	private AiTaskQuery aiTaskQuery;
37
38
	@Autowired
39
	private AiTaskCommand aiTaskCommand;
40
41
	@Autowired
42
	private CharSpecService charSpecService;
43
44
	@Autowired
45
	private EmployeeService employeeService;
46
47
	@Autowired
48
	private UploadFileService uploadFileService;
49
50
	@Autowired
51
	private MonitorVideoLogManageService monitorVideoLogManageService;
52
53
	@Override
54
	public CommonResponse<PageBean<Map<String, Object>>> queryPageAiIdenLog(Map<String, Object> params, int pageNumber,
55
			int pageSize) throws Exception {
56
		CommonRequest<Map<String, Object>> conditionMapRequest = new CommonRequest<Map<String, Object>>(params,
57
				pageNumber, pageSize);
58
59
		CommonResponse<PageBean<Map<String, Object>>> response = aiTaskQuery.queryAiIdenLog(conditionMapRequest);
60
61
		if (response == null || response.getData() == null || CollectionUtils.isEmpty(response.getData().getData())) {
62
			return response;
63
		}
64
65
		Map<String, String> allPositionTypeMap = charSpecService
66
				.getCharSpecMap(EbcConstant.BUSINESS_SPEC_EMPLOYEE_POSITION);
67
68
		for (Map<String, Object> dataMap : response.getData().getData()) {
69
			dataMap.put("taskExecuteTime", DateUtil.formatObjectToDate(dataMap.get("taskExecuteTime")));
70
			dataMap.put("idenPictureSnapDate", DateUtil.formatObjectToDate(dataMap.get("idenPictureSnapDate")));
71
			
72
			// 结果详情
73
			String idenResultArr = dataMap.get("idenResult") == null ? "" : String.valueOf(dataMap.get("idenResult"));
74
			if (StringUtils.isNotEmpty(idenResultArr)) {
75
				List<Map<String, String>> idenResultList = JSONArray.parseObject(idenResultArr, List.class);
76
				if (!CollectionUtils.isEmpty(idenResultList)) {
77
					dataMap.putAll(idenResultList.get(0));
78
				}
79
			}
80
81
			// 员工信息
82
			if (dataMap.get("relateEmployeeRoleId") == null) {
83
				long relateEmployeeRoleId = Long.parseLong(String.valueOf(dataMap.get("relateEmployeeRoleId")));
84
85
				EmployeeDto employeeDto = new EmployeeDto();
86
				employeeDto.setId(relateEmployeeRoleId);
87
				CommonRequest<EmployeeDto> request = CommonRequest.<EmployeeDto>builder().data(employeeDto).build();
88
				CommonResponse<EmployeeDto> employeeResponse = employeeService.queryEmployee(request);
89
90
				if (employeeResponse.getData() != null) {
91
					dataMap.put("employeeName", employeeResponse.getData().getName());
92
					dataMap.put("employeeCode", employeeResponse.getData().getCode());
93
94
					dataMap.put("companyName", employeeResponse.getData().getField4());
95
					dataMap.put("organizationCode", employeeResponse.getData().getOrganizeCode());
96
					dataMap.put("organizationName", employeeResponse.getData().getOrgName());
97
98
					String employeePosition = employeeResponse.getData().getMainJobPosition();
99
					dataMap.put("employeePosition", employeePosition);
100
					dataMap.put("employeePositionZh", allPositionTypeMap.get(employeePosition));
101
				}
102
			}
103
		}
104
105
		return response;
106
	}
107
108
	@Override
109
	public CommonResponse<List<Map<String, Object>>> queryAllAiIdenLogPicture(Map<String, Object> params,
110
			int pageNumber, int pageSize) throws Exception {
111
		CommonRequest<Map<String, Object>> conditionMapRequest = new CommonRequest<Map<String, Object>>(params,
112
				pageNumber, pageSize);
113
114
		CommonResponse<PageBean<Map<String, Object>>> response = aiTaskQuery.queryAiIdenLog(conditionMapRequest);
115
116
		List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
117
		if (response == null || response.getData() == null || CollectionUtils.isEmpty(response.getData().getData())) {
118
			return CommonResponse.ok(list);
119
		}
120
121
		for (Map<String, Object> dataMap : response.getData().getData()) {
122
			/*Map<String, String> pictureMap = uploadFileService.getFileUrlToMap(String.valueOf(dataMap.get("idenPictureUrl")));
123
			
124
			if (!CollectionUtils.isEmpty(pictureMap)) {
125
				Map<String, Object> map = new HashMap<String, Object>();
126
				map.putAll(pictureMap);
127
				map.put("aiIdenLogId", dataMap.get("aiIdenLogId"));
128
				map.put("idenPictureUrl", dataMap.get("idenPictureUrl"));
129
				list.add(map);
130
			}*/
131
132
			String pictureUrl = String.valueOf(dataMap.get("idenPictureUrl"));
133
			if (pictureUrl.length() > 20 && pictureUrl.lastIndexOf(".") > 18
134
					&& pictureUrl.lastIndexOf(EbcConstant.AI_MONITOR_FILE_PREFIX_PICTURE) > 0) {
135
				
136
				int picturePrefixIndex = pictureUrl.lastIndexOf(EbcConstant.AI_MONITOR_FILE_PREFIX_PICTURE)
137
						+ EbcConstant.AI_MONITOR_FILE_PREFIX_PICTURE.length();
138
				String fileName = pictureUrl.substring(picturePrefixIndex, picturePrefixIndex + 4) + "-"
139
						+ pictureUrl.substring(picturePrefixIndex + 4, picturePrefixIndex + 6) + "-"
140
						+ pictureUrl.substring(picturePrefixIndex + 6, picturePrefixIndex + 8);
141
142
				Map<String, Object> map = new HashMap<String, Object>();
143
				map.put("aiIdenLogId", dataMap.get("aiIdenLogId"));
144
				map.put("idenPictureUrl", pictureUrl);
145
				map.put("fileName", fileName);
146
				list.add(map);
147
			}
148
		}
149
150
		return CommonResponse.ok(list);
151
	}
152
153
	@Override
154
	public CommonResponse<Map<String, Object>> queryOneAiIdenLog(Long aiIdenLogId) throws Exception {
155
		CommonRequest<Long> aiIdenLogIdRequest = new CommonRequest<Long>(aiIdenLogId);
156
		CommonResponse<AiIdenLog> response = aiTaskQuery.loadAiIdenLog(aiIdenLogIdRequest);
157
158
		if (response == null || response.getData() == null) {
159
			return CommonResponse.fail("504", "未查到相关信息");
160
		}
161
162
		AiIdenLog aiIdenLog = response.getData();
163
		Map<String, String> aiIdenLogInfoMap = JSON.parseObject(JSON.toJSONString(aiIdenLog),
164
				new TypeReference<Map<String, String>>() {
165
				});
166
167
		// 结果详情
168
		if (StringUtils.isNotEmpty(aiIdenLog.getIdenResult())) {
169
			List<Map<String, String>> idenResultList = JSONArray.parseObject(aiIdenLog.getIdenResult(), List.class);
170
			if (!CollectionUtils.isEmpty(idenResultList)) {
171
				aiIdenLogInfoMap.putAll(idenResultList.get(0));
172
			}
173
		}
174
175
		// 员工信息
176
		if (StringUtils.isNotEmpty(aiIdenLog.getRelateEmployeeRoleId())) {
177
			long relateEmployeeRoleId = Long.parseLong(aiIdenLog.getRelateEmployeeRoleId());
178
179
			EmployeeDto employeeDto = new EmployeeDto();
180
			employeeDto.setId(relateEmployeeRoleId);
181
			CommonRequest<EmployeeDto> request = CommonRequest.<EmployeeDto>builder().data(employeeDto).build();
182
			CommonResponse<EmployeeDto> employeeResponse = employeeService.queryEmployee(request);
183
184
			if (employeeResponse.getData() != null) {
185
				aiIdenLogInfoMap.put("employeeName", employeeResponse.getData().getName());
186
				aiIdenLogInfoMap.put("employeeCode", employeeResponse.getData().getCode());
187
188
				/*
189
				String employeePosition = employeeResponse.getData().getMainJobPosition();
190
				aiIdenLogInfoMap.put("employeePosition", employeePosition);
191
				List<CharacteristicSpecValue> allPositionTypeList = charSpecService
192
						.getCharSpecList(EbcConstant.BUSINESS_SPEC_EMPLOYEE_POSITION);
193
				for (CharacteristicSpecValue characteristicSpecValue : allPositionTypeList) {
194
					if (characteristicSpecValue.getCode().equals(employeePosition)) {
195
						aiIdenLogInfoMap.put("employeePositionZh", characteristicSpecValue.getValue());
196
						break;
197
					}
198
				}
199
				
200
				aiIdenLogInfoMap.put("companyName", employeeResponse.getData().getField4());
201
				aiIdenLogInfoMap.put("organizationCode", employeeResponse.getData().getOrganizeCode());
202
				aiIdenLogInfoMap.put("organizationName", employeeResponse.getData().getOrgName());
203
				*/
204
			}
205
		}
206
207
		// 图片信息
208
		Map<String, String> pictureMap = uploadFileService.getFileUrlToMap(aiIdenLog.getIdenPictureUrl());
209
210
		// 视频信息
211
		List<EbcMonitorVideoLog> logsList = monitorVideoLogManageService
212
				.getMonitorVideoLogByPictureTime(pictureMap.get("fileDateTimeStr"), aiIdenLog.getResourceToolId())
213
				.getData();
214
		EbcMonitorVideoLog ebcMonitorVideoLog = null;
215
		if (!CollectionUtils.isEmpty(logsList)) {
216
			ebcMonitorVideoLog = logsList.get(0);
217
			ebcMonitorVideoLog.setVideoFileUrl(uploadFileService.getFileUrl(ebcMonitorVideoLog.getVideoUrl()));
218
		}
219
220
		Map<String, Object> resultMap = new HashMap<String, Object>();
221
		resultMap.put("alarmInfo", aiIdenLogInfoMap);
222
		resultMap.put("pictureInfo", pictureMap);
223
		resultMap.put("videoInfo", ebcMonitorVideoLog);
224
		return CommonResponse.ok(resultMap);
225
	}
226
227
	@Override
228
	public CommonResponse<AiIdenLog> createAiIdenLog(AiIdenLog aiIdenLog) throws Exception {
229
		CommonRequest<AiIdenLog> aiIdenLogRequest = new CommonRequest<AiIdenLog>(aiIdenLog);
230
		return aiTaskCommand.createAiIdenLog(aiIdenLogRequest);
231
	}
232
233
	@Override
234
	public CommonResponse<AiIdenLog> modifyAiIdenLog(AiIdenLog aiIdenLog) throws Exception {
235
		CommonRequest<AiIdenLog> aiIdenLogRequest = new CommonRequest<AiIdenLog>(aiIdenLog);
236
		return aiTaskCommand.modifyAiIdenLog(aiIdenLogRequest);
237
	}
238
239
	@Override
240
	public CommonResponse<Void> deleteAiIdenLog(List<Long> aiIdenLogIdList) throws Exception {
241
		CommonRequest<List<Long>> aiIdenLogIdListRequest = new CommonRequest<List<Long>>(aiIdenLogIdList);
242
		return aiTaskCommand.deleteAiIdenLog(aiIdenLogIdListRequest);
243
	}
244
245
}

+ 2 - 2
security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/AttendanceCommonServiceImpl.java

@ -31,7 +31,7 @@ public class AttendanceCommonServiceImpl implements AttendanceCommonService {
31 31
    private EmployeeService employeeService;
32 32
33 33
    @Override
34
    public CommonResponse<PageBean<UserDto>> queryWorkEmployee(Map<String, Object> params)  {
34
    public CommonResponse<PageBean<Map<String, Object>>> queryWorkEmployee(Map<String, Object> params)  {
35 35
        String orgCode = (!(params.get("orgCode") == null || "".equals(params.get("orgCode")))) ? (String) params.get("orgCode") : null;
36 36
        String orgId = (!(params.get("orgId") == null || "".equals(params.get("orgId")))) ? (String) params.get("orgId") : null;
37 37
        String employeeId = (!(params.get("employeeId") == null || "".equals(params.get("employeeId")))) ? (String) params.get("employeeId") : null;
@ -50,7 +50,7 @@ public class AttendanceCommonServiceImpl implements AttendanceCommonService {
50 50
    }
51 51
52 52
    @Override
53
    public CommonResponse<PageBean<UserDto>> queryWorkEmployee(CommonRequest<UserDto> request) throws Exception {
53
    public CommonResponse<PageBean<Map<String, Object>>> queryWorkEmployee(CommonRequest<UserDto> request) throws Exception {
54 54
        // TODO 组织编码
55 55
        //request.getData().setOrgCode("0000");
56 56
        return userDtoQuery.queryWorkEmployee(request);

+ 100 - 26
security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/EmployeeManagementServiceImpl.java

@ -1,5 +1,6 @@
1 1
package com.ai.bss.security.protection.service.impl;
2 2
3
import java.util.ArrayList;
3 4
import java.util.HashMap;
4 5
import java.util.List;
5 6
import java.util.Map;
@ -8,6 +9,7 @@ import org.slf4j.Logger;
8 9
import org.slf4j.LoggerFactory;
9 10
import org.springframework.beans.factory.annotation.Autowired;
10 11
import org.springframework.stereotype.Service;
12
import org.springframework.util.CollectionUtils;
11 13
import org.springframework.web.multipart.MultipartFile;
12 14
13 15
import com.ai.abc.api.model.CommonRequest;
@ -19,6 +21,7 @@ import com.ai.bss.person.service.api.OrganizationQuery;
19 21
import com.ai.bss.security.protection.service.interfaces.CharSpecService;
20 22
import com.ai.bss.security.protection.service.interfaces.EmployeeManagementService;
21 23
import com.ai.bss.security.protection.service.interfaces.UploadFileService;
24
import com.ai.bss.security.protection.utils.EbcConstant;
22 25
import com.ai.bss.user.dto.EmployeeDto;
23 26
import com.ai.bss.user.dto.UserDto;
24 27
import com.ai.bss.user.service.api.EmployeeService;
@ -36,7 +39,7 @@ public class EmployeeManagementServiceImpl implements EmployeeManagementService
36 39
37 40
	@Autowired
38 41
	private EmployeeService employeeService;
39
	
42
40 43
	@Autowired
41 44
	private UploadFileService uploadFileService;
42 45
@ -47,29 +50,60 @@ public class EmployeeManagementServiceImpl implements EmployeeManagementService
47 50
	private CharSpecService charSpecService;
48 51
49 52
	@Override
50
	public CommonResponse<PageBean<UserDto>> queryEmployeeList(UserDto userDto,int pageNumber,int pageSize) throws Exception {
51
		CommonRequest<UserDto> request=new CommonRequest<UserDto>(userDto,pageNumber, pageSize);
52
		return userDtoQuery.queryWorkEmployee(request);
53
	public CommonResponse<PageBean<Map<String, Object>>> queryEmployeeList(UserDto userDto, int pageNumber, int pageSize)
54
			throws Exception {
55
		CommonRequest<UserDto> request = new CommonRequest<UserDto>(userDto, pageNumber, pageSize);
56
		CommonResponse<PageBean<Map<String, Object>>> response = userDtoQuery.queryWorkEmployee(request);
57
58
		if (response == null || response.getData() == null || CollectionUtils.isEmpty(response.getData().getData())) {
59
			return response;
60
		}
61
62
		Map<String, String> allPositionTypeMap = charSpecService
63
				.getCharSpecMap(EbcConstant.BUSINESS_SPEC_EMPLOYEE_POSITION);
64
65
		for (Map<String, Object> dataMap : response.getData().getData()) {
66
			dataMap.put("userPositionZh", allPositionTypeMap.get(String.valueOf(dataMap.get("mainJobPosition"))));
67
			
68
			
69
			
70
			
71
			
72
			
73
			
74
		}
75
		
76
		return response;
53 77
	}
54 78
55 79
	@Override
56
	public CommonResponse<EmployeeDto> queryOneEmployee(Long employeeId) throws Exception{
57
		// TODO Auto-generated method stub
58
		return null;
80
	public CommonResponse<EmployeeDto> queryOneEmployee(Long employeeId) throws Exception {
81
		EmployeeDto employeeDto = new EmployeeDto();
82
		employeeDto.setId(employeeId);
83
		CommonRequest<EmployeeDto> request = new CommonRequest<EmployeeDto>(employeeDto);
84
		CommonResponse<EmployeeDto> response = employeeService.queryEmployee(request);
85
86
		if (response == null || response.getData() == null) {
87
			return response;
88
		}
89
90
		return response;
59 91
	}
60
	
92
61 93
	@Override
62 94
	public CommonResponse<Void> createEmployee(EmployeeDto employeeDto) throws Exception {
63
		CommonRequest<EmployeeDto> request = CommonRequest.<EmployeeDto>builder().data(employeeDto).build();
95
		employeeDto.setField2(EbcConstant.AUDIT_STATUS_INI);
96
		CommonRequest<EmployeeDto> request = new CommonRequest<EmployeeDto>(employeeDto);
64 97
		return employeeService.createWorkEmployee(request);
65 98
	}
66 99
67 100
	@Override
68 101
	public CommonResponse<Void> modifyEmployee(EmployeeDto employeeDto) {
102
		employeeDto.setField2(EbcConstant.AUDIT_STATUS_INI);
69 103
		CommonRequest<EmployeeDto> request = CommonRequest.<EmployeeDto>builder().data(employeeDto).build();
70 104
		return employeeService.modifyEmployee(request);
71 105
	}
72
	
106
73 107
	@Override
74 108
	public CommonResponse<Void> deleteEmployee(String employeeId) {
75 109
		boolean success = true;
@ -94,21 +128,21 @@ public class EmployeeManagementServiceImpl implements EmployeeManagementService
94 128
	@Override
95 129
	public Map<String, String> uploadEmployeePicture(MultipartFile meFile, String pictureUrl) throws Exception {
96 130
		/*if (StringUtils.isNotBlank(pictureUrl) && !"#".equals(pictureUrl)) {
97
	 	//删除照片
98
		uploadFileService.removeFile(pictureUrl, minioConfig.getBucketToolImage());
99
	}*/
131
		 	//删除照片
132
			uploadFileService.removeFile(pictureUrl, minioConfig.getBucketToolImage());
133
		}*/
100 134
101
	// 上传
102
	String minioFileName = uploadFileService.uploadFile(meFile, minioConfig.getBucketHeaderImage());
135
		// 上传
136
		String minioFileName = uploadFileService.uploadFile(meFile, minioConfig.getBucketHeaderImage());
103 137
104
	// 获取照片的url地址
105
	String toolPictureUrl = uploadFileService.getFileUrl(minioFileName, minioConfig.getBucketHeaderImage());
138
		// 获取照片的url地址
139
		String toolPictureUrl = uploadFileService.getFileUrl(minioFileName, minioConfig.getBucketHeaderImage());
106 140
107
	// 返回信息
108
	Map<String, String> resultMap = new HashMap<String, String>();
109
	resultMap.put("pictureUrl", minioFileName);
110
	resultMap.put("toolPictureUrl", toolPictureUrl);
111
	return resultMap;
141
		// 返回信息
142
		Map<String, String> resultMap = new HashMap<String, String>();
143
		resultMap.put("pictureUrl", minioFileName);
144
		resultMap.put("toolPictureUrl", toolPictureUrl);
145
		return resultMap;
112 146
	}
113 147
114 148
	@Override
@ -116,17 +150,57 @@ public class EmployeeManagementServiceImpl implements EmployeeManagementService
116 150
		// TODO Auto-generated method stub
117 151
		return null;
118 152
	}
119
	
153
120 154
	@Override
121 155
	public CommonResponse<List<Organization>> queryChildOrgById(Long orgId) {
122
		CommonRequest<Long> organize=new CommonRequest<Long>(orgId);
156
		CommonRequest<Long> organize = new CommonRequest<Long>(orgId);
123 157
		return organizationQuery.querySubOrgByOrgId(organize);
124 158
	}
125 159
126 160
	@Override
127 161
	public CommonResponse<List<Organization>> queryCycleChildOrg(Long orgId) {
128
		CommonRequest<Long> organize=new CommonRequest<Long>(orgId);
129
		return organizationQuery.queryAllSubOrgByOrgId(organize);
162
		CommonRequest<Long> request = new CommonRequest<Long>(orgId);
163
164
		CommonResponse<Organization> orgParentResponse = organizationQuery.queryOrganizationById(request);
165
		if (orgParentResponse == null || !orgParentResponse.isSuccess() || orgParentResponse.getData() == null) {
166
			return CommonResponse.fail("504", "获取部门失败");
167
		}
168
169
		CommonResponse<List<Organization>> response = organizationQuery.queryAllSubOrgByOrgId(request);
170
		if (response == null || CollectionUtils.isEmpty(response.getData())) {
171
			return response;
172
		}
173
174
		String orgParentCode = orgParentResponse.getData().getCode();
175
		response.getData().forEach(org -> {
176
			if (orgParentCode.equals(org.getParentCode())) {
177
				org.setParentCode("-1");
178
			}
179
		});
180
181
		return response;
182
	}
183
184
	@Override
185
	public List<Map<String, Object>> queryEmployeeListByOrgId(Long orgId, int pageNumber, int pageSize) {
186
		CommonRequest<Long> request = new CommonRequest<Long>(orgId);
187
		CommonResponse<Organization> orgResponse = organizationQuery.queryOrganizationById(request);
188
		if (orgResponse == null || !orgResponse.isSuccess() || orgResponse.getData() == null) {
189
			return new ArrayList<Map<String, Object>>();
190
		}
191
192
		Map<String, Object> requestMap = new HashMap<String, Object>();
193
		requestMap.put("orgCode", orgResponse.getData().getCode());
194
		CommonRequest<Map<String, Object>> conditionMapRequest = new CommonRequest<Map<String, Object>>(requestMap,
195
				pageNumber, pageSize);
196
		CommonResponse<PageBean<Map<String, Object>>> response = employeeService
197
				.queryIndividualList(conditionMapRequest);
198
199
		if (response == null || response.getData() == null || CollectionUtils.isEmpty(response.getData().getData())) {
200
			return new ArrayList<Map<String, Object>>();
201
		}
202
203
		return response.getData().getData();
130 204
	}
131 205
132 206
}

+ 8 - 12
security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/MonitorVideoLogManageServiceImpl.java

@ -31,7 +31,7 @@ import com.ai.bss.work.safety.service.api.MonitorSceneQuery;
31 31
@Service
32 32
public class MonitorVideoLogManageServiceImpl implements MonitorVideoLogManageService {
33 33
34
	public String SPLIT_CHAR  = "_";
34
	public String SPLIT_CHAR = "_";
35 35
	@Autowired
36 36
	private MonitorSceneQuery monitorSceneQuery;
37 37
@ -42,7 +42,6 @@ public class MonitorVideoLogManageServiceImpl implements MonitorVideoLogManageSe
42 42
	@Autowired
43 43
	private UploadFileService uploadFileService;
44 44
45
46 45
	@Autowired
47 46
	private SecurityProtectionMinioConfig minioConfig;
48 47
@ -65,10 +64,9 @@ public class MonitorVideoLogManageServiceImpl implements MonitorVideoLogManageSe
65 64
		return CommonResponse.ok(list);
66 65
	}
67 66
68
69
70 67
	@Override
71
	public CommonResponse<String> queryMonitorVideoLogByTimeForM3u8(MonitorVideoLog monitorVideoLogCondition) throws Exception {
68
	public CommonResponse<String> queryMonitorVideoLogByTimeForM3u8(MonitorVideoLog monitorVideoLogCondition)
69
			throws Exception {
72 70
		CommonRequest<MonitorVideoLog> request = new CommonRequest<MonitorVideoLog>(monitorVideoLogCondition);
73 71
		CommonResponse<List<MonitorVideoLog>> response = monitorSceneQuery.queryMonitorVideoLogByTime(request);
74 72
@ -77,13 +75,12 @@ public class MonitorVideoLogManageServiceImpl implements MonitorVideoLogManageSe
77 75
			return CommonResponse.ok(null);
78 76
		}
79 77
80
81 78
		StringBuffer m3u8Str = new StringBuffer();
82 79
		m3u8Str.append("#EXTM3U").append("\n");
83 80
		m3u8Str.append("#EXT-X-VERSION:3").append("\n");
84 81
		m3u8Str.append("#EXT-X-TARGETDURATION:65").append("\n");
85 82
		m3u8Str.append("#EXT-X-MEDIA-SEQUENCE:0").append("\n");
86
		String bucketName = minioConfig.getBucketM3U8();//"m3u8-index";
83
		String bucketName = minioConfig.getBucketM3U8();// "m3u8-index";
87 84
		String fileType = ".m3u8";
88 85
		String m3u8FileName = bucketName + SPLIT_CHAR + UUID.fastUUID().toString().replace("-", "") + fileType;
89 86
@ -98,7 +95,7 @@ public class MonitorVideoLogManageServiceImpl implements MonitorVideoLogManageSe
98 95
		}
99 96
		m3u8Str.append("#EXT-X-ENDLIST").append("\n");
100 97
		InputStream is = new ByteArrayInputStream(m3u8Str.toString().getBytes());
101
		minioService.putObject(bucketName,m3u8FileName,is,fileType);
98
		minioService.putObject(bucketName, m3u8FileName, is, fileType);
102 99
103 100
		String m3u8IndexFileUrl = uploadFileService.getFileUrl(m3u8FileName);
104 101
@ -160,10 +157,9 @@ public class MonitorVideoLogManageServiceImpl implements MonitorVideoLogManageSe
160 157
		String fileType = videoUrl.substring(videoUrl.lastIndexOf(".") + 1);
161 158
162 159
		String newFileName = videoUrl.substring(videoUrl.lastIndexOf("_") + 1);
163
		int videoPrefixIndex = newFileName.lastIndexOf(EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO);
164
		String fileNameData = newFileName.substring(
165
				videoPrefixIndex + EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO.length(),
166
				videoPrefixIndex + EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO.length() + 14);
160
		int videoPrefixIndex = newFileName.lastIndexOf(EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO)
161
				+ EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO.length();
162
		String fileNameData = newFileName.substring(videoPrefixIndex, videoPrefixIndex + 14);
167 163
		Date fileDateTime = DateUtil.convertDate(fileNameData, DateUtil.PURE_DATETIME_PATTERN);
168 164
		String newFileNameData = DateUtil.formatDate(fileDateTime, "MM月dd日 HH:mm");
169 165
		String fileDateTimeStr = DateUtil.formatDate(fileDateTime);

+ 8 - 11
security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/UploadFileServiceImpl.java

@ -60,7 +60,7 @@ public class UploadFileServiceImpl implements UploadFileService {
60 60
61 61
	@Override
62 62
	public String getFileUrl(String minioFileName) throws Exception {
63
		if (StringUtils.isEmpty(minioFileName)) {
63
		if (StringUtils.isEmpty(minioFileName) || "null".equals(minioFileName)) {
64 64
			log.debug("获取文件的url为空");
65 65
			return "";
66 66
		}
@ -180,26 +180,23 @@ public class UploadFileServiceImpl implements UploadFileService {
180 180
		resultMap.put("fileType", fileType);
181 181
182 182
		if (newFileName.lastIndexOf(EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO) > 0) {
183
			int videoPrefixIndex = newFileName.lastIndexOf(EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO);
183
			int videoPrefixIndex = newFileName.lastIndexOf(EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO)
184
					+ EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO.length();
184 185
185
			String fileNameData = newFileName.substring(
186
					videoPrefixIndex + EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO.length(),
187
					videoPrefixIndex + EbcConstant.AI_MONITOR_FILE_PREFIX_VIDEO.length() + 14);
186
			String fileNameData = newFileName.substring(videoPrefixIndex, videoPrefixIndex + 14);
188 187
			Date fileDataTime = DateUtil.convertDate(fileNameData, DateUtil.PURE_DATETIME_PATTERN);
189 188
			String newFileNameData = DateUtil.formatDate(fileDataTime, "MM月dd日 HH:mm");
190 189
			resultMap.put("fileName", newFileNameData);
191 190
			resultMap.put("fileDateTimeStr", DateUtil.formatDate(fileDataTime));
192 191
193 192
		} else if (newFileName.lastIndexOf(EbcConstant.AI_MONITOR_FILE_PREFIX_PICTURE) > 0) {
194
			int picturePrefixIndex = newFileName.lastIndexOf(EbcConstant.AI_MONITOR_FILE_PREFIX_PICTURE);
193
			int picturePrefixIndex = newFileName.lastIndexOf(EbcConstant.AI_MONITOR_FILE_PREFIX_PICTURE)
194
					+ EbcConstant.AI_MONITOR_FILE_PREFIX_PICTURE.length();
195 195
196
			String fileNameData = newFileName.substring(
197
					picturePrefixIndex + EbcConstant.AI_MONITOR_FILE_PREFIX_PICTURE.length(),
198
					picturePrefixIndex + EbcConstant.AI_MONITOR_FILE_PREFIX_PICTURE.length() + 14);
196
			String fileNameData = newFileName.substring(picturePrefixIndex, picturePrefixIndex + 14);
199 197
			Date fileDataTime = DateUtil.convertDate(fileNameData, DateUtil.PURE_DATETIME_PATTERN);
200 198
			String newFileNameData = DateUtil.formatDate(fileDataTime, "MM月dd日 HH:mm:ss");
201
			String pictureSerialNum = newFileName.substring(
202
					picturePrefixIndex + EbcConstant.AI_MONITOR_FILE_PREFIX_PICTURE.length() + 14, fileNameIndex);
199
			String pictureSerialNum = newFileName.substring(picturePrefixIndex + 14, fileNameIndex);
203 200
			resultMap.put("fileName", newFileNameData + " " + pictureSerialNum);
204 201
			resultMap.put("fileDateTimeStr", DateUtil.formatDate(fileDataTime));
205 202

+ 50 - 46
security-protection-service/src/main/java/com/ai/bss/security/protection/service/impl/WorkOrderManagementServiceImpl.java

@ -7,17 +7,7 @@ import java.util.HashMap;
7 7
import java.util.List;
8 8
import java.util.Map;
9 9
10
import com.ai.abc.exception.BaseException;
11
import com.ai.bss.components.common.util.JsonUtils;
12
import com.ai.bss.user.dto.UserDto;
13
import com.ai.bss.work.attendance.dto.LeaveApprovalDto;
14
import com.ai.bss.work.attendance.model.AttendanceTask;
15
import com.ai.bss.work.attendance.service.api.ApprovalImportCommand;
16
import com.alibaba.fastjson.TypeReference;
17
import com.alibaba.fastjson.serializer.SerializerFeature;
18
import com.google.common.collect.Lists;
19 10
import org.apache.logging.log4j.util.Strings;
20
import org.junit.Assert;
21 11
import org.springframework.beans.factory.annotation.Autowired;
22 12
import org.springframework.stereotype.Service;
23 13
import org.springframework.util.CollectionUtils;
@ -25,15 +15,20 @@ import org.springframework.web.multipart.MultipartFile;
25 15
26 16
import com.ai.abc.api.model.CommonRequest;
27 17
import com.ai.abc.api.model.CommonResponse;
18
import com.ai.abc.exception.BaseException;
28 19
import com.ai.bss.characteristic.spec.model.CharacteristicSpecValue;
29 20
import com.ai.bss.components.common.model.PageBean;
21
import com.ai.bss.components.common.util.JsonUtils;
30 22
import com.ai.bss.security.protection.service.interfaces.CharSpecService;
31 23
import com.ai.bss.security.protection.service.interfaces.WorkOrderManagementService;
32 24
import com.ai.bss.security.protection.utils.EbcConstant;
33 25
import com.ai.bss.security.protection.utils.ExcelException;
34 26
import com.ai.bss.security.protection.utils.ExcelUtil;
27
import com.ai.bss.user.dto.UserDto;
35 28
import com.ai.bss.user.service.api.UserDtoQuery;
29
import com.ai.bss.work.attendance.dto.LeaveApprovalDto;
36 30
import com.ai.bss.work.attendance.model.AttendanceTaskSpec;
31
import com.ai.bss.work.attendance.service.api.ApprovalImportCommand;
37 32
import com.ai.bss.work.attendance.service.api.ApprovalTaskQuery;
38 33
import com.ai.bss.work.service.api.EventHandleCommand;
39 34
import com.ai.bss.work.service.api.WorkOrderCommand;
@ -42,6 +37,8 @@ import com.ai.bss.work.task.model.common.WorkOrder;
42 37
import com.ai.bss.work.task.model.common.WorkTask;
43 38
import com.alibaba.fastjson.JSON;
44 39
import com.alibaba.fastjson.JSONObject;
40
import com.alibaba.fastjson.serializer.SerializerFeature;
41
import com.google.common.collect.Lists;
45 42
46 43
import lombok.extern.slf4j.Slf4j;
47 44
@ -218,7 +215,7 @@ public class WorkOrderManagementServiceImpl implements WorkOrderManagementServic
218 215
219 216
		workEvent.setCharValueSet(JSON.toJSONString(params));
220 217
221
		log.debug("申请工单: "+JSON.toJSONString(workEvent));
218
		log.debug("申请工单: " + JSON.toJSONString(workEvent));
222 219
223 220
		CommonRequest<WorkEvent> eventRequest = new CommonRequest<WorkEvent>(workEvent);
224 221
		CommonResponse response = eventHandleCommand.handleEvent(eventRequest);
@ -245,7 +242,7 @@ public class WorkOrderManagementServiceImpl implements WorkOrderManagementServic
245 242
246 243
		workOrder.setCharValueSet(JSON.toJSONString(charValueMap));
247 244
248
		log.debug("审核工单: "+JSON.toJSONString(workOrder));
245
		log.debug("审核工单: " + JSON.toJSONString(workOrder));
249 246
250 247
		CommonRequest<WorkOrder> workOrderRequest = new CommonRequest<WorkOrder>(workOrder);
251 248
		CommonResponse<WorkTask> response = workOrderCommand.reportWorkOrderResult(workOrderRequest);
@ -258,37 +255,46 @@ public class WorkOrderManagementServiceImpl implements WorkOrderManagementServic
258 255
	}
259 256
260 257
	@Override
261
	public CommonResponse normalClocking(Map<String,String> map) throws Throwable {
258
	public CommonResponse normalClocking(Map<String, String> map) throws Throwable {
262 259
263 260
		String clockingType = map.get("clockingType");
264 261
		String employId = map.get("employId");
265 262
266 263
		UserDto userDto = new UserDto();
267 264
		userDto.setId(employId);
268
		CommonRequest<UserDto> request = CommonRequest.<UserDto>builder().data(userDto).pageNumber(1).pageSize(1).build();
269
		CommonResponse<PageBean<UserDto>>  result = userDtoQuery.queryWorkEmployee(request);
270
		String employOrgId = "";
265
		CommonRequest<UserDto> request = CommonRequest.<UserDto>builder().data(userDto).pageNumber(1).pageSize(1)
266
				.build();
267
		CommonResponse<PageBean<Map<String, Object>>> resultResponse = userDtoQuery.queryWorkEmployee(request);
268
269
		/*String employOrgId = "";
271 270
		try {
272
			employOrgId = result.getData().getData().get(0).getOrgId();
271
			employOrgId = result.getData().getData().get(0).get("id");
273 272
		}catch (Exception e){
274 273
			log.error("员工不存在");
275 274
			new BaseException("员工不存在");
275
		}*/
276
		if (resultResponse == null || resultResponse.getData() == null
277
				|| CollectionUtils.isEmpty(resultResponse.getData().getData())
278
				|| CollectionUtils.isEmpty(resultResponse.getData().getData().get(0))
279
				|| resultResponse.getData().getData().get(0).get("id") == null) {
280
			log.error("员工不存在");
281
			new BaseException("员工不存在");
276 282
		}
277
		log.info("输出参数:{}",JSON.toJSONString(result , SerializerFeature.PrettyFormat));
278
283
		String employOrgId = String.valueOf(resultResponse.getData().getData().get(0).get("id"));
284
		log.info("输出参数:{}", JSON.toJSONString(resultResponse, SerializerFeature.PrettyFormat));
279 285
280
		String clockingTime	 = map.get("clockingTime");
286
		String clockingTime = map.get("clockingTime");
281 287
		WorkEvent workEvent = new WorkEvent();
282 288
283 289
		workEvent.setWorkEmployeeRoleId(employId);
284 290
		workEvent.setWorkOrgRoleId(employOrgId);
285 291
		workEvent.setEventSpecId(clockingType);
286 292
287
		Map<String,String> charValueSet = new HashMap<>();
288
		charValueSet.put("clockingTime",clockingTime);
289
		charValueSet.put("clockingType","NORMAL");
290
		charValueSet.put("clockingLongitude","121.545500");
291
		charValueSet.put("clockingLatitude","31.281153");
293
		Map<String, String> charValueSet = new HashMap<>();
294
		charValueSet.put("clockingTime", clockingTime);
295
		charValueSet.put("clockingType", "NORMAL");
296
		charValueSet.put("clockingLongitude", "121.545500");
297
		charValueSet.put("clockingLatitude", "31.281153");
292 298
		workEvent.setCharValueSet(JSONObject.toJSONString(charValueSet));
293 299
//		"clockingTime": "2020-10-15 08:00:00",
294 300
//				"clockingType": "NORMAL",
@ -302,12 +308,9 @@ public class WorkOrderManagementServiceImpl implements WorkOrderManagementServic
302 308
//				JSON.parseObject(JSONObject.toJSONString(workEvent), new TypeReference<CommonRequest<WorkEvent>>() {
303 309
//				});
304 310
305
306 311
//		CommonRequest<WorkEvent> requestWorkEvent = new CommonRequest<WorkEvent>(workEvent);
307 312
		CommonRequest<WorkEvent> requestWorkEvent = CommonRequest.<WorkEvent>builder().data(workEvent).build();
308 313
309
310
311 314
		log.info("WorkEvent: \n{}", JSON.toJSONString(requestWorkEvent, true));
312 315
		CommonResponse runningResult = eventHandleCommand.handleEvent(requestWorkEvent);
313 316
		log.info("success: \n{}", JsonUtils.toJSONStringByDateFormat(runningResult, true));
@ -325,24 +328,24 @@ public class WorkOrderManagementServiceImpl implements WorkOrderManagementServic
325 328
326 329
		String orgCode = "0000";
327 330
		CommonRequest<String> request = CommonRequest.<String>builder().data(Strings.EMPTY).build();
328
		CommonResponse<Map<String,Map<String,Object>>>  userMapresult = userDtoQuery.queryUserCodeWithId(request);
331
		CommonResponse<Map<String, Map<String, Object>>> userMapresult = userDtoQuery.queryUserCodeWithId(request);
329 332
		log.info(JSON.toJSONString(userMapresult));
330 333
331 334
		List<LeaveApprovalDto> list = Lists.newArrayList();
332 335
		// "approvalResult": "APPROVED",
333 336
		// "approvalComment": "下次注意"
334
  /* "workEmployeeRoleId": "201057520856",
335
      "workOrgRoleId": "99",
336
      "charValueSet": {
337
        "approvalType": "ASK_LEAVE",
338
        "approvalSubType": "ASK_LEAVE-YEA",
339
        "approvalReason": "zt-test",
340
        "approvalEmployeeRoleId": "1113",
341
        "beginTime": "2020-10-12",
342
        "endTime": "2020-10-13",
343
        "duration": "2",
344
        "leaveType": "YEA"
345
        */
337
		/* "workEmployeeRoleId": "201057520856",
338
		    "workOrgRoleId": "99",
339
		    "charValueSet": {
340
		"approvalType": "ASK_LEAVE",
341
		"approvalSubType": "ASK_LEAVE-YEA",
342
		"approvalReason": "zt-test",
343
		"approvalEmployeeRoleId": "1113",
344
		"beginTime": "2020-10-12",
345
		"endTime": "2020-10-13",
346
		"duration": "2",
347
		"leaveType": "YEA"
348
		*/
346 349
		LeaveApprovalDto dto = new LeaveApprovalDto();
347 350
		dto.setApprovalComment("同意");
348 351
@ -357,13 +360,14 @@ public class WorkOrderManagementServiceImpl implements WorkOrderManagementServic
357 360
		dto.setApprovalReason(" no reason ");
358 361
		dto.setApplyTime("2020-10-12 12:00:00");
359 362
		dto.setBeginTime("2020-10-12");
360
		dto.setEndTime( "2020-10-13");
363
		dto.setEndTime("2020-10-13");
361 364
		dto.setDuration("2");
362 365
		dto.setLeaveType("YEA");
363
		list.add( dto);
364
		CommonRequest<List<LeaveApprovalDto>> conditionMapRequest = CommonRequest.<List<LeaveApprovalDto>>builder().data(list).build();
365
		Object importResult =  approvalImportCommand.leaveApprovalImport(conditionMapRequest);
366
		log.info(JSON.toJSONString( importResult));
366
		list.add(dto);
367
		CommonRequest<List<LeaveApprovalDto>> conditionMapRequest = CommonRequest.<List<LeaveApprovalDto>>builder()
368
				.data(list).build();
369
		Object importResult = approvalImportCommand.leaveApprovalImport(conditionMapRequest);
370
		log.info(JSON.toJSONString(importResult));
367 371
368 372
//        saveAskLeaveOrder(listTerminal, file.getOriginalFilename());
369 373
		return CommonResponse.OK_VOID;

+ 71 - 0
security-protection-service/src/main/java/com/ai/bss/security/protection/service/interfaces/AiIdenLogManageService.java

@ -0,0 +1,71 @@
1
package com.ai.bss.security.protection.service.interfaces;
2
3
import java.util.List;
4
import java.util.Map;
5
6
import com.ai.abc.api.model.CommonResponse;
7
import com.ai.bss.components.common.model.PageBean;
8
import com.ai.bss.work.safety.model.AiIdenLog;
9
10
/**
11
 * AI执行结果
12
 * @author konghl@asiainfo.com
13
 * 2020-12-24
14
 */
15
public interface AiIdenLogManageService {
16
17
	/**
18
	 * 分页查询AI执行结果信息
19
	 * @param params
20
	 * @param pageNumber
21
	 * @param pageSize
22
	 * @return
23
	 * @throws Exception
24
	 */
25
	CommonResponse<PageBean<Map<String, Object>>> queryPageAiIdenLog(Map<String, Object> params, int pageNumber,
26
			int pageSize) throws Exception;
27
28
	/**
29
	 * 查询所有AI执行结果的图片列表
30
	 * @param params
31
	 * @param pageNumber
32
	 * @param pageSize
33
	 * @return
34
	 * @throws Exception
35
	 */
36
	CommonResponse<List<Map<String, Object>>> queryAllAiIdenLogPicture(Map<String, Object> params, int pageNumber,
37
			int pageSize) throws Exception;
38
39
	/**
40
	 * 查询单个AI执行结果详情
41
	 * @param aiIdenLogId
42
	 * @return
43
	 * @throws Exception
44
	 */
45
	CommonResponse<Map<String, Object>> queryOneAiIdenLog(Long aiIdenLogId) throws Exception;
46
47
	/**
48
	 * 创建AI执行结果
49
	 * @param aiIdenLog
50
	 * @return
51
	 * @throws Exception
52
	 */
53
	CommonResponse<AiIdenLog> createAiIdenLog(AiIdenLog aiIdenLog) throws Exception;
54
55
	/**
56
	 * 修改AI执行结果
57
	 * @param aiIdenLog
58
	 * @return
59
	 * @throws Exception
60
	 */
61
	CommonResponse<AiIdenLog> modifyAiIdenLog(AiIdenLog aiIdenLog) throws Exception;
62
63
	/**
64
	 * 删除AI执行结果
65
	 * @param aiIdenLogIdList
66
	 * @return
67
	 * @throws Exception
68
	 */
69
	CommonResponse<Void> deleteAiIdenLog(List<Long> aiIdenLogIdList) throws Exception;
70
71
}

+ 2 - 2
security-protection-service/src/main/java/com/ai/bss/security/protection/service/interfaces/AttendanceCommonService.java

@ -16,7 +16,7 @@ public interface AttendanceCommonService {
16 16
     * @return
17 17
     * @throws Exception
18 18
     */
19
    CommonResponse<PageBean<UserDto>> queryWorkEmployee(Map<String, Object> params) ;
19
    CommonResponse<PageBean<Map<String, Object>>> queryWorkEmployee(Map<String, Object> params) ;
20 20
21 21
22 22
@ -26,7 +26,7 @@ public interface AttendanceCommonService {
26 26
     * @return
27 27
     * @throws Exception
28 28
     */
29
    CommonResponse<PageBean<UserDto>> queryWorkEmployee(CommonRequest<UserDto> request) throws Exception;
29
    CommonResponse<PageBean<Map<String, Object>>> queryWorkEmployee(CommonRequest<UserDto> request) throws Exception;
30 30
31 31
    /**
32 32
     * 查询所有部门(课通过name过滤)

+ 9 - 1
security-protection-service/src/main/java/com/ai/bss/security/protection/service/interfaces/EmployeeManagementService.java

@ -21,7 +21,7 @@ public interface EmployeeManagementService {
21 21
	 * @return
22 22
	 * @throws Exception
23 23
	 */
24
	CommonResponse<PageBean<UserDto>> queryEmployeeList(UserDto userDto, int pageNumber, int pageSize) throws Exception;
24
	CommonResponse<PageBean<Map<String, Object>>> queryEmployeeList(UserDto userDto, int pageNumber, int pageSize) throws Exception;
25 25
26 26
	/**
27 27
	 * 查询单个用户信息
@ -86,4 +86,12 @@ public interface EmployeeManagementService {
86 86
	 */
87 87
	CommonResponse<List<Organization>> queryCycleChildOrg(Long orgId);
88 88
89
	/**
90
	 * 根据部门ID查询下级及下下级部门的员工列表
91
	 * @param orgId
92
	 * @param pageNumber
93
	 * @param pageSize
94
	 * @return
95
	 */
96
	List<Map<String, Object>> queryEmployeeListByOrgId(Long orgId, int pageNumber, int pageSize);
89 97
}

+ 13 - 36
security-protection-service/src/main/java/com/ai/bss/security/protection/service/task/AiResultRecordKafkaTask.java

@ -13,7 +13,7 @@ import org.springframework.util.CollectionUtils;
13 13
import com.ai.abc.api.model.CommonRequest;
14 14
import com.ai.abc.api.model.CommonResponse;
15 15
import com.ai.abc.util.JsonUtils;
16
import com.ai.bss.security.protection.service.interfaces.AiAlarmManageService;
16
import com.ai.bss.security.protection.service.interfaces.AiIdenLogManageService;
17 17
import com.ai.bss.security.protection.service.interfaces.ResourceToolManageService;
18 18
import com.ai.bss.security.protection.utils.EbcConstant;
19 19
import com.ai.bss.work.safety.model.AiIdenLog;
@ -44,7 +44,7 @@ public class AiResultRecordKafkaTask {
44 44
	private MonitorSceneQuery monitorSceneQuery;
45 45
46 46
	@Autowired
47
	private AiAlarmManageService aiAlarmManageService;
47
	private AiIdenLogManageService aiIdenLogManageService;
48 48
49 49
	@KafkaListener(containerFactory = "kafkaBatchListener6", topics = "${kafka.topic.aitask:topic_ai_task}", groupId = "ai_group")
50 50
	public void AiResultRecordListener(ConsumerRecord<String, String> records, Acknowledgment ack) throws Throwable {
@ -55,42 +55,22 @@ public class AiResultRecordKafkaTask {
55 55
			log.info("已接AI任务执行结果消息,消息为:" + message);
56 56
57 57
			JSONObject messageJson = JSONObject.parseObject(message);
58
			String resourceToolCod = messageJson.getString("resourceToolCode");
59
			String aiIdenModel = messageJson.getString("aiIdenModel");
58
			String resourceToolId = messageJson.getString("resourceToolId");
60 59
			String idenResultType = messageJson.getString("idenResultType");
61 60
62 61
			// 查询相关数据
63
			Map<String, Object> resourceToolMap = resourceToolManageService.queryResourceToolByCode(resourceToolCod);
64
			if (resourceToolMap == null) {
65
				log.error("AI任务执行结果的设备CODE不存在:  resourceToolCode=" + messageJson.getString("resourceToolCode"));
66
				throw new NullPointerException("resourceToolCode not exist");
67
			}
68
69
			String resourceToolId = resourceToolMap.get("resourceToolId") == null ? ""
70
					: String.valueOf(resourceToolMap.get("resourceToolId"));
71
72 62
			CommonResponse<List<Map<String, Object>>> sceneTerminalRelResponse = monitorSceneQuery
73 63
					.selectSceneTerminalRel(new CommonRequest<Long>(Long.valueOf(resourceToolId)));
74 64
			if (sceneTerminalRelResponse == null || CollectionUtils.isEmpty(sceneTerminalRelResponse.getData())) {
75 65
				log.error("AI任务执行结果的关联场景不存在:  resourceToolId=" + resourceToolId);
76 66
				throw new NullPointerException("sceneTerminalRel not exist");
77 67
			}
78
			Map<String, Object> sceneTerminalRelMap = sceneTerminalRelResponse.getData().get(0);
79 68
80
			CommonResponse<List<Map<String, Object>>> aiTaskResponse = aiAlarmManageService
81
					.queryAiTaskByDevice(resourceToolId, aiIdenModel);
82
			if (aiTaskResponse == null || CollectionUtils.isEmpty(aiTaskResponse.getData())) {
83
				log.error("AI任务执行结果的任务不存在:  resourceToolId=" + resourceToolId + ", aiIdenModel=" + aiIdenModel);
84
				throw new NullPointerException("aiTask not exist");
85
			}
86
			Map<String, Object> aiTaskMap = aiTaskResponse.getData().get(0);
69
			Map<String, Object> sceneTerminalRelMap = sceneTerminalRelResponse.getData().get(0);
87 70
88 71
			// 封装数据
89 72
			AiIdenLog aiIdenLog = JSON.parseObject(message, new TypeReference<AiIdenLog>() {
90 73
			});
91
			aiIdenLog.setResourceToolId(resourceToolId);
92
			aiIdenLog.setResourceToolName(resourceToolMap.get("resourceToolName") == null ? ""
93
					: String.valueOf(resourceToolMap.get("resourceToolName")));
94 74
			aiIdenLog.setMonitorSceneId(sceneTerminalRelMap.get("monitorSceneId") == null ? ""
95 75
					: String.valueOf(sceneTerminalRelMap.get("monitorSceneId")));
96 76
			aiIdenLog.setMonitorSceneName(sceneTerminalRelMap.get("monitorSceneName") == null ? ""
@ -101,30 +81,27 @@ public class AiResultRecordKafkaTask {
101 81
					sceneTerminalRelMap.get("place") == null ? "" : String.valueOf(sceneTerminalRelMap.get("place")));
102 82
			aiIdenLog.setOrganizationId(
103 83
					sceneTerminalRelMap.get("orgId") == null ? "" : String.valueOf(sceneTerminalRelMap.get("orgId")));
104
			aiIdenLog.setAiTaskId(
105
					aiTaskMap.get("aiTaskId") == null ? 0L : Long.valueOf(String.valueOf(aiTaskMap.get("aiTaskId"))));
106 84
107 85
			// TODO 人员信息暂时默认
108 86
			aiIdenLog.setRelateEmployeeRoleId("201613310867");
109 87
			aiIdenLog.setRelateEmployeeRoleName("王浩");
110 88
111 89
			// 执行操作
112
			CommonRequest<AiIdenLog> aiIdenLogRequest = new CommonRequest<AiIdenLog>(aiIdenLog);
113
114
			CommonResponse<AiIdenLog> runningResult = aiTaskCommand.createAiIdenLog(aiIdenLogRequest);
115
			log.debug("AI任务执行结果: \n{}", JsonUtils.toJSONStringByDateFormat(runningResult, true));
90
			CommonResponse<AiIdenLog> aiIdenLogRunningResult = aiIdenLogManageService.createAiIdenLog(aiIdenLog);
91
			log.debug("AI任务执行结果: \n{}", JsonUtils.toJSONStringByDateFormat(aiIdenLogRunningResult, true));
116 92
117
			if (!runningResult.isSuccess()) {
118
				log.error("AI任务执行结果异常: " + runningResult.getFail().getMessage());
93
			if (!aiIdenLogRunningResult.isSuccess()) {
94
				log.error("AI任务执行结果异常: " + aiIdenLogRunningResult.getFail().getMessage());
119 95
				return;
120 96
			}
121 97
122 98
			if (!EbcConstant.AI_IDENTIFY_RESULT_NORMAL.equals(idenResultType)) {
123
				CommonResponse runningResult1 = aiTaskCommand.aiIdenLogTriggerEvent(aiIdenLogRequest);
99
				CommonRequest<AiIdenLog> aiIdenLogRequest = new CommonRequest<AiIdenLog>(aiIdenLog);
100
				CommonResponse triggerEventRunningResult = aiTaskCommand.aiIdenLogTriggerEvent(aiIdenLogRequest);
124 101
125
				log.debug("AI任务非正常情况的执行结果: \n{}", JsonUtils.toJSONStringByDateFormat(runningResult1, true));
126
				if (!runningResult.isSuccess()) {
127
					log.error("AI任务非正常情况的执行结果异常: " + runningResult.getFail().getMessage());
102
				log.debug("AI任务触发事件的执行结果: \n{}", JsonUtils.toJSONStringByDateFormat(triggerEventRunningResult, true));
103
				if (!triggerEventRunningResult.isSuccess()) {
104
					log.error("AI任务触发事件的执行结果异常: " + triggerEventRunningResult.getFail().getMessage());
128 105
					return;
129 106
				}
130 107
			}

+ 20 - 0
security-protection-service/src/main/java/com/ai/bss/security/protection/utils/EbcConstant.java

@ -57,6 +57,9 @@ public class EbcConstant {
57 57
	// 静态常量: AI任务状态
58 58
	public static final String BUSINESS_SPEC_AI_TASK_STATUS = "AI_TASK_STATUS";
59 59
	
60
	//静态常量: 职务类型
61
	public static final String BUSINESS_SPEC_EMPLOYEE_POSITION="mainJobPosition";
62
	
60 63
	// 视频监控保存视频文件固定前缀
61 64
	public static final String AI_MONITOR_FILE_PREFIX_VIDEO= "-video";
62 65
		
@ -81,6 +84,23 @@ public class EbcConstant {
81 84
	//场景关联设备的作用类别:其他
82 85
	public static final String TERMINAL_EFFECT_TYPE_OTH="OTH";
83 86
	
87
	//审核状态:待审核
88
	public static final String AUDIT_STATUS_INI="INI";
89
	
90
	//审核状态:已生效(审核通过)
91
	public static final String AUDIT_STATUS_ACC="ACC";
92
	
93
	//审核状态:未生效(未审核通过)
94
	public static final String AUDIT_STATUS_DIS="DIS";
95
	
96
	//AI匹配模型:着装违规识别
97
	public static final String AI_MODEL_CLOTHING_CODE="CLOTHING_CODE";
98
	
99
	//AI匹配模型:人脸识别
100
	public static final String AI_MODEL_FACE="FACE";
101
	
102
	//AI匹配模型:陌生人识别
103
	public static final String AI_MODEL_STRANGER="STRANGER";
84 104
	
85 105
	
86 106
	// 当前登录者的STAFF_ID