1.一级审批.1
parent
80755ced13
commit
6ad47732ee
|
|
@ -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();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -89,5 +89,7 @@ public class VehicleMessageController {
|
||||||
return SingleResponse.of(infoById);
|
return SingleResponse.of(infoById);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -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("状态更新失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -55,7 +55,7 @@ public class VehicleMessageUpdateExe {
|
||||||
if (!Tools.isEmpty(vehicleMessageUpdateCmd.getApprovalUserId())){ //新增一个审批记录
|
if (!Tools.isEmpty(vehicleMessageUpdateCmd.getApprovalUserId())){ //新增一个审批记录
|
||||||
VehicleAuditLogE vehicleAuditLogE = new VehicleAuditLogE();
|
VehicleAuditLogE vehicleAuditLogE = new VehicleAuditLogE();
|
||||||
BeanUtils.copyProperties(vehicleMessageUpdateCmd, vehicleAuditLogE);
|
BeanUtils.copyProperties(vehicleMessageUpdateCmd, vehicleAuditLogE);
|
||||||
vehicleAuditLogE.addForVehicleLog(vehicleAuditLogE,vehicleMessageUpdateCmd.getId(),2); // 添加审批信息
|
// vehicleAuditLogE.addForVehicleLog(vehicleAuditLogE,vehicleMessageUpdateCmd.getId(),2); // 添加审批信息
|
||||||
res = vehicleAuditLogGateway.add(vehicleAuditLogE); // 添加审批信息
|
res = vehicleAuditLogGateway.add(vehicleAuditLogE); // 添加审批信息
|
||||||
}
|
}
|
||||||
if (!res) {
|
if (!res) {
|
||||||
|
|
|
||||||
|
|
@ -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);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -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());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -75,5 +75,13 @@ public class VehicleMessageQueryExe {
|
||||||
VehicleMessageCO vehicleMessageCO = vehicleMessageCoConvertor.converDOsToCOs(info);
|
VehicleMessageCO vehicleMessageCO = vehicleMessageCoConvertor.converDOsToCOs(info);
|
||||||
return vehicleMessageCO;
|
return vehicleMessageCO;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
/**
|
||||||
|
* 根据车牌号查询启用状态的数据数量
|
||||||
|
* @param licenceNo 车牌号
|
||||||
|
* @return 启用状态的数据数量,如果没有则返回0
|
||||||
|
*/
|
||||||
|
public int countEnabledByLicenceNo(String licenceNo) {
|
||||||
|
return vehicleMessageRepository.countEnabledByLicenceNo(licenceNo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -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);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -85,6 +85,10 @@ public class VehicleMessageServiceImpl implements VehicleMessageServiceI {
|
||||||
VehicleMessageCO vehicleMessageCO = vehicleMessageQueryExe.infoByLicenceNo(licenceNo);
|
VehicleMessageCO vehicleMessageCO = vehicleMessageQueryExe.infoByLicenceNo(licenceNo);
|
||||||
return vehicleMessageCO;
|
return vehicleMessageCO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int countEnabledByLicenceNo(String licenceNo) {
|
||||||
|
return vehicleMessageQueryExe.countEnabledByLicenceNo(licenceNo);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -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);
|
||||||
|
}
|
||||||
|
|
@ -35,7 +35,12 @@ public interface VehicleMessageServiceI {
|
||||||
|
|
||||||
|
|
||||||
VehicleMessageCO infoByLicenceNo(String licenceNo );
|
VehicleMessageCO infoByLicenceNo(String licenceNo );
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据车牌号查询启用状态的数据数量
|
||||||
|
* @param licenceNo 车牌号
|
||||||
|
* @return 启用状态的数据数量,如果没有则返回0
|
||||||
|
*/
|
||||||
|
int countEnabledByLicenceNo(String licenceNo);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -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;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -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`: 模糊匹配查询,对应SQL的LIKE操作符
|
||||||
|
* - `eq`: 等值查询,对应SQL的=操作符
|
||||||
|
* - `gt`: 大于比较查询
|
||||||
|
* - `lt`: 小于比较查询
|
||||||
|
* - `ge`: 大于等于比较查询
|
||||||
|
* - `le`: 小于等于比较查询
|
||||||
|
* - `ne`: 不等比较查询,对应SQL的!=操作符
|
||||||
|
*/
|
||||||
|
private Long likeUserId;
|
||||||
|
|
||||||
|
private Long eqDepartmentId;
|
||||||
|
|
||||||
|
private String likeName;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -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;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -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;
|
||||||
|
}
|
||||||
|
|
@ -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);
|
||||||
|
}
|
||||||
|
|
@ -37,5 +37,6 @@ public interface VehicleMessageGateway {
|
||||||
*/
|
*/
|
||||||
VehicleMessageE getInfoByLicenceNo(String licenceNo);
|
VehicleMessageE getInfoByLicenceNo(String licenceNo);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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;
|
||||||
|
}
|
||||||
|
|
@ -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));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -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. = ;
|
||||||
|
// }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -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> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -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);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -28,5 +28,12 @@ public interface VehicleMessageRepository extends BaseRepository<VehicleMessageD
|
||||||
VehicleMessageDO getByLicenceNo(String licenceNo);
|
VehicleMessageDO getByLicenceNo(String licenceNo);
|
||||||
|
|
||||||
PageResponse<VehicleCountFromViolationsDO> listPageFromViolations(Map<String,Object> parmas);
|
PageResponse<VehicleCountFromViolationsDO> listPageFromViolations(Map<String,Object> parmas);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据车牌号查询启用状态的数据数量
|
||||||
|
* @param licenceNo 车牌号
|
||||||
|
* @return 启用状态的数据数量,如果没有则返回0
|
||||||
|
*/
|
||||||
|
int countEnabledByLicenceNo(String licenceNo);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -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());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -73,6 +73,14 @@ public class VehicleMessageRepositoryImpl extends BaseRepositoryImpl<VehicleMess
|
||||||
return PageHelper.pageToResponse(iPage, iPage.getRecords());
|
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();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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>
|
||||||
|
|
||||||
Loading…
Reference in New Issue