1.口门门禁-获取登录人的审批列表

koumen
guoyuepeng 2025-11-20 14:47:09 +08:00
parent f3b1043092
commit 4324babb91
20 changed files with 268 additions and 6 deletions

View File

@ -12,6 +12,8 @@ import com.zcloud.primeport.dto.VehicleAuditLogApprovalCmd;
import com.zcloud.primeport.dto.VehicleAuditLogPageQry; import com.zcloud.primeport.dto.VehicleAuditLogPageQry;
import com.zcloud.primeport.dto.VehicleAuditLogUpdateCmd; import com.zcloud.primeport.dto.VehicleAuditLogUpdateCmd;
import com.zcloud.primeport.dto.clientobject.VehicleAuditLogCO; import com.zcloud.primeport.dto.clientobject.VehicleAuditLogCO;
import com.zcloud.primeport.dto.clientobject.VehicleLogAndCarCO;
import com.zcloud.primeport.dto.clientobject.VehicleMessageCO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
@ -85,5 +87,11 @@ public class VehicleAuditLogController {
public PageResponse<VehicleAuditLogCO> page(@RequestBody VehicleAuditLogPageQry qry) { public PageResponse<VehicleAuditLogCO> page(@RequestBody VehicleAuditLogPageQry qry) {
return vehicleAuditLogService.listPage(qry); return vehicleAuditLogService.listPage(qry);
} }
@ApiOperation("获取登录人的审批车辆信息")
@PostMapping("/listFromUser")
public PageResponse<VehicleLogAndCarCO> pageAndCarInfo(@RequestBody VehicleAuditLogPageQry qry) {
return vehicleAuditLogService.listPageAndCarInfo(qry);
}
} }

View File

@ -8,6 +8,7 @@ import com.jjb.saas.framework.auth.model.SSOUser;
import com.jjb.saas.framework.auth.utils.AuthContext; import com.jjb.saas.framework.auth.utils.AuthContext;
import com.zcloud.primeport.api.VehicleMessageServiceI; import com.zcloud.primeport.api.VehicleMessageServiceI;
import com.zcloud.primeport.dto.*; import com.zcloud.primeport.dto.*;
import com.zcloud.primeport.dto.clientobject.VehicleCountByCorpCO;
import com.zcloud.primeport.dto.clientobject.VehicleMessageCO; import com.zcloud.primeport.dto.clientobject.VehicleMessageCO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
@ -77,6 +78,10 @@ public class VehicleMessageController {
vehicleMessageService.updateStatus(statusCmd); vehicleMessageService.updateStatus(statusCmd);
return SingleResponse.buildSuccess(); return SingleResponse.buildSuccess();
} }
@ApiOperation("分页-根据企业ID获取企业车辆数量")
@PostMapping("/listFromCorp")
public PageResponse<VehicleCountByCorpCO> listFromCorp(@RequestBody VehicleMessagePageQry qry) {
return vehicleMessageService.listFromCorp(qry);
}
} }

View File

@ -1,6 +1,7 @@
package com.zcloud.primeport.command.convertor; package com.zcloud.primeport.command.convertor;
import com.zcloud.primeport.dto.clientobject.VehicleAuditLogCO; import com.zcloud.primeport.dto.clientobject.VehicleAuditLogCO;
import com.zcloud.primeport.dto.clientobject.VehicleLogAndCarCO;
import com.zcloud.primeport.persistence.dataobject.VehicleAuditLogDO; import com.zcloud.primeport.persistence.dataobject.VehicleAuditLogDO;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
@ -20,5 +21,7 @@ public interface VehicleAuditLogCoConvertor {
* @return * @return
*/ */
List<VehicleAuditLogCO> converDOsToCOs(List<VehicleAuditLogDO> vehicleAuditLogDOs); List<VehicleAuditLogCO> converDOsToCOs(List<VehicleAuditLogDO> vehicleAuditLogDOs);
List<VehicleLogAndCarCO> converCarDOsToCOs2(List<VehicleAuditLogDO> vehicleAuditLogDOs);
} }

View File

