1.一级审批.1

koumen
guoyuepeng 2025-12-18 16:46:57 +08:00
parent 80755ced13
commit 6ad47732ee
28 changed files with 857 additions and 10 deletions

View File

@ -0,0 +1,86 @@
package com.zcloud.primeport.web;
import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.Response;
import com.alibaba.cola.dto.SingleResponse;
import com.jjb.saas.framework.auth.model.SSOUser;
import com.jjb.saas.framework.auth.utils.AuthContext;
import com.zcloud.primeport.api.EmployeeMessageServiceI;
import com.zcloud.primeport.dto.EmployeeMessageAddCmd;
import com.zcloud.primeport.dto.EmployeeMessagePageQry;
import com.zcloud.primeport.dto.EmployeeMessageUpdateCmd;
import com.zcloud.primeport.dto.EmployeeMessageUpdateStatusCmd;
import com.zcloud.primeport.dto.clientobject.EmployeeMessageCO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
/**
* web-adapter
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@Api(tags = "用户的进入一级口门的信息")
@RequestMapping("/${application.gateway}/employeeMessage")
@RestController
@AllArgsConstructor
public class EmployeeMessageController {
private final EmployeeMessageServiceI employeeMessageService;
@ApiOperation("新增")
@PostMapping("/save")
public SingleResponse<EmployeeMessageCO> add(@Validated @RequestBody EmployeeMessageAddCmd cmd) {
SSOUser ssoUser = AuthContext.getCurrentUser();
return employeeMessageService.add(cmd);
}
@ApiOperation("分页")
@PostMapping("/list")
public PageResponse<EmployeeMessageCO> page(@RequestBody EmployeeMessagePageQry qry) {
return employeeMessageService.listPage(qry);
}
@ApiOperation("所有数据")
@GetMapping("/listAll")
public MultiResponse<EmployeeMessageCO> listAll() {
return MultiResponse.of(new ArrayList<EmployeeMessageCO>());
}
@ApiOperation("详情")
@GetMapping("/{id}")
public SingleResponse<EmployeeMessageCO> getInfoById(@PathVariable("id") Long id) {
return SingleResponse.of(employeeMessageService.queryById(id));
}
@ApiOperation("删除")
@DeleteMapping("/{id}")
public Response remove(@PathVariable("id") Long id) {
employeeMessageService.remove(id);
return SingleResponse.buildSuccess();
}
@ApiOperation("删除多个")
@DeleteMapping("/ids")
public Response removeBatch(@RequestParam Long[] ids) {
employeeMessageService.removeBatch(ids);
return SingleResponse.buildSuccess();
}
@ApiOperation("修改")
@PutMapping("/edit")
public SingleResponse edit(@Validated @RequestBody EmployeeMessageUpdateCmd employeeMessageUpdateCmd) {
employeeMessageService.edit(employeeMessageUpdateCmd);
return SingleResponse.buildSuccess();
}
@ApiOperation("更新状态")
@PutMapping("/updateStatus")
public SingleResponse updateStatus(@Validated @RequestBody EmployeeMessageUpdateStatusCmd cmd) {
employeeMessageService.updateStatus(cmd);
return SingleResponse.buildSuccess();
}
}

View File

@ -89,5 +89,7 @@ public class VehicleMessageController {
return SingleResponse.of(infoById);
}
}

View File

@ -0,0 +1,41 @@
package com.zcloud.primeport.command;
import com.alibaba.cola.exception.BizException;
import com.zcloud.primeport.domain.gateway.EmployeeMessageGateway;
import com.zcloud.primeport.domain.model.EmployeeMessageE;
import com.zcloud.primeport.dto.EmployeeMessageAddCmd;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* web-app
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@Component
@AllArgsConstructor
public class EmployeeMessageAddExe {
private final EmployeeMessageGateway employeeMessageGateway;
@Transactional(rollbackFor = Exception.class)
public boolean execute(EmployeeMessageAddCmd cmd) {
EmployeeMessageE employeeMessageE = new EmployeeMessageE();
BeanUtils.copyProperties(cmd, employeeMessageE);
boolean res = false;
try {
res = employeeMessageGateway.add(employeeMessageE);
} catch (Exception e) {
throw new RuntimeException(e);
}
if (!res) {
throw new BizException("保存失败");
}
return true;
}
}

View File

@ -0,0 +1,39 @@
package com.zcloud.primeport.command;
import com.alibaba.cola.exception.BizException;
import com.zcloud.primeport.domain.gateway.EmployeeMessageGateway;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* web-app
* @Author guoyuepeng
* @Date 2025-12-18 14:32:15
*/
@Component
@AllArgsConstructor
public class EmployeeMessageRemoveExe {
private final EmployeeMessageGateway employeeMessageGateway;
@Transactional(rollbackFor = Exception.class)
public boolean execute(Long id) {
boolean res = employeeMessageGateway.deletedEmployeeMessageById(id);
if(!res){
throw new BizException("删除失败");
}
return true;
}
@Transactional(rollbackFor = Exception.class)
public boolean execute(Long[] ids) {
boolean res = employeeMessageGateway.deletedEmployeeMessageByIds(ids);
if(!res){
throw new BizException("删除失败");
}
return true;
}
}

