refactor(firebrigade): 更新队员大屏列表接口字段映射

dev
zhaokai 2026-07-23 13:32:25 +08:00
parent 601e2a0f4d
commit 4e8d106e6c
9 changed files with 22 additions and 28 deletions

View File

@ -31,7 +31,7 @@ public class FireBrigadeMemberController {
return fireBrigadeMemberService.currentMemberStatus();
}
@ApiOperation("大屏队员分页列表")
@ApiOperation("可视化大屏-大屏队员分页列表")
@PostMapping("/screen/list")
public PageResponse<FireBrigadeScreenMemberCO> screenList(@RequestBody(required = false) FireBrigadeScreenMemberQry qry) {
return fireBrigadeMemberService.listScreenMembers(qry == null ? new FireBrigadeScreenMemberQry() : qry);

View File

@ -68,14 +68,14 @@ public class FireBrigadeMemberServiceImpl extends FireAlarmServiceSupport implem
@Override
public PageResponse<FireBrigadeScreenMemberCO> listScreenMembers(FireBrigadeScreenMemberQry qry) {
FireBrigadeScreenMemberQry actualQry = qry == null ? new FireBrigadeScreenMemberQry() : qry;
String corpId = StrUtil.isBlank(actualQry.getCorpId()) ? null : actualQry.getCorpId().trim();
Long corpinfoId = actualQry.getCorpinfoId();
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<FireBrigadeScreenMemberRow> page = fireBrigadeUserRepository.listScreenMembers(corpId, portArea, pageIndex, pageSize);
PageResponse<FireBrigadeScreenMemberRow> page = fireBrigadeUserRepository.listScreenMembers(corpinfoId, portArea, pageIndex, pageSize);
List<FireBrigadeScreenMemberCO> data = page.getData() == null ? Collections.emptyList() : page.getData().stream()
.map(this::toScreenMemberCO)
.collect(Collectors.toList());
@ -90,8 +90,7 @@ public class FireBrigadeMemberServiceImpl extends FireAlarmServiceSupport implem
co.setUserId(row.getUserId());
co.setUserName(row.getUserName());
co.setAge(row.getAge());
co.setCorpId(row.getCorpId());
co.setOrgName(row.getOrgName());
co.setBrigadeName(row.getBrigadeName());
co.setPhone(row.getPhone());
return co;
}

View File

@ -8,7 +8,7 @@ import lombok.Data;
public class FireBrigadeScreenMemberQry extends PageQuery {
@ApiModelProperty("机构ID为空查全部")
private String corpId;
private Long corpinfoId;
@ApiModelProperty("港区1:港区 2:秦皇岛东 3:秦皇岛西,为空查全部")
private Integer portArea;

View File

@ -7,19 +7,15 @@ 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 brigadeName;
private String phone;
}

View File

@ -8,7 +8,6 @@ public class FireBrigadeScreenMemberRow {
private Long userId;
private String userName;
private Integer age;
private String corpId;
private String orgName;
private String brigadeName;
private String phone;
}

View File

@ -11,6 +11,6 @@ import org.apache.ibatis.annotations.Param;
public interface FireBrigadeUserMapper extends BaseMapper<FireBrigadeUserDO> {
IPage<FireBrigadeScreenMemberRow> listScreenMembers(IPage<FireBrigadeScreenMemberRow> page,
@Param("corpId") String corpId,
@Param("corpinfoId") Long corpinfoId,
@Param("portArea") Integer portArea);
}

View File

@ -25,5 +25,5 @@ public interface FireBrigadeUserRepository extends BaseRepository<FireBrigadeUse
boolean existsRelation(String fireBrigadeId, Long userId, Long excludeId);
PageResponse<FireBrigadeScreenMemberRow> listScreenMembers(String corpId, Integer portArea, int pageIndex, int pageSize);
PageResponse<FireBrigadeScreenMemberRow> listScreenMembers(Long corpinfoId, Integer portArea, int pageIndex, int pageSize);
}

View File

@ -93,12 +93,12 @@ public class FireBrigadeUserRepositoryImpl extends BaseRepositoryImpl<FireBrigad
}
@Override
public PageResponse<FireBrigadeScreenMemberRow> listScreenMembers(String corpId, Integer portArea, int pageIndex, int pageSize) {
public PageResponse<FireBrigadeScreenMemberRow> listScreenMembers(Long corpinfoId, Integer portArea, int pageIndex, int pageSize) {
Map<String, Object> params = new HashMap<>();
params.put("pageIndex", pageIndex <= 0 ? 1 : pageIndex);
params.put("pageSize", pageSize <= 0 ? 10 : pageSize);
IPage<FireBrigadeScreenMemberRow> page = new Query<FireBrigadeScreenMemberRow>().getPage(params);
IPage<FireBrigadeScreenMemberRow> result = this.baseMapper.listScreenMembers(page, corpId, portArea);
IPage<FireBrigadeScreenMemberRow> result = this.baseMapper.listScreenMembers(page, corpinfoId, portArea);
return PageHelper.pageToResponse(result, result.getRecords());
}
}

View File

@ -7,20 +7,20 @@
<select id="listScreenMembers" resultType="com.zcloud.zcGbsServicer.persistence.dataobject.FireBrigadeScreenMemberRow">
SELECT
u.user_id AS userId,
u.user_name AS userName,
u.id_no,
us.name AS userName,
CASE
WHEN LENGTH(FROM_BASE64(u.id_no)) > 0 THEN
(YEAR(NOW()) - SUBSTRING(FROM_BASE64(u.id_no), 7, 4)) ELSE NULL
WHEN LENGTH(FROM_BASE64(us.user_id_card)) > 0 THEN
(YEAR(NOW()) - SUBSTRING(FROM_BASE64(us.user_id_card), 7, 4)) ELSE NULL
END AS age,
u.corp_id AS corpId,
u.org_name AS orgName,
u.phone AS phone
fb.brigade_name AS brigadeName,
us.phone AS phone
FROM fire_brigade_user u
LEFT JOIN corp_info c ON CAST(c.id AS CHAR) = u.corp_id
LEFT JOIN fire_brigade fb ON u.fire_brigade_id = fb.fire_brigade_id AND fb.delete_enum = 'FALSE'
LEFT JOIN user us ON u.user_id = us.id
LEFT JOIN corp_info c ON c.id = us.corpinfo_id
WHERE u.delete_enum = 'FALSE'
<if test="corpId != null and corpId != ''">
AND u.corp_id = #{corpId}
<if test="corpinfoId != null">
AND us.corpinfo_id = #{corpinfoId}
</if>
<if test="portArea != null">
AND c.port_area = #{portArea}