@ -1,6 +1,8 @@
package com.zcloud.primeport.command.convertor; package com.zcloud.primeport.command.convertor;
import com.zcloud.primeport.dto.clientobject.VehicleCountByCorpCO;
import com.zcloud.primeport.dto.clientobject.VehicleMessageCO; import com.zcloud.primeport.dto.clientobject.VehicleMessageCO;
import com.zcloud.primeport.persistence.dataobject.VehicleCountByCorpDO;
import com.zcloud.primeport.persistence.dataobject.VehicleMessageDO; import com.zcloud.primeport.persistence.dataobject.VehicleMessageDO;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
import java.util.List; import java.util.List;
@ -20,5 +22,11 @@ public interface VehicleMessageCoConvertor {
*/ */
List<VehicleMessageCO> converDOsToCOs(List<VehicleMessageDO> vehicleMessageDOs); List<VehicleMessageCO> converDOsToCOs(List<VehicleMessageDO> vehicleMessageDOs);
VehicleMessageCO converDOsToCOs(VehicleMessageDO vehicleMessageDOs); VehicleMessageCO converDOsToCOs(VehicleMessageDO vehicleMessageDOs);
/**
* @param vehicleMessageDOs
* @return
*/
List<VehicleCountByCorpCO> converCountDOsToCOs(List<VehicleCountByCorpDO> vehicleMessageDOs);
} }

View File