View File

@ -0,0 +1,46 @@
package com.zcloud.primeport.command;
import com.alibaba.cola.exception.BizException;
import com.zcloud.primeport.domain.gateway.EmployeeMessageGateway;
import com.zcloud.primeport.domain.model.EmployeeMessageE;
import com.zcloud.primeport.dto.EmployeeMessageUpdateCmd;
import com.zcloud.primeport.dto.EmployeeMessageUpdateStatusCmd;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* web-app
* @Author guoyuepeng
* @Date 2025-12-18 14:32:15
*/
@Component
@AllArgsConstructor
public class EmployeeMessageUpdateExe {
private final EmployeeMessageGateway employeeMessageGateway;
@Transactional(rollbackFor = Exception.class)
public void execute(EmployeeMessageUpdateCmd employeeMessageUpdateCmd) {
EmployeeMessageE employeeMessageE = new EmployeeMessageE();
BeanUtils.copyProperties(employeeMessageUpdateCmd, employeeMessageE);
boolean res = employeeMessageGateway.update(employeeMessageE);
if (!res) {
throw new BizException("修改失败");
}
}
@Transactional(rollbackFor = Exception.class)
public void execute(EmployeeMessageUpdateStatusCmd cmd) {
EmployeeMessageE employeeMessageE = new EmployeeMessageE();
employeeMessageE.setId(cmd.getId());
employeeMessageE.setStatus(cmd.getStatus());
boolean res = employeeMessageGateway.updateStatus(employeeMessageE);
if (!res) {
throw new BizException("状态更新失败");
}
}
}

View File

@ -55,7 +55,7 @@ public class VehicleMessageUpdateExe {
if (!Tools.isEmpty(vehicleMessageUpdateCmd.getApprovalUserId())){ //新增一个审批记录
VehicleAuditLogE vehicleAuditLogE = new VehicleAuditLogE();
BeanUtils.copyProperties(vehicleMessageUpdateCmd, vehicleAuditLogE);
vehicleAuditLogE.addForVehicleLog(vehicleAuditLogE,vehicleMessageUpdateCmd.getId(),2); // 添加审批信息
// vehicleAuditLogE.addForVehicleLog(vehicleAuditLogE,vehicleMessageUpdateCmd.getId(),2); // 添加审批信息
res = vehicleAuditLogGateway.add(vehicleAuditLogE); // 添加审批信息
}
if (!res) {

View File

@ -0,0 +1,26 @@
package com.zcloud.primeport.command.convertor;
import com.zcloud.primeport.dto.clientobject.EmployeeMessageCO;
import com.zcloud.primeport.persistence.dataobject.EmployeeMessageDO;
import org.mapstruct.Mapper;
import java.util.List;
/**
* web-app
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@Mapper(componentModel = "spring")
public interface EmployeeMessageCoConvertor {
/**
* @param employeeMessageDOs
* @return
*/
List<EmployeeMessageCO> converDOsToCOs(List<EmployeeMessageDO> employeeMessageDOs);
EmployeeMessageCO converDOToCO(EmployeeMessageDO employeeMessageDO);
}

View File

@ -0,0 +1,50 @@
package com.zcloud.primeport.command.query;
import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.alibaba.cola.dto.PageResponse;
import com.zcloud.primeport.command.convertor.EmployeeMessageCoConvertor;
import com.zcloud.primeport.dto.EmployeeMessagePageQry;
import com.zcloud.primeport.dto.clientobject.EmployeeMessageCO;
import com.zcloud.primeport.persistence.dataobject.EmployeeMessageDO;
import com.zcloud.primeport.persistence.repository.EmployeeMessageRepository;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
/**
* web-app
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@Component
@AllArgsConstructor
public class EmployeeMessageQueryExe {
private final EmployeeMessageRepository employeeMessageRepository;
private final EmployeeMessageCoConvertor employeeMessageCoConvertor;
/**
* id
* @param id
* @return
*/
public EmployeeMessageCO queryById(Long id) {
return employeeMessageCoConvertor.converDOToCO(employeeMessageRepository.getById(id));
}
/**
*
*
* @param employeeMessagePageQry
* @return
*/
public PageResponse<EmployeeMessageCO> execute(EmployeeMessagePageQry employeeMessagePageQry) {
Map<String,Object> params = PageQueryHelper.toHashMap(employeeMessagePageQry);
PageResponse<EmployeeMessageDO> pageResponse = employeeMessageRepository.listPage(params);
List<EmployeeMessageCO> examCenterCOS = employeeMessageCoConvertor.converDOsToCOs(pageResponse.getData());
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
}
}

