server/dmvisit_service/src/main/java/com/doumee/core/utils/DateUtil.java
@@ -439,6 +439,19 @@ } return ""; } public static String getShortTimeToNull(Date date) { if (date == null) return null; try { String nowDate = sdfLong.format(date); return nowDate; } catch (Exception e) { e.printStackTrace(); } return ""; } /** * Descrption:取得当前日期,格式为:yyyy-MM-dd HH:mm:ss * server/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
@@ -38,7 +38,7 @@ WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder() .toUser(visits.getOpenid()) .templateId(tempId) .url(prefix + "pages/appointmentDetails/appointmentDetails?id="+visits.getId()) .url(prefix + visits.getId()) .build(); String thing1 = "待审批"; if(visits.getStatus()==2){ server/dmvisit_service/src/main/java/com/doumee/dao/admin/request/VisitConfigDTO.java
@@ -38,4 +38,9 @@ @ApiModelProperty(value = "入厂须知") private String visitNotice; @ApiModelProperty(value = "自选门禁配置") private Integer doorsVisitRequired; } server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/MemberInfoDTO.java
@@ -36,7 +36,7 @@ @ApiModelProperty(value = "公司名称") private String companyName; @ApiModelProperty(value = "海康状态 0待下发 1成功2失败") @ApiModelProperty(value = "海康同步状态 0未同步 1已同步 2同步失败 3不符合下发条件 4等待删除权限 ", example = "1") private Integer hkStatus; @ApiModelProperty(value = "公司负责人") server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Empower.java
@@ -71,6 +71,10 @@ @ApiModelProperty(value = "取消备注") private String cancelInfo; @ApiModelProperty(value = "设备名称") @TableField(exist = false) private String deviceName; @ApiModelProperty(value = "所属公司编码") @TableField(exist = false) private String companyId; server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
@@ -99,9 +99,11 @@ @ApiModelProperty(value = "证件显示信息") @ExcelColumn(name="证件显示信息") private String idcardDecode; @ApiModelProperty(value = "证件类型 0身份证 1港澳证件 2护照", example = "1") @ExcelColumn(name="证件类型 0身份证 1港澳证件 2护照") private Integer idcardType; @ApiModelProperty(value = "工号") @ExcelColumn(name="工号") private String code; @@ -215,6 +217,10 @@ @TableField(exist = false) private String roleIdParam; @ApiModelProperty(value = "前缀地址") @TableField(exist = false) private String prefixUrl; @ApiModelProperty(value = "授权门禁组编码集合,【访客端】唯一标识",hidden = true ) @TableField(exist = false) private Integer[] roleIds; server/dmvisit_service/src/main/java/com/doumee/dao/web/response/WxAuthorizeVO.java
@@ -1,5 +1,6 @@ package com.doumee.dao.web.response; import com.doumee.dao.business.model.Member; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -18,4 +19,6 @@ @ApiModelProperty(value = "用户token") private String token; @ApiModelProperty(value = "用户信息") private Member member; } server/dmvisit_service/src/main/java/com/doumee/service/business/impl/DeviceRoleServiceImpl.java
@@ -52,14 +52,20 @@ @Override public Integer create(DeviceRole deviceRole) { if(Objects.isNull(deviceRole) || StringUtils.isBlank(deviceRole.getName()) || Objects.isNull(deviceRole.getType()) || Objects.isNull(deviceRole.getIsDefault()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } // 获取之前是否存在默认门禁组 DeviceRole newDeviceRole = null; if(null != deviceRole.getType()) { newDeviceRole = getDeviceRole(deviceRole.getType()); } LoginUserInfo loginUserInfo = (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); if(null != newDeviceRole) { if(null != newDeviceRole && deviceRole.getIsDefault().equals(Constants.ZERO)) { DeviceRole updateDeviceRole = new DeviceRole(); // 若现在新增数据设置默认门禁组;那么先把之前的默认门禁组状态改为不是默认的 updateDeviceRole.setId(newDeviceRole.getId()); @@ -117,7 +123,7 @@ newDeviceRole = getDeviceRole(deviceRole.getType()); } LoginUserInfo loginUserInfo = (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); if(null != newDeviceRole) { if(null != newDeviceRole && deviceRole.getIsDefault().equals(Constants.ZERO)) { DeviceRole update = new DeviceRole(); update.setEdirot(loginUserInfo.getId().toString()); update.setEditDate(new Date()); @@ -163,7 +169,8 @@ LambdaQueryWrapper<DeviceRole> query = new LambdaQueryWrapper<>(); query.eq(DeviceRole::getIsdeleted,Constants.ZERO) .eq(DeviceRole::getIsDefault,Constants.ZERO) .eq(DeviceRole::getType,type); .eq(DeviceRole::getType,type) .last(" limit 1"); // 查询是否有默认门禁组,只能有一组默认门禁组 DeviceRole getDeviceRole = deviceRoleMapper.selectOne(query); return getDeviceRole; server/dmvisit_service/src/main/java/com/doumee/service/business/impl/EmpowerServiceImpl.java
@@ -9,6 +9,7 @@ import com.doumee.dao.business.EmpowerMapper; import com.doumee.dao.business.join.EmpowerJoinMapper; import com.doumee.dao.business.model.Company; import com.doumee.dao.business.model.Device; import com.doumee.dao.business.model.Empower; import com.doumee.dao.business.model.Member; import com.doumee.dao.system.model.SystemUser; @@ -109,11 +110,13 @@ queryWrapper.selectAs(Member::getName,Empower::getMemberName); queryWrapper.selectAs(Member::getPhone,Empower::getMemberPhone); queryWrapper.selectAs(Member::getIdcardDecode,Empower::getMemberidCard); queryWrapper.selectAs(Device::getName,Empower::getDeviceName); queryWrapper.selectAs(Company::getName,Empower::getCompanyName); queryWrapper.selectAs(SystemUser::getUsername,Empower::getCreaterName); queryWrapper.leftJoin(Member.class,Member::getId,Empower::getMemberId); queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId); queryWrapper.leftJoin(SystemUser.class,SystemUser::getId,Empower::getCreator); queryWrapper.leftJoin(Device.class,Device::getId,Empower::getDeviceId); queryWrapper /* .eq(Empower::getIsdeleted, Constants.ZERO)*/ server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberCardServiceImpl.java
@@ -296,7 +296,8 @@ .selectAs(Member::getName,MemberCard::getMemberName) .selectAs(Member::getPhone,MemberCard::getMemberPhone) .selectAs(Member::getType,MemberCard::getMemberType) .selectAs(Company::getName,MemberCard::getCompanyName); .selectAs(Company::getName,MemberCard::getCompanyName) .eq(MemberCard::getIsdeleted,Constants.ZERO); queryWrapper.like(Objects.nonNull(pageWrap.getModel().getCode()),MemberCard::getCode,pageWrap.getModel().getCode()) .eq(Objects.nonNull(pageWrap.getModel().getStatus()),MemberCard::getStatus,pageWrap.getModel().getStatus()) .eq(Objects.nonNull(pageWrap.getModel().getStatus()),MemberCard::getStatus,pageWrap.getModel().getStatus()) server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -603,6 +603,7 @@ queryWrapper.selectAll(Member.class); queryWrapper.selectAs(Company::getName,Member::getCompanyName); queryWrapper.select(" ( select count(1) from member_card mc where mc.member_id = t.id ) as memberCardCount "); queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId); queryWrapper.in(Objects.nonNull(pageWrap.getModel().getCompanyIds())&&pageWrap.getModel().getCompanyIds().size()>0, Member::getCompanyId,pageWrap.getModel().getCompanyIds()) @@ -714,8 +715,8 @@ .selectAs(Company::getName,MemberInfoDTO::getCompanyName) .select(" (select ua.CREATE_DATE from user_action ua where ua.MEMBER_ID=t.id and ua.ISDELETED=0 order by ua.CREATE_DATE desc limit 1) as optTime") .select(" (select s.REALNAME from user_action uac left join system_user s on uac.CREATOR = s.ID where uac.MEMBER_ID=t.id and uac.ISDELETED=0 order by uac.CREATE_DATE desc limit 1) as creatorName") .select(" (select STARTTIME from visits v where v.MEMBER_ID=t.id and v.ISDELETED=0 order by CREATE_DATE desc limit 1) as visitsLastDate"); .select(" (select STARTTIME from visits v where v.MEMBER_ID=t.id and v.ISDELETED=0 order by CREATE_DATE desc limit 1) as visitsLastDate") .eq(Member::getIsdeleted,Constants.ZERO); queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getCreaterId()),Member::getEditor,pageWrap.getModel().getCreaterId()); queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Member::getType,pageWrap.getModel().getType()); queryWrapper @@ -878,24 +879,35 @@ WxAuthorizeVO wxAuthorizeVO = new WxAuthorizeVO(); wxAuthorizeVO.setOpenid(openId); //根据openId 查询用户信息 Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda() Member member = memberJoinMapper.selectJoinOne(Member.class,new MPJLambdaWrapper<Member>() .selectAll(Member.class) .selectAs(Company::getName,Member::getCompanyName) .leftJoin(Company.class,Company::getId,Member::getCompanyId) .eq(Member::getOpenid,openId) .eq(Member::getIsdeleted,Constants.ZERO) .ne(Member::getType,Constants.memberType.visitor) .orderByDesc(Member::getCreateDate) .last(" limit 1 ") ); //非访客用户 进行判断是否存在用户 if(!Objects.isNull(member)&&!member.getType().equals(Constants.memberType.visitor)){ if(!Objects.isNull(member)){ if(member.getIsdeleted() == Constants.ONE){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"用户已删除,请联系管理员"); } if(member.getStatus() != Constants.ZERO){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"用户已禁用,请联系管理员"); } if(StringUtils.isNotBlank(member.getIdcardNo())){ member.setIdcardDecode(DESUtil.decrypt(Constants.EDS_PWD, member.getIdcardNo())); } String prefixUrl = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() + systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode(); member.setPrefixUrl(prefixUrl); JwtPayLoad payLoad = new JwtPayLoad(Integer.toString(member.getId())); String token = JwtTokenUtil.generateToken(payLoad); //存储token至redis RedisUtil.addObject(redisTemplate,Constants.RedisKeys.INTERNAL_TOKEN+"_"+member.getId(),token,Constants.RedisKeys.EXPIRE_TIME); wxAuthorizeVO.setToken(token); wxAuthorizeVO.setMember(member); } return wxAuthorizeVO; } server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -54,6 +54,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.DigestUtils; @@ -114,6 +115,7 @@ if (Objects.isNull(erpVisitDTO) || StringUtils.isBlank(erpVisitDTO.getName()) || StringUtils.isBlank(erpVisitDTO.getPhone()) || StringUtils.isBlank(erpVisitDTO.getCompanyName()) || Objects.isNull(erpVisitDTO.getIdcardType()) || StringUtils.isBlank(erpVisitDTO.getIdcardNo()) || Objects.isNull(erpVisitDTO.getStarttime()) @@ -155,6 +157,8 @@ for (ErpWithVisitDTO erpWithVisitDTO : erpWithVisitDTOList) { Visits withVisits = new Visits(); BeanUtils.copyProperties(erpWithVisitDTO, withVisits); withVisits.setCompanyName(visits.getCompanyName()); withVisits.setReason(visits.getReason()); visitsList.add(withVisits); } visits.setWithUserList(visitsList); @@ -163,11 +167,12 @@ }catch (BusinessException e){ throw e; }finally { saveInterfaceLog(erpVisitDTO,"/visitBiz/resource/crateVisit",null,Constants.ZERO); saveInterfaceLog(erpVisitDTO,"/visitBiz/resource/createVisit",null,Constants.ZERO); } } private void saveInterfaceLog(Object param, String path,String result,Integer type) { @Transactional(propagation = Propagation.NOT_SUPPORTED) void saveInterfaceLog(Object param, String path, String result, Integer type) { InterfaceLog interfaceLog=new InterfaceLog(); interfaceLog.setType(type); interfaceLog.setCreateDate(new Date()); @@ -568,9 +573,10 @@ private void isValidBaseParam(Visits visits) { if(visits.getEndtime() == null || visits.getStarttime() == null // || StringUtils.isBlank(visits.getReason()) || StringUtils.isBlank(visits.getReason()) || StringUtils.isBlank( visits.getName()) || StringUtils.isBlank( visits.getPhone()) || StringUtils.isBlank( visits.getCompanyName()) || visits.getIdcardType() == null // || StringUtils.isBlank( visits.getFaceImg() ) || StringUtils.isBlank( visits.getIdcardNo() ) @@ -917,6 +923,9 @@ if(!Constants.equalsInteger(Constants.ONE, member.getCanVisit())){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,该拜访人暂时不能接受您的拜访申请~"); } if(StringUtils.isBlank(member.getHkId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,该拜访人未下发暂时不能接受您的拜访申请~"); } return member; } server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
@@ -44,6 +44,7 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import javax.annotation.PostConstruct; @@ -524,7 +525,7 @@ for (DeviceRole deviceRole:deviceRoleList) { RoleListResponse roleListResponse = new RoleListResponse(); BeanUtils.copyProperties(deviceRole,roleListResponse); if(deviceRole.getType().equals(Constants.TWO)){ if(deviceRole.getType().equals("2")){ roleListResponse.setType(Constants.ONE); }else{ roleListResponse.setType(Constants.ZERO); @@ -877,6 +878,7 @@ member.setFsStatus(Constants.ZERO); member.setCompanyId(company.getId()); member.setType(Constants.memberType.internal); member.setCanVisit(Constants.ONE); String encryptIdNo = DESUtil.encrypt(Constants.EDS_PWD,param.getIdNo()); member.setIdcardNo(encryptIdNo); member.setStartTime(param.getValidStartTime()); @@ -1008,6 +1010,30 @@ @Override public void roleUserAuthor(UserAuthorRequest param){ try{ // if(Objects.isNull(param) // ||StringUtils.isBlank(param.getUserId())){ // throw new BusinessException(ResponseStatus.BAD_REQUEST); // } // Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getErpId,param.getUserId()).last("limit 1")); // if(Objects.isNull(member)){ // throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对不起,用户信息不存在!"); // } // List<Integer> doorIds = getRoleIdByParam(param.getRoleIds(),member); // if(StringUtils.isBlank(member.getRoleId())){ // throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"未查询到门禁组数据"); // } // //更新授权有效期 // Member update = new Member(); // update.setId(member.getId()); // update.setEditDate(new Date()); // update.setStartTime(param.getValidStartTime()); // update.setEndTime(param.getValidEndTime()); // update.setRoleId(StringUtils.isNotBlank(member.getRoleId())?member.getRoleId():null); // update.setHkStatus(Constants.ZERO);//做一遍更新逻辑 // update.setRemark("待同步安防平台"); // memberMapper.updateById(update); if(Objects.isNull(param) ||StringUtils.isBlank(param.getUserId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); @@ -1042,61 +1068,68 @@ .set(Member::getEndTime,param.getValidEndTime()) .set(Member::getEditDate,new Date()) .set(Member::getHkStatus,Constants.ZERO )); }catch (BusinessException e){ throw e; }finally { saveInterfaceLog(param,"/event/role/userAuthor",null,Constants.ZERO); } } @Override public void parkCarAuthor(CarAuthorRequest param){ if(Objects.isNull(param) ||StringUtils.isBlank(param.getCarCode())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } if(Objects.nonNull(param.getValidStartTime())&&Objects.nonNull(param.getValidEndTime())){ if(param.getValidStartTime().getTime()> param.getValidEndTime().getTime()){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,有效期时间不合法!"); try{ if(Objects.isNull(param) ||StringUtils.isBlank(param.getCarCode())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } } Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getErpId,param.getUserId()).last("limit 1")); if(Objects.isNull(member)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对不起,用户信息不存在!"); } //删除车量库记录数据 parkBookMapper.update(null,new UpdateWrapper<ParkBook>().lambda() .eq(ParkBook::getCarCode,param.getCarCode()) .set(ParkBook::getIsdeleted,Constants.ONE) .set(ParkBook::getHkStatus,Constants.ZERO) ); //查询车库信息 List<Parks> parksList = new ArrayList<>(); if(CollectionUtils.isNotEmpty(param.getParkIdList())){ parksList = parksMapper.selectList(new QueryWrapper<Parks>().lambda() .in(Parks::getId,param.getParkIdList()) if(Objects.nonNull(param.getValidStartTime())&&Objects.nonNull(param.getValidEndTime())){ if(param.getValidStartTime().getTime()> param.getValidEndTime().getTime()){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,有效期时间不合法!"); } } Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getErpId,param.getUserId()).last("limit 1")); if(Objects.isNull(member)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对不起,用户信息不存在!"); } //删除车量库记录数据 parkBookMapper.update(null,new UpdateWrapper<ParkBook>().lambda() .eq(ParkBook::getCarCode,param.getCarCode()) .set(ParkBook::getIsdeleted,Constants.ONE) .set(ParkBook::getHkStatus,Constants.ZERO) ); }else{ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对不起,停车库信息不存在,授权失败"); } if(CollectionUtils.isNotEmpty(parksList)){ List<ParkBook> parkBookList = new ArrayList<>(); for (Parks parks:parksList) { ParkBook parkBook = new ParkBook(); parkBook.setIsdeleted(Constants.ZERO); parkBook.setCreateDate(new Date()); parkBook.setCarCode(param.getCarCode()); parkBook.setParkId(parks.getId()); parkBook.setOrigin(Constants.ZERO); parkBook.setStartTime(Objects.isNull(param.getValidStartTime())?new Date():param.getValidStartTime()); parkBook.setEndTime(Objects.isNull(param.getValidEndTime())?null:param.getValidEndTime()); parkBook.setTimeType(Objects.isNull(param.getValidEndTime())?Constants.ZERO:Constants.ONE); parkBook.setMemberId(member.getId()); parkBook.setHkStatus(Constants.ZERO); parkBook.setRemark("待同步安防平台"); parkBookList.add(parkBook); //查询车库信息 if(CollectionUtils.isNotEmpty(param.getParkIdList())){ List<Parks> parksList = parksMapper.selectList(new QueryWrapper<Parks>().lambda() .in(Parks::getId,param.getParkIdList()) ); if(CollectionUtils.isNotEmpty(parksList)){ List<ParkBook> parkBookList = new ArrayList<>(); for (Parks parks:parksList) { ParkBook parkBook = new ParkBook(); parkBook.setIsdeleted(Constants.ZERO); parkBook.setCreateDate(new Date()); parkBook.setCarCode(param.getCarCode()); parkBook.setParkId(parks.getId()); parkBook.setOrigin(Constants.ZERO); parkBook.setStartTime(Objects.isNull(param.getValidStartTime())?null:param.getValidStartTime()); parkBook.setEndTime(Objects.isNull(param.getValidEndTime())?null:param.getValidEndTime()); parkBook.setTimeType(Objects.isNull(param.getValidEndTime())?Constants.ZERO:Constants.ONE); parkBook.setMemberId(member.getId()); parkBook.setHkStatus(Constants.ZERO); parkBook.setRemark("待同步安防平台"); parkBookList.add(parkBook); } parkBookMapper.insertBatchSomeColumn(parkBookList); }else{ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对不起,停车库信息不存在,授权失败"); } } parkBookMapper.insertBatchSomeColumn(parkBookList); }else{ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对不起,停车库信息不存在,授权失败"); }catch (BusinessException e){ throw e; }finally { saveInterfaceLog(param,"/event/park/carAuthor",null,Constants.ZERO); } } @@ -1142,8 +1175,8 @@ } private void saveInterfaceLog(Object param, String path,String result,Integer type) { @Transactional(propagation = Propagation.NOT_SUPPORTED) public void saveInterfaceLog(Object param, String path, String result, Integer type) { InterfaceLog interfaceLog=new InterfaceLog(); interfaceLog.setType(type); interfaceLog.setCreateDate(new Date()); server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
@@ -30,6 +30,7 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Objects; /** * 海康停车库同步Service实现 @@ -138,8 +139,8 @@ CarChargeAddRequest param = new CarChargeAddRequest(); param.setPlateNo(c.getCarCode()); param.setParkSyscode(c.getParkHkId()); param.setStartTime(DateUtil.getShortTime(c.getStartTime())); param.setEndTime(DateUtil.getShortTime(c.getEndTime())); param.setStartTime(Objects.isNull(c.getStartTime())?DateUtil.getDate(new Date(),"yyyy-MM-dd"):DateUtil.getShortTimeToNull(c.getStartTime())); param.setEndTime(Objects.isNull(c.getEndTime())?"2999-12-31":DateUtil.getShortTimeToNull(c.getEndTime())); BaseResponse response = HKService.carChargeAddtion(param); if(response!=null && StringUtils.equals(response.getCode(),HKConstants.RESPONSE_SUCCEE)){ server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncVisitServiceImpl.java
@@ -379,6 +379,13 @@ request.setVisitEndTime(DateUtil.getISO8601Timestamp(c.getEndtime())); request.setReceptionistId(c.getReceptMemberHkId());//被访人海康编码 request.setVisitPurpose(c.getReason()); if(StringUtils.isNotBlank(c.getReason())){ char[] charArray = c.getReason().toCharArray(); int length = charArray.length; if(length>32){ request.setVisitPurpose(c.getReason().substring(32)); } } //获取权限组集合 request.setVisitorPermissionSet(getVisitPermissonRequest(roleList,c)); List<VisitAppointmentVistorRequest> infolist = new ArrayList<>(); server/dmvisit_service/src/main/java/com/doumee/service/common/tree/CompanyTree.java
@@ -43,12 +43,12 @@ for (Company treeNode : nodeList){ // 判断当前节点是否为根节点,此处注意:若parentId类型是String,则要采用equals()方法判断。 if(origin== DataSyncConfig.origin.hk){ if (Objects.isNull(treeNode.getHkParentId())) { if (StringUtils.isBlank(treeNode.getHkParentId())) { // 是,添加 rootNodeList.add(treeNode); } }else if(origin== DataSyncConfig.origin.erp){ if (Objects.isNull(treeNode.getErpParentId())) { if (StringUtils.isBlank(treeNode.getErpParentId())) { // 是,添加 rootNodeList.add(treeNode); } server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
@@ -179,6 +179,11 @@ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"入厂须知 字典不存在"); } visitConfigDTO.setVisitNotice(visitNotice.getCode()); SystemDictData doorsVisitRequired = systemDictList.stream().filter(m->m.getLabel().equals(Constants.SELECT_DOORS_VISIT_REQUIRED)).findFirst().get(); if(Objects.isNull(doorsVisitRequired)){ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"自选门禁配置 字典不存在"); } visitConfigDTO.setDoorsVisitRequired(Integer.valueOf(doorsVisitRequired.getCode())); return visitConfigDTO; } @@ -243,6 +248,11 @@ } visitNotice.setCode(visitConfigDTO.getVisitNotice()); SystemDictData doorsVisitRequired = systemDictList.stream().filter(m->m.getLabel().equals(Constants.SELECT_DOORS_VISIT_REQUIRED)).findFirst().get(); if(Objects.isNull(doorsVisitRequired)){ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"自选门禁配置 字典不存在"); } doorsVisitRequired.setCode(visitConfigDTO.getDoorsVisitRequired().toString()); systemDictDataMapper.updateById(reservationWay); systemDictDataMapper.updateById(checkVisit); @@ -251,6 +261,7 @@ systemDictDataMapper.updateById(theme); systemDictDataMapper.updateById(description); systemDictDataMapper.updateById(visitNotice); systemDictDataMapper.updateById(doorsVisitRequired); } server/dmvisit_web/src/main/java/com/doumee/api/ScheduleTool.java
@@ -66,6 +66,7 @@ String url = WXConstant.GET_ACCESS_TOKEN_URL.replace("APPID",appId).replace("APPSECRET",appSecret); String response = HttpsUtil.get(url,false); JSONObject json = JSONObject.parseObject(response); System.out.println(json); SystemDictData systemDictData = systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN); if(!Objects.isNull(systemDictData)){ systemDictData.setCode(json.getString("access_token")); server/dmvisit_web/src/main/java/com/doumee/api/web/PublicController.java
@@ -95,6 +95,7 @@ @RequestMapping(method= RequestMethod.POST,value="api/uploadFtp.do") @ResponseBody public void uploadFtp(HttpServletRequest request, HttpServletResponse response, String folderCode) throws Exception { System.out.println("上传中"); String folder = systemDictDataBiz.queryByCode(Constants.FTP,folderCode).getCode(); String prefixPath = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode(); InputStream is = null; server/dmvisit_web/src/main/java/com/doumee/api/web/VisitorController.java
@@ -1,5 +1,6 @@ package com.doumee.api.web; import com.doumee.config.annotation.LoginRequired; import com.doumee.core.annotation.trace.Trace; import com.doumee.core.model.ApiResponse; import com.doumee.core.utils.Constants;