diff --git a/attendance-performance-manager-ui/admin/vue.config.js b/attendance-performance-manager-ui/admin/vue.config.js index 23ef9cb172d970590eb6e20012158bfcfdf96d41..318ead4cb6f8c947704006b480e52dffed61ee81 100644 --- a/attendance-performance-manager-ui/admin/vue.config.js +++ b/attendance-performance-manager-ui/admin/vue.config.js @@ -8,9 +8,9 @@ module.exports = { hot: true,//鑷姩淇濆瓨 proxy: { '/attendance': { - target: 'http://192.168.0.98:11039', + //target: 'http://192.168.0.98:11039', // target: 'http://112.19.80.237:11039', - // target: 'http://localhost:17500', + target: 'http://localhost:17500', changeOrigin: true, secure: false, cookieDomainRewrite: 'localhost', diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/TestController.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/TestController.java index 26fbb12aa6436653f59161cf1b62189dcc3e01b6..6c2bf6c7712095f146f059dcd176c909ba1af863 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/TestController.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/TestController.java @@ -1,7 +1,6 @@ package com.mortals.xhx.busiz; -import cn.hutool.core.codec.Base64; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.PageUtil; import cn.hutool.core.util.StrUtil; @@ -9,32 +8,30 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.mortals.framework.annotation.UnAuth; import com.mortals.framework.common.Rest; -import com.mortals.framework.model.Context; import com.mortals.framework.service.ICacheService; -import com.mortals.framework.util.DateUtils; import com.mortals.framework.utils.ServletUtils; -import com.mortals.xhx.base.system.idgenerator.service.IdgeneratorService; import com.mortals.xhx.base.system.upload.service.UploadService; import com.mortals.xhx.base.system.user.model.UserEntity; import com.mortals.xhx.base.system.user.model.UserQuery; import com.mortals.xhx.base.system.user.service.UserService; -import com.mortals.xhx.busiz.h5.rsp.ApiResp; -import com.mortals.xhx.common.code.ApiRespCodeEnum; import com.mortals.xhx.common.code.YesNoEnum; import com.mortals.xhx.module.attendance.model.AttendanceLeaveRecordEntity; import com.mortals.xhx.module.attendance.model.AttendanceRecordHikEntity; -import com.mortals.xhx.module.attendance.model.AttendanceRecordHikQuery; import com.mortals.xhx.module.attendance.service.AttendanceLeaveRecordService; import com.mortals.xhx.module.attendance.service.AttendanceRecordHikService; import com.mortals.xhx.module.dept.model.DeptEntity; import com.mortals.xhx.module.dept.model.DeptQuery; import com.mortals.xhx.module.dept.service.DeptService; +import com.mortals.xhx.module.door.model.DoorEntity; +import com.mortals.xhx.module.door.model.DoorQuery; +import com.mortals.xhx.module.door.service.DoorService; import com.mortals.xhx.module.hik.door.model.req.door.DoorEventReq; +import com.mortals.xhx.module.hik.door.model.req.door.HikDoorEventReq; import com.mortals.xhx.module.hik.door.model.rsp.door.DoorEventDataInfo; import com.mortals.xhx.module.hik.door.service.IHikDoorService; import com.mortals.xhx.module.hik.face.model.req.img.ImgReq; import com.mortals.xhx.module.hik.face.service.IHikFaceService; -import com.mortals.xhx.module.perform.service.PerformPerposeStaffService; +import com.mortals.xhx.module.hik.staff.service.IHikStaffService; import com.mortals.xhx.module.staff.model.StaffEntity; import com.mortals.xhx.module.staff.model.StaffQuery; import com.mortals.xhx.module.staff.service.StaffService; @@ -45,9 +42,11 @@ import org.springframework.util.ObjectUtils; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; -import java.io.ByteArrayInputStream; import java.io.InputStream; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; import java.util.stream.Collectors; @@ -61,10 +60,6 @@ import java.util.stream.Collectors; @Slf4j @RequestMapping("/test") public class TestController { - - @Autowired - private IdgeneratorService idgeneratorService; - @Autowired private ICacheService cacheService; @Autowired @@ -77,15 +72,15 @@ public class TestController { private UploadService uploadService; @Autowired private DeptService deptService; - - @Autowired - private PerformPerposeStaffService performPerposeStaffService; - @Autowired private AttendanceRecordHikService recordHikService; - @Autowired private IHikDoorService hikDoorService; + @Autowired + private DoorService doorService; + @Autowired + private IHikStaffService hikStaffService; + /** * 鍚屾鎸囧畾鏃ユ湡鐨勬捣搴锋暟鎹� @@ -174,26 +169,8 @@ public class TestController { } catch (Exception e) { log.error("寮傚父", e); } - - } } - -/* - List<String> eventIds = attRecords.parallelStream().filter(f -> !ObjectUtils.isEmpty(f) && !ObjectUtils.isEmpty(f.getRemark())).map(i -> i.getRemark()).collect(Collectors.toList()); - - //鏌ヨ褰撳ぉ鑰冨嫟璁板綍鏄惁鏈夐噸澶嶇殑 鏈夌殑 鍒欎笉娣诲姞 - AttendanceRecordHikQuery recordHikQuery = new AttendanceRecordHikQuery(); - recordHikQuery.setAttendanceDateStart(DateUtil.format(DateUtil.beginOfDay(new Date()), "yyyy-MM-dd")); - recordHikQuery.setAttendanceDateEnd(DateUtil.format(DateUtil.beginOfDay(new Date()), "yyyy-MM-dd")); - recordHikQuery.setRemarkList(eventIds); - Set<String> eventIdSet = recordHikService.find(recordHikQuery).parallelStream().map(i -> i.getRemark()).collect(Collectors.toSet()); - - List<AttendanceRecordHikEntity> saveRecordList = attRecords.stream().filter(f -> !eventIdSet.contains(f.getRemark())).collect(Collectors.toList()); - if (!ObjectUtils.isEmpty(saveRecordList)) { - recordHikService.save(saveRecordList); - } - log.info("saveRecordList size:{}", saveRecordList.size());*/ } @@ -241,73 +218,15 @@ public class TestController { // updateDeptPersonNum(parentDept); } } - - } - -/* - //鏇存柊鐖堕儴闂ㄧ殑浜烘暟褰掗泦 - collect.entrySet().stream().forEach(item -> { - Long deptId = item.getKey(); - DeptEntity deptEntity = deptService.get(deptId); - - if (!ObjectUtils.isEmpty(deptEntity) && !ObjectUtils.isEmpty(deptEntity.getParentId())) { - int sum = deptService.find(new DeptQuery().parentId(deptEntity.getId())).stream().mapToInt(i -> i.getPersonNum()).sum(); - DeptEntity parentDept = deptService.get(deptEntity.getParentId()); - if (ObjectUtils.isEmpty(parentDept)) { - parentDept.setPersonNum(sum); - deptService.update(parentDept); - updateDeptPersonNum(parentDept); - } - } - - - // updateDeptPersonNum(deptEntity); - - });*/ return "ok"; } - - public static void calculateParentValue(DeptEntity root) { - if (root == null) { - return; - } - - // 閫掑綊澶勭悊鍙跺瓙鑺傜偣 - if (root.getChildren().isEmpty()) { - return; - } - - // 閫掑綊璁$畻鎵€鏈夊瓙鑺傜偣鐨勫€间箣鍜� - int sum = 0; - for (DeptEntity child : root.getChildren()) { - calculateParentValue(child); - sum += child.getPersonNum(); - } - - // 鏇存柊褰撳墠鑺傜偣鐨勫€间负鎵€鏈夊瓙鑺傜偣鍊间箣鍜� - root.setPersonNum(sum); - } - - private void updateDeptPersonNum(DeptEntity deptEntity) { - if (!ObjectUtils.isEmpty(deptEntity) && !ObjectUtils.isEmpty(deptEntity.getParentId())) { - int sum = deptService.find(new DeptQuery().parentId(deptEntity.getId())).stream().mapToInt(i -> i.getPersonNum()).sum(); - DeptEntity parentDept = deptService.get(deptEntity.getParentId()); - if (ObjectUtils.isEmpty(parentDept)) { - parentDept.setPersonNum(sum); - deptService.update(parentDept); - updateDeptPersonNum(parentDept); - } - } - } - // @GetMapping("updatePersons") @UnAuth public String updatePersons() { log.info("鏇存柊鐢ㄦ埛鎵嬫満鍙风爜"); - cacheService.select(1); Map<String, String> map = cacheService.hgetAll("com:mortals:xhx:module:workman:model:WorkmanEntity"); cacheService.select(14); @@ -363,7 +282,6 @@ public class TestController { ImgReq imgReq = new ImgReq(); imgReq.setUrl(staffEntity.getPicUri()); imgReq.setServerIndexCode(staffEntity.getServerIndexCode()); - //Rest<String> rest = faceService.downloadPicture(imgReq); try { InputStream in = faceService.callPostImgs(imgReq); if (!ObjectUtils.isEmpty(in)) { @@ -375,20 +293,6 @@ public class TestController { } catch (Exception e) { log.error("涓嬭浇鍑洪敊"); } -/* - if (YesNoEnum.YES.getValue() == rest.getCode()) { - byte[] bytes = Base64.decode(rest.getData()); - if (!org.springframework.util.ObjectUtils.isEmpty(bytes)) { - InputStream inputStream = new ByteArrayInputStream(bytes); - MultipartFile file = ServletUtils.getMultipartFile(inputStream, "snap.jpg"); - String filePath = uploadService.saveFileUpload(file, "file/fileupload/snap/" + DateUtil.today(), null); - staffEntity.setPhotoPath(filePath); - - updateList.add(staffEntity); - } - } else { - log.info("download:{}", JSON.toJSONString(rest)); - }*/ } } if (!ObjectUtils.isEmpty(updateList)) { @@ -462,11 +366,44 @@ public class TestController { try { attendanceLeaveRecordService.doUpdateRecord(processInstanceId, leaveRecordEntity); } catch (Exception e) { - log.error("寮傚父",e); + log.error("寮傚父", e); } + return Rest.ok(); + } - return Rest.ok(); + /** + * 鍚屾鎸囧畾璁惧浜哄憳淇℃伅 + * + * @param testReq + * @return + */ + @PostMapping("updatePersonsByDevices") + @UnAuth + public String updatePersonsByDevices(@RequestBody TestReq testReq) { + log.info("鏇存柊璁惧浜哄憳==>{}",JSON.toJSONString(testReq)); + staffService.syncPersonsByDevices(null); + return "ok"; + } + + + /** + * 鏌ヨ璁惧鑰冨嫟浜嬩欢淇℃伅 + * + * @param testReq + * @return + */ + @PostMapping("searchEventsByDevices") + @UnAuth + public String searchEventsByDevices(@RequestBody TestReq testReq) { + log.info("鏌ヨ璁惧鑰冨嫟淇℃伅==>{}",JSON.toJSONString(testReq)); + HikDoorEventReq hikDoorEventReq = new HikDoorEventReq(); + + hikDoorEventReq.setStartTime(testReq.getCreateTimeStart()); + hikDoorEventReq.setEndTime(testReq.getCreateTimeEnd()); + DoorEntity doorEntity = doorService.get(testReq.getDeviceId()); + doorService.syncDoorDeviceEvents(doorEntity, hikDoorEventReq); + return "ok"; } diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/TestReq.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/TestReq.java index 900b2168ece3af56db8a9323bd79c835ba813cd4..1061fdc28c224cb0b059504bc250879dbb455d9a 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/TestReq.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/TestReq.java @@ -11,4 +11,8 @@ public class TestReq { private Date createTimeStart; @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") private Date createTimeEnd; + + + private Long deviceId; + } diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/daemon/task/SyncUserTaskImpl.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/daemon/task/SyncUserTaskImpl.java index ab5bdc1d040a88daf5412e9e9851a19c3de98600..29de3684b01e073e01d05928e0d5a4297cc3a016 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/daemon/task/SyncUserTaskImpl.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/daemon/task/SyncUserTaskImpl.java @@ -99,12 +99,9 @@ public class SyncUserTaskImpl implements ITaskExcuteService { log.error("鍚屾閽夐拤usreId澶辫触"); } } else { - //todo 璁惧鐩磋繛 - // deptService.syncDeptByDevice(null); + log.info("璁惧鐩磋繛鍚屾浜哄憳淇℃伅"); staffService.syncPersonsByDevices(null); } - - } catch (Exception e) { log.error("鍚屾浜轰簨寮傚父", e); } diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/hikdoor/Acs/AcsMain.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/hikdoor/Acs/AcsMain.java index eec8a01c94cc271426c35a2fc809452f2756e131..2fb094063970bea6aa658f0c3c5e1f23959474ca 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/hikdoor/Acs/AcsMain.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/hikdoor/Acs/AcsMain.java @@ -92,7 +92,7 @@ public class AcsMain { /**鐧诲綍*/ - login_V40("192.168.0.111","admin","asd12345",(short)8000); + login_V40("10.102.221.201","admin","10.102.221.201",(short)8000); /**杩滅▼鎺ч棬*/ diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/door/service/impl/DoorServiceImpl.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/door/service/impl/DoorServiceImpl.java index 1855f09af88e117e5135391e312027b350918eb1..8f581ef4ee45a61d265cd034382f10afd4d736f6 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/door/service/impl/DoorServiceImpl.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/door/service/impl/DoorServiceImpl.java @@ -53,13 +53,9 @@ public class DoorServiceImpl extends AbstractCRUDServiceImpl<DoorDao, DoorEntity @Override public Rest<Void> syncDoorDeviceEvents(DoorEntity doorEntity, HikDoorEventReq hikDoorEventReq) { - - Rest<List<EventInfo>> listRest = hikDoorService.searchDoorEventsList(hikDoorEventReq, doorEntity); - if (listRest.getCode() == YesNoEnum.YES.getValue()) { List<EventInfo> list = listRest.getData(); - List<AttendanceRecordHikEntity> attRecords = list.stream().map(item -> { AttendanceRecordHikEntity recordHikEntity = new AttendanceRecordHikEntity(); recordHikEntity.initAttrValue(); diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/hik/staff/service/IHikStaffService.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/hik/staff/service/IHikStaffService.java index e86819c5dc3dd4e5abc02cc02b3dbc7d005744f2..9a44912dcf6da828588ff2eebed44544dd57df48 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/hik/staff/service/IHikStaffService.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/hik/staff/service/IHikStaffService.java @@ -33,4 +33,21 @@ public interface IHikStaffService { + /** + * 鑾峰彇浜哄憳浜鸿劯淇℃伅 + * + * @param personReq + * @return + */ + Rest<UserSearchInfo> getPersonPicByDevices(StaffReq personReq, DoorEntity doorEntity); + + + /** + * 涓嬪彂鍥剧墖鍒版寚瀹氳澶� + * + * @param personReq + * @return + */ + Rest<UserSearchInfo> downPersonPicToDevice(StaffReq personReq, DoorEntity doorEntity); + } diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/hik/staff/service/impl/HikStaffServiceImpl.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/hik/staff/service/impl/HikStaffServiceImpl.java index ed6193c93ed8e493c3a1dd4775492d34c64a3928..4ee1a38c8a82295982a2644dd913a52ad6bc3ec7 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/hik/staff/service/impl/HikStaffServiceImpl.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/hik/staff/service/impl/HikStaffServiceImpl.java @@ -202,4 +202,14 @@ public class HikStaffServiceImpl extends AbstractHikService implements IHikStaff } } + @Override + public Rest<UserSearchInfo> getPersonPicByDevices(StaffReq personReq, DoorEntity doorEntity) { + return null; + } + + @Override + public Rest<UserSearchInfo> downPersonPicToDevice(StaffReq personReq, DoorEntity doorEntity) { + return null; + } + } diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/service/impl/StaffServiceImpl.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/service/impl/StaffServiceImpl.java index 08baa860dd58de4c548e2eb8a571163aa24273a8..83f466436ee2eef53a365984ee3383dc567d007d 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/service/impl/StaffServiceImpl.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/service/impl/StaffServiceImpl.java @@ -352,10 +352,6 @@ public class StaffServiceImpl extends AbstractCRUDCacheServiceImpl<StaffDao, Sta //璁剧疆鍒濆瀵嗙爜 entity.setLoginPwd("123456"); } - - //鐢熸垚鐢ㄦ埛id,涓嶄笌闂ㄦ埛鏈嶅姟鐢ㄦ埛鐩稿悓 -// Long userId = idgeneratorService.getLongId(USER_KEY); -// entity.setId(userId); userEntity.setLoginName(StrUtil.cleanBlank(entity.getLoginName())); userEntity.setRealName(entity.getName()); userEntity.setUserType(UserType.WORK_PERSON.getValue()); @@ -537,7 +533,6 @@ public class StaffServiceImpl extends AbstractCRUDCacheServiceImpl<StaffDao, Sta staffCollect.remove(userInfoItem.getEmployeeNo()); } StaffEntity staffEntity = this.getExtCache(StrUtil.padPre(userInfoItem.getEmployeeNo(), 8, "0")); - //DeptEntity deptEntity = deptService.selectOne(new DeptQuery().deptCode(userInfoItem.getBelongGroup())); //璁剧疆鍒伴粯璁ら儴闂� //鍒ゆ柇鏈湴鏁版嵁鏄惁涓虹┖ if (ObjectUtils.isEmpty(staffEntity)) { diff --git a/attendance-performance-manager/src/test/java/com/mortals/httpclient/system.http b/attendance-performance-manager/src/test/java/com/mortals/httpclient/system.http index 4adff777d95af9b8ed0b15b3dfc4799a8fa57b91..ff0d0c7bfcc0647f2b08339dd3f5f675f77c5d34 100644 --- a/attendance-performance-manager/src/test/java/com/mortals/httpclient/system.http +++ b/attendance-performance-manager/src/test/java/com/mortals/httpclient/system.http @@ -146,3 +146,8 @@ Content-Type: application/json "windowNum": "123123" } +###璁惧鐩磋繛鏇存柊浜哄憳 +GET {{baseUrl}}/test/updatePersonsByDevices +Content-Type: application/json + +{} \ No newline at end of file