diff --git a/start/src/main/resources/bootstrap.yml b/start/src/main/resources/bootstrap.yml index f467a2cb..ea7eb2ef 100644 --- a/start/src/main/resources/bootstrap.yml +++ b/start/src/main/resources/bootstrap.yml @@ -3,8 +3,8 @@ spring: import: # - classpath:nacos.yml # - classpath:sdk.yml - - classpath:nacos-prod.yml - - classpath:sdk-prod.yml -# - classpath:nacos-prod2.yml -# - classpath:sdk-prod2.yml +# - classpath:nacos-prod.yml +# - classpath:sdk-prod.yml + - classpath:nacos-prod2.yml + - classpath:sdk-prod2.yml - classpath:swagger.yml diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/web/CorpInfoController.java b/web-adapter/src/main/java/com/zcloud/basic/info/web/CorpInfoController.java index bf76dc9d..55452d21 100644 --- a/web-adapter/src/main/java/com/zcloud/basic/info/web/CorpInfoController.java +++ b/web-adapter/src/main/java/com/zcloud/basic/info/web/CorpInfoController.java @@ -157,5 +157,11 @@ public class CorpInfoController { return SingleResponse.of(corpInfoService.getEncryInfo(userCheckPassWordCmd)); } + @ApiOperation("可视化大屏-企业部门用户统计") + @PostMapping("/corpUserStatisticPage") + public PageResponse corpUserStatisticPage(@Validated @RequestBody CorpUserStatisticQry qry) { + return corpInfoService.corpUserStatisticPage(qry); + } + } diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/UserImportExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/UserImportExe.java index 6500dd23..d5274dcf 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/UserImportExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/UserImportExe.java @@ -415,7 +415,10 @@ public class UserImportExe { user.setPostId(postId); user.setCorpinfoId(corpinfoId); user.setName(importEntity.getName()); - + user.setUserIdCard(encodeBase64IdCard(importEntity.getUserIdCard())); + user.setPersonnelType(importEntity.getPersonnelType()); + user.setPersonnelTypeName(importEntity.getPersonnelTypeName()); + user.resetPassword(corpInfoDO.getType()); userGateway.add(user); String corpName = null; if(corpInfoDO != null && !ObjectUtils.isEmpty(corpInfoDO.getCorpName())){ @@ -431,5 +434,15 @@ public class UserImportExe { allUsers.add(userDO); userDOTempList.add(userDO); } + private static String encodeBase64IdCard(String userIdCard) { + if (StringUtils.isEmpty(userIdCard)) { + return null; + } + try { + return Base64.getEncoder().encodeToString(userIdCard.trim().getBytes("UTF-8")); + } catch (Exception ex) { + return userIdCard.trim(); + } + } } diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/query/CorpInfoQueryExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/query/CorpInfoQueryExe.java index 3b1b6793..24908339 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/query/CorpInfoQueryExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/query/CorpInfoQueryExe.java @@ -18,6 +18,7 @@ import com.zcloud.basic.info.dto.*; import com.zcloud.basic.info.dto.clientobject.CorpDepartmentCO; import com.zcloud.basic.info.dto.clientobject.CorpInfoCO; import com.zcloud.basic.info.dto.clientobject.CorpUserMiddleCO; +import com.zcloud.basic.info.dto.clientobject.CorpUserStatisticCO; import com.zcloud.basic.info.dto.clientobject.UserCO; import com.zcloud.basic.info.persistence.dataobject.*; import com.zcloud.basic.info.persistence.repository.*; @@ -310,6 +311,17 @@ public class CorpInfoQueryExe { return true; } + public PageResponse corpUserStatisticPage(CorpUserStatisticQry qry) { + Map params = PageQueryHelper.toHashMap(qry); + PageResponse pageResponse = corpInfoRepository.corpUserStatisticPage(params); + List list = pageResponse.getData().stream().map(item -> { + CorpUserStatisticCO co = new CorpUserStatisticCO(); + BeanUtils.copyProperties(item, co); + return co; + }).collect(Collectors.toList()); + return PageResponse.of(list, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex()); + } + } diff --git a/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java b/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java index 118bf5d2..9766f5a3 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java +++ b/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java @@ -146,5 +146,10 @@ public class CorpInfoServiceImpl implements CorpInfoServiceI { return corpInfoQueryExe.verifyCorpInfo(); } + + @Override + public PageResponse corpUserStatisticPage(CorpUserStatisticQry qry) { + return corpInfoQueryExe.corpUserStatisticPage(qry); + } } diff --git a/web-client/src/main/java/com/zcloud/basic/info/api/CorpInfoServiceI.java b/web-client/src/main/java/com/zcloud/basic/info/api/CorpInfoServiceI.java index 49e91882..7f2d862e 100644 --- a/web-client/src/main/java/com/zcloud/basic/info/api/CorpInfoServiceI.java +++ b/web-client/src/main/java/com/zcloud/basic/info/api/CorpInfoServiceI.java @@ -55,5 +55,7 @@ public interface CorpInfoServiceI { DecryptCmd getEncryInfo(UserCheckPassWordCmd userCheckPassWordCmd); void deleteCorpAndDown(List ids); + + PageResponse corpUserStatisticPage(CorpUserStatisticQry qry); } diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpUserStatisticQry.java b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpUserStatisticQry.java new file mode 100644 index 00000000..ca248eec --- /dev/null +++ b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpUserStatisticQry.java @@ -0,0 +1,23 @@ +package com.zcloud.basic.info.dto; + +import com.alibaba.cola.dto.PageQuery; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * 可视化大屏企业部门用户统计查询参数 + */ +@Data +public class CorpUserStatisticQry extends PageQuery { + + @ApiModelProperty(value = "企业名称", name = "likeCorpName") + private String likeCorpName; + + @ApiModelProperty(value = "企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位, 6-物资中心)", name = "inType") + private List inType; + + @ApiModelProperty(value = "企业类型1:监管 2:企业 3:相关方", name = "enterpriseType") + private Integer enterpriseType; +} diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpUserStatisticCO.java b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpUserStatisticCO.java new file mode 100644 index 00000000..77478ae9 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpUserStatisticCO.java @@ -0,0 +1,24 @@ +package com.zcloud.basic.info.dto.clientobject; + +import com.alibaba.cola.dto.ClientObject; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 可视化大屏企业部门用户统计 + */ +@Data +public class CorpUserStatisticCO extends ClientObject { + + @ApiModelProperty(value = "企业id") + private Long id; + + @ApiModelProperty(value = "企业名称") + private String corpName; + + @ApiModelProperty(value = "部门数量") + private Long departmentCount; + + @ApiModelProperty(value = "用户数量") + private Long userCount; +} diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/CorpUserStatisticDO.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/CorpUserStatisticDO.java new file mode 100644 index 00000000..39783bf1 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/CorpUserStatisticDO.java @@ -0,0 +1,18 @@ +package com.zcloud.basic.info.persistence.dataobject; + +import lombok.Data; + +/** + * 可视化大屏企业部门用户统计查询结果 + */ +@Data +public class CorpUserStatisticDO { + + private Long id; + + private String corpName; + + private Long departmentCount; + + private Long userCount; +} diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/mapper/CorpInfoMapper.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/mapper/CorpInfoMapper.java index 7a2449e4..706d7cc4 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/mapper/CorpInfoMapper.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/mapper/CorpInfoMapper.java @@ -7,6 +7,7 @@ import com.jjb.saas.framework.datascope.annotation.DataScope; import com.jjb.saas.framework.datascope.annotation.DataScopes; import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO; import com.zcloud.basic.info.persistence.dataobject.UserCorpInfoStatDO; +import com.zcloud.basic.info.persistence.dataobject.CorpUserStatisticDO; import com.zcloud.basic.info.persistence.dataobject.UserDO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -36,6 +37,7 @@ public interface CorpInfoMapper extends BaseMapper { IPage selectUserPageNoPms(IPage iPage, @Param("ew") QueryWrapper queryWrapper, String menuPerms); + IPage corpUserStatisticPage(IPage iPage, Map params); } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java index 675f4d69..53328470 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java @@ -4,6 +4,7 @@ import com.alibaba.cola.dto.PageResponse; import com.jjb.saas.framework.repository.repo.BaseRepository; import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO; import com.zcloud.basic.info.persistence.dataobject.UserCorpInfoStatDO; +import com.zcloud.basic.info.persistence.dataobject.CorpUserStatisticDO; import java.util.List; import java.util.Map; @@ -47,5 +48,7 @@ public interface CorpInfoRepository extends BaseRepository { Boolean isSupper(); void deleteById(Long id); + + PageResponse corpUserStatisticPage(Map parmas); } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java index fb3b7495..1162a32e 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java @@ -26,6 +26,7 @@ import com.zcloud.basic.info.domain.enums.CorpUseFlagEnum; import com.zcloud.basic.info.domain.enums.MenuEnum; import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO; import com.zcloud.basic.info.persistence.dataobject.UserCorpInfoStatDO; +import com.zcloud.basic.info.persistence.dataobject.CorpUserStatisticDO; import com.zcloud.basic.info.persistence.mapper.CorpInfoMapper; import com.zcloud.basic.info.persistence.repository.CorpInfoRepository; import com.zcloud.basic.info.utils.Query; @@ -332,5 +333,23 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl corpUserStatisticPage(Map params) { + IPage iPage = new Query().getPage(params); + if (ObjectUtil.isNotEmpty(params.get("enterpriseType"))) { + List enterpriseType = CorpTypeEnum.getCodesByEnterpriseType((Integer) params.get("enterpriseType")); + if (CollUtil.isNotEmpty(enterpriseType)) { + params.put("type", enterpriseType); + } + } + List inType = (List) params.get("inType"); + if (CollUtil.isNotEmpty(inType)) { + params.put("type", inType); + } + + IPage result = corpInfoMapper.corpUserStatisticPage(iPage, params); + return PageHelper.pageToResponse(result, result.getRecords()); + } } diff --git a/web-infrastructure/src/main/resources/mapper/CorpInfoMapper.xml b/web-infrastructure/src/main/resources/mapper/CorpInfoMapper.xml index e7e2c4b3..59a84745 100644 --- a/web-infrastructure/src/main/resources/mapper/CorpInfoMapper.xml +++ b/web-infrastructure/src/main/resources/mapper/CorpInfoMapper.xml @@ -112,5 +112,28 @@ FROM corp_info ${ew.customSqlSegment} + +