View File

@ -75,5 +75,13 @@ public class VehicleMessageQueryExe {
VehicleMessageCO vehicleMessageCO = vehicleMessageCoConvertor.converDOsToCOs(info);
return vehicleMessageCO;
}
}
/**
*
* @param licenceNo
* @return 0
*/
public int countEnabledByLicenceNo(String licenceNo) {
return vehicleMessageRepository.countEnabledByLicenceNo(licenceNo);
}
}

View File

@ -0,0 +1,67 @@
package com.zcloud.primeport.service;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
import com.zcloud.primeport.api.EmployeeMessageServiceI;
import com.zcloud.primeport.command.EmployeeMessageAddExe;
import com.zcloud.primeport.command.EmployeeMessageRemoveExe;
import com.zcloud.primeport.command.EmployeeMessageUpdateExe;
import com.zcloud.primeport.command.query.EmployeeMessageQueryExe;
import com.zcloud.primeport.dto.EmployeeMessageAddCmd;
import com.zcloud.primeport.dto.EmployeeMessagePageQry;
import com.zcloud.primeport.dto.EmployeeMessageUpdateCmd;
import com.zcloud.primeport.dto.EmployeeMessageUpdateStatusCmd;
import com.zcloud.primeport.dto.clientobject.EmployeeMessageCO;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
/**
* web-app
* @Author guoyuepeng
* @Date 2025-12-18 14:32:15
*/
@Service
@AllArgsConstructor
public class EmployeeMessageServiceImpl implements EmployeeMessageServiceI {
private final EmployeeMessageAddExe employeeMessageAddExe;
private final EmployeeMessageUpdateExe employeeMessageUpdateExe;
private final EmployeeMessageRemoveExe employeeMessageRemoveExe;
private final EmployeeMessageQueryExe employeeMessageQueryExe;
@Override
public EmployeeMessageCO queryById(Long id){
return employeeMessageQueryExe.queryById(id);
}
@Override
public PageResponse<EmployeeMessageCO> listPage(EmployeeMessagePageQry qry){
return employeeMessageQueryExe.execute(qry);
}
@Override
public SingleResponse add(EmployeeMessageAddCmd cmd) {
employeeMessageAddExe.execute(cmd);
return SingleResponse.buildSuccess();
}
@Override
public void edit(EmployeeMessageUpdateCmd employeeMessageUpdateCmd) {
employeeMessageUpdateExe.execute(employeeMessageUpdateCmd);
}
@Override
public void updateStatus(EmployeeMessageUpdateStatusCmd cmd) {
employeeMessageUpdateExe.execute(cmd);
}
@Override
public void remove(Long id) {
employeeMessageRemoveExe.execute(id);
}
@Override
public void removeBatch(Long[] ids) {
employeeMessageRemoveExe.execute(ids);
}
}

View File

@ -85,6 +85,10 @@ public class VehicleMessageServiceImpl implements VehicleMessageServiceI {
VehicleMessageCO vehicleMessageCO = vehicleMessageQueryExe.infoByLicenceNo(licenceNo);
return vehicleMessageCO;
}
@Override
public int countEnabledByLicenceNo(String licenceNo) {
return vehicleMessageQueryExe.countEnabledByLicenceNo(licenceNo);
}
}
}

View File

