diff --git a/start/src/main/java/com/zcloud/primeport/Application.java b/start/src/main/java/com/zcloud/primeport/Application.java index 43b5769..ca6287a 100644 --- a/start/src/main/java/com/zcloud/primeport/Application.java +++ b/start/src/main/java/com/zcloud/primeport/Application.java @@ -2,8 +2,6 @@ package com.zcloud.primeport; import com.jjb.saas.base.starter.bootstart.JJBSpringbootApplication; import org.springframework.boot.SpringApplication; -import org.springframework.boot.actuate.autoconfigure.jdbc.DataSourceHealthContributorAutoConfiguration; -import org.springframework.boot.autoconfigure.SpringBootApplication; /** * Spring Boot Starter @@ -18,3 +16,4 @@ public class Application { SpringApplication.run(Application.class, args); } } + diff --git a/web-adapter/src/main/java/com/zcloud/primeport/web/VehicleDockLogController.java b/web-adapter/src/main/java/com/zcloud/primeport/web/VehicleDockLogController.java new file mode 100644 index 0000000..d3eedf9 --- /dev/null +++ b/web-adapter/src/main/java/com/zcloud/primeport/web/VehicleDockLogController.java @@ -0,0 +1,88 @@ +package com.zcloud.primeport.web; + + +import com.zcloud.api.VehicleDockLogServiceI; +import com.zcloud.dto.VehicleDockLogAddCmd; +import com.zcloud.dto.VehicleDockLogPageQry; +import com.zcloud.dto.VehicleDockLogUpdateCmd; +import com.zcloud.primeport.dto.clientobject.VehicleDockLogCO; +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 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; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +/** + * web-adapter + * + * @Author dearLin + * @Date 2026-04-14 14:53:29 + */ +@Api(tags = "车辆对接记录") +@RequestMapping("/${application.gateway}/vehicleDockLog") +@RestController +@AllArgsConstructor +public class VehicleDockLogController { + private final VehicleDockLogServiceI vehicleDockLogService; + + @ApiOperation("新增") + @PostMapping("/save") + public SingleResponse add(@Validated @RequestBody VehicleDockLogAddCmd cmd) { + SSOUser ssoUser = AuthContext.getCurrentUser(); + return vehicleDockLogService.add(cmd); + } + + @ApiOperation("分页") + @PostMapping("/list") + public PageResponse page(@RequestBody VehicleDockLogPageQry qry) { + return vehicleDockLogService.listPage(qry); + } + + @ApiOperation("所有数据") + @GetMapping("/listAll") + public MultiResponse listAll() { + return MultiResponse.of(new ArrayList()); + } + + @ApiOperation("详情") + @GetMapping("/{id}") + public SingleResponse getInfoById(@PathVariable("id") Long id) { + return SingleResponse.of(vehicleDockLogService.queryById(id)); + } + + @ApiOperation("删除") + @DeleteMapping("/{id}") + public Response remove(@PathVariable("id") Long id) { + vehicleDockLogService.remove(id); + return SingleResponse.buildSuccess(); + } + + @ApiOperation("删除多个") + @DeleteMapping("/ids") + public Response removeBatch(@RequestParam("ids") String ids) { + List idsList = Arrays.stream(ids.split(",")) + .map(Long::valueOf) + .collect(Collectors.toList()); + vehicleDockLogService.removeBatch(idsList); + return SingleResponse.buildSuccess(); + } + + @ApiOperation("修改") + @PutMapping("/edit") + public SingleResponse edit(@Validated @RequestBody VehicleDockLogUpdateCmd vehicleDockLogUpdateCmd) { + vehicleDockLogService.edit(vehicleDockLogUpdateCmd); + return SingleResponse.buildSuccess(); + } +} + diff --git a/web-app/src/main/java/com/zcloud/primeport/command/VehicleAuditUpdateExe.java b/web-app/src/main/java/com/zcloud/primeport/command/VehicleAuditUpdateExe.java index 18f081a..e9c28e0 100644 --- a/web-app/src/main/java/com/zcloud/primeport/command/VehicleAuditUpdateExe.java +++ b/web-app/src/main/java/com/zcloud/primeport/command/VehicleAuditUpdateExe.java @@ -60,6 +60,7 @@ public class VehicleAuditUpdateExe { TodoListCompleteEvent todoListCompleteEvent = new TodoListCompleteEvent(); todoListCompleteEvent.setForeignSubsidiaryKey(vehicleAuditE.getId()); todoListEventPusherUtil.sendMessageCompleteEvent(todoListCompleteEvent); + } } diff --git a/web-app/src/main/java/com/zcloud/primeport/command/VehicleDockLogAddExe.java b/web-app/src/main/java/com/zcloud/primeport/command/VehicleDockLogAddExe.java new file mode 100644 index 0000000..530ae8a --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/command/VehicleDockLogAddExe.java @@ -0,0 +1,40 @@ +package com.zcloud.primeport.command; + +import com.zcloud.primeport.domain.gateway.VehicleDockLogGateway; +import com.zcloud.primeport.domain.model.VehicleDockLogE; +import com.zcloud.primeport.dto.VehicleDockLogAddCmd; +import com.alibaba.cola.exception.BizException; +import lombok.AllArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + + +/** + * web-app + * + * @Author dearLin + * @Date 2026-04-14 14:53:29 + */ +@Component +@AllArgsConstructor +public class VehicleDockLogAddExe { + private final VehicleDockLogGateway vehicleDockLogGateway; + + @Transactional(rollbackFor = Exception.class) + public boolean execute(VehicleDockLogAddCmd cmd) { + VehicleDockLogE vehicleDockLogE = new VehicleDockLogE(); + BeanUtils.copyProperties(cmd, vehicleDockLogE); + boolean res = false; + try { + res = vehicleDockLogGateway.add(vehicleDockLogE); + } catch (Exception e) { + throw new RuntimeException(e); + } + if (!res) { + throw new BizException("保存失败"); + } + return true; + } +} + diff --git a/web-app/src/main/java/com/zcloud/primeport/command/VehicleDockLogRemoveExe.java b/web-app/src/main/java/com/zcloud/primeport/command/VehicleDockLogRemoveExe.java new file mode 100644 index 0000000..8244cfb --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/command/VehicleDockLogRemoveExe.java @@ -0,0 +1,41 @@ +package com.zcloud.primeport.command; + +import com.zcloud.primeport.domain.gateway.VehicleDockLogGateway; +import com.alibaba.cola.exception.BizException; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + + +/** + * web-app + * + * @Author dearLin + * @Date 2026-04-14 14:53:30 + */ +@Component +@AllArgsConstructor +public class VehicleDockLogRemoveExe { + private final VehicleDockLogGateway vehicleDockLogGateway; + + @Transactional(rollbackFor = Exception.class) + public boolean execute(Long id) { + boolean res = vehicleDockLogGateway.deletedVehicleDockLogById(id); + if (!res) { + throw new BizException("删除失败"); + } + return true; + } + + @Transactional(rollbackFor = Exception.class) + public boolean execute(List ids) { + boolean res = vehicleDockLogGateway.deletedVehicleDockLogByIds(ids); + if (!res) { + throw new BizException("删除失败"); + } + return true; + } +} + diff --git a/web-app/src/main/java/com/zcloud/primeport/command/VehicleDockLogUpdateExe.java b/web-app/src/main/java/com/zcloud/primeport/command/VehicleDockLogUpdateExe.java new file mode 100644 index 0000000..85e3aaf --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/command/VehicleDockLogUpdateExe.java @@ -0,0 +1,34 @@ +package com.zcloud.primeport.command; + +import com.alibaba.cola.exception.BizException; +import com.zcloud.primeport.domain.gateway.VehicleDockLogGateway; +import com.zcloud.primeport.domain.model.VehicleDockLogE; +import com.zcloud.primeport.dto.VehicleDockLogUpdateCmd; +import lombok.AllArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + + +/** + * web-app + * + * @Author dearLin + * @Date 2026-04-14 14:53:30 + */ +@Component +@AllArgsConstructor +public class VehicleDockLogUpdateExe { + private final VehicleDockLogGateway vehicleDockLogGateway; + + @Transactional(rollbackFor = Exception.class) + public void execute(VehicleDockLogUpdateCmd vehicleDockLogUpdateCmd) { + VehicleDockLogE vehicleDockLogE = new VehicleDockLogE(); + BeanUtils.copyProperties(vehicleDockLogUpdateCmd, vehicleDockLogE); + boolean res = vehicleDockLogGateway.update(vehicleDockLogE); + if (!res) { + throw new BizException("修改失败"); + } + } +} + diff --git a/web-app/src/main/java/com/zcloud/primeport/command/convertor/VehicleDockLogCoConvertor.java b/web-app/src/main/java/com/zcloud/primeport/command/convertor/VehicleDockLogCoConvertor.java new file mode 100644 index 0000000..5b3bb7e --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/command/convertor/VehicleDockLogCoConvertor.java @@ -0,0 +1,26 @@ +package com.zcloud.primeport.command.convertor; + +import com.zcloud.primeport.dto.clientobject.VehicleDockLogCO; +import com.zcloud.primeport.persistence.dataobject.VehicleDockLogDO; +import org.mapstruct.Mapper; + +import java.util.List; + + +/** + * web-app + * + * @Author dearLin + * @Date 2026-04-14 14:53:29 + */ +@Mapper(componentModel = "spring") +public interface VehicleDockLogCoConvertor { + /** + * @param vehicleDockLogDOs + * @return + */ + List converDOsToCOs(List vehicleDockLogDOs); + + VehicleDockLogCO converDOToCO(VehicleDockLogDO vehicleDockLogDO); +} + diff --git a/web-app/src/main/java/com/zcloud/primeport/command/query/VehicleDockLogQueryExe.java b/web-app/src/main/java/com/zcloud/primeport/command/query/VehicleDockLogQueryExe.java new file mode 100644 index 0000000..5ecb928 --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/command/query/VehicleDockLogQueryExe.java @@ -0,0 +1,52 @@ +package com.zcloud.primeport.command.query; + +import com.zcloud.primeport.command.convertor.VehicleDockLogCoConvertor; +import com.zcloud.primeport.dto.VehicleDockLogPageQry; +import com.zcloud.primeport.dto.clientobject.VehicleDockLogCO; +import com.zcloud.primeport.persistence.dataobject.VehicleDockLogDO; +import com.zcloud.primeport.persistence.repository.VehicleDockLogRepository; +import com.zcloud.gbscommon.utils.PageQueryHelper; +import com.alibaba.cola.dto.PageResponse; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.Map; + + +/** + * web-app + * + * @Author dearLin + * @Date 2026-04-14 14:53:30 + */ +@Component +@AllArgsConstructor +public class VehicleDockLogQueryExe { + private final VehicleDockLogRepository vehicleDockLogRepository; + private final VehicleDockLogCoConvertor vehicleDockLogCoConvertor; + + /** + * 根据id查询 + * + * @param id + * @return + */ + public VehicleDockLogCO queryById(Long id) { + return vehicleDockLogCoConvertor.converDOToCO(vehicleDockLogRepository.getById(id)); + } + + /** + * 分页 + * + * @param vehicleDockLogPageQry + * @return + */ + public PageResponse execute(VehicleDockLogPageQry vehicleDockLogPageQry) { + Map params = PageQueryHelper.toHashMap(vehicleDockLogPageQry); + PageResponse pageResponse = vehicleDockLogRepository.listPage(params); + List examCenterCOS = vehicleDockLogCoConvertor.converDOsToCOs(pageResponse.getData()); + return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex()); + } +} + diff --git a/web-app/src/main/java/com/zcloud/primeport/mjDevice/OauthUtil.java b/web-app/src/main/java/com/zcloud/primeport/mjDevice/OauthUtil.java index 542c336..7637792 100644 --- a/web-app/src/main/java/com/zcloud/primeport/mjDevice/OauthUtil.java +++ b/web-app/src/main/java/com/zcloud/primeport/mjDevice/OauthUtil.java @@ -56,8 +56,6 @@ public class OauthUtil { private String iccImgInspectUrl; @Value("${icc.request.getDepartmentIdUrl}") private String iccDepartmentIdUrl; - @Value("${icc.request.getDepartmentIdListUrl}") - private String iccDepartmentIdListUrl; /** * 获取RestTemplate实例 diff --git a/web-app/src/main/java/com/zcloud/primeport/mjDevice/OneLevelCarUtil.java b/web-app/src/main/java/com/zcloud/primeport/mjDevice/OneLevelCarUtil.java new file mode 100644 index 0000000..cf96aaf --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/mjDevice/OneLevelCarUtil.java @@ -0,0 +1,108 @@ +package com.zcloud.primeport.mjDevice; + +import com.alibaba.fastjson.JSONObject; +import com.zcloud.primeport.mjDevice.dto.OneLevelCarRemoveDto; +import com.zcloud.primeport.mjDevice.dto.OneLevelCarSaveDto; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpMethod; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Component; +import org.springframework.web.client.RestTemplate; + +import javax.annotation.Resource; + +/** + * 一级车辆门禁对接 前缀 + * + */ +@Component +public class OneLevelCarUtil { + + public static RestTemplate restTemplateOneLevelCarDock; + private static Integer dockFlag; + private static String prefix; + + @Resource + public void setrestTemplateOneLevelCarDock(RestTemplate restTemplateOneLevelCarDock) { + OneLevelCarUtil.restTemplateOneLevelCarDock = restTemplateOneLevelCarDock; + } + + @Value("${kmmj.dockflag}") + public void setDockFlag(Integer dockFlag) { + OneLevelCarUtil.dockFlag = dockFlag; + } + + @Value("${oneLevelCar.prefix}") + public void setDockFlag(String prefix) { + OneLevelCarUtil.prefix = prefix; + } + + /** + * 内部车辆保存 + * + * + */ + public static void internalVehicleSave(OneLevelCarSaveDto oneLevelCarSaveDto) { + if (dockFlag.equals(1)) { + JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(oneLevelCarSaveDto)); + HttpEntity httpEntity = new HttpEntity<>(jsonObject, new HttpHeaders()); + ResponseEntity exchange = restTemplateOneLevelCarDock.exchange( + prefix+"/HD_QHD_IGATE_1.0/webresources/login/CTruck/qaSaveInternal", + HttpMethod.POST, httpEntity, JSONObject.class); + } + + } + + /** + * 内部车辆删除 + * + */ + public static void internalVehicleRemove(OneLevelCarRemoveDto carRemoveDto) { + if (dockFlag.equals(1)) { + JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(carRemoveDto)); + HttpEntity httpEntity = new HttpEntity<>(jsonObject, new HttpHeaders()); + ResponseEntity exchange = restTemplateOneLevelCarDock.exchange( + prefix+"/HD_QHD_IGATE_1.0/webresources/login/CTruck/qaDeleteInternal", + HttpMethod.POST, httpEntity, JSONObject.class); + } + } + + /** + * 临时车辆删除 + * + * + */ + public static void tmpVehicleRemove() { +// restTemplateOneLevelCarDock.exchange(); + } + + /** + * 临时车辆新增 + * + * + */ + public static void tmpVehicleSave() { +// restTemplateOneLevelCarDock.exchange(); + } + + /** + * 黑名单车辆新增 + * + * + */ + public static void blackVehicleSave() { +// restTemplateOneLevelCarDock.exchange(); + } + + /** + * 黑名单车辆删除 + * + * + */ + public static void blackVehicleRemove() { +// restTemplateOneLevelCarDock.exchange(); + } +} diff --git a/web-app/src/main/java/com/zcloud/primeport/mjDevice/RestTemplateConfig.java b/web-app/src/main/java/com/zcloud/primeport/mjDevice/RestTemplateConfig.java new file mode 100644 index 0000000..4daabbf --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/mjDevice/RestTemplateConfig.java @@ -0,0 +1,96 @@ +package com.zcloud.primeport.mjDevice; + +import org.apache.http.config.Registry; +import org.apache.http.config.RegistryBuilder; +import org.apache.http.conn.socket.ConnectionSocketFactory; +import org.apache.http.conn.socket.PlainConnectionSocketFactory; +import org.apache.http.conn.ssl.NoopHostnameVerifier; +import org.apache.http.conn.ssl.SSLConnectionSocketFactory; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; +import org.apache.http.ssl.SSLContextBuilder; +import org.apache.http.ssl.TrustStrategy; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.web.client.RestTemplateBuilder; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.client.ClientHttpResponse; +import org.springframework.http.client.HttpComponentsClientHttpRequestFactory; +import org.springframework.web.client.ResponseErrorHandler; +import org.springframework.web.client.RestTemplate; + +import javax.net.ssl.SSLContext; +import java.io.IOException; +import java.security.KeyManagementException; +import java.security.KeyStoreException; +import java.security.NoSuchAlgorithmException; +import java.security.cert.CertificateException; +import java.security.cert.X509Certificate; +import java.time.Duration; + +@Configuration +public class RestTemplateConfig { + //启动时需要实例化该类的一个实例 + @Autowired + private RestTemplateBuilder builder; + //使用RestTemplateBuilder来实例化RestTemplate对象,Spring已经默认注入了RestTemplateBuilder实例 + @Bean + public RestTemplate restTemplateDock(){ + builder.setConnectTimeout(Duration.ofSeconds(5)); + builder.setReadTimeout(Duration.ofSeconds(5)); + return builder.build(); + } + @Bean + public RestTemplate restTemplateOneLevelCarDock(){ + + builder.setConnectTimeout(Duration.ofSeconds(5)); + builder.setReadTimeout(Duration.ofSeconds(5)); + return builder.build(); + } + @Bean + public RestTemplate restTemplateHbsy(HttpComponentsClientHttpRequestFactory httpsFactory) { + RestTemplate restTemplate = new RestTemplate(httpsFactory); + restTemplate.setErrorHandler(new ResponseErrorHandler() { + @Override + public boolean hasError(ClientHttpResponse response) throws IOException { + return false; + } + + @Override + public void handleError(ClientHttpResponse response) throws IOException { + + } + }); + return restTemplate; + } + + @Bean("httpsFactory") + public HttpComponentsClientHttpRequestFactory httpComponentsClientHttpRequestFactory() throws NoSuchAlgorithmException, KeyStoreException, KeyManagementException { + CloseableHttpClient httpClient = client(); + HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(httpClient); + factory.setConnectTimeout(20000); + return factory; + } + + private CloseableHttpClient client() throws NoSuchAlgorithmException, KeyStoreException, KeyManagementException { + HttpClientBuilder builder = HttpClientBuilder.create(); + // 无条件信任ssl证书 + SSLContext sslContext = new SSLContextBuilder().loadTrustMaterial(null, new TrustStrategy() { + @Override + public boolean isTrusted(X509Certificate[] chain, String authType) throws CertificateException { + return true; + } + }).build(); + builder.setSSLContext(sslContext); + NoopHostnameVerifier hostnameVerifier = NoopHostnameVerifier.INSTANCE; + SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(sslContext, hostnameVerifier); + Registry registry = RegistryBuilder.create().register("http", PlainConnectionSocketFactory.getSocketFactory()).register("https", sslConnectionSocketFactory).build(); + PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager(registry); + connectionManager.setMaxTotal(200); + connectionManager.setDefaultMaxPerRoute(100); + builder.setConnectionManager(connectionManager); + return builder.build(); + + } +} diff --git a/web-app/src/main/java/com/zcloud/primeport/mjDevice/dto/CarEnum.java b/web-app/src/main/java/com/zcloud/primeport/mjDevice/dto/CarEnum.java new file mode 100644 index 0000000..1a163d7 --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/mjDevice/dto/CarEnum.java @@ -0,0 +1,86 @@ +package com.zcloud.primeport.mjDevice.dto; + +import com.zcloud.primeport.domain.enums.MenuEnum; + +import java.util.Arrays; +import java.util.Map; +import java.util.function.Function; +import java.util.stream.Collectors; + +public enum CarEnum { + WHITE("2", "white"), + BLUE("0", "blue"), + YELLOW("1", "yellow"), + GREEN("4", "green"), + BLACK("3", "black"), + OTHER_CARD("5", "other_card"), + WXP("WXP", "WXP"), + QH("QH", "QH"), + XK("XK", "XK"), + ZK("ZK", "ZK"), + DK("DK", "DK"), + BG("BG", "BG"), + TZ("TZ", "TZ"), + ZX("ZX", "ZX"), + JSXH("JSXH", "JSXH"), + MV("MV", "MV"), + IW("IW", "IW"), + CR("CR", "CR"), + CC("CC", "CC"), + Z7("Z7", "Z7"), + WXP_BLUE("WXP_BLUE", "WXP_BLUE"), + QHD_GQ_DGQ_XGQ("0", "QHD_GQ_DGQ-QHD_GQ_XGQ"), + QHD_GQ_DGQ("1", "QHD_GQ_DGQ"), + QHD_GQ_XGQ("2", "QHD_GQ_XGQ"), +// WXP 危险品(黄牌) +// QH 轻型货车 +// XK 小型客车 +// ZK 中型客车 +// DK 大型客车 +// BG 重型半挂牵引 +// TZ 特种作业车 +// ZX 重型自卸货车 +// JSXH 集疏港小型货车 +// MV 7座以下轿车 +// IW 7座以上轿车 +// CR 面包车 +// CC 皮卡 +// Z7 水泥罐车 +// WXP_BLUE 危险品(蓝牌) + + ZGDW_LSCLGLJL_RECORD("/primeport/container/stakeholder/firstLevelDoor/portEntryApproval/temporaryVisitor/temporaryVehicleRecords/list", "zgdw-lsclgljl-record"); + + private final String path; + private final String menuKey; + + private static final Map PATH_MAP = + Arrays.stream(values()).collect(Collectors.toMap(CarEnum::getPath, Function.identity())); + + CarEnum(String path, String menuKey) { + this.path = path; + this.menuKey = menuKey; + } + + public String getPath() { + return path; + } + + public String getMenuKey() { + return menuKey; + } + + /** + * 通过path获取枚举 + */ + public static CarEnum getByPath(String path) { + return PATH_MAP.get(path); + } + + /** + * 通过path获取menuKey + */ + public static String getMenuKeyByPath(String path) { + CarEnum entry = PATH_MAP.get(path); + return entry != null ? entry.getMenuKey() : null; + } +} diff --git a/web-app/src/main/java/com/zcloud/primeport/mjDevice/dto/OneLevelCarRemoveDto.java b/web-app/src/main/java/com/zcloud/primeport/mjDevice/dto/OneLevelCarRemoveDto.java new file mode 100644 index 0000000..22df761 --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/mjDevice/dto/OneLevelCarRemoveDto.java @@ -0,0 +1,14 @@ +package com.zcloud.primeport.mjDevice.dto; + +import lombok.Data; + +/* + * 一级车辆对接类 + * */ +@Data +public class OneLevelCarRemoveDto { + // 车牌号 + private String truckNo; + // 车牌颜色 代码0蓝牌1黄牌2白牌3黑牌4新能源5其他 + private String truckCardColor; +} diff --git a/web-app/src/main/java/com/zcloud/primeport/mjDevice/dto/OneLevelCarSaveDto.java b/web-app/src/main/java/com/zcloud/primeport/mjDevice/dto/OneLevelCarSaveDto.java new file mode 100644 index 0000000..188adae --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/mjDevice/dto/OneLevelCarSaveDto.java @@ -0,0 +1,65 @@ +package com.zcloud.primeport.mjDevice.dto; + +import lombok.Data; + +/* + * 一级车辆对接类 + * */ +@Data +public class OneLevelCarSaveDto { + + // 车牌号 + private String truckNo; + // 车牌颜色 代码 + //0 蓝牌 + //1 黄牌 + //2 白牌 + //3 黑牌 + //4 新能源 + //5 其他 + private String truckCardColor; + // 车辆类型 代码 + // WXP 危险品(黄牌) + //QH 轻型货车 + //XK 小型客车 + //ZK 中型客车 + //DK 大型客车 + //BG 重型半挂牵引 + //TZ 特种作业车 + //ZX 重型自卸货车 + //JSXH 集疏港小型货车 + //MV 7座以下轿车 + //IW 7座以上轿车 + //CR 面包车 + //CC 皮卡 + //Z7 水泥罐车 + //WXP_BLUE 危险品(蓝牌) + private String truckTypCod; + // 所属单位 汉字 + private String truckTeamNam; + // 通行港区 传入代码 0-全部 1-东港区 2-西港区 + private String portId; + // 运全路 传入代码 0 不可以,1 可以 + private String yqlCheckFlag; + // 有效期 格式为yyyy-MM-dd 例子2025-05-01 + private String validDte; + // 司机名称 司机名称字符串 + private String driverNam; + // 司机联系方式 司机联系方式字符串 + private String linkTel; + // 行驶证号 字符串 + private String truckCard; + // 车辆识别号 字符串 + private String vin; + // 申请类别 代码 + //1 公务用车 + //2 生产用车 + //3 政府部门 + //4 职工私家车 + //5 客户私家车 + private String truckAppTypCod; + // 创建人 创建人的字符串 + private String recNam; + // 创建时间 格式yyyy-MM-dd HH:mm 例子2025-04-01 12:25 + private String recTim; +} diff --git a/web-app/src/main/java/com/zcloud/primeport/service/VehicleDockLogServiceImpl.java b/web-app/src/main/java/com/zcloud/primeport/service/VehicleDockLogServiceImpl.java new file mode 100644 index 0000000..f649df1 --- /dev/null +++ b/web-app/src/main/java/com/zcloud/primeport/service/VehicleDockLogServiceImpl.java @@ -0,0 +1,67 @@ +package com.zcloud.primeport.service; + +import com.zcloud.api.VehicleDockLogServiceI; +import com.zcloud.command.VehicleDockLogAddExe; +import com.zcloud.command.VehicleDockLogRemoveExe; +import com.zcloud.command.VehicleDockLogUpdateExe; +import com.zcloud.command.query.VehicleDockLogQueryExe; +import com.zcloud.dto.VehicleDockLogAddCmd; +import com.zcloud.dto.VehicleDockLogPageQry; +import com.zcloud.dto.VehicleDockLogUpdateCmd; +import com.zcloud.primeport.dto.clientobject.VehicleDockLogCO; + +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.SingleResponse; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * web-app + * + * @Author dearLin + * @Date 2026-04-14 14:53:30 + */ +@Service +@AllArgsConstructor +public class VehicleDockLogServiceImpl implements VehicleDockLogServiceI { + private final VehicleDockLogAddExe vehicleDockLogAddExe; + private final VehicleDockLogUpdateExe vehicleDockLogUpdateExe; + private final VehicleDockLogRemoveExe vehicleDockLogRemoveExe; + private final VehicleDockLogQueryExe vehicleDockLogQueryExe; + + @Override + public VehicleDockLogCO queryById(Long id) { + return vehicleDockLogQueryExe.queryById(id); + } + + @Override + public PageResponse listPage(VehicleDockLogPageQry qry) { + + return vehicleDockLogQueryExe.execute(qry); + } + + @Override + public SingleResponse add(VehicleDockLogAddCmd cmd) { + + vehicleDockLogAddExe.execute(cmd); + return SingleResponse.buildSuccess(); + } + + @Override + public void edit(VehicleDockLogUpdateCmd vehicleDockLogUpdateCmd) { + vehicleDockLogUpdateExe.execute(vehicleDockLogUpdateCmd); + } + + @Override + public void remove(Long id) { + vehicleDockLogRemoveExe.execute(id); + } + + @Override + public void removeBatch(List ids) { + vehicleDockLogRemoveExe.execute(ids); + } +} + diff --git a/web-client/src/main/java/com/zcloud/primeport/api/VehicleDockLogServiceI.java b/web-client/src/main/java/com/zcloud/primeport/api/VehicleDockLogServiceI.java new file mode 100644 index 0000000..c570086 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/primeport/api/VehicleDockLogServiceI.java @@ -0,0 +1,32 @@ +package com.zcloud.primeport.api; + +import com.zcloud.primeport.dto.VehicleDockLogAddCmd; +import com.zcloud.primeport.dto.VehicleDockLogPageQry; +import com.zcloud.primeport.dto.VehicleDockLogUpdateCmd; +import com.zcloud.primeport.dto.clientobject.VehicleDockLogCO; + +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.SingleResponse; + +import java.util.List; + +/** + * web-client + * + * @Author dearLin + * @Date 2026-04-14 14:53:30 + */ +public interface VehicleDockLogServiceI { + VehicleDockLogCO queryById(Long id); + + PageResponse listPage(VehicleDockLogPageQry qry); + + SingleResponse add(VehicleDockLogAddCmd cmd); + + void edit(VehicleDockLogUpdateCmd cmd); + + void remove(Long id); + + void removeBatch(List ids); +} + diff --git a/web-client/src/main/java/com/zcloud/primeport/dto/VehicleDockLogAddCmd.java b/web-client/src/main/java/com/zcloud/primeport/dto/VehicleDockLogAddCmd.java new file mode 100644 index 0000000..f1dd2e7 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/primeport/dto/VehicleDockLogAddCmd.java @@ -0,0 +1,92 @@ +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 dearLin + * @Date 2026-04-14 14:53:28 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@NoArgsConstructor +@AllArgsConstructor +public class VehicleDockLogAddCmd extends Command { + @ApiModelProperty(value = "1一级口门,2二级口门", name = "level", required = true) + @NotEmpty(message = "1一级口门,2二级口门不能为空") + private String level; + + @ApiModelProperty(value = "车辆所属类型 1-股份员工车辆,2-股份单位车辆,3-分公司员工车辆,4-分公司单位车辆 ,5-相关方车辆, 6:临时车辆,7检查部门车辆8,驻港单位员工车辆,9驻港单位公车", name = "vehicleBelongType", required = true) + @NotEmpty(message = "车辆所属类型 1-股份员工车辆,2-股份单位车辆,3-分公司员工车辆,4-分公司单位车辆 ,5-相关方车辆, 6:临时车辆,7检查部门车辆8,驻港单位员工车辆,9驻港单位公车不能为空") + private String vehicleBelongType; + + @ApiModelProperty(value = "车牌号", name = "licenceNo", required = true) + @NotEmpty(message = "车牌号不能为空") + private String licenceNo; + + @ApiModelProperty(value = "申请人名称", name = "applyName", required = true) + @NotEmpty(message = "申请人名称不能为空") + private String applyName; + + @ApiModelProperty(value = "申请时间", name = "applyTime", required = true) + @NotEmpty(message = "申请时间不能为空") + private String applyTime; + + @ApiModelProperty(value = "审批人名称", name = "auditName", required = true) + @NotEmpty(message = "审批人名称不能为空") + private String auditName; + + @ApiModelProperty(value = "审批时间", name = "auditTime", required = true) + @NotEmpty(message = "审批时间不能为空") + private String auditTime; + + @ApiModelProperty(value = "港区名称0全部,1东港,2西港", name = "portArea", required = true) + @NotEmpty(message = "港区名称0全部,1东港,2西港不能为空") + private String portArea; + + @ApiModelProperty(value = "有效期", name = "validDte", required = true) + @NotEmpty(message = "有效期不能为空") + private String validDte; + + @ApiModelProperty(value = "车牌颜色", name = "truckCardColor", required = true) + @NotEmpty(message = "车牌颜色不能为空") + private String truckCardColor; + + @ApiModelProperty(value = "车辆类型", name = "truckTypCod", required = true) + @NotEmpty(message = "车辆类型不能为空") + private String truckTypCod; + + @ApiModelProperty(value = "运全路 0 不可以,1 可以", name = "yqlCheckFlag", required = true) + @NotEmpty(message = "运全路 0 不可以,1 可以不能为空") + private String yqlCheckFlag; + + @ApiModelProperty(value = "司机名称", name = "driverNam", required = true) + @NotEmpty(message = "司机名称不能为空") + private String driverNam; + + @ApiModelProperty(value = "申请类别1 公务用车2 生产用车3 政府部门4 职工私家车5客户私家车", name = "truckAppTypCod", required = true) + @NotEmpty(message = "申请类别1 公务用车2 生产用车3 政府部门4 职工私家车5客户私家车不能为空") + private String truckAppTypCod; + + @ApiModelProperty(value = "对接状态 1没对接,2已对接", name = "dockFlag", required = true) + @NotEmpty(message = "对接状态 1没对接,2已对接不能为空") + private String dockFlag; + + @ApiModelProperty(value = "1对接失败,2对接成功", name = "dockStatus", required = true) + @NotEmpty(message = "1对接失败,2对接成功不能为空") + private String dockStatus; + + @ApiModelProperty(value = "对接失败原因", name = "reasonsRefusal", required = true) + @NotEmpty(message = "对接失败原因不能为空") + private String reasonsRefusal; + +} + diff --git a/web-client/src/main/java/com/zcloud/primeport/dto/VehicleDockLogPageQry.java b/web-client/src/main/java/com/zcloud/primeport/dto/VehicleDockLogPageQry.java new file mode 100644 index 0000000..412fdf4 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/primeport/dto/VehicleDockLogPageQry.java @@ -0,0 +1,28 @@ +package com.zcloud.primeport.dto; + +import com.alibaba.cola.dto.PageQuery; +import lombok.Data; + + +/** + * web-client + * + * @Author dearLin + * @Date 2026-04-14 14:53:30 + */ +@Data +public class VehicleDockLogPageQry extends PageQuery { + + /** + * 查询条件操作前缀,支持以下几种数据库查询操作: + * - `like`: 模糊匹配查询,对应SQL的LIKE操作符 + * - `eq`: 等值查询,对应SQL的=操作符 + * - `gt`: 大于比较查询 + * - `lt`: 小于比较查询 + * - `ge`: 大于等于比较查询 + * - `le`: 小于等于比较查询 + * - `ne`: 不等比较查询,对应SQL的!=操作符 + */ + private String likeLevel; +} + diff --git a/web-client/src/main/java/com/zcloud/primeport/dto/VehicleDockLogUpdateCmd.java b/web-client/src/main/java/com/zcloud/primeport/dto/VehicleDockLogUpdateCmd.java new file mode 100644 index 0000000..434cad9 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/primeport/dto/VehicleDockLogUpdateCmd.java @@ -0,0 +1,78 @@ +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 dearLin + * @Date 2026-04-14 14:53:30 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@NoArgsConstructor +@AllArgsConstructor +public class VehicleDockLogUpdateCmd extends Command { + @ApiModelProperty(value = "${column.comment}", name = "id", required = true) + @NotNull(message = "${column.comment}不能为空") + private Long id; + @ApiModelProperty(value = "1一级口门,2二级口门", name = "level", required = true) + @NotEmpty(message = "1一级口门,2二级口门不能为空") + private String level; + @ApiModelProperty(value = "车辆所属类型 1-股份员工车辆,2-股份单位车辆,3-分公司员工车辆,4-分公司单位车辆 ,5-相关方车辆, 6:临时车辆,7检查部门车辆8,驻港单位员工车辆,9驻港单位公车", name = "vehicleBelongType", required = true) + @NotEmpty(message = "车辆所属类型 1-股份员工车辆,2-股份单位车辆,3-分公司员工车辆,4-分公司单位车辆 ,5-相关方车辆, 6:临时车辆,7检查部门车辆8,驻港单位员工车辆,9驻港单位公车不能为空") + private String vehicleBelongType; + @ApiModelProperty(value = "车牌号", name = "licenceNo", required = true) + @NotEmpty(message = "车牌号不能为空") + private String licenceNo; + @ApiModelProperty(value = "申请人名称", name = "applyName", required = true) + @NotEmpty(message = "申请人名称不能为空") + private String applyName; + @ApiModelProperty(value = "申请时间", name = "applyTime", required = true) + @NotEmpty(message = "申请时间不能为空") + private String applyTime; + @ApiModelProperty(value = "审批人名称", name = "auditName", required = true) + @NotEmpty(message = "审批人名称不能为空") + private String auditName; + @ApiModelProperty(value = "审批时间", name = "auditTime", required = true) + @NotEmpty(message = "审批时间不能为空") + private String auditTime; + @ApiModelProperty(value = "港区名称0全部,1东港,2西港", name = "portArea", required = true) + @NotEmpty(message = "港区名称0全部,1东港,2西港不能为空") + private String portArea; + @ApiModelProperty(value = "有效期", name = "validDte", required = true) + @NotEmpty(message = "有效期不能为空") + private String validDte; + @ApiModelProperty(value = "车牌颜色", name = "truckCardColor", required = true) + @NotEmpty(message = "车牌颜色不能为空") + private String truckCardColor; + @ApiModelProperty(value = "车辆类型", name = "truckTypCod", required = true) + @NotEmpty(message = "车辆类型不能为空") + private String truckTypCod; + @ApiModelProperty(value = "运全路 0 不可以,1 可以", name = "yqlCheckFlag", required = true) + @NotEmpty(message = "运全路 0 不可以,1 可以不能为空") + private String yqlCheckFlag; + @ApiModelProperty(value = "司机名称", name = "driverNam", required = true) + @NotEmpty(message = "司机名称不能为空") + private String driverNam; + @ApiModelProperty(value = "申请类别1 公务用车2 生产用车3 政府部门4 职工私家车5客户私家车", name = "truckAppTypCod", required = true) + @NotEmpty(message = "申请类别1 公务用车2 生产用车3 政府部门4 职工私家车5客户私家车不能为空") + private String truckAppTypCod; + @ApiModelProperty(value = "对接状态 1没对接,2已对接", name = "dockFlag", required = true) + @NotEmpty(message = "对接状态 1没对接,2已对接不能为空") + private String dockFlag; + @ApiModelProperty(value = "1对接失败,2对接成功", name = "dockStatus", required = true) + @NotEmpty(message = "1对接失败,2对接成功不能为空") + private String dockStatus; + @ApiModelProperty(value = "对接失败原因", name = "reasonsRefusal", required = true) + @NotEmpty(message = "对接失败原因不能为空") + private String reasonsRefusal; +} + diff --git a/web-client/src/main/java/com/zcloud/primeport/dto/clientobject/VehicleDockLogCO.java b/web-client/src/main/java/com/zcloud/primeport/dto/clientobject/VehicleDockLogCO.java new file mode 100644 index 0000000..d721475 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/primeport/dto/clientobject/VehicleDockLogCO.java @@ -0,0 +1,110 @@ +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 dearLin + * @Date 2026-04-14 14:53:29 + */ +@Data +public class VehicleDockLogCO extends ClientObject { + private Long id; + //1一级口门,2二级口门 + @ApiModelProperty(value = "1一级口门,2二级口门") + private String level; + //车辆所属类型 1-股份员工车辆,2-股份单位车辆,3-分公司员工车辆,4-分公司单位车辆 ,5-相关方车辆, 6:临时车辆,7检查部门车辆8,驻港单位员工车辆,9驻港单位公车 + @ApiModelProperty(value = "车辆所属类型 1-股份员工车辆,2-股份单位车辆,3-分公司员工车辆,4-分公司单位车辆 ,5-相关方车辆, 6:临时车辆,7检查部门车辆8,驻港单位员工车辆,9驻港单位公车") + private String vehicleBelongType; + //车牌号 + @ApiModelProperty(value = "车牌号") + private String licenceNo; + //申请人名称 + @ApiModelProperty(value = "申请人名称") + private String applyName; + //申请时间 + @ApiModelProperty(value = "申请时间") + private String applyTime; + //审批人名称 + @ApiModelProperty(value = "审批人名称") + private String auditName; + //审批时间 + @ApiModelProperty(value = "审批时间") + private String auditTime; + //港区名称0全部,1东港,2西港 + @ApiModelProperty(value = "港区名称0全部,1东港,2西港") + private String portArea; + //有效期 + @ApiModelProperty(value = "有效期") + private String validDte; + //车牌颜色 + @ApiModelProperty(value = "车牌颜色") + private String truckCardColor; + //车辆类型 + @ApiModelProperty(value = "车辆类型") + private String truckTypCod; + //运全路 0 不可以,1 可以 + @ApiModelProperty(value = "运全路 0 不可以,1 可以") + private String yqlCheckFlag; + //司机名称 + @ApiModelProperty(value = "司机名称") + private String driverNam; + //申请类别1 公务用车2 生产用车3 政府部门4 职工私家车5客户私家车 + @ApiModelProperty(value = "申请类别1 公务用车2 生产用车3 政府部门4 职工私家车5客户私家车") + private String truckAppTypCod; + //对接状态 1没对接,2已对接 + @ApiModelProperty(value = "对接状态 1没对接,2已对接") + private String dockFlag; + //1对接失败,2对接成功 + @ApiModelProperty(value = "1对接失败,2对接成功") + private String dockStatus; + //对接失败原因 + @ApiModelProperty(value = "对接失败原因") + private String reasonsRefusal; + //删除标识 + @ApiModelProperty(value = "删除标识") + private String deleteEnum; + //创建时间 + @ApiModelProperty(value = "创建时间") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date createTime; + //更新时间 + @ApiModelProperty(value = "更新时间") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date updateTime; + //创建人ID + @ApiModelProperty(value = "创建人ID") + private Long createId; + //更新人ID + @ApiModelProperty(value = "更新人ID") + private Long updateId; + //环境标识 + @ApiModelProperty(value = "环境标识") + private String env; + //创建人姓名 + @ApiModelProperty(value = "创建人姓名") + private String createName; + //更新人姓名 + @ApiModelProperty(value = "更新人姓名") + private String updateName; + //租户ID + @ApiModelProperty(value = "租户ID") + private Long tenantId; + //组织ID + @ApiModelProperty(value = "组织ID") + private Long orgId; + //版本号 + @ApiModelProperty(value = "版本号") + private Integer version; + //备注 + @ApiModelProperty(value = "备注") + private String remarks; +} + diff --git a/web-domain/src/main/java/com/zcloud/primeport/domain/gateway/VehicleDockLogGateway.java b/web-domain/src/main/java/com/zcloud/primeport/domain/gateway/VehicleDockLogGateway.java new file mode 100644 index 0000000..4bc7a94 --- /dev/null +++ b/web-domain/src/main/java/com/zcloud/primeport/domain/gateway/VehicleDockLogGateway.java @@ -0,0 +1,32 @@ +package com.zcloud.primeport.domain.gateway; + +import com.zcloud.primeport.domain.model.VehicleDockLogE; + +import java.util.List; + +/** + * web-domain + * + * @Author dearLin + * @Date 2026-04-14 14:53:29 + */ +public interface VehicleDockLogGateway { + + /** + * 新增 + */ + Boolean add(VehicleDockLogE vehicleDockLogE); + + /** + * 修改 + */ + Boolean update(VehicleDockLogE vehicleDockLogE); + + /** + * 删除 + */ + Boolean deletedVehicleDockLogById(Long id); + + Boolean deletedVehicleDockLogByIds(List id); +} + diff --git a/web-domain/src/main/java/com/zcloud/primeport/domain/model/VehicleDockLogE.java b/web-domain/src/main/java/com/zcloud/primeport/domain/model/VehicleDockLogE.java new file mode 100644 index 0000000..5bb8a3a --- /dev/null +++ b/web-domain/src/main/java/com/zcloud/primeport/domain/model/VehicleDockLogE.java @@ -0,0 +1,51 @@ +package com.zcloud.primeport.domain.model; + +import com.alibaba.cola.domain.Entity; +import com.jjb.saas.framework.domain.model.BaseE; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * web-domain + * + * @Author dearLin + * @Date 2026-04-14 14:53:29 + */ +@Data +public class VehicleDockLogE extends BaseE { + //1一级口门,2二级口门 + private String level; + //车辆所属类型 1-股份员工车辆,2-股份单位车辆,3-分公司员工车辆,4-分公司单位车辆 ,5-相关方车辆, 6:临时车辆,7检查部门车辆8,驻港单位员工车辆,9驻港单位公车 + private String vehicleBelongType; + //车牌号 + private String licenceNo; + //申请人名称 + private String applyName; + //申请时间 + private String applyTime; + //审批人名称 + private String auditName; + //审批时间 + private String auditTime; + //港区名称0全部,1东港,2西港 + private String portArea; + //有效期 + private String validDte; + //车牌颜色 + private String truckCardColor; + //车辆类型 + private String truckTypCod; + //运全路 0 不可以,1 可以 + private String yqlCheckFlag; + //司机名称 + private String driverNam; + //申请类别1 公务用车2 生产用车3 政府部门4 职工私家车5客户私家车 + private String truckAppTypCod; + //对接状态 1没对接,2已对接 + private String dockFlag; + //1对接失败,2对接成功 + private String dockStatus; + //对接失败原因 + private String reasonsRefusal; +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/primeport/gatewayimpl/VehicleDockLogGatewayImpl.java b/web-infrastructure/src/main/java/com/zcloud/primeport/gatewayimpl/VehicleDockLogGatewayImpl.java new file mode 100644 index 0000000..5e14563 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/primeport/gatewayimpl/VehicleDockLogGatewayImpl.java @@ -0,0 +1,51 @@ +package com.zcloud.primeport.gatewayimpl; + +import com.zcloud.primeport.domain.gateway.VehicleDockLogGateway; +import com.zcloud.primeport.domain.model.VehicleDockLogE; +import com.zcloud.primeport.persistence.dataobject.VehicleDockLogDO; +import com.zcloud.primeport.persistence.repository.VehicleDockLogRepository; +import lombok.AllArgsConstructor; +import com.zcloud.gbscommon.utils.Tools; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * web-infrastructure + * + * @Author dearLin + * @Date 2026-04-14 14:53:30 + */ +@Service +@AllArgsConstructor +public class VehicleDockLogGatewayImpl implements VehicleDockLogGateway { + private final VehicleDockLogRepository vehicleDockLogRepository; + + @Override + public Boolean add(VehicleDockLogE vehicleDockLogE) { + VehicleDockLogDO d = new VehicleDockLogDO(); + BeanUtils.copyProperties(vehicleDockLogE, d); + vehicleDockLogRepository.save(d); + return true; + } + + @Override + public Boolean update(VehicleDockLogE vehicleDockLogE) { + VehicleDockLogDO d = new VehicleDockLogDO(); + BeanUtils.copyProperties(vehicleDockLogE, d); + vehicleDockLogRepository.updateById(d); + return true; + } + + @Override + public Boolean deletedVehicleDockLogById(Long id) { + return vehicleDockLogRepository.removeById(id); + } + + @Override + public Boolean deletedVehicleDockLogByIds(List ids) { + return vehicleDockLogRepository.removeByIds(ids); + } +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/dataobject/VehicleDockLogDO.java b/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/dataobject/VehicleDockLogDO.java new file mode 100644 index 0000000..1f5463f --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/dataobject/VehicleDockLogDO.java @@ -0,0 +1,74 @@ +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 dearLin + * @Date 2026-04-14 14:53:29 + */ +@Data +@TableName("vehicle_dock_log") +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class VehicleDockLogDO extends BaseDO { + //1一级口门,2二级口门 + @ApiModelProperty(value = "1一级口门,2二级口门") + private String level; + //车辆所属类型 1-股份员工车辆,2-股份单位车辆,3-分公司员工车辆,4-分公司单位车辆 ,5-相关方车辆, 6:临时车辆,7检查部门车辆8,驻港单位员工车辆,9驻港单位公车 + @ApiModelProperty(value = "车辆所属类型 1-股份员工车辆,2-股份单位车辆,3-分公司员工车辆,4-分公司单位车辆 ,5-相关方车辆, 6:临时车辆,7检查部门车辆8,驻港单位员工车辆,9驻港单位公车") + private String vehicleBelongType; + //车牌号 + @ApiModelProperty(value = "车牌号") + private String licenceNo; + //申请人名称 + @ApiModelProperty(value = "申请人名称") + private String applyName; + //申请时间 + @ApiModelProperty(value = "申请时间") + private String applyTime; + //审批人名称 + @ApiModelProperty(value = "审批人名称") + private String auditName; + //审批时间 + @ApiModelProperty(value = "审批时间") + private String auditTime; + //港区名称0全部,1东港,2西港 + @ApiModelProperty(value = "港区名称0全部,1东港,2西港") + private String portArea; + //有效期 + @ApiModelProperty(value = "有效期") + private String validDte; + //车牌颜色 + @ApiModelProperty(value = "车牌颜色") + private String truckCardColor; + //车辆类型 + @ApiModelProperty(value = "车辆类型") + private String truckTypCod; + //运全路 0 不可以,1 可以 + @ApiModelProperty(value = "运全路 0 不可以,1 可以") + private String yqlCheckFlag; + //司机名称 + @ApiModelProperty(value = "司机名称") + private String driverNam; + //申请类别1 公务用车2 生产用车3 政府部门4 职工私家车5客户私家车 + @ApiModelProperty(value = "申请类别1 公务用车2 生产用车3 政府部门4 职工私家车5客户私家车") + private String truckAppTypCod; + //对接状态 1没对接,2已对接 + @ApiModelProperty(value = "对接状态 1没对接,2已对接") + private String dockFlag; + //1对接失败,2对接成功 + @ApiModelProperty(value = "1对接失败,2对接成功") + private String dockStatus; + //对接失败原因 + @ApiModelProperty(value = "对接失败原因") + private String reasonsRefusal; + +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/mapper/VehicleDockLogMapper.java b/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/mapper/VehicleDockLogMapper.java new file mode 100644 index 0000000..e505685 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/mapper/VehicleDockLogMapper.java @@ -0,0 +1,17 @@ +package com.zcloud.primeport.persistence.mapper; + +import com.zcloud.primeport.persistence.dataobject.VehicleDockLogDO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * web-infrastructure + * + * @Author dearLin + * @Date 2026-04-14 14:53:30 + */ +@Mapper +public interface VehicleDockLogMapper extends BaseMapper { + +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/repository/VehicleDockLogRepository.java b/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/repository/VehicleDockLogRepository.java new file mode 100644 index 0000000..0232ce9 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/repository/VehicleDockLogRepository.java @@ -0,0 +1,18 @@ +package com.zcloud.primeport.persistence.repository; + +import com.zcloud.primeport.persistence.dataobject.VehicleDockLogDO; +import com.alibaba.cola.dto.PageResponse; +import com.jjb.saas.framework.repository.repo.BaseRepository; + +import java.util.Map; + +/** + * web-infrastructure + * + * @Author dearLin + * @Date 2026-04-14 14:53:30 + */ +public interface VehicleDockLogRepository extends BaseRepository { + PageResponse listPage(Map params); +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/repository/impl/VehicleDockLogRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/repository/impl/VehicleDockLogRepositoryImpl.java new file mode 100644 index 0000000..d6a8092 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/primeport/persistence/repository/impl/VehicleDockLogRepositoryImpl.java @@ -0,0 +1,39 @@ +package com.zcloud.primeport.persistence.repository.impl; + +import com.zcloud.primeport.persistence.dataobject.VehicleDockLogDO; +import com.zcloud.primeport.persistence.mapper.VehicleDockLogMapper; +import com.zcloud.primeport.persistence.repository.VehicleDockLogRepository; +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.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.Map; + +/** + * web-infrastructure + * + * @Author dearLin + * @Date 2026-04-14 14:53:30 + */ +@Service +@RequiredArgsConstructor +public class VehicleDockLogRepositoryImpl extends BaseRepositoryImpl implements VehicleDockLogRepository { + private final VehicleDockLogMapper vehicleDockLogMapper; + + @Override + public PageResponse listPage(Map params) { + IPage iPage = new Query().getPage(params); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params); + queryWrapper.orderByDesc("create_time"); + IPage result = vehicleDockLogMapper.selectPage(iPage, queryWrapper); + return PageHelper.pageToResponse(result, result.getRecords()); + } +} + diff --git a/web-infrastructure/src/main/resources/mapper/VehicleDockLogMapper.xml b/web-infrastructure/src/main/resources/mapper/VehicleDockLogMapper.xml new file mode 100644 index 0000000..137cd8c --- /dev/null +++ b/web-infrastructure/src/main/resources/mapper/VehicleDockLogMapper.xml @@ -0,0 +1,8 @@ + + + + + + +