diff --git a/web-adapter/src/main/java/com/zcloud/zcGbsServicer/web/FireBrigadeMemberController.java b/web-adapter/src/main/java/com/zcloud/zcGbsServicer/web/FireBrigadeMemberController.java index f647e38..9019906 100644 --- a/web-adapter/src/main/java/com/zcloud/zcGbsServicer/web/FireBrigadeMemberController.java +++ b/web-adapter/src/main/java/com/zcloud/zcGbsServicer/web/FireBrigadeMemberController.java @@ -7,8 +7,10 @@ import com.zcloud.zcGbsServicer.api.FireBrigadeMemberServiceI; import com.zcloud.zcGbsServicer.dto.FireBrigadeMemberAddCmd; import com.zcloud.zcGbsServicer.dto.FireBrigadeMemberPageQry; import com.zcloud.zcGbsServicer.dto.FireBrigadeMemberUpdateCmd; +import com.zcloud.zcGbsServicer.dto.FireBrigadeScreenMemberQry; import com.zcloud.zcGbsServicer.dto.clientobject.FireBrigadeMemberCO; import com.zcloud.zcGbsServicer.dto.clientobject.FireBrigadeMemberStatusCO; +import com.zcloud.zcGbsServicer.dto.clientobject.FireBrigadeScreenMemberCO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -29,6 +31,12 @@ public class FireBrigadeMemberController { return fireBrigadeMemberService.currentMemberStatus(); } + @ApiOperation("大屏队员分页列表") + @PostMapping("/screen/list") + public PageResponse screenList(@RequestBody(required = false) FireBrigadeScreenMemberQry qry) { + return fireBrigadeMemberService.listScreenMembers(qry == null ? new FireBrigadeScreenMemberQry() : qry); + } + @ApiOperation("分页查询") @PostMapping("/list") public PageResponse list(@RequestBody FireBrigadeMemberPageQry qry) { diff --git a/web-app/src/main/java/com/zcloud/zcGbsServicer/service/FireBrigadeMemberServiceImpl.java b/web-app/src/main/java/com/zcloud/zcGbsServicer/service/FireBrigadeMemberServiceImpl.java index b3a60b4..aa481c2 100644 --- a/web-app/src/main/java/com/zcloud/zcGbsServicer/service/FireBrigadeMemberServiceImpl.java +++ b/web-app/src/main/java/com/zcloud/zcGbsServicer/service/FireBrigadeMemberServiceImpl.java @@ -11,11 +11,14 @@ import com.zcloud.zcGbsServicer.command.convertor.FireBrigadeMemberCoConvertor; import com.zcloud.zcGbsServicer.dto.FireBrigadeMemberAddCmd; import com.zcloud.zcGbsServicer.dto.FireBrigadeMemberPageQry; import com.zcloud.zcGbsServicer.dto.FireBrigadeMemberUpdateCmd; +import com.zcloud.zcGbsServicer.dto.FireBrigadeScreenMemberQry; import com.zcloud.zcGbsServicer.dto.clientobject.FireBrigadeMemberCO; import com.zcloud.zcGbsServicer.dto.clientobject.FireBrigadeMemberStatusCO; +import com.zcloud.zcGbsServicer.dto.clientobject.FireBrigadeScreenMemberCO; import com.zcloud.zcGbsServicer.persistence.dataobject.FireAlarmMeetingRoomDO; import com.zcloud.zcGbsServicer.persistence.dataobject.FireAlarmMeetingUserDO; import com.zcloud.zcGbsServicer.persistence.dataobject.FireBrigadeDO; +import com.zcloud.zcGbsServicer.persistence.dataobject.FireBrigadeScreenMemberRow; import com.zcloud.zcGbsServicer.persistence.dataobject.FireBrigadeUserDO; import com.zcloud.zcGbsServicer.persistence.repository.FireAlarmMeetingRoomRepository; import com.zcloud.zcGbsServicer.persistence.repository.FireAlarmMeetingUserRepository; @@ -62,6 +65,37 @@ public class FireBrigadeMemberServiceImpl extends FireAlarmServiceSupport implem return SingleResponse.of(co); } + @Override + public PageResponse listScreenMembers(FireBrigadeScreenMemberQry qry) { + FireBrigadeScreenMemberQry actualQry = qry == null ? new FireBrigadeScreenMemberQry() : qry; + String corpId = StrUtil.isBlank(actualQry.getCorpId()) ? null : actualQry.getCorpId().trim(); + Integer portArea = actualQry.getPortArea(); + if (portArea != null && portArea != 1 && portArea != 2 && portArea != 3) { + throw new BizException("港区参数无效"); + } + int pageIndex = actualQry.getPageIndex() <= 0 ? 1 : actualQry.getPageIndex(); + int pageSize = actualQry.getPageSize() <= 0 ? 10 : actualQry.getPageSize(); + PageResponse page = fireBrigadeUserRepository.listScreenMembers(corpId, portArea, pageIndex, pageSize); + List data = page.getData() == null ? Collections.emptyList() : page.getData().stream() + .map(this::toScreenMemberCO) + .collect(Collectors.toList()); + return PageResponse.of(data, page.getTotalCount(), page.getPageSize(), page.getPageIndex()); + } + + private FireBrigadeScreenMemberCO toScreenMemberCO(FireBrigadeScreenMemberRow row) { + FireBrigadeScreenMemberCO co = new FireBrigadeScreenMemberCO(); + if (row == null) { + return co; + } + co.setUserId(row.getUserId()); + co.setUserName(row.getUserName()); + co.setAge(row.getAge()); + co.setCorpId(row.getCorpId()); + co.setOrgName(row.getOrgName()); + co.setPhone(row.getPhone()); + return co; + } + @Override public PageResponse listPage(FireBrigadeMemberPageQry qry) { FireBrigadeDO brigade = getBrigade(qry.getFireBrigadeId()); @@ -198,6 +232,7 @@ public class FireBrigadeMemberServiceImpl extends FireAlarmServiceSupport implem co.setDutyId(relation.getDutyId()); co.setCorpId(relation.getCorpId()); co.setGender(relation.getGender()); + co.setAge(relation.getAge()); co.setName(selectText(relation.getUserName(), user == null ? null : user.getName())); co.setIdNo(selectText(relation.getIdNo(), user == null ? null : user.getUserIdCard())); co.setPhone(selectText(relation.getPhone(), user == null ? null : user.getPhone())); @@ -218,6 +253,7 @@ public class FireBrigadeMemberServiceImpl extends FireAlarmServiceSupport implem relation.setDutyName(cmd.getDuty()); relation.setCorpId(cmd.getCorpId()); relation.setOrgName(cmd.getOrg()); + relation.setAge(cmd.getAge()); } /** diff --git a/web-client/src/main/java/com/zcloud/zcGbsServicer/api/FireBrigadeMemberServiceI.java b/web-client/src/main/java/com/zcloud/zcGbsServicer/api/FireBrigadeMemberServiceI.java index c609660..887494a 100644 --- a/web-client/src/main/java/com/zcloud/zcGbsServicer/api/FireBrigadeMemberServiceI.java +++ b/web-client/src/main/java/com/zcloud/zcGbsServicer/api/FireBrigadeMemberServiceI.java @@ -5,8 +5,10 @@ import com.alibaba.cola.dto.SingleResponse; import com.zcloud.zcGbsServicer.dto.FireBrigadeMemberAddCmd; import com.zcloud.zcGbsServicer.dto.FireBrigadeMemberPageQry; import com.zcloud.zcGbsServicer.dto.FireBrigadeMemberUpdateCmd; +import com.zcloud.zcGbsServicer.dto.FireBrigadeScreenMemberQry; import com.zcloud.zcGbsServicer.dto.clientobject.FireBrigadeMemberCO; import com.zcloud.zcGbsServicer.dto.clientobject.FireBrigadeMemberStatusCO; +import com.zcloud.zcGbsServicer.dto.clientobject.FireBrigadeScreenMemberCO; public interface FireBrigadeMemberServiceI { @@ -23,4 +25,6 @@ public interface FireBrigadeMemberServiceI { void removeBatch(Long[] ids); SingleResponse currentMemberStatus(); + + PageResponse listScreenMembers(FireBrigadeScreenMemberQry qry); } diff --git a/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/FireBrigadeMemberAddCmd.java b/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/FireBrigadeMemberAddCmd.java index 5a2fa51..1a7be9a 100644 --- a/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/FireBrigadeMemberAddCmd.java +++ b/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/FireBrigadeMemberAddCmd.java @@ -46,6 +46,9 @@ public class FireBrigadeMemberAddCmd extends Command { @JsonAlias("orgName") private String org; + @ApiModelProperty("年龄") + private Integer age; + @ApiModelProperty("角色编码") private Integer roleCode; } diff --git a/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/FireBrigadeScreenMemberQry.java b/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/FireBrigadeScreenMemberQry.java new file mode 100644 index 0000000..0c002de --- /dev/null +++ b/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/FireBrigadeScreenMemberQry.java @@ -0,0 +1,15 @@ +package com.zcloud.zcGbsServicer.dto; + +import com.alibaba.cola.dto.PageQuery; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class FireBrigadeScreenMemberQry extends PageQuery { + + @ApiModelProperty("机构ID,为空查全部") + private String corpId; + + @ApiModelProperty("港区,1:港区 2:秦皇岛东 3:秦皇岛西,为空查全部") + private Integer portArea; +} diff --git a/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/clientobject/FireBrigadeMemberCO.java b/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/clientobject/FireBrigadeMemberCO.java index 0d0e7ab..049ed49 100644 --- a/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/clientobject/FireBrigadeMemberCO.java +++ b/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/clientobject/FireBrigadeMemberCO.java @@ -19,5 +19,6 @@ public class FireBrigadeMemberCO extends ClientObject { private String duty; private String corpId; private String org; + private Integer age; private Integer roleCode; } diff --git a/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/clientobject/FireBrigadeScreenMemberCO.java b/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/clientobject/FireBrigadeScreenMemberCO.java new file mode 100644 index 0000000..31bb592 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/zcGbsServicer/dto/clientobject/FireBrigadeScreenMemberCO.java @@ -0,0 +1,25 @@ +package com.zcloud.zcGbsServicer.dto.clientobject; + +import com.alibaba.cola.dto.ClientObject; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +@Data +public class FireBrigadeScreenMemberCO extends ClientObject { + + @JsonProperty("user_id") + private Long userId; + + @JsonProperty("user_name") + private String userName; + + private Integer age; + + @JsonProperty("corp_id") + private String corpId; + + @JsonProperty("org_name") + private String orgName; + + private String phone; +} diff --git a/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/dataobject/FireBrigadeScreenMemberRow.java b/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/dataobject/FireBrigadeScreenMemberRow.java new file mode 100644 index 0000000..4ca6cff --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/dataobject/FireBrigadeScreenMemberRow.java @@ -0,0 +1,14 @@ +package com.zcloud.zcGbsServicer.persistence.dataobject; + +import lombok.Data; + +@Data +public class FireBrigadeScreenMemberRow { + + private Long userId; + private String userName; + private Integer age; + private String corpId; + private String orgName; + private String phone; +} diff --git a/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/dataobject/FireBrigadeUserDO.java b/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/dataobject/FireBrigadeUserDO.java index cfb367c..72cea55 100644 --- a/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/dataobject/FireBrigadeUserDO.java +++ b/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/dataobject/FireBrigadeUserDO.java @@ -23,4 +23,5 @@ public class FireBrigadeUserDO extends BaseDO { @TableField("corp_id") private String corpId; private String orgName; + private Integer age; } diff --git a/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/mapper/FireBrigadeUserMapper.java b/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/mapper/FireBrigadeUserMapper.java index f5aeaa7..7f3b134 100644 --- a/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/mapper/FireBrigadeUserMapper.java +++ b/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/mapper/FireBrigadeUserMapper.java @@ -1,9 +1,16 @@ package com.zcloud.zcGbsServicer.persistence.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.zcloud.zcGbsServicer.persistence.dataobject.FireBrigadeScreenMemberRow; import com.zcloud.zcGbsServicer.persistence.dataobject.FireBrigadeUserDO; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; @Mapper public interface FireBrigadeUserMapper extends BaseMapper { + + IPage listScreenMembers(IPage page, + @Param("corpId") String corpId, + @Param("portArea") Integer portArea); } diff --git a/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/repository/FireBrigadeUserRepository.java b/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/repository/FireBrigadeUserRepository.java index 430ba8e..10dee5f 100644 --- a/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/repository/FireBrigadeUserRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/repository/FireBrigadeUserRepository.java @@ -1,6 +1,8 @@ package com.zcloud.zcGbsServicer.persistence.repository; import com.jjb.saas.framework.repository.repo.BaseRepository; +import com.alibaba.cola.dto.PageResponse; +import com.zcloud.zcGbsServicer.persistence.dataobject.FireBrigadeScreenMemberRow; import com.zcloud.zcGbsServicer.persistence.dataobject.FireBrigadeUserDO; import java.util.Collection; @@ -22,4 +24,6 @@ public interface FireBrigadeUserRepository extends BaseRepository listByUserId(Long userId); boolean existsRelation(String fireBrigadeId, Long userId, Long excludeId); + + PageResponse listScreenMembers(String corpId, Integer portArea, int pageIndex, int pageSize); } diff --git a/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/repository/impl/FireBrigadeUserRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/repository/impl/FireBrigadeUserRepositoryImpl.java index 950c8d7..2a78127 100644 --- a/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/repository/impl/FireBrigadeUserRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/zcGbsServicer/persistence/repository/impl/FireBrigadeUserRepositoryImpl.java @@ -1,8 +1,13 @@ package com.zcloud.zcGbsServicer.persistence.repository.impl; +import com.alibaba.cola.dto.PageResponse; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.jjb.saas.framework.auth.utils.AuthContext; +import com.jjb.saas.framework.repository.common.PageHelper; import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; +import com.zcloud.gbscommon.utils.Query; +import com.zcloud.zcGbsServicer.persistence.dataobject.FireBrigadeScreenMemberRow; import com.zcloud.zcGbsServicer.persistence.dataobject.FireBrigadeUserDO; import com.zcloud.zcGbsServicer.persistence.mapper.FireBrigadeUserMapper; import com.zcloud.zcGbsServicer.persistence.repository.FireBrigadeUserRepository; @@ -12,6 +17,7 @@ import org.springframework.stereotype.Service; import java.util.Collection; import java.util.Collections; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -85,4 +91,14 @@ public class FireBrigadeUserRepositoryImpl extends BaseRepositoryImpl 0; } + + @Override + public PageResponse listScreenMembers(String corpId, Integer portArea, int pageIndex, int pageSize) { + Map params = new HashMap<>(); + params.put("pageIndex", pageIndex <= 0 ? 1 : pageIndex); + params.put("pageSize", pageSize <= 0 ? 10 : pageSize); + IPage page = new Query().getPage(params); + IPage result = this.baseMapper.listScreenMembers(page, corpId, portArea); + return PageHelper.pageToResponse(result, result.getRecords()); + } } diff --git a/web-infrastructure/src/main/resources/mapper/FireBrigadeUserMapper.xml b/web-infrastructure/src/main/resources/mapper/FireBrigadeUserMapper.xml new file mode 100644 index 0000000..80b14a6 --- /dev/null +++ b/web-infrastructure/src/main/resources/mapper/FireBrigadeUserMapper.xml @@ -0,0 +1,31 @@ + + + + + + + +