@ -0,0 +1,29 @@
package com.zcloud.primeport.api;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
import com.zcloud.primeport.dto.EmployeeMessageAddCmd;
import com.zcloud.primeport.dto.EmployeeMessagePageQry;
import com.zcloud.primeport.dto.EmployeeMessageUpdateCmd;
import com.zcloud.primeport.dto.EmployeeMessageUpdateStatusCmd;
import com.zcloud.primeport.dto.clientobject.EmployeeMessageCO;
/**
* web-client
* @Author guoyuepeng
* @Date 2025-12-18 14:32:15
*/
public interface EmployeeMessageServiceI {
EmployeeMessageCO queryById(Long id);
PageResponse<EmployeeMessageCO> listPage(EmployeeMessagePageQry qry);
SingleResponse<EmployeeMessageCO> add(EmployeeMessageAddCmd cmd);
void edit(EmployeeMessageUpdateCmd cmd);
void updateStatus(EmployeeMessageUpdateStatusCmd cmd);
void remove(Long id);
void removeBatch(Long[] ids);
}

View File

@ -35,7 +35,12 @@ public interface VehicleMessageServiceI {
VehicleMessageCO infoByLicenceNo(String licenceNo );
/**
*
* @param licenceNo
* @return 0
*/
int countEnabledByLicenceNo(String licenceNo);
}
}

View File

@ -0,0 +1,38 @@
package com.zcloud.primeport.dto;
import com.alibaba.cola.dto.Command;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;
/**
* web-client
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class EmployeeMessageAddCmd extends Command {
@ApiModelProperty(value = "用户ID", name = "userId", required = true)
@NotNull(message = "用户ID不能为空")
private Long userId;
@ApiModelProperty(value = "是否有进入一级口门的权限(0-无权限;1有权限)", name = "isPermission", required = true)
@NotNull(message = "是否有进入一级口门的权限(0-无权限;1有权限)不能为空")
private Integer isPermission;
@ApiModelProperty(value = "是否有人脸权限", name = "isUserFace", required = true)
@NotNull(message = "是否有人脸权限不能为空")
private Integer isUserFace;
@ApiModelProperty(value = "可以进入的口门信息", name = "mkmjScope", required = true)
@NotEmpty(message = "可以进入的口门信息不能为空")
private String mkmjScope;
}

View File

@ -0,0 +1,35 @@
package com.zcloud.primeport.dto;
import com.alibaba.cola.dto.PageQuery;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* web-client
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@Data
public class EmployeeMessagePageQry extends PageQuery {
/**
* ,
* - `like`: SQLLIKE
* - `eq`: SQL=
* - `gt`:
* - `lt`:
* - `ge`:
* - `le`:
* - `ne`: SQL!=
*/
private Long likeUserId;
private Long eqDepartmentId;
private String likeName;
}

View File

@ -0,0 +1,38 @@
package com.zcloud.primeport.dto;
import com.alibaba.cola.dto.Command;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import javax.validation.constraints.*;
/**
* web-client
* @Author guoyuepeng
* @Date 2025-12-18 14:32:15
*/
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class EmployeeMessageUpdateCmd extends Command {
@ApiModelProperty(value = "id", name = "id", required = true)
@NotNull(message = "id不能为空")
private Long id;
@ApiModelProperty(value = "用户ID", name = "userId", required = true)
@NotNull(message = "用户ID不能为空")
private Long userId;
@ApiModelProperty(value = "是否有进入一级口门的权限(0-无权限;1有权限)", name = "isPermission", required = true)
@NotNull(message = "是否有进入一级口门的权限(0-无权限;1有权限)不能为空")
private Integer isPermission;
@ApiModelProperty(value = "是否有人脸权限", name = "isUserFace", required = true)
@NotNull(message = "是否有人脸权限不能为空")
private Integer isUserFace;
@ApiModelProperty(value = "可以进入的口门信息", name = "mkmjScope", required = true)
@NotEmpty(message = "可以进入的口门信息不能为空")
private String mkmjScope;
}

View File

@ -0,0 +1,69 @@
package com.zcloud.primeport.dto.clientobject;
import com.alibaba.cola.dto.ClientObject;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.sql.Date;
/**
* web-client
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@Data
public class EmployeeMessageCO extends ClientObject {
//id
@ApiModelProperty(value = "id")
private Long id;
//用户ID
@ApiModelProperty(value = "用户ID")
private Long userId;
//是否有进入一级口门的权限(0-无权限;1有权限)
@ApiModelProperty(value = "是否有进入一级口门的权限(0-无权限;1有权限)")
private Integer isPermission;
//是否有人脸权限
@ApiModelProperty(value = "是否有人脸权限")
private Integer isUserFace;
//可以进入的口门信息
@ApiModelProperty(value = "可以进入的口门信息")
private String mkmjScope;
//状态0-停用 1-启用
@ApiModelProperty(value = "状态0-停用 1-启用")
private Integer status;
//删除标识
@ApiModelProperty(value = "删除标识")
private String deleteEnum;
/**
*
*
*
*
*
* ((0-;1))
* ()
*/
// 部门
@ApiModelProperty(value = "部门")
private String department;
// 姓名
@ApiModelProperty(value = "姓名")
private String name;
// 岗位
@ApiModelProperty(value = "岗位")
private String post;
// 手机号
@ApiModelProperty(value = "手机号")
private String phoneNumber;
// 车辆数
@ApiModelProperty(value = "车辆数")
private Integer vehicleCount;
}

