安徽合武项目BUG修复

This commit is contained in:
pengjie 2025-02-25 15:59:14 +08:00
parent de2916d8be
commit ce613b0b27
3 changed files with 37 additions and 30 deletions

View File

@ -54,7 +54,7 @@ import springfox.documentation.annotations.ApiIgnore;
* @version V1.0 * @version V1.0
*/ */
@RestController @RestController
@RequestMapping("/worker/workerHw") @RequestMapping("/xmgl/workerHw")
@Slf4j @Slf4j
@Api(tags = "安徽合武人员管理") @Api(tags = "安徽合武人员管理")
public class WorkerHwController { public class WorkerHwController {

View File

@ -1340,6 +1340,14 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
map.put("workerId", workerInfoList.get(0).getId()); map.put("workerId", workerInfoList.get(0).getId());
} }
} }
if (StringUtils.isNotBlank(MapUtils.getString(map, "workerName"))) {
List<WorkerInfo> workerInfoList = workerInfoMapper.selectList(Wrappers.<WorkerInfo>lambdaQuery()
.eq(WorkerInfo::getWorkerName, MapUtils.getString(map, "workerName"))
.eq(WorkerInfo::getProjectSn, MapUtils.getString(map, "projectSn")));
if (workerInfoList.size() > 0) {
map.put("workerId", workerInfoList.get(0).getId());
}
}
EntityMap info = workerInfoMapper.viewWorkerInfoDetail(map); EntityMap info = workerInfoMapper.viewWorkerInfoDetail(map);
Object nature = info.get("workerNature"); Object nature = info.get("workerNature");
if (nature != null) { if (nature != null) {

View File

@ -782,12 +782,12 @@ public class WorkerTask {
@SchedulerLock(name = "getWorkerAttendByHw", lockAtMostFor = 1000 * 55, lockAtLeastFor = 1000 * 55) @SchedulerLock(name = "getWorkerAttendByHw", lockAtMostFor = 1000 * 55, lockAtLeastFor = 1000 * 55)
@RequestMapping("getWorkerAttendByHw") @RequestMapping("getWorkerAttendByHw")
public void getWorkerAttendByHw() { public void getWorkerAttendByHw() {
List<WorkerInfo> workerInfoList = workerInfoMapper.selectList(Wrappers.<WorkerInfo>lambdaQuery().eq(WorkerInfo::getProjectSn, "BD3137498CB84BF0969979E0342CDBCA")); List<WorkerInfo> workerInfoList = workerInfoMapper.selectList(Wrappers.<WorkerInfo>lambdaQuery().eq(WorkerInfo::getProjectSn, "51E111F3FDFB41D0AB67F812F1B80794"));
JSONObject pJo = new JSONObject(); JSONObject pJo = new JSONObject();
pJo.put("tenantId", "1833147242533949441"); pJo.put("tenantId", "1833147242533949441");
pJo.put("orgId", "1833149331474493441"); pJo.put("orgId", "1833149331474493441");
pJo.put("current", 1); pJo.put("current", 1);
pJo.put("size", 100); pJo.put("size", 1000);
pJo.put("startTime", System.currentTimeMillis() - 60000); pJo.put("startTime", System.currentTimeMillis() - 60000);
pJo.put("endTime", System.currentTimeMillis()); pJo.put("endTime", System.currentTimeMillis());
String result = HttpRequest.post("http://api.1357.cn/hz-labour/api/open/labour/findCardRecordByPage") String result = HttpRequest.post("http://api.1357.cn/hz-labour/api/open/labour/findCardRecordByPage")
@ -801,9 +801,12 @@ public class WorkerTask {
if (jsonObject.getInteger("statusCode") == 200) { if (jsonObject.getInteger("statusCode") == 200) {
JSONArray records = jsonObject.getJSONObject("data").getJSONArray("records"); JSONArray records = jsonObject.getJSONObject("data").getJSONArray("records");
for (int i = 0; i < records.size(); i++) { for (int i = 0; i < records.size(); i++) {
int finalI = i; JSONObject obj = records.getJSONObject(i);
String idCardNo = obj.getString("idCardNo");
List<WorkerInfo> collect = workerInfoList.stream().filter(w -> w.getIdCard().equals(idCardNo)).collect(Collectors.toList());
if (collect.size() > 0) {
CompletableFuture.runAsync(() -> { CompletableFuture.runAsync(() -> {
doAddWorkerAttend(records.getJSONObject(finalI), workerInfoList); doAddWorkerAttend(obj, collect.get(0));
}).exceptionally(throwable -> { }).exceptionally(throwable -> {
log.error("err", throwable); log.error("err", throwable);
return null; return null;
@ -812,19 +815,16 @@ public class WorkerTask {
} }
} }
} }
}
private void doAddWorkerAttend(JSONObject obj, List<WorkerInfo> workerInfoList) { private void doAddWorkerAttend(JSONObject obj, WorkerInfo workerInfo) {
String idCardNo = obj.getString("idCardNo");
List<WorkerInfo> collect = workerInfoList.stream().filter(w -> w.getIdCard().equals(idCardNo)).collect(Collectors.toList());
if (collect.size() > 0) {
WorkerInfo workerInfo = collect.get(0);
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
String imagePath = obj.getString("imagePath"); String imagePath = obj.getString("imagePath");
String deviceNo = obj.getString("deviceNo"); String deviceNo = obj.getString("deviceNo");
String fileToBase64 = "data:image/jpeg;base64," + Base64Util.getFileToBase64(imagePath); String fileToBase64 = "data:image/jpeg;base64," + Base64Util.getFileToBase64(imagePath);
FileInfo fileInfo = uploadFileService.uploadFileBase64Image(fileToBase64); FileInfo fileInfo = uploadFileService.uploadFileBase64Image(fileToBase64);
String url = fileInfo.getUrl(); String url = fileInfo.getUrl();
map.put("idCard", idCardNo); map.put("idCard", workerInfo.getIdCard());
map.put("projectCode", workerInfo.getProjectSn()); map.put("projectCode", workerInfo.getProjectSn());
map.put("passTime", DateUtil.formatDateTime(new Date(obj.getLong("createTime")))); map.put("passTime", DateUtil.formatDateTime(new Date(obj.getLong("createTime"))));
map.put("direction", obj.getIntValue("inOrOut")); map.put("direction", obj.getIntValue("inOrOut"));
@ -833,5 +833,4 @@ public class WorkerTask {
map.put("faceUrl", url); map.put("faceUrl", url);
workerAttendanceService.saveExternalPassRecord(map); workerAttendanceService.saveExternalPassRecord(map);
} }
}
} }