@ -5,11 +5,16 @@ import com.alibaba.cola.dto.PageResponse;
import com.zcloud.primeport.command.convertor.VehicleAuditLogCoConvertor; import com.zcloud.primeport.command.convertor.VehicleAuditLogCoConvertor;
import com.zcloud.primeport.dto.VehicleAuditLogPageQry; import com.zcloud.primeport.dto.VehicleAuditLogPageQry;
import com.zcloud.primeport.dto.clientobject.VehicleAuditLogCO; import com.zcloud.primeport.dto.clientobject.VehicleAuditLogCO;
import com.zcloud.primeport.dto.clientobject.VehicleLogAndCarCO;
import com.zcloud.primeport.dto.clientobject.VehicleMessageCO;
import com.zcloud.primeport.persistence.dataobject.VehicleAuditLogDO; import com.zcloud.primeport.persistence.dataobject.VehicleAuditLogDO;
import com.zcloud.primeport.persistence.repository.VehicleAuditLogRepository; import com.zcloud.primeport.persistence.repository.VehicleAuditLogRepository;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -25,7 +30,7 @@ import java.util.Map;
public class VehicleAuditLogQueryExe { public class VehicleAuditLogQueryExe {
private final VehicleAuditLogRepository vehicleAuditLogRepository; private final VehicleAuditLogRepository vehicleAuditLogRepository;
private final VehicleAuditLogCoConvertor vehicleAuditLogCoConvertor; private final VehicleAuditLogCoConvertor vehicleAuditLogCoConvertor;
private final VehicleMessageQueryExe vehicleMessageQueryExe;
/** /**
* *
* *
@ -38,5 +43,23 @@ public class VehicleAuditLogQueryExe {
List<VehicleAuditLogCO> examCenterCOS = vehicleAuditLogCoConvertor.converDOsToCOs(pageResponse.getData()); List<VehicleAuditLogCO> examCenterCOS = vehicleAuditLogCoConvertor.converDOsToCOs(pageResponse.getData());
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex()); return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
} }
public PageResponse<VehicleLogAndCarCO> executeAndCarInfo(VehicleAuditLogPageQry vehicleAuditLogPageQry) {
Map<String, Object> parmas = PageQueryHelper.toHashMap(vehicleAuditLogPageQry);
PageResponse<VehicleAuditLogDO> pageResponse = vehicleAuditLogRepository.listPage(parmas);
List<VehicleLogAndCarCO> examCenterCOS = vehicleAuditLogCoConvertor.converCarDOsToCOs2(pageResponse.getData());
Long [] vehicleMessageIds = new Long[examCenterCOS.size()];
for (int i = 0; i < examCenterCOS.size(); i++) {
vehicleMessageIds[i] = examCenterCOS.get(i).getVehicleMessageId();
}
Map<Long, VehicleMessageCO> longVehicleMessageCOMap = vehicleMessageQueryExe.listMapAllByIds(vehicleMessageIds); // 根据id 获取信息
for (VehicleLogAndCarCO vehicleAuditLogCO : examCenterCOS){
if (longVehicleMessageCOMap.containsKey(vehicleAuditLogCO.getVehicleMessageId())){
vehicleAuditLogCO.setVehicleMessageCO(longVehicleMessageCOMap.get(vehicleAuditLogCO.getVehicleMessageId()));
}
}
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
}
} }

View File

@ -1,15 +1,19 @@
package com.zcloud.primeport.command.query; package com.zcloud.primeport.command.query;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.cola.dto.PageResponse; import com.alibaba.cola.dto.PageResponse;
import com.zcloud.gbscommon.utils.PageQueryHelper; import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.primeport.command.convertor.VehicleMessageCoConvertor; import com.zcloud.primeport.command.convertor.VehicleMessageCoConvertor;
import com.zcloud.primeport.dto.VehicleMessagePageQry; import com.zcloud.primeport.dto.VehicleMessagePageQry;
import com.zcloud.primeport.dto.clientobject.VehicleCountByCorpCO;
import com.zcloud.primeport.dto.clientobject.VehicleMessageCO; import com.zcloud.primeport.dto.clientobject.VehicleMessageCO;
import com.zcloud.primeport.persistence.dataobject.VehicleCountByCorpDO;
import com.zcloud.primeport.persistence.dataobject.VehicleMessageDO; import com.zcloud.primeport.persistence.dataobject.VehicleMessageDO;
import com.zcloud.primeport.persistence.repository.VehicleMessageRepository; import com.zcloud.primeport.persistence.repository.VehicleMessageRepository;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -43,5 +47,26 @@ public class VehicleMessageQueryExe {
VehicleMessageCO vehicleMessageCO = vehicleMessageCoConvertor.converDOsToCOs(byId); VehicleMessageCO vehicleMessageCO = vehicleMessageCoConvertor.converDOsToCOs(byId);
return vehicleMessageCO; return vehicleMessageCO;
} }
public PageResponse<VehicleCountByCorpCO> listFromCorp(VehicleMessagePageQry vehicleMessagePageQry) {
Map<String,Object> parmas = BeanUtil.beanToMap(vehicleMessagePageQry);
PageResponse<VehicleCountByCorpDO> pageResponse = vehicleMessageRepository.listCountFromCorp(parmas);
List<VehicleCountByCorpCO> examCenterCOS = vehicleMessageCoConvertor.converCountDOsToCOs(pageResponse.getData());
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
}
public Map<Long, VehicleMessageCO> listMapAllByIds(Long[] ids) {
if (ids == null || ids.length == 0){
return new HashMap<>();
}
List<VehicleMessageDO> vehicleMessageDOs = vehicleMessageRepository.listAll(ids);
List<VehicleMessageCO> vehicleMessageCOS = vehicleMessageCoConvertor.converDOsToCOs(vehicleMessageDOs);
Map<Long, VehicleMessageCO> vehicleMessageCOMap = new HashMap<>();
for (VehicleMessageCO vehicleMessageCO : vehicleMessageCOS) {
vehicleMessageCOMap.put(vehicleMessageCO.getId(), vehicleMessageCO);
}
return vehicleMessageCOMap;
}
} }

View File

@ -11,6 +11,8 @@ import com.zcloud.primeport.dto.VehicleAuditLogApprovalCmd;
import com.zcloud.primeport.dto.VehicleAuditLogPageQry; import com.zcloud.primeport.dto.VehicleAuditLogPageQry;
import com.zcloud.primeport.dto.VehicleAuditLogUpdateCmd; import com.zcloud.primeport.dto.VehicleAuditLogUpdateCmd;
import com.zcloud.primeport.dto.clientobject.VehicleAuditLogCO; import com.zcloud.primeport.dto.clientobject.VehicleAuditLogCO;
import com.zcloud.primeport.dto.clientobject.VehicleLogAndCarCO;
import com.zcloud.primeport.dto.clientobject.VehicleMessageCO;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -64,5 +66,12 @@ public class VehicleAuditLogServiceImpl implements VehicleAuditLogServiceI {
public void approval(VehicleAuditLogApprovalCmd auditLogApprovalCmd) { public void approval(VehicleAuditLogApprovalCmd auditLogApprovalCmd) {
vehicleAuditLogUpdateExe.execute(auditLogApprovalCmd); vehicleAuditLogUpdateExe.execute(auditLogApprovalCmd);
} }
@Override
public PageResponse<VehicleLogAndCarCO> listPageAndCarInfo(VehicleAuditLogPageQry qry) {
return vehicleAuditLogQueryExe.executeAndCarInfo(qry);
}
} }

View File

@ -7,6 +7,7 @@ import com.zcloud.primeport.command.VehicleMessageRemoveExe;
import com.zcloud.primeport.command.VehicleMessageUpdateExe; import com.zcloud.primeport.command.VehicleMessageUpdateExe;
import com.zcloud.primeport.command.query.VehicleMessageQueryExe; import com.zcloud.primeport.command.query.VehicleMessageQueryExe;
import com.zcloud.primeport.dto.*; import com.zcloud.primeport.dto.*;
import com.zcloud.primeport.dto.clientobject.VehicleCountByCorpCO;
import com.zcloud.primeport.dto.clientobject.VehicleMessageCO; import com.zcloud.primeport.dto.clientobject.VehicleMessageCO;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -74,6 +75,10 @@ public class VehicleMessageServiceImpl implements VehicleMessageServiceI {
vehicleMessageUpdateExe.updateStatus(statusCmd); vehicleMessageUpdateExe.updateStatus(statusCmd);
} }
@Override
public PageResponse<VehicleCountByCorpCO> listFromCorp(VehicleMessagePageQry qry) {
return vehicleMessageQueryExe.listFromCorp(qry);
}
} }

View File

@ -6,6 +6,8 @@ import com.zcloud.primeport.dto.VehicleAuditLogApprovalCmd;
import com.zcloud.primeport.dto.VehicleAuditLogPageQry; import com.zcloud.primeport.dto.VehicleAuditLogPageQry;
import com.zcloud.primeport.dto.VehicleAuditLogUpdateCmd; import com.zcloud.primeport.dto.VehicleAuditLogUpdateCmd;
import com.zcloud.primeport.dto.clientobject.VehicleAuditLogCO; import com.zcloud.primeport.dto.clientobject.VehicleAuditLogCO;
import com.zcloud.primeport.dto.clientobject.VehicleLogAndCarCO;
import com.zcloud.primeport.dto.clientobject.VehicleMessageCO;
/** /**
* web-client * web-client
@ -25,5 +27,10 @@ public interface VehicleAuditLogServiceI {
void removeBatch(Long[] ids); void removeBatch(Long[] ids);
void approval(VehicleAuditLogApprovalCmd auditLogApprovalCmd); void approval(VehicleAuditLogApprovalCmd auditLogApprovalCmd);
PageResponse<VehicleLogAndCarCO> listPageAndCarInfo(VehicleAuditLogPageQry qry);
} }

View File

@ -4,6 +4,7 @@ package com.zcloud.primeport.api;
import com.alibaba.cola.dto.PageResponse; import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse; import com.alibaba.cola.dto.SingleResponse;
import com.zcloud.primeport.dto.*; import com.zcloud.primeport.dto.*;
import com.zcloud.primeport.dto.clientobject.VehicleCountByCorpCO;
import com.zcloud.primeport.dto.clientobject.VehicleMessageCO; import com.zcloud.primeport.dto.clientobject.VehicleMessageCO;
/** /**
@ -28,5 +29,8 @@ public interface VehicleMessageServiceI {
VehicleMessageCO getInfoById(Long id); VehicleMessageCO getInfoById(Long id);
void updateStatus(VehicleMessageStatusCmd statusCmd); void updateStatus(VehicleMessageStatusCmd statusCmd);
PageResponse<VehicleCountByCorpCO> listFromCorp(VehicleMessagePageQry qry);
} }

View File

@ -29,5 +29,9 @@ public class VehicleAuditLogPageQry extends PageQuery {
@ApiModelProperty("审批状态(0,申请;2.更新)") @ApiModelProperty("审批状态(0,申请;2.更新)")
private String eqBatchState; private String eqBatchState;
@ApiModelProperty("审批人员")
private String eqUserId;
} }

View File

@ -40,5 +40,9 @@ public class VehicleMessagePageQry extends PageQuery {
@ApiModelProperty(value = "删除状态") @ApiModelProperty(value = "删除状态")
private String eqDeleteEnum = "FALSE" ; private String eqDeleteEnum = "FALSE" ;
@ApiModelProperty(value = "是否审核")
private String eqIsAudit;
} }

View File

@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
/** /**
* web-client * web-client
* *
@ -52,4 +53,3 @@ public class VehicleAuditLogCO extends ClientObject {
@ApiModelProperty(value = "驳回备注") @ApiModelProperty(value = "驳回备注")
private String comments; private String comments;
} }

View File

@ -0,0 +1,22 @@
package com.zcloud.primeport.dto.clientobject;
import com.alibaba.cola.dto.ClientObject;
import lombok.Data;
/**
* web-client
*
* @Author guoyuepeng
* @Date 2025-11-15 11:41:21
*/
@Data
public class VehicleCountByCorpCO extends ClientObject {
private String corpId;
private String corpName;
private String corpVehicleCount;
}

View File

@ -0,0 +1,63 @@
package com.zcloud.primeport.dto.clientobject;
import com.alibaba.cola.dto.ClientObject;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* web-client
*
* @Author guoyuepeng
* @Date 2025-11-18 14:07:46
*/
@Data
public class VehicleLogAndCarCO extends ClientObject {
//id
@ApiModelProperty(value = "id")
private Long id;
//业务id
@ApiModelProperty(value = "业务id")
private String vehicleAuditLogId;
//审批批次(1.普通车辆.2危险化学品车辆)
@ApiModelProperty(value = "审批批次(1.普通车辆.2危险化学品车辆)")
private Integer batchType;
//审批状态(0,申请;2.更新)
@ApiModelProperty(value = "审批状态(0,申请;2.更新)")
private Integer batchState;
//车辆id
@ApiModelProperty(value = "车辆id")
private Long vehicleMessageId;
//审批人id
@ApiModelProperty(value = "审批人id")
private Long userId;
//审批人姓名
@ApiModelProperty(value = "审批人姓名")
private String userName;
//审批部门id
@ApiModelProperty(value = "审批部门id")
private Long deptId;
//审批部门名称
@ApiModelProperty(value = "审批部门名称")
private String deptName;
//审批步骤排序
@ApiModelProperty(value = "审批步骤排序")
private Integer stepSort;
//审批状态(1未开始.2通过.3不通过)
@ApiModelProperty(value = "审批状态(1未开始.2通过.3不通过)")
private Integer status;
//审批状态(0正常,1.废除)
@ApiModelProperty(value = "审批状态(0正常,1.废除)")
private Integer stepType;
//驳回备注
@ApiModelProperty(value = "驳回备注")
private String comments;
@ApiModelProperty(value = "车辆信息")
private VehicleMessageCO vehicleMessageCO;
}

View File

@ -0,0 +1,27 @@
package com.zcloud.primeport.persistence.dataobject;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jjb.saas.framework.repository.basedo.BaseDO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* web-infrastructure
*
* @Author guoyuepeng
* @Date 2025-11-15 11:41:21
*/
@Data
public class VehicleCountByCorpDO extends BaseDO {
private String corpId;
private String corpName;
private String corpVehicleCount;
}

View File

@ -1,8 +1,14 @@
package com.zcloud.primeport.persistence.mapper; package com.zcloud.primeport.persistence.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zcloud.primeport.persistence.dataobject.VehicleCountByCorpDO;
import com.zcloud.primeport.persistence.dataobject.VehicleMessageDO; import com.zcloud.primeport.persistence.dataobject.VehicleMessageDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Map;
/** /**
* web-infrastructure * web-infrastructure
@ -11,6 +17,7 @@ import org.apache.ibatis.annotations.Mapper;
*/ */
@Mapper @Mapper
public interface VehicleMessageMapper extends BaseMapper<VehicleMessageDO> { public interface VehicleMessageMapper extends BaseMapper<VehicleMessageDO> {
IPage<VehicleCountByCorpDO> listCountFromCorp(Page<Map<String, Object>> page, @Param("params") Map<String, Object> parmas);
} }

View File

@ -3,8 +3,10 @@ package com.zcloud.primeport.persistence.repository;
import com.alibaba.cola.dto.PageResponse; import com.alibaba.cola.dto.PageResponse;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.repository.repo.BaseRepository; import com.jjb.saas.framework.repository.repo.BaseRepository;
import com.zcloud.primeport.persistence.dataobject.VehicleCountByCorpDO;
import com.zcloud.primeport.persistence.dataobject.VehicleMessageDO; import com.zcloud.primeport.persistence.dataobject.VehicleMessageDO;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
@ -14,5 +16,11 @@ import java.util.Map;
*/ */
public interface VehicleMessageRepository extends BaseRepository<VehicleMessageDO> { public interface VehicleMessageRepository extends BaseRepository<VehicleMessageDO> {
PageResponse<VehicleMessageDO> listPage(Map<String,Object> parmas); PageResponse<VehicleMessageDO> listPage(Map<String,Object> parmas);
PageResponse<VehicleCountByCorpDO> listCountFromCorp(Map<String,Object> parmas);
List<VehicleMessageDO> listAll(Long [] ids);
} }

View File

@ -3,16 +3,21 @@ package com.zcloud.primeport.persistence.repository.impl;
import com.alibaba.cola.dto.PageResponse; import com.alibaba.cola.dto.PageResponse;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jjb.saas.framework.repository.common.PageHelper; import com.jjb.saas.framework.repository.common.PageHelper;
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
import com.zcloud.gbscommon.utils.PageQueryHelper; import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.utils.Query; import com.zcloud.gbscommon.utils.Query;
import com.zcloud.primeport.persistence.dataobject.VehicleCountByCorpDO;
import com.zcloud.primeport.persistence.dataobject.VehicleMessageDO; import com.zcloud.primeport.persistence.dataobject.VehicleMessageDO;
import com.zcloud.primeport.persistence.mapper.VehicleMessageMapper; import com.zcloud.primeport.persistence.mapper.VehicleMessageMapper;
import com.zcloud.primeport.persistence.repository.VehicleMessageRepository; import com.zcloud.primeport.persistence.repository.VehicleMessageRepository;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
@ -30,9 +35,23 @@ public class VehicleMessageRepositoryImpl extends BaseRepositoryImpl<VehicleMess
IPage<VehicleMessageDO> iPage = new Query<VehicleMessageDO>().getPage(parmas); IPage<VehicleMessageDO> iPage = new Query<VehicleMessageDO>().getPage(parmas);
QueryWrapper<VehicleMessageDO> queryWrapper = new QueryWrapper<>(); QueryWrapper<VehicleMessageDO> queryWrapper = new QueryWrapper<>();
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, parmas); queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, parmas);
queryWrapper.orderByDesc("create_time");
IPage<VehicleMessageDO> result = vehicleMessageMapper.selectPage(iPage, queryWrapper); IPage<VehicleMessageDO> result = vehicleMessageMapper.selectPage(iPage, queryWrapper);
return PageHelper.pageToResponse(result, result.getRecords()); return PageHelper.pageToResponse(result, result.getRecords());
} }
@Override
public PageResponse<VehicleCountByCorpDO> listCountFromCorp(Map<String, Object> parmas) {
Page<Map<String,Object>> page = new Page<>(Integer.parseInt(parmas.get("pageIndex").toString()),Integer.parseInt(parmas.get("pageSize").toString()));
IPage<VehicleCountByCorpDO> iPage = vehicleMessageMapper.listCountFromCorp(page, parmas);
return PageHelper.pageToResponse(iPage, iPage.getRecords());
}
@Override
public List<VehicleMessageDO> listAll(Long[] ids) {
QueryWrapper<VehicleMessageDO> queryWrapper = new QueryWrapper<>();
queryWrapper.in("id", ids);
return vehicleMessageMapper.selectList(queryWrapper);
}
} }

View File

@ -3,6 +3,17 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zcloud.primeport.persistence.mapper.VehicleMessageMapper"> <mapper namespace="com.zcloud.primeport.persistence.mapper.VehicleMessageMapper">
<select id="listCountFromCorp" resultType="com.zcloud.primeport.persistence.dataobject.VehicleCountByCorpDO">
SELECT
f.corp_name,
f.id as corp_id,
count(m.id) as corpVehicleCount
FROM
corp_info f
LEFT JOIN vehicle_message m on m.corp_id = f.id
WHERE
1=1
GROUP BY f.id
</select>
</mapper> </mapper>