View File

@ -0,0 +1,32 @@
package com.zcloud.primeport.domain.gateway;
import com.zcloud.primeport.domain.model.EmployeeMessageE;
/**
* web-domain
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
public interface EmployeeMessageGateway {
/**
*
*/
Boolean add(EmployeeMessageE employeeMessageE) ;
/**
*
*/
Boolean update(EmployeeMessageE employeeMessageE);
/**
*
*/
Boolean updateStatus(EmployeeMessageE employeeMessageE);
/**
*
*/
Boolean deletedEmployeeMessageById(Long id);
Boolean deletedEmployeeMessageByIds(Long[] id);
}

View File

@ -37,5 +37,6 @@ public interface VehicleMessageGateway {
*/
VehicleMessageE getInfoByLicenceNo(String licenceNo);
}

View File

@ -0,0 +1,21 @@
package com.zcloud.primeport.domain.model;
import com.jjb.saas.framework.domain.model.BaseE;
import lombok.Data;
/**
* web-domain
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@Data
public class EmployeeMessageE extends BaseE {
//用户ID
private Long userId;
//是否有进入一级口门的权限(0-无权限;1有权限)
private Integer isPermission;
//是否有人脸权限
private Integer isUserFace;
//可以进入的口门信息
private String mkmjScope;
//状态0-停用 1-启用
private Integer status;
}

View File

@ -0,0 +1,58 @@
package com.zcloud.primeport.gatewayimpl;
import com.zcloud.primeport.domain.gateway.EmployeeMessageGateway;
import com.zcloud.primeport.domain.model.EmployeeMessageE;
import com.zcloud.primeport.persistence.dataobject.EmployeeMessageDO;
import com.zcloud.primeport.persistence.repository.EmployeeMessageRepository;
import lombok.AllArgsConstructor;
import com.zcloud.gbscommon.utils.Tools;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.Arrays;
/**
* web-infrastructure
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@Service
@AllArgsConstructor
public class EmployeeMessageGatewayImpl implements EmployeeMessageGateway {
private final EmployeeMessageRepository employeeMessageRepository;
@Override
public Boolean add(EmployeeMessageE employeeMessageE) {
EmployeeMessageDO d = new EmployeeMessageDO();
BeanUtils.copyProperties(employeeMessageE, d);
employeeMessageRepository.save(d);
return true;
}
@Override
public Boolean update(EmployeeMessageE employeeMessageE) {
EmployeeMessageDO d = new EmployeeMessageDO();
BeanUtils.copyProperties(employeeMessageE, d);
employeeMessageRepository.updateById(d);
return true;
}
@Override
public Boolean updateStatus(EmployeeMessageE employeeMessageE) {
EmployeeMessageDO d = new EmployeeMessageDO();
d.setId(employeeMessageE.getId());
d.setStatus(employeeMessageE.getStatus());
employeeMessageRepository.updateById(d);
return true;
}
@Override
public Boolean deletedEmployeeMessageById(Long id) {
return employeeMessageRepository.removeById(id);
}
@Override
public Boolean deletedEmployeeMessageByIds(Long[] ids) {
return employeeMessageRepository.removeByIds(Arrays.asList(ids));
}
}

View File

@ -0,0 +1,62 @@
package com.zcloud.primeport.persistence.dataobject;
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 lombok.NoArgsConstructor;
/**
* web-infrastructure
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@Data
@TableName("employee_message")
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class EmployeeMessageDO extends BaseDO {
//用户ID
@ApiModelProperty(value = "用户ID")
private Long userId;
//是否有进入一级口门的权限(0-无权限;1有权限)
@ApiModelProperty(value = "是否有进入一级口门的权限(0-无权限;1有权限)")
private Integer isPermission;
//是否有人脸权限
@ApiModelProperty(value = "是否有人脸权限")
private Integer isUserFace;
//可以进入的口门信息
@ApiModelProperty(value = "可以进入的口门信息")
private String mkmjScope;
//状态0-停用 1-启用
@ApiModelProperty(value = "状态0-停用 1-启用")
private Integer status;
// 部门
@ApiModelProperty(value = "部门")
private String department;
// 姓名
@ApiModelProperty(value = "姓名")
private String name;
// 岗位
@ApiModelProperty(value = "岗位")
private String post;
// 手机号
@ApiModelProperty(value = "手机号")
private String phoneNumber;
// 车辆数
@ApiModelProperty(value = "车辆数")
private Integer vehicleCount;
// public EmployeeMessageDO(String ) {
// this. = ;
// }
}

View File

@ -0,0 +1,15 @@
package com.zcloud.primeport.persistence.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zcloud.primeport.persistence.dataobject.EmployeeMessageDO;
import org.apache.ibatis.annotations.Mapper;
/**
* web-infrastructure
* @Author guoyuepeng
* @Date 2025-12-18 14:32:14
*/
@Mapper
public interface EmployeeMessageMapper extends BaseMapper<EmployeeMessageDO> {
}

