server/admin_timer/src/main/java/com/doumee/task/ScheduleSendTaskTool.java
@@ -22,23 +22,22 @@ @Autowired private HkSyncEmpowerServiceImpl hkSyncEmpowerService; public static int endId = 0; public static Integer endId = 0; /** * 宿¶åæ¥å é¨äººåææå°æµ·åº·ç³»ç» * @throws Exception */ @Scheduled(fixedDelay= 30*1000) public void syncEmpowerData() { endId = hkSyncEmpowerService.syncEmpowerData(0); if(endId ==null){ endId =0; } endId = hkSyncEmpowerService.syncEmpowerData(endId); for (int i = 0; i < 9; i++) { if(endId!=null){ endId = hkSyncEmpowerService.syncEmpowerData(endId); endId = hkSyncEmpowerService.syncEmpowerData(endId); endId = hkSyncEmpowerService.syncEmpowerData(endId); endId = hkSyncEmpowerService.syncEmpowerData(endId); endId = hkSyncEmpowerService.syncEmpowerData(endId); endId = hkSyncEmpowerService.syncEmpowerData(endId); endId = hkSyncEmpowerService.syncEmpowerData(endId); endId = hkSyncEmpowerService.syncEmpowerData(endId); } } } } server/admin_timer/src/main/java/com/doumee/task/ScheduleTaskDetailTool.java
@@ -19,6 +19,7 @@ @EnableScheduling public class ScheduleTaskDetailTool { public static Integer endId = 0; @Autowired private HkSyncEmpowerServiceImpl hkSyncEmpowerService; @@ -26,8 +27,16 @@ * 宿¶æ¥è¯¢äººåå®é ä¸åæéç»æï¼æ¯å¦å·²ç»ä¸è½½æå * @throws Exception */ @Scheduled(fixedDelay= 3*1000) @Scheduled(fixedDelay= 30*1000) public void syncEmpowerDetailData() { hkSyncEmpowerService.syncEmpowerDetailData(); if(endId ==null){ endId =0; } endId = hkSyncEmpowerService.syncEmpowerDetailData(endId); for (int i = 0; i < 9; i++) { if(endId!=null){ endId = hkSyncEmpowerService.syncEmpowerDetailData(endId); } } } } server/admin_timer/src/main/java/com/doumee/task/ScheduleTaskProgressTool.java
@@ -18,15 +18,17 @@ @Component @EnableScheduling public class ScheduleTaskProgressTool { public static Integer endId = 0; @Autowired private HkSyncEmpowerServiceImpl hkSyncEmpowerService; /** * 宿¶æ¥è¯¢äººåä¸åæµ·åº·ç»æï¼ä»»å¡æ¯å¦å·²ä¸è½½ç»æï¼ * @throws Exception */ @Scheduled(fixedDelay=60*1000) @Scheduled(fixedDelay=20*1000) public void syncEmpowerResultData() { hkSyncEmpowerService.syncEmpowerResultData(); endId = hkSyncEmpowerService.syncEmpowerResultData(endId); } } server/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceRoleController.java
@@ -33,14 +33,14 @@ @PreventRepeat @ApiOperation("æ°å»º") @PostMapping("/create") //@RequiresPermissions("business:devicerole:create") @RequiresPermissions("business:devicerole:create") public ApiResponse create(@RequestBody DeviceRole deviceRole) { return ApiResponse.success(deviceRoleService.create(deviceRole)); } @ApiOperation("æ ¹æ®IDå é¤") @GetMapping("/delete/{id}") //@RequiresPermissions("business:devicerole:delete") @RequiresPermissions("business:devicerole:delete") public ApiResponse deleteById(@PathVariable Integer id) { deviceRoleService.deleteById(id); return ApiResponse.success(null); @@ -48,7 +48,7 @@ @ApiOperation("æ¹éå é¤") @GetMapping("/delete/batch") //@RequiresPermissions("business:devicerole:delete") @RequiresPermissions("business:devicerole:delete") public ApiResponse deleteByIdInBatch(@RequestParam String ids) { String [] idArray = ids.split(","); List<Integer> idList = new ArrayList<>(); @@ -61,7 +61,7 @@ @ApiOperation("æ ¹æ®IDä¿®æ¹") @PostMapping("/updateById") //@RequiresPermissions("business:devicerole:update") @RequiresPermissions("business:devicerole:update") public ApiResponse updateById(@RequestBody DeviceRole deviceRole) { deviceRoleService.updateById(deviceRole); return ApiResponse.success(null); @@ -69,7 +69,7 @@ @ApiOperation("æ ¹æ®IDä¿®æ¹é»è®¤é¨ç¦ç»ç¶æ") @PostMapping("/updateStatusById") //@RequiresPermissions("business:devicerole:update") @RequiresPermissions("business:devicerole:update") public ApiResponse updateStatusById(@RequestBody DeviceRole deviceRole) { deviceRoleService.updateStatusById(deviceRole); return ApiResponse.success(null); @@ -77,14 +77,14 @@ @ApiOperation("å页æ¥è¯¢") @PostMapping("/page") //@RequiresPermissions("business:devicerole:query") @RequiresPermissions("business:devicerole:query") public ApiResponse<PageData<DeviceRole>> findPage (@RequestBody PageWrap<DeviceRole> pageWrap) { return ApiResponse.success(deviceRoleService.findPage(pageWrap)); } @ApiOperation("导åºExcel") @PostMapping("/exportExcel") //@RequiresPermissions("business:devicerole:exportExcel") @RequiresPermissions("business:devicerole:exportExcel") public void exportExcel (@RequestBody PageWrap<DeviceRole> pageWrap, HttpServletResponse response) { ExcelExporter.build(DeviceRole.class).export(deviceRoleService.findPage(pageWrap).getRecords(), "é¨ç¦è§è²ä¿¡æ¯è¡¨", response); } server/dmvisit_admin/src/main/java/com/doumee/api/business/MemberCardController.java
@@ -112,6 +112,7 @@ return ApiResponse.success(memberCardService.findById(id)); } @ApiOperation("æ ¹æ®æ¡ä»¶æ¥è¯¢å¯ç¨å¡å·") @PostMapping("/queryCard") //@RequiresPermissions("business:membercard:query") server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java
@@ -17,11 +17,14 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.HttpsUtil; import com.doumee.dao.business.InterfaceLogMapper; import com.doumee.dao.business.model.InterfaceLog; import com.doumee.dao.business.model.Member; import com.doumee.service.business.InterfaceLogService; import com.github.pagehelper.PageInfo; import org.apache.commons.lang3.StringUtils; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -34,8 +37,12 @@ @Autowired private InterfaceLogService interfaceLogService; @Autowired private SqlSessionFactory sqlSessionFactory; public void saveInterfaceLog(Object param, String path,String result,Integer type) { SqlSession sqlSession2 = sqlSessionFactory.openSession(true); InterfaceLogMapper mapper2 = sqlSession2.getMapper(InterfaceLogMapper.class); InterfaceLog interfaceLog=new InterfaceLog(); interfaceLog.setType(type); interfaceLog.setCreateDate(new Date()); @@ -47,7 +54,8 @@ interfaceLog.setRepose(result); interfaceLog.setName(path); interfaceLog.setUrl(path); interfaceLogService.create(interfaceLog); mapper2.insert(interfaceLog); sqlSession2.commit(); } server/dmvisit_service/src/main/java/com/doumee/dao/business/join/MemberRoleJoinMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,12 @@ package com.doumee.dao.business.join; import com.doumee.dao.business.model.Member; import com.doumee.dao.business.model.MemberRole; import com.github.yulichang.base.mapper.MPJJoinMapper; /** * @author T14 */ //@Repository public interface MemberRoleJoinMapper extends MPJJoinMapper<MemberRole> { } server/dmvisit_service/src/main/java/com/doumee/dao/business/model/MemberRole.java
@@ -1,5 +1,6 @@ package com.doumee.dao.business.model; import com.baomidou.mybatisplus.annotation.TableField; import com.doumee.core.annotation.excel.ExcelColumn; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -58,6 +59,9 @@ @ApiModelProperty(value = "è§è²ç¼ç ï¼å ³èdoor_role),å¤ä¸ªè±æéå·éå¼") @ExcelColumn(name="è§è²ç¼ç ï¼å ³èdoor_role)") private String roleId; @ApiModelProperty(value = "å¯ä½¿ç¨é¨ç¦ç¼ç éåï¼å¤ä¸ªè±æéå·éå¼") @TableField(exist = false) private String doorIds; } server/dmvisit_service/src/main/java/com/doumee/service/business/MemberCardService.java
@@ -91,7 +91,7 @@ * @return PageData<MemberCard> */ PageData<MemberCard> findPage(PageWrap<MemberCard> pageWrap); void dealMemberRoleEmpowerById(Integer memberId ); /** * æ¡ä»¶ç»è®¡ * server/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java
@@ -9,6 +9,7 @@ import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest; import com.doumee.core.haikang.model.param.respose.AppointmentInfoResponse; import com.doumee.dao.business.model.ParkBook; import io.swagger.models.auth.In; import javax.servlet.http.HttpServletResponse; import java.util.Date; @@ -73,7 +74,7 @@ void syncEmpowerDataNew(int start,int end); void syncParkBookData(); void syncParkBookBySingleModel(ParkBook c); void syncEmpowerResultData(); void syncEmpowerDetailData(); Integer syncEmpowerResultData(Integer endId); Integer syncEmpowerDetailData(Integer endId); void syncParkRecords(Date date); } server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java
@@ -1,6 +1,7 @@ package com.doumee.service.business.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.api.R; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.model.LoginUserInfo; @@ -11,11 +12,10 @@ import com.doumee.core.erp.model.openapi.response.RoleListResponse; import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; import com.doumee.dao.business.DeviceMapper; import com.doumee.dao.business.DeviceRoleMapper; import com.doumee.dao.business.model.Device; import com.doumee.dao.business.model.DeviceRole; import com.doumee.dao.business.model.Member; import com.doumee.dao.admin.response.MemberInfoDTO; import com.doumee.dao.business.*; import com.doumee.dao.business.join.MemberRoleJoinMapper; import com.doumee.dao.business.model.*; import com.doumee.dao.web.response.DeviceRoleVO; import com.doumee.service.business.DeviceRoleService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -23,7 +23,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.doumee.service.business.MemberService; import com.doumee.service.business.impl.hksync.ferp.HkSyncOrgUserToHKServiceImpl; import com.github.yulichang.wrapper.MPJLambdaWrapper; import io.swagger.models.auth.In; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; @@ -42,12 +45,22 @@ * @date 2023/11/30 15:33 */ @Service @Slf4j public class DeviceRoleServiceImpl implements DeviceRoleService { @Autowired private DeviceRoleMapper deviceRoleMapper; @Autowired private MemberService memberService; private MemberCardMapper memberCardMapper; @Autowired private EmpowerMapper empowerMapper; @Autowired private DeviceMapper deviceMapper; @Autowired private MemberRoleJoinMapper memberRoleMapper; @Autowired private MemberMapper memberMapper; @Override @@ -118,6 +131,10 @@ @Override public void updateById(DeviceRole deviceRole) { DeviceRole model = deviceRoleMapper.selectById(deviceRole.getId()); if(model == null){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } DeviceRole newDeviceRole = null; if(null != deviceRole.getType()) { newDeviceRole = getDeviceRole(deviceRole.getType()); @@ -131,9 +148,109 @@ update.setIsDefault(Constants.ONE); deviceRoleMapper.updateById(update); } deviceRoleMapper.updateById(deviceRole); int t = deviceRoleMapper.updateById(deviceRole); if(t>0){ Thread tt = new Thread(new Runnable() { @Override public void run() { try { startUpdateMemberEmpower(model,deviceRole); }catch (Exception e){ log.error("======é¨ç¦åç»ä¿®æ¹ï¼æ´æ°äººåæé失败==="+e.getMessage()); } } }); tt.start(); } } /** * æ´æ°è¯¥æéä¸ç¸å ³çäººåææ°å ¨æ°ä¸å * @param model * @param deviceRole */ private void startUpdateMemberEmpower(DeviceRole model, DeviceRole deviceRole) { String[] ids = StringUtils.defaultString(model.getDoorIds()).split(","); String[] newIds =StringUtils.defaultString(deviceRole.getDoorIds()).split(","); List<Integer> delIds = getChangeIdsByArray(newIds,ids);//å é¤çè®¾å¤ List<Integer> addIds = getChangeIdsByArray(ids,newIds);//ææ°è®¾å¤ if((addIds==null ||addIds.size()==0)&&( delIds ==null || delIds.size() == 0 )){ //å¦ææ²¡æååï¼ä¸åå¤ç return; } List<Integer> allids = getChangeIdsByArray(new String[]{},newIds);//ææ°è®¾å¤ List<MemberRole> memberRoleList = memberRoleMapper.selectList(new QueryWrapper<MemberRole>().lambda() .eq(MemberRole::getRoleId,model.getId()) .eq(MemberRole::getIsdeleted,Constants.ZERO) ); if(memberRoleList!=null && memberRoleList.size()>0){ for(MemberRole memberRole : memberRoleList){ //妿æäººåææäºè¯¥æé Member member = memberMapper.selectById(memberRole.getMemberId()); if(member==null || member.getIsdeleted().equals(Constants.ONE)){ continue; } MPJLambdaWrapper<MemberRole> queryWrapper = new MPJLambdaWrapper<>(); queryWrapper.leftJoin(DeviceRole.class,DeviceRole::getId,MemberRole::getRoleId ); queryWrapper.selectAll(MemberRole.class) .selectAs(DeviceRole::getDoorIds, MemberRole::getDoorIds) .eq(MemberRole::getMemberId,memberRole.getMemberId()) .eq(MemberRole::getIsdeleted,Constants.ZERO) .ne(MemberRole::getRoleId,deviceRole.getId()); List<MemberRole> tLis = memberRoleMapper.selectJoinList(MemberRole.class,queryWrapper); List<Integer> actDelIds = getActChangeDoorIds(tLis,delIds); List<Integer> actAddIds = getActChangeDoorIds(tLis,allids); HkSyncOrgUserToHKServiceImpl.dealChangeDeviceRoleEmpower(member,actAddIds,actDelIds,deviceRoleMapper,empowerMapper,deviceMapper); } } } /** * æ ¹æ®ç¨æ·å½åææ°çé¨ç¦è§è²ï¼æ¥è¯¢å®é åºè¯¥å 餿è å¢å çé¨ç¦ç¹æé * @param tLis * @param changeIds * @return */ private List<Integer> getActChangeDoorIds(List<MemberRole> tLis, List<Integer> changeIds) { List<Integer> list = new ArrayList<>(); for(MemberRole memberRole : tLis){ String[] ids = StringUtils.defaultString(memberRole.getDoorIds()).split(","); if(ids!=null && ids.length>0){ for (String s:ids){ list.add(Integer.parseInt(s)); } } } List<Integer> actList = new ArrayList<>(); if(list.size()>0){ Flag: for (Integer t : changeIds){ for (Integer tt : list){ if(Constants.equalsInteger(t,tt)){ continue Flag; } } actList.add(t); } } return actList; } private List<Integer> getChangeIdsByArray(String[] ids, String[] newIds) { List<Integer> list = new ArrayList<>(); if(newIds!=null){ FLAG : for(String s :newIds){ for(String s1 :ids){ if(StringUtils.equals(s,s1)){ continue FLAG; } } list.add(Integer.parseInt(s)); } } return list; } @Override public void updateStatusById(DeviceRole deviceRole) { // è·åä¹åæ¯å¦åå¨é»è®¤é¨ç¦ç» @@ -278,7 +395,7 @@ Member member = new Member(); member.setIsdeleted(Constants.ZERO); member.setRoleIdParam("["+dto.getId()+"]"); dto.setMemberNum((int) memberService.count(member)); dto.setMemberNum( memberMapper.selectCount(new QueryWrapper<>(member))); } newPage.setRecords(deviceRoleList); } server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java
@@ -77,7 +77,6 @@ memberCard.setCreateDate(new Date()); memberCard.setStatus(Constants.ONE); memberCard.setIsdeleted(Constants.ZERO); dealMemberRoleEmpower(memberMapper.selectById(memberCard.getMemberId())); Member member = memberMapper.selectById(memberCard.getMemberId()); if(Objects.isNull(member)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"æªæ¥è¯¢å°ç¨æ·ä¿¡æ¯"); @@ -101,6 +100,8 @@ } memberCard.setHkStatus(Constants.ONE); memberCardMapper.insert(memberCard); //æ´æ°ç¨æ·æé dealMemberRoleEmpower(memberMapper.selectById(memberCard.getMemberId())); return memberCard.getId(); } @@ -236,6 +237,20 @@ List<MemberCard> cards = HkSyncOrgUserToHKServiceImpl.getNormalCardList(member,memberCardMapper); HkSyncOrgUserToHKServiceImpl.dealMemberRoleEmpowerDo(cards,member,deviceRoleMapper,empowerMapper,deviceMapper); } /** * æ´ç»äººåå ¨é¨é¨ç¦æé * @param */ @Override public void dealMemberRoleEmpowerById(Integer memberId ) { //å¤çæ°å¢ç人åå¡çæ°æ®ï¼ä¸æµ·åº·åæ¥ï¼ Member member = memberMapper.selectById(memberId); if(member==null){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } List<MemberCard> cards = HkSyncOrgUserToHKServiceImpl.getNormalCardList(member,memberCardMapper); HkSyncOrgUserToHKServiceImpl.dealMemberRoleEmpowerDo(cards,member,deviceRoleMapper,empowerMapper,deviceMapper); } @Override public PageData<MemberCard> findPage(PageWrap<MemberCard> pageWrap) { server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -42,6 +42,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.doumee.service.business.impl.hksync.ferp.HkSyncOrgUserToHKServiceImpl; import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; @@ -89,6 +90,8 @@ @Autowired private UserActionJoinMapper userActionJoinMapper; @Autowired private MemberCardMapper memberCardMapper; @Autowired private CompanyMapper companyMapper; @@ -182,7 +185,14 @@ @Override public void roleAuthById(Integer id) { LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); Member member = memberMapper.selectById(id); if(member==null || member.getIsdeleted().equals(Constants.ONE)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"å工信æ¯å·²å é¤"); } List<MemberCard> cards = HkSyncOrgUserToHKServiceImpl.getNormalCardList(member,memberCardMapper); HkSyncOrgUserToHKServiceImpl.dealMemberRoleEmpowerDo(cards,member,deviceRoleMapper,empowerMapper,deviceMapper); /* LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); Member member = memberMapper.selectById(id); if(member.getIsdeleted().equals(Constants.ONE)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"å工信æ¯å·²å é¤"); @@ -191,7 +201,7 @@ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"éå é¨äººåæ æ³è¿è¡è¯¥æä½"); } List<MemberRole> roleList = memberRoleMapper.selectList(new QueryWrapper<MemberRole>().lambda().eq(MemberRole::getMemberId,member.getId())); */ } server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
@@ -897,8 +897,8 @@ //妿已ç»å¼å¡å®æ,ä¸åä»»ä½å¤ç }else if(model !=null){ //妿åå¨ï¼ä½æªå¼å¡ï¼åç´æ¥æ´æ¹ä¸ºå¾ 忥 model.setHkStatus(Constants.ZERO); model.setRemark("å¾ åæ¥å®é²å¹³å°"); // model.setHkStatus(Constants.ZERO); // model.setRemark("å¾ åæ¥å®é²å¹³å°"); model.setIsdeleted(Constants.ZERO); memberCardMapper.updateById(model); }else{ server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java
@@ -128,10 +128,10 @@ public void syncParkBookBySingleModel(ParkBook c) { } @Override public void syncEmpowerResultData() { public Integer syncEmpowerResultData(Integer endId) {return null; } @Override public void syncEmpowerDetailData() { public Integer syncEmpowerDetailData(Integer endId) {return null; } public boolean addTaskDataAllDel(String userId, String taskId, List<Device> deviceList) { if(StringUtils.isBlank(userId )){ server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java
@@ -52,16 +52,15 @@ * 宿¶æ¥è¯¢æéä¸åä»»å¡è¿åº¦æ§è¡ç»æ */ @Override public void syncEmpowerDetailData(){ if(Constants.DEALING_HK_EMPOWER_DETAIL){ return ; } Constants.DEALING_HK_EMPOWER_DETAIL = true; try { public Integer syncEmpowerDetailData(Integer endId){ // if(Constants.DEALING_HK_EMPOWER_DETAIL){ // return ; // } // Constants.DEALING_HK_EMPOWER_DETAIL = true; //æ¥è¯¢ææå®æä¸è½½ï¼å¾ æ¥è¯¢ç»æçæ°æ®è®°å½ List<Empower> list = getDealListDetail(); List<Empower> list = getDealListDetail(endId); if(list == null || list.size() ==0){ return; return null; } Thread t1=new Thread(new Runnable() { @Override @@ -70,15 +69,12 @@ for(Empower c : list){ TaskPersonDetailRequest param = new TaskPersonDetailRequest(); param.setPageNo(1); param.setPageSize(100); // param.setPersonIds(new ArrayList<>()); param.setPageSize(10); param.setPersonIds(new String[]{c.getMemberHkId()}); param.setTaskId(c.getHkId()); TaskDataAdditionResourceRequest rec = new TaskDataAdditionResourceRequest(); rec.setResourceIndexCode(c.getDeviceIndexCode()); rec.setResourceType(c.getDeviceType()); // rec.setChannelNos(c.getDeviceChannelNo().split(",")); param.setResourceInfo(rec); //æ¥è¯¢ä¸åç¶æ BaseResponse<TaskPersonDetailListResponse> response = HKService.taskPersoDetail(param); @@ -153,18 +149,16 @@ }catch (Exception e){ }finally { Constants.DEALING_HK_EMPOWER_DETAIL=false; // Constants.DEALING_HK_EMPOWER_DETAIL=false; } } }); t1.start(); }catch (Exception e){ e.printStackTrace(); } return list.get(list.size()-1).getId(); } /** * 对海康å é¤ç»ç»ä¿¡æ¯ * @param id @@ -226,7 +220,7 @@ Constants.DEALING_HK_EMPOWER_DETAIL = true; try { //æ¥è¯¢ææå®æä¸è½½ï¼å¾ æ¥è¯¢ç»æçæ°æ®è®°å½ List<Empower> list = getDealListDetail(); List<Empower> list = getDealListDetail(0); if(list == null || list.size() ==0){ return; } @@ -272,16 +266,15 @@ * 宿¶æ¥è¯¢æéä¸åä»»å¡è¿åº¦æ§è¡ç»æ */ @Override public void syncEmpowerResultData(){ if(Constants.DEALING_HK_EMPOWER_RESULT){ return ; } Constants.DEALING_HK_EMPOWER_RESULT=true; try { public Integer syncEmpowerResultData(Integer endId){ // if(Constants.DEALING_HK_EMPOWER_RESULT){ // return null ; // } // Constants.DEALING_HK_EMPOWER_RESULT=true; //æ¥è¯¢æææ§è¡ä¸å¾æ°æ® List<Empower> list = getIngTaskListResult(); List<Empower> list = getIngTaskListResult(Constants.formatIntegerNum(endId)); if(list == null || list.size() ==0){ return; return null; } Thread t1=new Thread(new Runnable() { @Override @@ -315,9 +308,8 @@ } }); t1.start(); }catch (Exception e){ e.printStackTrace(); } return list.get(list.size()-1).getId(); } @@ -331,7 +323,6 @@ // return null ; // } // Constants.DEALING_HK_EMPOWER =true; try { //å å 餿æéè¦åæ¶ææçæ°æ® List<Empower> allList =getAllWaitDealList( endId); if(allList !=null && allList.size()>0){ @@ -359,12 +350,6 @@ }); t1.start(); return allList.get(allList.size()-1).getId(); } }catch (Exception e){ e.printStackTrace(); }finally { // Constants.DEALING_HK_EMPOWER =false; } return null; } @@ -631,7 +616,7 @@ List<Empower> list = empowerMapper.selectJoinList(Empower.class,queryWrapper); return list; } private List<Empower> getDealListDetail() { private List<Empower> getDealListDetail(int endId ) { MPJLambdaWrapper<Empower> queryWrapper = new MPJLambdaWrapper<>(); queryWrapper.selectAll(Empower.class); queryWrapper.selectAs(Device::getChannelNo,Empower::getDeviceChannelNo); @@ -642,17 +627,23 @@ queryWrapper.leftJoin(Device.class,Device::getId,Empower::getDeviceId); queryWrapper.eq(Empower::getSendStatus,Constants.EmpowerStatus.downloaded); queryWrapper.isNotNull(Member::getHkId) ; queryWrapper.gt(Empower::getId,endId); queryWrapper.orderByAsc(Empower::getSendDate); queryWrapper.last("limit 100");//æ¯æ¬¡éå¶ä¸å100个 List<Empower> list = empowerMapper.selectJoinList(Empower.class,queryWrapper); return list; } private List<Empower> getIngTaskListResult() { private List<Empower> getIngTaskListResult(int endId) { MPJLambdaWrapper<Empower> queryWrapper = new MPJLambdaWrapper<>(); queryWrapper.selectAll(Empower.class); queryWrapper.eq(Empower::getSendStatus,Constants.EmpowerStatus.ing); queryWrapper.gt(Empower::getId,endId); queryWrapper.groupBy(Empower::getHkId); List<Empower> list = empowerMapper.selectJoinList(Empower.class,queryWrapper); queryWrapper.orderByAsc(Empower::getSendDate); queryWrapper.last("limit 100");//æ¯æ¬¡éå¶ä¸å100个 List<Empower> list = empowerMapper.selectList(queryWrapper); return list; } } server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java
@@ -366,9 +366,6 @@ } public static void dealMemberRoleEmpowerDo(List<MemberCard> cards,Member member , DeviceRoleMapper deviceRoleMapper, EmpowerMapper empowerMapper, DeviceMapper deviceMapper) { if(cards == null || cards.size() == 0){ return; } List<Integer> doorIds = getRoleIdByParam(member,deviceRoleMapper); if(doorIds==null || doorIds.size() == 0){ //妿æéæ¸ ç©ºï¼åæ¸ ç©ºäººåææçæéæ°æ® @@ -379,7 +376,8 @@ .set(Empower::getSendStatus,Constants.ZERO)); return; } if(StringUtils.isBlank(member.getFaceImg())){ if((cards == null || cards.size() == 0) && StringUtils.isBlank(member.getFaceId())){ //å¦ææ²¡æå¡ 乿²¡æäººè¸ return; } @@ -389,6 +387,66 @@ && Constants.equalsObject(member.getHkStatus(),Constants.ONE)){ //å¦æç¨æ·æ¯åæ¥æµ·åº·æåï¼æ·»å 带ä¸åæéï¼åªç®¡çæ°å¢æè ç¼è¾çï¼ List<Device> deviceList = deviceMapper.selectList(new QueryWrapper<Device>().lambda().in(Device::getId,doorIds)); if(deviceList == null || deviceList.size() == 0){ return; } for (Device deviceRole:deviceList) { Empower model = new Empower(); model.setCreateDate(new Date()); model.setMemberId(member.getId()); model.setIsdeleted(Constants.ZERO); model.setDeviceId(deviceRole.getId()); model.setSendStatus(Constants.ZERO); model.setSendInfo("å¾ åæ¥å®é²å¹³å°"); model.setRemark("å¾ åæ¥å®é²å¹³å°"); model.setStartTime(member.getStartTime()); model.setEndTime(member.getEndTime()); //é»è®¤ç»äºèæå¡ model.setCardNos(Constants.VIRTUAL_CARD_INDEX+member.getId()); model.setSendType(Constants.ZERO); //æ è®°ææ°çææè®¾å¤ç¼ç éå deviceIds.add(deviceRole.getId()); list.add(model); } } //å¾ ç§»é¤æéçè®¾å¤æ°æ®ææè®°å½ï¼é对å é¤åæ´æ°ä¸¢å¤±çæéï¼éè¦åæ¥ä¸åå 餿éï¼ empowerMapper.update(null,new UpdateWrapper<Empower>().lambda() .eq(Empower::getMemberId,member.getId()) .set(Empower::getIsdeleted,Constants.ONE) .eq(Empower::getIsdeleted,Constants.ZERO) .notIn(deviceIds.size()>0,Empower::getDeviceId,deviceIds) .set(Empower::getSendStatus,Constants.ZERO)); //å¯¼å ¥æ°å¢çææä¿¡æ¯ if(list.size()>0){ //ç´æ¥è¦çéå¤çè®¾å¤æéï¼ç´æ¥å é¤å³å¯ empowerMapper.delete(new UpdateWrapper<Empower>().lambda() .eq(Empower::getMemberId,member.getId()) .eq(Empower::getIsdeleted,Constants.ZERO) .in(Empower::getDeviceId,deviceIds) ); empowerMapper.insertBatchSomeColumn(list); } } public static void dealChangeDeviceRoleEmpower( Member member ,List<Integer> addDoorIds,List<Integer> delDoorIds, DeviceRoleMapper deviceRoleMapper, EmpowerMapper empowerMapper, DeviceMapper deviceMapper) { if(delDoorIds!=null && delDoorIds.size()>0){ //å¾ ç§»é¤æéçè®¾å¤æ°æ®ææè®°å½ï¼é对å é¤åæ´æ°ä¸¢å¤±çæéï¼éè¦åæ¥ä¸åå 餿éï¼ empowerMapper.update(null,new UpdateWrapper<Empower>().lambda() .eq(Empower::getMemberId,member.getId()) .set(Empower::getIsdeleted,Constants.ONE) .eq(Empower::getIsdeleted,Constants.ZERO) .in(Empower::getDeviceId,delDoorIds) .set(Empower::getSendStatus,Constants.ZERO)); } if(StringUtils.isBlank(member.getFaceId())){ //å¦ææ²¡æå¡ 乿²¡æäººè¸ return; } List<Integer> deviceIds =new ArrayList<>();//æ°è®¾å¤ç¼ç éå List<Empower> list = new ArrayList<>();//æ°ææè®°å½éå if(Constants.equalsInteger(member.getIsdeleted(),Constants.ZERO) && Constants.equalsObject(member.getHkStatus(),Constants.ONE)){ //å¦æç¨æ·æ¯åæ¥æµ·åº·æåï¼æ·»å 带ä¸åæéï¼åªç®¡çæ°å¢æè ç¼è¾çï¼ List<Device> deviceList = deviceMapper.selectList(new QueryWrapper<Device>().lambda().in(Device::getId,addDoorIds)); if(deviceList == null || deviceList.size() == 0){ return; } @@ -468,6 +526,8 @@ //å¤çæ°å¢æ°æ® BaseResponse<List<CardInfoResponse>> result = HKService.cardBingding(param); if(result !=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) ){ // 0x04a12022","msg":"cardNo [1223382985] is exists if(result.getData()!=null ){ for(CardInfoResponse r : result.getData()){ doneCodes.add(r.getCardNo()); server/openapi/pom.xml
@@ -24,7 +24,7 @@ </dependency> </dependencies> <build> <finalName>openapi</finalName> <finalName>erp_interface</finalName> <resources> <resource> <directory>src/main/resources</directory>