View File

@ -0,0 +1,17 @@
package com.zcloud.primeport.persistence.repository;
import com.alibaba.cola.dto.PageResponse;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.repository.repo.BaseRepository;
import com.zcloud.primeport.persistence.dataobject.EmployeeMessageDO;
import java.util.Map;
/**
* web-infrastructure
* @Author guoyuepeng
* @Date 2025-12-18 14:32:15
*/
public interface EmployeeMessageRepository extends BaseRepository<EmployeeMessageDO> {
PageResponse<EmployeeMessageDO> listPage(Map<String,Object> params);
}

View File

@ -28,5 +28,12 @@ public interface VehicleMessageRepository extends BaseRepository<VehicleMessageD
VehicleMessageDO getByLicenceNo(String licenceNo);
PageResponse<VehicleCountFromViolationsDO> listPageFromViolations(Map<String,Object> parmas);
/**
*
* @param licenceNo
* @return 0
*/
int countEnabledByLicenceNo(String licenceNo);
}
}

View File

@ -0,0 +1,35 @@
package com.zcloud.primeport.persistence.repository.impl;
import com.alibaba.cola.dto.PageResponse;
import com.jjb.saas.framework.repository.common.PageHelper;
import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.utils.Query;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
import com.zcloud.primeport.persistence.dataobject.EmployeeMessageDO;
import com.zcloud.primeport.persistence.mapper.EmployeeMessageCustomMapper;
import com.zcloud.primeport.persistence.mapper.EmployeeMessageMapper;
import com.zcloud.primeport.persistence.repository.EmployeeMessageRepository;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.Map;
/**
* web-infrastructure
* @Author guoyuepeng
* @Date 2025-12-18 14:32:15
*/
@Service
@RequiredArgsConstructor
public class EmployeeMessageRepositoryImpl extends BaseRepositoryImpl<EmployeeMessageMapper, EmployeeMessageDO> implements EmployeeMessageRepository {
private final EmployeeMessageMapper employeeMessageMapper;
private final EmployeeMessageCustomMapper employeeMessageCustomMapper;
@Override
public PageResponse<EmployeeMessageDO> listPage(Map<String,Object> params) {
IPage<EmployeeMessageDO> iPage = new Query<EmployeeMessageDO>().getPage(params);
// 使用自定义Mapper通过user视图和employee_message表关联查询
IPage<EmployeeMessageDO> result = employeeMessageCustomMapper.selectPageFromUserView(iPage, params);
return PageHelper.pageToResponse(result, result.getRecords());
}
}

View File

@ -73,6 +73,14 @@ public class VehicleMessageRepositoryImpl extends BaseRepositoryImpl<VehicleMess
return PageHelper.pageToResponse(iPage, iPage.getRecords());
}
@Override
public int countEnabledByLicenceNo(String licenceNo) {
QueryWrapper<VehicleMessageDO> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("licence_no", licenceNo);
queryWrapper.eq("delete_enum", "FALSE");
// 假设 isAudit 值为 2审核通过时表示启用状态
queryWrapper.eq("is_state", 2);
return vehicleMessageMapper.selectCount(queryWrapper).intValue();
}
}

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zcloud.primeport.persistence.mapper.EmployeeMessageMapper">
</mapper>