diff --git a/txw-gateway/README.md b/txw-gateway/README.md
new file mode 100644
index 0000000..e69de29
diff --git a/txw-gateway/pom.xml b/txw-gateway/pom.xml
new file mode 100644
index 0000000..a80236e
--- /dev/null
+++ b/txw-gateway/pom.xml
@@ -0,0 +1,58 @@
+
+
+ 4.0.0
+
+ com.css.ggzc
+ ggzc-framework-dependencies
+ 1.0.0-SNAPSHOT
+
+ txw-gateway
+ com.css.txw
+ 1.0.0-SNAPSHOT
+ ${project.artifactId}
+ txw-gateway
+
+
+
+ com.css.ggzc
+ ggzc-framework-starter
+ 1.0.0-SNAPSHOT
+ pom
+ import
+
+
+
+
+
+
+ com.css.ggzc
+ ggzc-framework-starter-gateway
+
+
+
+ com.css.ggzc
+ ggzc-framework-starter-rpc
+
+
+
+
+
+ springboot
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+ ${spring.boot.version}
+
+
+
+ repackage
+
+
+
+
+
+
+
diff --git a/txw-gateway/settings.xml b/txw-gateway/settings.xml
new file mode 100644
index 0000000..e089e4a
--- /dev/null
+++ b/txw-gateway/settings.xml
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+ codingcorp-qyd_repo-mvn_public
+ coding-user
+ coding-pwd
+
+
+
+
+
+
+ Repository Proxy
+
+ true
+
+
+
+
+ codingcorp-qyd_repo-mvn_public
+ mvn_public
+ http://codingcorp-maven.pkg.codingstd.xc01.cloud.sat.tax/repository/qyd_repo/mvn_public/
+
+ true
+
+
+ true
+ always
+
+
+
+
+
+ codingcorp-qyd_repo-mvn_public
+
+ true
+
+
+ true
+
+ http://codingcorp-maven.pkg.codingstd.xc01.cloud.sat.tax/repository/qyd_repo/mvn_public/
+
+
+
+
+
+
+
+ codingcorp-qyd_repo-mvn_public
+
+ central
+ mvn_public
+ http://codingcorp-maven.pkg.codingstd.xc01.cloud.sat.tax/repository/qyd_repo/mvn_public/
+
+
+
diff --git a/txw-gateway/src/main/java/com/css/txw/gateway/app/DevAppStarter.java b/txw-gateway/src/main/java/com/css/txw/gateway/app/DevAppStarter.java
new file mode 100644
index 0000000..f3d2a53
--- /dev/null
+++ b/txw-gateway/src/main/java/com/css/txw/gateway/app/DevAppStarter.java
@@ -0,0 +1,16 @@
+package com.css.txw.gateway.app;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.annotation.EnableAspectJAutoProxy;
+
+/**
+ * 仅开发使用,正式环境不使用,写在此处的配置在生产环境不会生效
+ */
+@SpringBootApplication
+@EnableAspectJAutoProxy(proxyTargetClass = true)
+public class DevAppStarter {
+ public static void main(String[] args) {
+ SpringApplication.run(DevAppStarter.class, args);
+ }
+}
diff --git a/txw-gateway/src/main/resources/application.yaml b/txw-gateway/src/main/resources/application.yaml
new file mode 100644
index 0000000..80dcdcc
--- /dev/null
+++ b/txw-gateway/src/main/resources/application.yaml
@@ -0,0 +1,19 @@
+spring:
+ main:
+ allow-circular-references: true # 允许循环依赖,因为项目是三层架构,无法避免这个情况。
+css:
+ application:
+ version: 1.0.0
+ base-package: com.css.ggzc.gateway
+ swagger:
+ title: ${spring.application.name}
+ description: 网关服务
+ version: ${css.application.version}
+ base-package: ${css.application.base-package}
+ tenant: # 多租户相关配置项
+ enable: true
+ gateway:
+ api:
+ checkAccessToken: http://sso-service/sso/oauth2/token/check
+# checkAccessToken: http://gateway.qydckts.tax.cn/sso/oauth2/token/check
+
diff --git a/txw-gateway/src/main/resources/bootstrap-env.yml b/txw-gateway/src/main/resources/bootstrap-env.yml
new file mode 100644
index 0000000..8347294
--- /dev/null
+++ b/txw-gateway/src/main/resources/bootstrap-env.yml
@@ -0,0 +1,22 @@
+
+--- #################### 注册中心相关配置 ####################
+
+spring:
+ cloud:
+ nacos:
+ server-addr: 10.23.10.91:8848
+ discovery:
+ namespace: qyd-txw # 命名空间。这里使用 dev 开发环境
+
+--- #################### 配置中心相关配置 ####################
+
+spring:
+ cloud:
+ nacos:
+ # Nacos Config 配置项,对应 NacosConfigProperties 配置属性类
+ config:
+ server-addr: 10.23.10.91:8848 # Nacos 服务器地址
+ namespace: qyd-txw # 命名空间。这里使用 dev 开发环境
+ group: DEFAULT_GROUP # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP
+ name: ${spring.application.name} # 使用的 Nacos 配置集的 dataId,默认为 spring.application.name
+ file-extension: yaml # 使用的 Nacos 配置集的 dataId 的文件拓展名,同时也是 Nacos 配置集的配置格式,默认为 properties
diff --git a/txw-gateway/src/main/resources/bootstrap-local.yml b/txw-gateway/src/main/resources/bootstrap-local.yml
new file mode 100644
index 0000000..98fb7f4
--- /dev/null
+++ b/txw-gateway/src/main/resources/bootstrap-local.yml
@@ -0,0 +1,27 @@
+--- #################### 注册中心相关配置 ####################
+
+spring:
+ cloud:
+ nacos:
+ server-addr: 10.23.10.91:8848
+ username: qyddev
+ password: 9!1%Sw#QydNacosDev
+ discovery:
+ namespace: 0ac06fee-c2c9-4ca0-9a26-4921d553adde # 命名空间。这里使用开发环境
+ metadata:
+ version: 1.0.0-SNAPSHOT # 服务实例的版本号,可用于灰度发布
+
+--- #################### 配置中心相关配置 ####################
+
+spring:
+ cloud:
+ nacos:
+ # Nacos Config 配置项,对应 NacosConfigProperties 配置属性类
+ config:
+ server-addr: 10.23.10.91:8848 # Nacos 服务器地址
+ username: qyddev
+ password: 9!1%Sw#QydNacosDev
+ namespace: 0ac06fee-c2c9-4ca0-9a26-4921d553adde # 命名空间。这里使用 dev 开发环境
+ group: DEFAULT_GROUP # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP
+ name: ${spring.application.name} # 使用的 Nacos 配置集的 dataId,默认为 spring.application.name
+ file-extension: yaml # 使用的 Nacos 配置集的 dataId 的文件拓展名,同时也是 Nacos 配置集的配置格式,默认为 properties
diff --git a/txw-gateway/src/main/resources/bootstrap-nacos.yml b/txw-gateway/src/main/resources/bootstrap-nacos.yml
new file mode 100644
index 0000000..8fc33b5
--- /dev/null
+++ b/txw-gateway/src/main/resources/bootstrap-nacos.yml
@@ -0,0 +1,107 @@
+spring:
+ cloud:
+ gateway:
+ x-forwarded:
+ prefix-enabled: false # 避免 Swagger 重复带上额外的 /ckts-api/system 前缀
+ routes:
+ - id: qyd-ckts-dlfw
+ uri: grayLb://qyd-ckts-dlfw
+ predicates:
+ - Path=/dlfw/**
+ - id: qyd-ckts-jszx
+ uri: grayLb://qyd-ckts-jszx
+ predicates:
+ - Path=/jszx/**
+ - id: qyd-ckts-mhzc
+ uri: grayLb://qyd-ckts-mhzc
+ predicates:
+ - Path=/mhzc/**
+ - id: qyd-ckts-ptgl
+ uri: grayLb://qyd-ckts-ptgl
+ predicates:
+ - Path=/ptgl/**
+ - id: qyd-ckts-sbzx
+ uri: grayLb://qyd-ckts-sbzx
+ predicates:
+ - Path=/sbzx/**
+ - id: qyd-ckts-sjcj
+ uri: grayLb://qyd-ckts-sjcj
+ predicates:
+ - Path=/sjcj/**
+ - id: qyd-ckts-sjfx
+ uri: grayLb://qyd-ckts-sjfx
+ predicates:
+ - Path=/sjfx/**
+ - id: qyd-ckts-sjjx
+ uri: grayLb://qyd-ckts-sjjx
+ predicates:
+ - Path=/sjjx/**
+ - id: qyd-ckts-sso
+ uri: grayLb://qyd-ckts-sso
+ predicates:
+ - Path=/sso/**
+ # API配置
+ - id: qyd-ckts-sjcj-api
+ uri: grayLb://qyd-ckts-sjcj
+ predicates:
+ - Path=/api/sjcj/**
+ filters:
+ - ApiGatewayFilter
+ - RewritePath=/api/(?.*), /$\{segment}
+
+
+knife4j:
+ # 聚合 Swagger 文档,参考 https://doc.xiaominfo.com/docs/action/springcloud-gateway 文档
+ enable: true # 2.2 是否开启 Swagger 文档的 Knife4j UI 界面
+ setting:
+ language: zh_cn
+ gateway:
+ enabled: true
+ routes:
+ - name: qyd-ckts-dlfw
+ service-name: qyd-ckts-dlfw
+ url: /dlfw/v3/api-docs
+ - name: qyd-ckts-jszx
+ service-name: qyd-ckts-jszx
+ url: /jszx/v3/api-docs
+ - name: qyd-ckts-mhzc
+ service-name: qyd-ckts-mhzc
+ url: /mhzc/v3/api-docs
+ - name: qyd-ckts-ptgl
+ service-name: qyd-ckts-ptgl
+ url: /ptgl/v3/api-docs
+ - name: qyd-ckts-sbzx
+ service-name: qyd-ckts-sbzx
+ url: /sbzx/v3/api-docs
+ - name: qyd-ckts-sjcj
+ service-name: qyd-ckts-sjcj
+ url: /sjcj/v3/api-docs
+ - name: qyd-ckts-sjfx
+ service-name: qyd-ckts-sjfx
+ url: /sjfx/v3/api-docs
+ - name: qyd-ckts-sjjx
+ service-name: qyd-ckts-sjjx
+ url: /sjjx/v3/api-docs
+ - name: qyd-ckts-sso
+ service-name: qyd-ckts-sso
+ url: /sso/v3/api-docs
+
+css:
+ gateway:
+ whitelist:
+ urls:
+ - /sso/verify/get
+ - /sso/auth/login
+ - /sso/auth/logout
+ - /sso/auth/refresh-token
+ - /oauth2/token/create
+ - /oauth2/token/check
+ - /open/oauth2/token
+ - /sso/auth/sendMsg #新增短信验证码发送白名单 陈鑫洋 2024/10/16
+ - /sso/auth/loginBySMS #新增短信验证登陆白名单 陈鑫洋 2024/10/16
+ - /sso/admin/auth/login #新增后台登录白名单 陈鑫洋 2024/10/17
+ - /sso/admin/auth/logout #新增后台登出白名单 陈鑫洋 2024/10/17
+ - /sso/oauth2/token
+ - /sso/oauth2/check-token
+ - /sso/oauth2/remove-token
+ - /api/**
diff --git a/txw-gateway/src/main/resources/bootstrap.yml b/txw-gateway/src/main/resources/bootstrap.yml
new file mode 100644
index 0000000..7b862e0
--- /dev/null
+++ b/txw-gateway/src/main/resources/bootstrap.yml
@@ -0,0 +1,14 @@
+spring:
+ application:
+ name: txw-gateway
+ profiles:
+ active: local
+server:
+ port: 9300
+ servlet:
+ context-path: /
+
+# 日志文件配置。注意,如果 logging.file.name 不放在 bootstrap.yaml 配置文件,而是放在 application.yaml 中,会导致出现 LOG_FILE_IS_UNDEFINED 文件
+logging:
+ file:
+ name: ${user.dir}/logs/${spring.application.name}.log # 日志文件名,全路径
\ No newline at end of file
diff --git a/txw-gateway/src/main/resources/logback-spring.xml b/txw-gateway/src/main/resources/logback-spring.xml
new file mode 100644
index 0000000..cd24564
--- /dev/null
+++ b/txw-gateway/src/main/resources/logback-spring.xml
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ${PATTERN_DEFAULT}
+
+
+
+
+
+
+
+ ${PATTERN_DEFAULT}
+
+
+ ${LOG_FILE}
+
+
+
+ ${LOGBACK_ROLLINGPOLICY_FILE_NAME_PATTERN:-${LOG_FILE}.%d{yyyy-MM-dd}.%i.gz}
+
+
+ ${LOGBACK_ROLLINGPOLICY_CLEAN_HISTORY_ON_START:-false}
+
+
+ ${LOGBACK_ROLLINGPOLICY_MAX_FILE_SIZE:-10MB}
+
+ ${LOGBACK_ROLLINGPOLICY_TOTAL_SIZE_CAP:-0}
+
+ ${LOGBACK_ROLLINGPOLICY_MAX_HISTORY:-30}
+
+
+
+
+
+ 0
+
+ 256
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/txw-gxzx/.gitignore b/txw-gxzx/.gitignore
new file mode 100644
index 0000000..5ff6309
--- /dev/null
+++ b/txw-gxzx/.gitignore
@@ -0,0 +1,38 @@
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### IntelliJ IDEA ###
+.idea/modules.xml
+.idea/jarRepositories.xml
+.idea/compiler.xml
+.idea/libraries/
+*.iws
+*.iml
+*.ipr
+
+### Eclipse ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/
+
+### Mac OS ###
+.DS_Store
\ No newline at end of file
diff --git a/txw-gxzx/README.md b/txw-gxzx/README.md
new file mode 100644
index 0000000..d5f2c36
--- /dev/null
+++ b/txw-gxzx/README.md
@@ -0,0 +1,87 @@
+# 1、项目启动类
+
+无需再编写启动类
+### 开发环境可使用
+`com.css.txw.gxzx.app.DevAppStarter`
+### 其他环境使用
+`com.css.ggzc.framework.app.ApplicationStarter`
+
+# 2、目录结构
+
+```
+│ .gitignore
+│ pom.xml
+│ README.md
+├─txw-gxzx-service-api api包
+│ │ pom.xml
+│ └─src
+│ └─main
+│ ├─java
+│ │ └─com.css.txw.gxzx 模块包
+│ │ ├─api api接口
+│ │ │ IGxzxApi.java
+│ │ │
+│ │ ├─configuration 模块自动装配配置 需要在org.springframework.boot.autoconfigure.AutoConfiguration.imports中配置,基于插件化开发,各模块在该类中可指定要扫描的包等配置,启动类不会自动扫描
+│ │ │ GxzxApiConfiguration.java
+│ │ │
+│ │ ├─constants api常量
+│ │ │ GxzxConstants.java
+│ │ │
+│ │ └─pojo api pojo
+│ │
+│ └─resources 模块相关的配置说明,注意使用config类
+│ │ additional-spring-configuration-metadata.json
+│ │
+│ └─META-INF
+│ └─spring 模块自动装配配置
+│ org.springframework.boot.autoconfigure.AutoConfiguration.imports
+│
+└─txw-gxzx-service-biz service包
+ │ pom.xml
+ │
+ └─src
+ └─main
+ ├─java
+ │ └─com.css.txw.gxzx 模块包
+ │ ├─configuration 本模块自动装配设置 需要在org.springframework.boot.autoconfigure.AutoConfiguration.imports中配置,基于插件化开发,各模块在该类中可指定要扫描的包等配置,启动类不会自动扫描
+ │ │ GxzxServiceConfiguration.java
+ │ │
+ │ ├─constants
+ │ │
+ │ ├─consumer kafaka消费服务
+ │ │
+ │ ├─controller controller 建议按业务分包 注意:禁止在controller中写跟sql相关的逻辑,一律写到mapper中
+ │ │
+ │ ├─job 定时任务
+ │ │
+ │ ├─mapper mapper 建议按业务分包
+ │ │
+ │ ├─pojo
+ │ │ ├─domain
+ │ │ │
+ │ │ ├─dto
+ │ │ │
+ │ │ └─vo
+ │ │
+ │ │-properties 配置类
+ │ │
+ │ ├─service service 建议按业务分包 注意:SQL相关内容写到mapper中,不要写在service中
+ │ │
+ │ └─util 本业务域工具类 跟业务相关的写在这里 公共类的请优先使用framework中有的,或者在framework中增加
+ │
+ └─resources
+ │ additional-spring-configuration-metadata.json 模块相关的配置说明,注意使用config类
+ │ application.yaml 模块主配置文件
+ │ bootstrap-env.yml 模块env环境配置文件
+ │ bootstrap-local.yml 模块开发环境配置文件
+ │ bootstrap-nacos.yml 模块nacos配置文件
+ │ bootstrap.yml 模块主配置文件
+ │ logback-spring.xml 模块日志配置文件
+ │
+ ├─mapper 模块mapper
+ └─META-INF
+ └─spring 模块自动装配配置
+ org.springframework.boot.autoconfigure.AutoConfiguration.imports
+
+```
+
diff --git a/txw-gxzx/pom.xml b/txw-gxzx/pom.xml
new file mode 100644
index 0000000..5de9462
--- /dev/null
+++ b/txw-gxzx/pom.xml
@@ -0,0 +1,39 @@
+
+ 4.0.0
+
+ com.css.ggzc
+ ggzc-framework-dependencies
+ 1.0.0-SNAPSHOT
+
+ txw-gxzx
+ com.css.txw
+ 1.0.0-SNAPSHOT
+ pom
+ ${project.artifactId}
+ gxzx
+
+
+
+ com.css.ggzc
+ ggzc-framework-starter
+ 1.0.0-SNAPSHOT
+ pom
+ import
+
+
+
+
+ ${project.artifactId}
+
+
+ org.apache.maven.plugins
+ maven-resources-plugin
+ 3.3.1
+
+
+
+
+ txw-gxzx-service-api
+ txw-gxzx-service-biz
+
+
diff --git a/txw-gxzx/settings.xml b/txw-gxzx/settings.xml
new file mode 100644
index 0000000..e089e4a
--- /dev/null
+++ b/txw-gxzx/settings.xml
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+ codingcorp-qyd_repo-mvn_public
+ coding-user
+ coding-pwd
+
+
+
+
+
+
+ Repository Proxy
+
+ true
+
+
+
+
+ codingcorp-qyd_repo-mvn_public
+ mvn_public
+ http://codingcorp-maven.pkg.codingstd.xc01.cloud.sat.tax/repository/qyd_repo/mvn_public/
+
+ true
+
+
+ true
+ always
+
+
+
+
+
+ codingcorp-qyd_repo-mvn_public
+
+ true
+
+
+ true
+
+ http://codingcorp-maven.pkg.codingstd.xc01.cloud.sat.tax/repository/qyd_repo/mvn_public/
+
+
+
+
+
+
+
+ codingcorp-qyd_repo-mvn_public
+
+ central
+ mvn_public
+ http://codingcorp-maven.pkg.codingstd.xc01.cloud.sat.tax/repository/qyd_repo/mvn_public/
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-api/pom.xml b/txw-gxzx/txw-gxzx-service-api/pom.xml
new file mode 100644
index 0000000..b53f94e
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/pom.xml
@@ -0,0 +1,88 @@
+
+
+ 4.0.0
+
+
+
+ com.css.ggzc
+ ggzc-framework-dependencies
+ 1.0.0-SNAPSHOT
+
+
+
+ com.css.txw
+ txw-gxzx-service-api
+ 1.0.0-SNAPSHOT
+
+ ${project.artifactId}
+ gxzx service api
+
+
+ 1.0.0-SNAPSHOT
+
+
+
+
+
+
+ com.css.ggzc
+ ggzc-framework-starter
+ ${version.ggzc-framework-dependencies}
+ pom
+ import
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-validation
+ true
+
+
+ com.css.ggzc
+ ggzc-framework-starter-common
+
+
+ org.springframework.cloud
+ spring-cloud-starter-openfeign
+
+
+ io.swagger.core.v3
+ swagger-annotations
+ compile
+
+
+
+
+
+
+ codingcorp-qyd_repo-mvn_public
+ mvn_public
+ http://codingcorp-maven.pkg.codingstd.xc01.cloud.sat.tax/repository/qyd_repo/mvn_public/
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+ 3.3.0
+
+ true
+
+
+
+ compile
+
+ jar
+
+
+
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/api/IGxzxApi.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/api/IGxzxApi.java
new file mode 100644
index 0000000..373cc5a
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/api/IGxzxApi.java
@@ -0,0 +1,10 @@
+package com.css.txw.gxzx.api;
+
+import com.css.txw.gxzx.constants.GxzxConstants;
+import org.springframework.cloud.openfeign.FeignClient;
+
+@FeignClient(name = GxzxConstants.NAME)
+public interface IGxzxApi {
+
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/configuration/GxzxApiConfiguration.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/configuration/GxzxApiConfiguration.java
new file mode 100644
index 0000000..fcf90ba
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/configuration/GxzxApiConfiguration.java
@@ -0,0 +1,13 @@
+package com.css.txw.gxzx.configuration;
+
+import com.css.txw.gxzx.api.IGxzxApi;
+import org.springframework.cloud.openfeign.EnableFeignClients;
+import org.springframework.context.annotation.Configuration;
+
+@Configuration(proxyBeanMethods = false)
+@EnableFeignClients(clients = {
+ IGxzxApi.class
+})
+public class GxzxApiConfiguration {
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/constants/GxzxConstants.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/constants/GxzxConstants.java
new file mode 100644
index 0000000..f8b9c71
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/constants/GxzxConstants.java
@@ -0,0 +1,10 @@
+package com.css.txw.gxzx.constants;
+
+public class GxzxConstants {
+
+ private GxzxConstants() {
+ // 构造方法
+ }
+
+ public static final String NAME = "gxzx-service";
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/BatchDeleteReqVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/BatchDeleteReqVO.java
new file mode 100644
index 0000000..7691d21
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/BatchDeleteReqVO.java
@@ -0,0 +1,19 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+@Data
+@Schema(description = "信贷、保险产品批量删除入参")
+public class BatchDeleteReqVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "产品uuid,多个用“,”隔开")
+ @NotBlank(message = "请选择产品")
+ private String cpuuids;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/CpsxjReqVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/CpsxjReqVO.java
new file mode 100644
index 0000000..fb718b9
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/CpsxjReqVO.java
@@ -0,0 +1,26 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+@Data
+@Schema(description = "信贷、保险产品上下架入参")
+public class CpsxjReqVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "产品uuid")
+ @NotBlank(message = "请选择产品")
+ private String cpuuid;
+
+ /**
+ * 上架状态
+ */
+ @Schema(description = "上架状态。0:未上架,1已上架")
+ @NotBlank(message = "请选择上下架状态")
+ private String sjzt;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/DownloadFileInfoVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/DownloadFileInfoVO.java
new file mode 100644
index 0000000..dddbe2f
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/DownloadFileInfoVO.java
@@ -0,0 +1,13 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class DownloadFileInfoVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+ private String fileName;
+ private byte[] fileByte;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/DspXdbxcpcxRequestVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/DspXdbxcpcxRequestVO.java
new file mode 100644
index 0000000..a39806a
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/DspXdbxcpcxRequestVO.java
@@ -0,0 +1,34 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+import java.util.List;
+
+@Data
+@Schema(description = "待审批信贷/保险产品查询入参")
+public class DspXdbxcpcxRequestVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "产品名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "套餐B")
+ private String cpmc;
+
+ @Schema(description = "产品类型,产品上下架-xd:信贷,bx:保险", example = "['xd','bx'")
+ private List typeList;
+
+ @Schema(description = "企业列表", requiredMode = Schema.RequiredMode.REQUIRED, example = "['12313','2222']")
+ private List qyidList;
+
+ @Schema(description = "页码", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+ @NotNull(message = "页码不能为空")
+ private Integer pageNum;
+
+ @Schema(description = "页容量", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
+ @NotNull(message = "页容量不能为空")
+ private Integer pageSize;
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/GxzxDkbxsqxxDto.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/GxzxDkbxsqxxDto.java
new file mode 100644
index 0000000..d925674
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/GxzxDkbxsqxxDto.java
@@ -0,0 +1,78 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+@Schema(description = "txw_gxzx_dkbxsqxx返回对象")
+public class GxzxDkbxsqxxDto implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+ @Schema(description = "申请UUID")
+ private String squuid;
+
+ @Schema(description = "业务分类代码")
+ // xd:信贷 bx:保险
+ private String sshyDm;
+
+ @Schema(description = "产品uuid")
+ private String cpuuid;
+
+ @Schema(description = "企业uuid")
+ private String qyuuid;
+
+ @Schema(description = "企业名称")
+ private String qymc;
+
+ @Schema(description = "纳税人识别号")
+ private String nsrsbh;
+
+ @Schema(description = "联系人||联系人")
+ private String lxr;
+
+ @Schema(description = "联系电话")
+ private String lxdh;
+
+ @Schema(description = "可信碳数据资料||可信碳数据资料")
+ private KxtsjRecordsDto kxtsjzl;
+
+ @Schema(description = "申请贷款金额||申请贷款金额")
+ private String sqdkJe;
+
+ @Schema(description = "申请贷款用途||申请贷款用途")
+ private String sqdkyt;
+
+ @Schema(description = "投保金额")
+ private String tbje;
+
+ @Schema(description = "申请贷款用途||申请贷款用途")
+ private String bxbzqx;
+
+ @Schema(description = "附列资料")
+ private Object flzl;
+
+ @Schema(description = "状态")
+ private String zt;
+
+ @Schema(description = "文件名称")
+ private String wjmc;
+
+ @Schema(description = "录入日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private Date lrrq;
+
+ @Schema(description = "录入人UUID")
+ private String lrruuid;
+
+ @Schema(description = "修改日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private Date xgrq;
+
+ @Schema(description = "修改人UUID")
+ private String xgruuid;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/GxzxDkbxsqxxVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/GxzxDkbxsqxxVO.java
new file mode 100644
index 0000000..ef0faba
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/GxzxDkbxsqxxVO.java
@@ -0,0 +1,77 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+@Schema(description = "信贷/保险产品申请信息查询入参")
+public class GxzxDkbxsqxxVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "申请UUID")
+ private String squuid;
+
+ @Schema(description = "业务分类代码 xd:信贷 bx:保险")
+ private String sshyDm;
+
+ @Schema(description = "cpuuid")
+ private String cpuuid;
+
+ @Schema(description = "qyuuid")
+ private String qyuuid;
+
+ @Schema(description = "企业名称")
+ private String qymc;
+
+ @Schema(description = "纳税人识别号")
+ private String nsrsbh;
+
+ @Schema(description = "联系人")
+ private String lxr;
+
+ @Schema(description = "联系电话")
+ private String lxdh;
+
+ @Schema(description = "可信碳数据资料")
+ private String kxtsjzl;
+
+ @Schema(description = "申请贷款金额")
+ private String sqdkJe;
+
+ @Schema(description = "申请贷款用途")
+ private String sqdkyt;
+
+ @Schema(description = "投保金额")
+ private String tbje;
+
+ @Schema(description = "保险保障期限")
+ private String bxbzqx;
+
+ @Schema(description = "附列资料")
+ private String flzl;
+
+ @Schema(description = "状态")
+ private String zt;
+
+ @Schema(description = "文件名称")
+ private String wjmc;
+
+ @Schema(description = "录入日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private String lrrq;
+
+ @Schema(description = "录入人UUID")
+ private String lrruuid;
+
+ @Schema(description = "修改日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private String xgrq;
+
+ @Schema(description = "修改人UUID")
+ private String xgruuid;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/GxzxLsjrcpxxDto.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/GxzxLsjrcpxxDto.java
new file mode 100644
index 0000000..a363606
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/GxzxLsjrcpxxDto.java
@@ -0,0 +1,95 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+@Schema(description = "txw_gxzx_lsjrcpxx返回对象")
+public class GxzxLsjrcpxxDto implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+ @Schema(description = "产品uuid")
+ private String cpuuid;
+
+ @Schema(description = "产品品类型", example = "bx")
+ private String sshyDm;
+
+ @Schema(description = "产品类型名称", example = "保险")
+ private String cplxmc;
+
+ @Schema(description = "业务类型代码")
+ private String ywlxDm;
+
+ @Schema(description = "业务类型名称")
+ private String ywlxmc;
+
+ @Schema(description = "产品名称")
+ private String cpmc;
+
+ @Schema(description = "企业uuid")
+ private String qyuuid;
+
+ @Schema(description = "企业名称")
+ private String qymc;
+
+ @Schema(description = "额度范围||额度范围")
+ private String edfw;
+
+ @Schema(description = "利率范围||利率范围")
+ private String llfw;
+
+ @Schema(description = "贷款期限范围||贷款期限范围")
+ private String dkqxfw;
+
+ @Schema(description = "保障期限范围||保障期限范围")
+ private String bzqxfw;
+
+ @Schema(description = "保费计算方式||保费计算方式")
+ private String bfjsfs;
+
+ @Schema(description = "服务产品描述||服务产品描述")
+ private String fwcpms;
+
+ @Schema(description = "发布日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private Date fprq;
+
+ @Schema(description = "状态")
+ private Object zt;
+
+ @Schema(description = "上架状态 0-未上架 1-已上架")
+ private Object sjzt;
+
+ @Schema(description = "录入日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private Date lrrq;
+
+ @Schema(description = "录入人UUID")
+ private String lrruuid;
+
+ @Schema(description = "修改日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private Date xgrq;
+
+ @Schema(description = "修改人UUID")
+ private String xgruuid;
+
+ @Schema(description = "圆形logo")
+ private String yxlogo;
+
+ @Schema(description = "模式")
+ private String module;
+
+ @Schema(description = "碳类型,1.组织碳 OC 2.碳⾜迹CFP 3.环境产品声明EPD 4.碳边境调节机制CBAM " +
+ "5.环境、社会、治理ESG")
+ private Integer carbonType;
+
+ @Schema(description = "碳类型,1.组织碳 OC 2.碳⾜迹CFP 3.环境产品声明EPD 4.碳边境调节机制CBAM " +
+ "5.环境、社会、治理ESG")
+ private String carbonTypeMc;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjExtinfo.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjExtinfo.java
new file mode 100644
index 0000000..1db5d57
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjExtinfo.java
@@ -0,0 +1,44 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+@Data
+@Schema(description = "查询可信碳数据返回-分页数据-明细-扩展信息")
+public class KxtsjExtinfo implements Serializable {
+ private static final long serialVersionUID = 1L;
+ @Schema(description = "第三⽅核查机构名称")
+ private String verificationTechServiceName;
+ @Schema(description = "履约年份")
+ private String performanceYear;
+ @Schema(description = "碳排放量")
+ private String carbonEmissions;
+ @Schema(description = "企业碳配额")
+ private String enterpriseCarbonQuota;
+ @Schema(description = "数据质量控制计划⽂件哈希")
+ private String dataQualityControlPlanHash;
+ @Schema(description = "⽉度报告⽂件哈希")
+ private String monthlyReportHash;
+ @Schema(description = "年度报告⽂件哈希")
+ private String annualReportHash;
+ @Schema(description = "核查报告⽂件哈希")
+ private String verificationReportHash;
+ @Schema(description = "创建时间")
+ private String createdTime;
+ @Schema(description = "更新时间")
+ private String updatedTime;
+ @Schema(description = "数据质量控制计划⽂件信息")
+ @JsonProperty("DATA_QUALITY_CONTROL_PLAN")
+ private KxtsjReport dataQualityControlPlan;
+ @Schema(description = "⽉度报告⽂件信息")
+ @JsonProperty("MONTHLY_REPORT")
+ private KxtsjReport monthlyReport;
+ @Schema(description = "年度报告⽂件信息")
+ @JsonProperty("ANNUAL_REPORT")
+ private KxtsjReport annualReport;
+ @Schema(description = "核查报告⽂件信息")
+ @JsonProperty("VERIFICATION_REPORT")
+ private KxtsjReport verificationReport;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjRecordsDto.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjRecordsDto.java
new file mode 100644
index 0000000..55b9dd9
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjRecordsDto.java
@@ -0,0 +1,56 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+@Data
+@Schema(description = "查询可信碳数据返回-分页数据-明细")
+public class KxtsjRecordsDto implements Serializable {
+ private static final long serialVersionUID = 1L;
+ @Schema(description = "序号,前端排序使用")
+ private Integer xh;
+ @Schema(description = "id")
+ private Integer id;
+ @Schema(description = "可信碳ID")
+ private String credibleCarbonId;
+ @Schema(description = "报告主体名称")
+ private String reportEntityName;
+ @Schema(description = "统⼀社会信⽤代码")
+ private String unifiedSocialCreditCode;
+ @Schema(description = "碳类型: 1.组织碳OC 2.碳⾜迹CFP 3.环境产品声明EPD 4.碳边境调节机制CBAM" +
+ " 5.环境、社会、治理ESG")
+ private Integer carbonType;
+ @Schema(description = "碳类型描述,前端排序使用")
+ private String carbonTypeDesc;
+ @Schema(description = "数据类型: 1.可信碳(场景) 2.其他(⽂件)")
+ private Integer dataType;
+ @Schema(description = "渠道信息")
+ private Integer channelInfo;
+ @Schema(description = "证书编号")
+ private String certificateNumber;
+ @Schema(description = "上链时间")
+ private String chainTime;
+ @Schema(description = "上链状态,0-未上链,1-上链成功,2-上链失败")
+ private Integer chainStatus;
+ @Schema(description = "区块⾼度")
+ private Integer blockHeight;
+ @Schema(description = "区块哈希")
+ private String blockHash;
+ @Schema(description = "交易哈希")
+ private String txHash;
+ @Schema(description = "创建时间")
+ private String createTime;
+ @Schema(description = "状态")
+ private Integer status;
+ @Schema(description = "拒绝原因")
+ private Object rejectReason;
+ @Schema(description = "申请⼈姓名")
+ private String applyName;
+ @Schema(description = "创建时间")
+ private String createdTime;
+ @Schema(description = "更新时间")
+ private String updatedTime;
+ @Schema(description = "扩展信息对象")
+ private KxtsjExtinfo extInfo;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjReport.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjReport.java
new file mode 100644
index 0000000..1a9d20e
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjReport.java
@@ -0,0 +1,18 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+@Data
+@Schema(description = "查询可信碳数据-分页数据-明细-扩展信息-报告信息")
+public class KxtsjReport implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+ @Schema(description = "⽂件类型名称")
+ private String name;
+ @Schema(description = "⽂件列表")
+ private List fileList;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjReportMxVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjReportMxVO.java
new file mode 100644
index 0000000..7f25a74
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjReportMxVO.java
@@ -0,0 +1,18 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+@Schema(description = "查询可信碳数据-分页数据-明细-扩展信息-报告信息")
+public class KxtsjReportMxVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "⽂件哈希值")
+ private String fileHash;
+ @Schema(description = "⽂件ID")
+ private Integer fileId;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjRequestVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjRequestVO.java
new file mode 100644
index 0000000..3b76237
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjRequestVO.java
@@ -0,0 +1,29 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+
+@Data
+@Schema(description = "查询可信碳数据入参")
+public class KxtsjRequestVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "页码", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+ @NotNull(message = "页码不能为空")
+ private Integer currentPage;
+
+ @Schema(description = "页容量", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
+ @NotNull(message = "页容量不能为空")
+ private Integer pageSize;
+
+ @Schema(description = "检索内容", example = "统一社会信用代码")
+ private String search;
+
+ @Schema(description = "碳类型", example = "1")
+ private Integer carbonType;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjResponseDataDto.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjResponseDataDto.java
new file mode 100644
index 0000000..4ff1173
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjResponseDataDto.java
@@ -0,0 +1,18 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+@Data
+@Schema(description = "查询可信碳数据返回-分页数据")
+public class KxtsjResponseDataDto implements Serializable {
+ private static final long serialVersionUID = 1L;
+ private List records;
+ private String total;
+ private String size;
+ private String pages;
+ private String current;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjResponseDto.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjResponseDto.java
new file mode 100644
index 0000000..203a087
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjResponseDto.java
@@ -0,0 +1,22 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+@Schema(description = "查询可信碳数据返回")
+public class KxtsjResponseDto implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "返回码")
+ private Integer code;
+
+ @Schema(description = "返回数据")
+ private KxtsjResponseDataDto data;
+
+ @Schema(description = "结果描述")
+ private String msg;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjVO.java
new file mode 100644
index 0000000..31a4370
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/KxtsjVO.java
@@ -0,0 +1,37 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+@Schema(description = "已存证可信碳数据对象")
+public class KxtsjVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "序号")
+ private int xh;
+
+ @Schema(description = "存证名称")
+ private String czmc;
+
+ @Schema(description = "报告名称")
+ private String bgmc;
+
+ @Schema(description = "报告描述")
+ private String bgms;
+
+ @Schema(description = "存证类型")
+ private String czlx;
+
+ @Schema(description = "存证时间")
+ private String czsj;
+
+ @Schema(description = "可信碳id")
+ private String kxtid;
+
+ @Schema(description = "上链状态,0-未上链,1-上链成功,2-上链失败")
+ private String slzt;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/XdbxcpcxRequestVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/XdbxcpcxRequestVO.java
new file mode 100644
index 0000000..5fc5c16
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/XdbxcpcxRequestVO.java
@@ -0,0 +1,49 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+import java.util.List;
+
+@Data
+@Schema(description = "信贷/保险产品查询入参")
+public class XdbxcpcxRequestVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "产品类型-xd:信贷,bx:保险", requiredMode = Schema.RequiredMode.REQUIRED, example = "xd")
+ @NotBlank(message = "产品类型不能为空")
+ private String type;
+
+ @Schema(description = "产品名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "套餐B")
+ private String cpmc;
+
+ @Schema(description = "企业列表", requiredMode = Schema.RequiredMode.REQUIRED, example = "['12313','2222']")
+ private List qyidList;
+
+ @Schema(description = "发行机构名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "中国银行")
+ private String jgmc;
+
+ @Schema(description = "碳类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+ private String carbonType;
+
+ @Schema(description = "服务类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+ private String ywlxDm;
+
+ @Schema(description = "页码", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+ @NotNull(message = "页码不能为空")
+ private Integer pageNum;
+
+ @Schema(description = "页容量", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
+ @NotNull(message = "页容量不能为空")
+ private Integer pageSize;
+
+ @Schema(description = "模式,产品维护时传wh")
+ private String module;
+
+ @Schema(description = "上下架状态")
+ private String sxjzt;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/XdbxcpsqRequestVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/XdbxcpsqRequestVO.java
new file mode 100644
index 0000000..fa43b51
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/XdbxcpsqRequestVO.java
@@ -0,0 +1,54 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+import java.util.List;
+
+@Data
+@Schema(description = "信贷/保险产品申请信息查询入参")
+public class XdbxcpsqRequestVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "产品uuid", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
+// @NotBlank(message = "产品不能为空")
+ private String cpuuid;
+
+ @Schema(description = "页码", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+ @NotNull(message = "页码不能为空")
+ private Integer pageNum;
+
+ @Schema(description = "页容量", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
+ @NotNull(message = "页容量不能为空")
+ private Integer pageSize;
+
+ @Schema(description = "产品类型-xd:信贷,bx:保险", requiredMode = Schema.RequiredMode.REQUIRED, example = "xd")
+// @NotBlank(message = "产品类型不能为空")
+ private String type;
+
+ private List typeList;
+
+ @Schema(description = "产品名称", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "套餐B")
+ private String cpmc;
+
+ @Schema(description = "企业列表", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "['12313','2222']")
+ private List qyidList;
+
+ @Schema(description = "发行机构名称", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "中国银行")
+ private String jgmc;
+
+ @Schema(description = "碳类型", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "1")
+ private String carbonType;
+
+ @Schema(description = "服务类型", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "1")
+ private String ywlxDm;
+
+ @Schema(description = "申请企业名称", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "中国银行")
+ private String sqqymc;
+ @Schema(description = "申请纳税人识别号", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "中国银行")
+ private String sqqyNsrsbh;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/YhBxjgcxRequestVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/YhBxjgcxRequestVO.java
new file mode 100644
index 0000000..7be3aab
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjr/YhBxjgcxRequestVO.java
@@ -0,0 +1,18 @@
+package com.css.txw.gxzx.pojo.lsjr;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+@Data
+@Schema(description = "银行保险机构查询入参")
+public class YhBxjgcxRequestVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "机构类型-xd:信贷,bx:保险", requiredMode = Schema.RequiredMode.REQUIRED, example = "xd")
+ @NotBlank(message = "机构类型不能为空")
+ private String type;
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/BatchDeleteZcxxReqVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/BatchDeleteZcxxReqVO.java
new file mode 100644
index 0000000..af23e0c
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/BatchDeleteZcxxReqVO.java
@@ -0,0 +1,19 @@
+package com.css.txw.gxzx.pojo.lsjy;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+@Data
+@Schema(description = "批量删除资产入参")
+public class BatchDeleteZcxxReqVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "资产uuid,多个用“,”隔开")
+ @NotBlank(message = "请选择资产信息")
+ private String zcuuids;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/GxzxLsjyZcxxDto.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/GxzxLsjyZcxxDto.java
new file mode 100644
index 0000000..30daa40
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/GxzxLsjyZcxxDto.java
@@ -0,0 +1,89 @@
+package com.css.txw.gxzx.pojo.lsjy;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+@Schema(description = "绿色交易资产信息")
+public class GxzxLsjyZcxxDto implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+ @Schema(description = "资产ID||资产ID")
+ private String zcid;
+
+ @Schema(description = "企业uuid")
+ private String qyuuid;
+
+ @Schema(description = "企业名称")
+ private String qymc;
+
+ @Schema(description = "资产名称")
+ private String zcmc;
+
+ @Schema(description = "资产类型代码")
+ private String zclxdm;
+
+ @Schema(description = "资产类型名称")
+ private String zclxmc;
+
+ @Schema(description = "资产详情")
+ private String zcxq1;
+
+ @Schema(description = "资产数量")
+ private String zcsl;
+
+ @Schema(description = "资产剩余数量")
+ private String zcsysl;
+
+ @Schema(description = "单价(字符型)")
+ private String djStr;
+
+ @Schema(description = "单价")
+ private BigDecimal dj3;
+
+ @Schema(description = "资产编号")
+ private String zcbh;
+
+ @Schema(description = "联系人")
+ private String lxr;
+
+ @Schema(description = "联系电话")
+ private String lxdh;
+
+ @Schema(description = "发布日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private Date fbrq;
+
+ @Schema(description = "有效期止")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "UTC+8")
+ private Date yxqz;
+
+ @Schema(description = "状态")
+ private String zt;
+
+ @Schema(description = "上架状态")
+ private String sjzt;
+
+ @Schema(description = "录入日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private Date lrrq;
+
+ @Schema(description = "录入人UUID")
+ private String lrruuid;
+
+ @Schema(description = "修改日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private Date xgrq;
+
+ @Schema(description = "修改人UUID")
+ private String xgruuid;
+
+ @Schema(description = "模式")
+ private String module;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/ZcsxjReqVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/ZcsxjReqVO.java
new file mode 100644
index 0000000..8ea5c0a
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/ZcsxjReqVO.java
@@ -0,0 +1,21 @@
+package com.css.txw.gxzx.pojo.lsjy;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+@Schema(description = "资产上下架入参")
+public class ZcsxjReqVO implements Serializable {
+
+ @Schema(description = "zcid")
+ private String zcids;
+
+ /**
+ * 上架状态
+ */
+ @Schema(description = "上架状态。0:未上架,1已上架")
+ private String sjzt;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/ZcxxcxRequestVO.java b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/ZcxxcxRequestVO.java
new file mode 100644
index 0000000..4f5120b
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/lsjy/ZcxxcxRequestVO.java
@@ -0,0 +1,49 @@
+package com.css.txw.gxzx.pojo.lsjy;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+@Data
+@Schema(description = "绿色交易资产信息查询入参")
+public class ZcxxcxRequestVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "模式,资产维护时传wh", example = "")
+ private String module;
+
+ @Schema(description = "资产类型代码-ZC01:绿电绿证,ZC02:碳配额,ZC03:CCER", example = "ZC02")
+ private String zclxdm;
+
+ @Schema(description = "纳税人识别号", example = "")
+ private String nsrsbh;
+
+ @Schema(description = "纳税人名称", example = "")
+ private String nsrmc;
+
+ @Schema(description = "最低单价(元/吨)", example = "20")
+ private BigDecimal zddj;
+
+ @Schema(description = "最高单价(元/吨)", example = "50")
+ private BigDecimal zgdj;
+
+ @Schema(description = "有效期止", example = "2025-12-21")
+ private String yxqz;
+
+ @Schema(description = "页码", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
+ @NotNull(message = "页码不能为空")
+ private Integer pageNum;
+
+ @Schema(description = "页容量", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
+ @NotNull(message = "页容量不能为空")
+ private Integer pageSize;
+
+ @Schema(description = "上下架状态")
+ private String sxjzt;
+ @Schema(description = "审批状态")
+ private String zt;
+}
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/readme.md b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/readme.md
new file mode 100644
index 0000000..84de3b4
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/java/com/css/txw/gxzx/pojo/readme.md
@@ -0,0 +1 @@
+# pojo
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/txw-gxzx/txw-gxzx-service-api/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
new file mode 100644
index 0000000..532c96e
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1 @@
+com.css.txw.gxzx.configuration.GxzxApiConfiguration
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-api/src/main/resources/additional-spring-configuration-metadata.json b/txw-gxzx/txw-gxzx-service-api/src/main/resources/additional-spring-configuration-metadata.json
new file mode 100644
index 0000000..7a73a41
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-api/src/main/resources/additional-spring-configuration-metadata.json
@@ -0,0 +1,2 @@
+{
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/pom.xml b/txw-gxzx/txw-gxzx-service-biz/pom.xml
new file mode 100644
index 0000000..82efb9d
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/pom.xml
@@ -0,0 +1,106 @@
+
+
+ 4.0.0
+
+
+ txw-gxzx
+ com.css.txw
+ 1.0.0-SNAPSHOT
+
+ txw-gxzx-service-biz
+ jar
+
+ ${project.artifactId}
+ gxzx service
+
+
+ 8
+ 8
+ UTF-8
+
+
+
+
+ txw-common
+ com.css.txw
+ 1.0.0-SNAPSHOT
+
+
+
+ org.springframework.cloud
+ spring-cloud-starter-bootstrap
+
+
+
+
+ com.css.ggzc
+ ggzc-framework-starter-rpc
+
+
+
+
+ com.css.ggzc
+ ggzc-framework-starter-job
+
+
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-nacos-discovery
+
+
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-nacos-config
+
+
+
+
+ com.css.txw
+ txw-gxzx-service-api
+ 1.0.0-SNAPSHOT
+
+
+
+ com.css.txw
+ txw-mhzc-service-api
+ 1.0.0-SNAPSHOT
+
+
+
+ com.css.ggzc
+ ggzc-framework-starter-xxzx-api
+ 1.0.0-SNAPSHOT
+
+
+ com.dameng
+ DmJdbcDriver18
+
+
+
+
+
+ ${project.artifactId}
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+ ${spring.boot.version}
+
+ true
+
+
+
+
+ repackage
+
+
+
+
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/app/DevAppStarter.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/app/DevAppStarter.java
new file mode 100644
index 0000000..8279e36
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/app/DevAppStarter.java
@@ -0,0 +1,19 @@
+package com.css.txw.gxzx.app;
+
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.annotation.EnableAspectJAutoProxy;
+
+/**
+ * 仅开发使用,正式环境不使用,写在此处的配置在生产环境不会生效
+ */
+@Slf4j
+@SpringBootApplication
+@EnableAspectJAutoProxy(proxyTargetClass = true)
+public class DevAppStarter {
+ public static void main(String[] args) {
+ SpringApplication.run(DevAppStarter.class, args);
+ log.info("txw-gxzx-0.0.1");
+ }
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/configuration/GxzxServiceConfiguration.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/configuration/GxzxServiceConfiguration.java
new file mode 100644
index 0000000..a171320
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/configuration/GxzxServiceConfiguration.java
@@ -0,0 +1,12 @@
+package com.css.txw.gxzx.configuration;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.autoconfigure.AutoConfiguration;
+import org.springframework.context.annotation.ComponentScan;
+
+@AutoConfiguration
+@ComponentScan("com.css")
+@MapperScan("com.css.txw.gxzx.mapper")
+public class GxzxServiceConfiguration {
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/constants/SjztEnum.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/constants/SjztEnum.java
new file mode 100644
index 0000000..df1649e
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/constants/SjztEnum.java
@@ -0,0 +1,80 @@
+package com.css.txw.gxzx.constants;
+
+/**
+ * 上架状态
+ */
+public enum SjztEnum {
+
+ /**
+ * 上架
+ */
+ SJ("1", "上架"),
+ /**
+ * 未上架
+ */
+ WSJ("0", "未上架");
+
+ /**
+ * 编码
+ */
+ private final String code;
+
+ /**
+ * 描述
+ */
+ private final String desc;
+
+ private SjztEnum(String code, String desc) {
+ this.code = code;
+ this.desc = desc;
+ }
+
+ public static SjztEnum getEnumByDesc(String desc) {
+ SjztEnum[] values = SjztEnum.values();
+ for (SjztEnum item : values) {
+ if (item.getDesc().equals(desc)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ public static SjztEnum getEnumByCode(String code) {
+ SjztEnum[] values = SjztEnum.values();
+ for (SjztEnum item : values) {
+ if (item.getCode().equals(code)) {
+ return item;
+ }
+ }
+ return null;
+ }
+
+ public static String getCodeByDesc(String desc) {
+ SjztEnum[] values = SjztEnum.values();
+ for (SjztEnum item : values) {
+ if (item.getDesc().equals(desc)) {
+ return item.getCode();
+ }
+ }
+ return null;
+ }
+
+ public static String getDescByCode(String code) {
+ SjztEnum[] values = SjztEnum.values();
+ for (SjztEnum item : values) {
+ if (item.getCode().equals(code)) {
+ return item.getDesc();
+ }
+ }
+ return null;
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public String getDesc() {
+ return desc;
+ }
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/constants/readme.md b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/constants/readme.md
new file mode 100644
index 0000000..98d4865
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/constants/readme.md
@@ -0,0 +1 @@
+# 常量
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/consumer/readme.md b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/consumer/readme.md
new file mode 100644
index 0000000..e430f1c
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/consumer/readme.md
@@ -0,0 +1 @@
+# kafaka消费服务
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/GxdtController.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/GxdtController.java
new file mode 100644
index 0000000..93b3b15
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/GxdtController.java
@@ -0,0 +1,90 @@
+package com.css.txw.gxzx.controller;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.css.ggzc.framework.common.pojo.CommonResult;
+import com.css.txw.gxzx.pojo.vo.*;
+import com.css.txw.gxzx.service.TxwGxzxGxscbService;
+import com.css.txw.gxzx.service.TxwGxzxGxxxbService;
+import com.css.txw.gxzx.service.TxwGxzxShqkbService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@RestController
+@RequestMapping("/gxdt")
+@Tag(name = "供需大厅")
+@Validated
+public class GxdtController {
+
+ @Resource
+ private TxwGxzxGxxxbService gxxxbService;
+
+ @Resource
+ private TxwGxzxShqkbService shqkbService;
+
+ @Resource
+ private TxwGxzxGxscbService gxscbService;
+
+ @PostMapping("/gxfb")
+ public CommonResult gxfb(@RequestBody GxfbReqVO reqVO){
+ return CommonResult.success(gxxxbService.gxfb(reqVO));
+ }
+
+ @PostMapping("/gxfbList")
+ public CommonResult> gxfbList(){
+ return CommonResult.success(shqkbService.gxfbList());
+ }
+
+ @PostMapping("/gxfbSp")
+ public CommonResult gxfbSp(@RequestBody GxspReqVO reqVO){
+ return CommonResult.success(shqkbService.gxfbSp(reqVO));
+ }
+
+ @PostMapping("/getQyuuidsByBq")
+ public CommonResult> getQyuuidsByBq(@RequestBody GxxxReqVO reqVO){
+ return CommonResult.success(shqkbService.getQyuuidsByBq(reqVO));
+ }
+
+ @PostMapping("/gxxxList")
+ public CommonResult> gxxxList(@RequestBody GxxxReqVO reqVO){
+ return CommonResult.success(shqkbService.gxxxList(reqVO));
+ }
+
+ @PostMapping("/gxxxListByYh")
+ public CommonResult> gxxxListByYh(@RequestBody GxxxReqVO reqVO){
+ return CommonResult.success(shqkbService.gxxxListByYh(reqVO));
+ }
+
+ @Operation(summary = "供需上架",description = "供需上架")
+ @PostMapping("/gxsj")
+ public CommonResult gxsj(@RequestBody GxsjReqVO reqVO){
+ return CommonResult.success(gxxxbService.gxsj(reqVO));
+ }
+
+ @Operation(summary = "供需收藏",description = "供需收藏")
+ @PostMapping("/gxsc")
+ public CommonResult gxsc(@RequestBody GxscReqVO reqVO){
+ return CommonResult.success(gxscbService.gxsc(reqVO));
+ }
+
+ @PostMapping("/getGxSqList")
+ public CommonResult> getGxSqList(@RequestBody GetGxSqListReqVO reqVO){
+ return CommonResult.success(shqkbService.getGxSqList(reqVO));
+ }
+
+ @PostMapping("/gxsp")
+ public CommonResult gxsp(@RequestBody GxspReqVO reqVO){
+ gxxxbService.gxsp(reqVO);
+ return CommonResult.success("success");
+ }
+
+ @GetMapping("/getGxxx")
+ public CommonResult getGxxx(@RequestParam("gxuuid") String gxuuid){
+ return CommonResult.success(gxxxbService.getGxxx(gxuuid));
+ }
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/LsjrController.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/LsjrController.java
new file mode 100644
index 0000000..62d2d14
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/LsjrController.java
@@ -0,0 +1,238 @@
+package com.css.txw.gxzx.controller;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+import java.util.Arrays;
+import java.util.List;
+
+import javax.annotation.Resource;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+import org.apache.commons.io.IOUtils;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.MediaType;
+import org.springframework.http.ResponseEntity;
+import org.springframework.util.StringUtils;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.ModelAttribute;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import com.css.ggzc.framework.cache.vo.DmbDTO;
+import com.css.ggzc.framework.common.exception.ServiceException;
+import com.css.ggzc.framework.common.exception.enums.GlobalErrorCodeConstants;
+import com.css.ggzc.framework.common.pojo.CommonResult;
+import com.css.ggzc.framework.common.pojo.PageResult;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.txw.gxzx.pojo.lsjr.BatchDeleteReqVO;
+import com.css.txw.gxzx.pojo.lsjr.CpsxjReqVO;
+import com.css.txw.gxzx.pojo.lsjr.DownloadFileInfoVO;
+import com.css.txw.gxzx.pojo.lsjr.DspXdbxcpcxRequestVO;
+import com.css.txw.gxzx.pojo.lsjr.GxzxDkbxsqxxDto;
+import com.css.txw.gxzx.pojo.lsjr.GxzxDkbxsqxxVO;
+import com.css.txw.gxzx.pojo.lsjr.GxzxLsjrcpxxDto;
+import com.css.txw.gxzx.pojo.lsjr.KxtsjRequestVO;
+import com.css.txw.gxzx.pojo.lsjr.KxtsjResponseDataDto;
+import com.css.txw.gxzx.pojo.lsjr.XdbxcpcxRequestVO;
+import com.css.txw.gxzx.pojo.lsjr.XdbxcpsqRequestVO;
+import com.css.txw.gxzx.pojo.lsjr.YhBxjgcxRequestVO;
+import com.css.txw.gxzx.pojo.vo.GxspReqVO;
+import com.css.txw.gxzx.pojo.vo.ShqkxxVO;
+import com.css.txw.gxzx.pojo.vo.lsjr.ProductApplyVO;
+import com.css.txw.gxzx.service.lsjr.GxzxLsjrService;
+
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+@RestController
+@Tag(name = "绿色金融")
+@RequestMapping("lsjr")
+public class LsjrController {
+
+ @Resource
+ private GxzxLsjrService lsjrService;
+
+ @Operation(summary = "获取银行/保险机构列表")
+ @PostMapping("/queryJgList")
+ public CommonResult queryJgList(@Validated @RequestBody YhBxjgcxRequestVO requestVO) {
+ List list = lsjrService.queryJgList(requestVO);
+ return CommonResult.success(list);
+ }
+
+ @Operation(summary = "获取信贷、保险产品(分页)")
+ @PostMapping("/queryXdbxcpList")
+ public CommonResult queryXdbxcpList(@Validated @RequestBody XdbxcpcxRequestVO requestVO) {
+ PageResult pageData = lsjrService.queryXdbxcpList(requestVO);
+ return CommonResult.success(pageData);
+ }
+
+ @Operation(summary = "获取信贷、保险产品详情")
+ @GetMapping("/queryXdbxcpxq")
+ public CommonResult queryXdbxcpxq(@RequestParam String cpid) {
+ if (GyUtils.isNull(cpid)) {
+ return CommonResult.error("产品id不能为空");
+ }
+ GxzxLsjrcpxxDto xdbxcpDto = lsjrService.queryXdbxcpxq(cpid);
+ return CommonResult.success(xdbxcpDto);
+ }
+
+ @Operation(summary = "获取企业已存证可信碳数据")
+ @PostMapping("/queryKxtsj")
+ public CommonResult queryKxtsj(@Validated @RequestBody KxtsjRequestVO requestVO) {
+ KxtsjResponseDataDto kxtsjResponseDataDto = lsjrService.queryKxtsj(requestVO);
+ return CommonResult.success(kxtsjResponseDataDto);
+ }
+
+ @Operation(summary = "保存信贷申请信息")
+ @PostMapping("/saveDksqxx")
+ public CommonResult saveDksqxx(@ModelAttribute GxzxDkbxsqxxDto dto, @RequestParam("file") @NotNull @NotBlank MultipartFile file) {
+ String squuid = lsjrService.saveDksqxx(dto, file);
+ return CommonResult.success(squuid);
+ }
+
+ @Operation(summary = "保存投保申请信息")
+ @PostMapping(path = "/saveTbsqxx", consumes = "multipart/form-data")
+ public CommonResult saveTbsqxx(@ModelAttribute GxzxDkbxsqxxDto dto, @RequestParam("file") @NotNull @NotBlank MultipartFile file) {
+ String squuid = lsjrService.saveTbsqxx(dto, file);
+ return CommonResult.success(squuid);
+ }
+
+ @Operation(summary = "获取信贷、保险产品申请信息文件详情")
+ @GetMapping("/querySqFileByid")
+ public ResponseEntity querySqFileByid(@RequestParam @NotBlank String squuid) {
+ DownloadFileInfoVO downloadFileInfoVO = lsjrService.querySqFileByid(squuid);
+ //封装下载文件
+ String fileName = downloadFileInfoVO.getFileName();
+ HttpHeaders headers = new HttpHeaders();
+ headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
+ try {
+ headers.setContentDispositionFormData("attachment", URLEncoder.encode(fileName, "UTF-8"));
+ } catch (UnsupportedEncodingException e) {
+ log.error(e.getMessage());
+ }
+ return new ResponseEntity(downloadFileInfoVO.getFileByte(), headers, HttpStatus.OK);
+ }
+
+ @Operation(summary = "保存/修改产品信息")
+ @PostMapping("/saveOrUpdateCpxx")
+ public CommonResult saveOrUpdateCpxx(@RequestBody GxzxLsjrcpxxDto dto) {
+ String squuid = lsjrService.saveOrUpdateCpxx(dto);
+ return CommonResult.success(squuid);
+ }
+
+ @Operation(summary = "删除产品信息")
+ @PostMapping("/delete/{cpid}")
+ public CommonResult delete(@PathVariable("cpid") @NotBlank String cpid) {
+ boolean result = lsjrService.delete(cpid);
+ return CommonResult.success(result);
+ }
+
+ @Operation(summary = "删除产品信息")
+ @PostMapping("/batchDelete")
+ public CommonResult batchDelete(@RequestBody BatchDeleteReqVO reqVO) {
+ boolean result = lsjrService.batchDelete(reqVO);
+ return CommonResult.success(result);
+ }
+
+ @Operation(summary = "获取待审批信贷、保险产品(分页)")
+ @PostMapping("/queryDspXdbxcpList")
+ public CommonResult queryDspXdbxcpList(@Validated @RequestBody DspXdbxcpcxRequestVO requestVO) {
+ PageResult pageData = lsjrService.queryDspXdbxcpList(requestVO);
+ return CommonResult.success(pageData);
+ }
+
+ @Operation(summary = "审批信贷、保险产品")
+ @PostMapping("/cpSp")
+ public CommonResult cpSp(@RequestBody GxspReqVO reqVO) {
+ return CommonResult.success(lsjrService.cpSp(reqVO));
+ }
+
+ @Operation(summary = "产品上下架", description = "产品上下架")
+ @PostMapping("/cpsxj")
+ public CommonResult cpsxj(@Validated @RequestBody CpsxjReqVO reqVO) {
+ return CommonResult.success(lsjrService.cpsxj(reqVO));
+ }
+
+ @Operation(summary = "下载导入模板", description = "下载导入模板")
+ @GetMapping("/getTemplate")
+ public void download(HttpServletResponse response) {
+ ClassLoader classLoader = this.getClass().getClassLoader();
+ try (ServletOutputStream sos = response.getOutputStream();
+ InputStream is = classLoader.getResourceAsStream("template/lscp_import_template.xlsx");) {
+ response.setCharacterEncoding("UTF-8");
+ response.setHeader("content-Type", "application/vnd.ms-excel");
+ response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode("绿色产品导入模板.xlsx", "UTF-8"));
+ IOUtils.copy(is, sos);
+ } catch (IOException e) {
+ log.error("下载导入模板失败", e);
+ throw new ServiceException(GlobalErrorCodeConstants.ERROR.getCode(), "下载导入模板失败");
+ }
+ }
+
+ @Operation(summary = "批量导入产品", description = "批量导入产品")
+ @PostMapping("/pldr")
+ public CommonResult pldr(@NotNull MultipartFile file) {
+ return CommonResult.success(lsjrService.pldr(file));
+ }
+
+
+ @Operation(summary = "获取信贷、保险产品申请信息(分页)")
+ @PostMapping("/queryXdbxcpsqList")
+ public CommonResult queryXdbxcpsqList(@Validated @RequestBody XdbxcpsqRequestVO requestVO) {
+ PageResult pageData = lsjrService.queryXdbxcpsqList(requestVO);
+ return CommonResult.success(pageData);
+ }
+
+ @Operation(summary = "获取信贷、保险产品申请详情")
+ @GetMapping("/queryXdbxcpsqxq")
+ public CommonResult queryXdbxcpsqxq(@RequestParam String squuid) {
+ if (GyUtils.isNull(squuid)) {
+ return CommonResult.error("申请id不能为空");
+ }
+ GxzxDkbxsqxxVO dkbxsqxxVO = lsjrService.queryXdbxcpsqxq(squuid);
+ return CommonResult.success(dkbxsqxxVO);
+ }
+ /**
+ * 查询信贷、保险产品申请信息(单独页面)
+ * @name 查询信贷、保险产品申请信息(单独页面)
+ * @time 2025-12-24
+ * @author 崔学志
+ * @history 修订历史(历次修订内容、修订人、修订时间等)
+ */
+ @Operation(summary ="查询信贷、保险产品申请信息(单独页面)")
+ @PostMapping("/queryxdbxcpsqinfo")
+ public CommonResult queryXdbxcpsqInfo(@Valid @RequestBody XdbxcpsqRequestVO request ) {
+ CommonResult result = CommonResult.success(null);
+ if (GyUtils.isNull(request)) {
+ String msg = "request is null . ";
+ log.info(msg);
+ result.setMsg(msg);
+ result.setCode(GlobalErrorCodeConstants.ERROR.getCode());
+ return result;
+ }
+ if (GyUtils.isNotNull(request) && GyUtils.isNotNull(request.getType())) {
+ String[] strs = StringUtils.commaDelimitedListToStringArray(request.getType());
+ request.setTypeList(Arrays.asList(strs));
+ }
+ PageResult ret = lsjrService.queryXdbxcpsqInfo(request);
+ result.setData(ret);
+ result.setCode(GlobalErrorCodeConstants.SUCCESS.getCode());
+ return result;
+ }
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/LsjyController.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/LsjyController.java
new file mode 100644
index 0000000..73b8393
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/LsjyController.java
@@ -0,0 +1,96 @@
+package com.css.txw.gxzx.controller;
+
+import com.css.ggzc.framework.cache.vo.DmbDTO;
+import com.css.ggzc.framework.common.pojo.CommonResult;
+import com.css.ggzc.framework.common.pojo.PageResult;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.txw.gxzx.pojo.lsjy.BatchDeleteZcxxReqVO;
+import com.css.txw.gxzx.pojo.lsjy.GxzxLsjyZcxxDto;
+import com.css.txw.gxzx.pojo.lsjy.ZcsxjReqVO;
+import com.css.txw.gxzx.pojo.lsjy.ZcxxcxRequestVO;
+import com.css.txw.gxzx.pojo.vo.GxspReqVO;
+import com.css.txw.gxzx.pojo.vo.ShqkxxVO;
+import com.css.txw.gxzx.service.lsjy.GxzxLsjyZcxxService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import javax.validation.constraints.NotBlank;
+import java.util.List;
+
+@Slf4j
+@RestController
+@Tag(name = "绿色交易")
+@RequestMapping("lsjy")
+public class LsjyController {
+
+ @Resource
+ private GxzxLsjyZcxxService gxzxLsjyZcxxService;
+
+ @Operation(summary = "获取资产类型列表")
+ @GetMapping("/queryZclxList")
+ public CommonResult queryZclxList() {
+ List list = gxzxLsjyZcxxService.queryZclxList();
+ return CommonResult.success(list);
+ }
+
+ @Operation(summary = "获取资产信息列表(分页)")
+ @PostMapping("/queryZcxxList")
+ public CommonResult queryZcxxList(@Validated @RequestBody ZcxxcxRequestVO requestVO) {
+ PageResult pageData = gxzxLsjyZcxxService.queryZcxxList(requestVO);
+ return CommonResult.success(pageData);
+ }
+
+ @Operation(summary = "获取资产信息详情")
+ @GetMapping("/queryZcxxxq")
+ public CommonResult queryZcxxxq(@RequestParam @NotBlank String zcid) {
+ if (GyUtils.isNull(zcid)) {
+ return CommonResult.error("资产id不能为空");
+ }
+ GxzxLsjyZcxxDto zcxxxq = gxzxLsjyZcxxService.queryZcxxxq(zcid);
+ return CommonResult.success(zcxxxq);
+ }
+
+ @Operation(summary = "保存/修改资产信息")
+ @PostMapping("/saveOrUpdate")
+ public CommonResult saveOrUpdate(@RequestBody GxzxLsjyZcxxDto dto) {
+ String squuid = gxzxLsjyZcxxService.saveOrUpdate(dto);
+ return CommonResult.success(squuid);
+ }
+
+ @Operation(summary = "删除资产信息")
+ @PostMapping("/delete/{zcid}")
+ public CommonResult delete(@PathVariable("zcid") @NotBlank String zcid) {
+ boolean result = gxzxLsjyZcxxService.removeById(zcid);
+ return CommonResult.success(result);
+ }
+
+ @Operation(summary = "批量删除资产信息")
+ @PostMapping("/batchDelete")
+ public CommonResult batchDelete(@RequestBody BatchDeleteZcxxReqVO reqVO) {
+ boolean result = gxzxLsjyZcxxService.batchDelete(reqVO);
+ return CommonResult.success(result);
+ }
+
+ @Operation(summary = "获取待审批资产信息(分页)")
+ @PostMapping("/queryDspZcxxList")
+ public CommonResult queryDspZcxxList(@Validated @RequestBody ZcxxcxRequestVO requestVO) {
+ PageResult pageData = gxzxLsjyZcxxService.queryDspZcxxList(requestVO);
+ return CommonResult.success(pageData);
+ }
+
+ @Operation(summary = "审批资产")
+ @PostMapping("/zcSp")
+ public CommonResult zcSp(@RequestBody GxspReqVO reqVO){
+ return CommonResult.success(gxzxLsjyZcxxService.zcSp(reqVO));
+ }
+
+ @Operation(summary = "资产上下架")
+ @PostMapping("/zcsxj")
+ public CommonResult zcsxj(@RequestBody ZcsxjReqVO reqVO){
+ return CommonResult.success(gxzxLsjyZcxxService.zcsxj(reqVO));
+ }
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/QyRzController.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/QyRzController.java
new file mode 100644
index 0000000..ba92257
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/controller/QyRzController.java
@@ -0,0 +1,48 @@
+package com.css.txw.gxzx.controller;
+
+import com.css.ggzc.framework.common.pojo.CommonResult;
+import com.css.txw.gxzx.pojo.vo.QyRzSpReqVO;
+import com.css.txw.gxzx.pojo.vo.QyRzSqReqVO;
+import com.css.txw.gxzx.pojo.vo.QyRzSqxxVO;
+import com.css.txw.gxzx.pojo.vo.QyrzListReqVO;
+import com.css.txw.gxzx.service.TxwGxzxRzsqjlbService;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@RestController
+@RequestMapping("/qyrz")
+@Tag(name = "企业入驻")
+@Validated
+public class QyRzController {
+
+ @Resource
+ private TxwGxzxRzsqjlbService rzsqjlbService;
+
+ @PostMapping("/qyrzsq")
+ public CommonResult qyrzsq(@RequestBody QyRzSqReqVO reqVO){
+ return CommonResult.success(rzsqjlbService.qyrzsq(reqVO));
+ }
+
+ @PostMapping("/qyrzsp")
+ public CommonResult qyrzsp(@RequestBody QyRzSpReqVO reqVO){
+ return CommonResult.success(rzsqjlbService.qyrzsp(reqVO));
+ }
+
+ @PostMapping("/qyrzList")
+ public CommonResult> qyrzList(@RequestBody QyrzListReqVO reqVO){
+ return CommonResult.success(rzsqjlbService.qyrzList(reqVO));
+ }
+
+ @PostMapping("/currentQyrzList")
+ public CommonResult> currentQyrzList(){
+ return CommonResult.success(rzsqjlbService.currentQyrzList());
+ }
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/job/readme.md b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/job/readme.md
new file mode 100644
index 0000000..99d906d
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/job/readme.md
@@ -0,0 +1 @@
+# 定时任务
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxGxbqbMapper.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxGxbqbMapper.java
new file mode 100644
index 0000000..3458f71
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxGxbqbMapper.java
@@ -0,0 +1,49 @@
+package com.css.txw.gxzx.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.ggzc.framework.mybatis.core.query.QueryWrapperX;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxbqbDO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxQybqbDO;
+
+import java.util.List;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_gxbqb(供需标签表)】的数据库操作Mapper
+* @createDate 2025-09-16 09:46:06
+* @Entity com.css.txw.gxzx.pojo.domain.TxwGxzxGxbqb
+*/
+public interface TxwGxzxGxbqbMapper extends BaseMapper {
+
+ default void updYxbz(String gxuuid){
+ UpdateWrapper wrapper = new UpdateWrapper<>();
+ wrapper.lambda().set(TxwGxzxGxbqbDO::getYxbz,"Y")
+ .eq(TxwGxzxGxbqbDO::getGxUuid,gxuuid);
+ update(wrapper);
+ }
+
+ default List getGxuuids(List qyuuids,List bqdms){
+ QueryWrapperX wrapper = new QueryWrapperX<>();
+ wrapper.select("DISTINCT gx_uuid").lambda()
+ .in(!GyUtils.isNull(bqdms)&&bqdms.size()>0,TxwGxzxGxbqbDO::getBquuid,bqdms)
+ .in(!GyUtils.isNull(qyuuids)&&qyuuids.size()>0,TxwGxzxGxbqbDO::getQyuuid,qyuuids)
+ .eq(TxwGxzxGxbqbDO::getYxbz,"Y");
+ return selectList(wrapper);
+ }
+
+ default List getQyuuids(List bqdms){
+ QueryWrapperX wrapper = new QueryWrapperX<>();
+ wrapper.select("DISTINCT qyuuid").lambda()
+ .in(!GyUtils.isNull(bqdms)&&bqdms.size()>0,TxwGxzxGxbqbDO::getBquuid,bqdms)
+ .eq(TxwGxzxGxbqbDO::getYxbz,"Y");
+ return selectList(wrapper);
+ }
+
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxGxscbMapper.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxGxscbMapper.java
new file mode 100644
index 0000000..ae0439f
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxGxscbMapper.java
@@ -0,0 +1,40 @@
+package com.css.txw.gxzx.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxscbDO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import java.util.List;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_gxscb(供需收藏表)】的数据库操作Mapper
+* @createDate 2025-09-19 14:05:38
+* @Entity com.css.txw.gxzx.pojo.domain.TxwGxzxGxscb
+*/
+public interface TxwGxzxGxscbMapper extends BaseMapper {
+
+ default List getByYhuuid(String yhUuid){
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(TxwGxzxGxscbDO::getYhUuid,yhUuid);
+ return selectList(wrapper);
+ }
+
+ default List getByGxuuidandYhuuid(String gxUuid, String yhUuid){
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(TxwGxzxGxscbDO::getGxUuid,gxUuid)
+ .eq(TxwGxzxGxscbDO::getYhUuid,yhUuid);
+ return selectList(wrapper);
+ }
+
+ default void removeByGxuuidAndYhuuid(String gxUuid, String yhUuid){
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(TxwGxzxGxscbDO::getGxUuid,gxUuid)
+ .eq(TxwGxzxGxscbDO::getYhUuid,yhUuid);
+ delete(wrapper);
+ }
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxGxxxbMapper.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxGxxxbMapper.java
new file mode 100644
index 0000000..14dc8c3
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxGxxxbMapper.java
@@ -0,0 +1,73 @@
+package com.css.txw.gxzx.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.ggzc.framework.mybatis.core.query.QueryWrapperX;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxxxbDO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.css.txw.gxzx.pojo.vo.GetGxSqListReqVO;
+import com.css.txw.gxzx.pojo.vo.GxxxReqVO;
+
+import java.util.List;
+import java.util.Set;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_gxxxb(供需信息表)】的数据库操作Mapper
+* @createDate 2025-09-13 11:26:24
+* @Entity com.css.txw.gxzx.pojo.domain.TxwGxzxGxxxb
+*/
+public interface TxwGxzxGxxxbMapper extends BaseMapper {
+
+ default Page gxxxList(GxxxReqVO reqVO, Set gxuuids){
+ Page page = new Page<>(reqVO.getPageNo(),reqVO.getPageSize());
+ QueryWrapperX wrapper = new QueryWrapperX<>();
+ wrapper.lambda()
+ .eq(TxwGxzxGxxxbDO::getYwlxDm,reqVO.getYwlxDm())
+ .and(!GyUtils.isNull(reqVO.getNr()),w->w.like(TxwGxzxGxxxbDO::getBt1,reqVO.getNr()).or().like(TxwGxzxGxxxbDO::getFwnr,reqVO.getNr()).or().like(TxwGxzxGxxxbDO::getQymc,reqVO.getNr()))
+ .eq(TxwGxzxGxxxbDO::getSjzt,"Y")
+ .eq(TxwGxzxGxxxbDO::getZt,"3")
+ .in(!GyUtils.isNull(reqVO.getSshy()),TxwGxzxGxxxbDO::getSshy,reqVO.getSshy())
+ .like(!GyUtils.isNull(reqVO.getDq()),TxwGxzxGxxxbDO::getFwfw,reqVO.getDq())
+ .lt(!GyUtils.isNull(reqVO.getFbsjz()),TxwGxzxGxxxbDO::getLrrq,reqVO.getFbsjz())
+ .gt(!GyUtils.isNull(reqVO.getFbsjq()),TxwGxzxGxxxbDO::getLrrq,reqVO.getFbsjq())
+ .in(!GyUtils.isNull(gxuuids),TxwGxzxGxxxbDO::getGxUuid,gxuuids)
+ .in(!GyUtils.isNull(reqVO.getQyuuids()),TxwGxzxGxxxbDO::getQyuuid,reqVO.getQyuuids())
+ .orderByDesc(TxwGxzxGxxxbDO::getLrrq);
+ return selectPage(page,wrapper);
+
+ }
+
+ default Page gxxxListByYh(GxxxReqVO reqVO,String yhuuid){
+ Page page = new Page<>(reqVO.getPageNo(),reqVO.getPageSize());
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(TxwGxzxGxxxbDO::getLrruuid,yhuuid)
+ .eq(TxwGxzxGxxxbDO::getYwlxDm,reqVO.getYwlxDm())
+ .and(!GyUtils.isNull(reqVO.getNr()),w->w.like(TxwGxzxGxxxbDO::getBt1,reqVO.getNr()).or().like(TxwGxzxGxxxbDO::getFwnr,reqVO.getNr()).or().like(TxwGxzxGxxxbDO::getQymc,reqVO.getNr()))
+ .lt(!GyUtils.isNull(reqVO.getFbsjz()),TxwGxzxGxxxbDO::getLrrq,reqVO.getFbsjz())
+ .gt(!GyUtils.isNull(reqVO.getFbsjq()),TxwGxzxGxxxbDO::getLrrq,reqVO.getFbsjq())
+ .orderByDesc(TxwGxzxGxxxbDO::getLrrq);
+ return selectPage(page,wrapper);
+ }
+
+ default Page getGxSqList(GetGxSqListReqVO reqVO){
+ Page page = new Page<>(reqVO.getPageNo(),reqVO.getPageSize());
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda()
+// .eq(TxwGxzxGxxxbDO::getZt,"2")
+ .eq(TxwGxzxGxxxbDO::getYwlxDm,reqVO.getYwlxDm())
+ .like(!GyUtils.isNull(reqVO.getQymc()),TxwGxzxGxxxbDO::getQymc,reqVO.getQymc())
+ .like(!GyUtils.isNull(reqVO.getNsrsbh()),TxwGxzxGxxxbDO::getNsrsbh,reqVO.getNsrsbh())
+ .like(!GyUtils.isNull(reqVO.getBt1()),TxwGxzxGxxxbDO::getBt1,reqVO.getBt1())
+ .eq(!GyUtils.isNull(reqVO.getSjzt()),TxwGxzxGxxxbDO::getSjzt,reqVO.getSjzt())
+ .eq(!GyUtils.isNull(reqVO.getZt()),TxwGxzxGxxxbDO::getZt,reqVO.getZt())
+ .like(!GyUtils.isNull(reqVO.getFwlxDm()),TxwGxzxGxxxbDO::getFwlxjh,reqVO.getFwlxDm())
+ .orderByDesc(TxwGxzxGxxxbDO::getLrrq);
+ return selectPage(page,wrapper);
+ }
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxQybqbMapper.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxQybqbMapper.java
new file mode 100644
index 0000000..25b11be
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxQybqbMapper.java
@@ -0,0 +1,35 @@
+package com.css.txw.gxzx.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxQybqbDO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import java.util.List;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_qybqb(企业标签表)】的数据库操作Mapper
+* @createDate 2025-09-15 14:23:40
+* @Entity com.css.txw.gxzx.pojo.domain.TxwGxzxQybqb
+*/
+public interface TxwGxzxQybqbMapper extends BaseMapper {
+
+ default void updYxbz(String qyuuid){
+ UpdateWrapper wrapper = new UpdateWrapper<>();
+ wrapper.lambda().set(TxwGxzxQybqbDO::getYxbz,"Y")
+ .eq(TxwGxzxQybqbDO::getQyuuid,qyuuid);
+ update(wrapper);
+ }
+
+ default List getQyuuids(List bqdms){
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda().select(TxwGxzxQybqbDO::getQyuuid).in(TxwGxzxQybqbDO::getBqDm,bqdms)
+ .eq(TxwGxzxQybqbDO::getYxbz,"Y");
+ return selectList(wrapper);
+ }
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxRzsqjlbMapper.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxRzsqjlbMapper.java
new file mode 100644
index 0000000..57b1c06
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxRzsqjlbMapper.java
@@ -0,0 +1,43 @@
+package com.css.txw.gxzx.mapper;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxRzsqjlbDO;
+import com.css.txw.gxzx.pojo.vo.QyrzListReqVO;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_rzsqjlb(入驻申请记录表)】的数据库操作Mapper
+* @createDate 2025-09-12 15:55:04
+* @Entity com.css.txw.gxzx.pojo.domain.TxwGxzxRzsqjlb
+*/
+public interface TxwGxzxRzsqjlbMapper extends BaseMapper {
+
+ default List qyrzList(QyrzListReqVO reqVO){
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda()
+ .like(!GyUtils.isNull(reqVO.getNsrsbh()),TxwGxzxRzsqjlbDO::getNsrsbh,reqVO.getNsrsbh())
+ .like(!GyUtils.isNull(reqVO.getQymc()),TxwGxzxRzsqjlbDO::getQymc,reqVO.getQymc())
+// .isNull(TxwGxzxRzsqjlbDO::getShjg1)
+ .eq(!GyUtils.isNull(reqVO.getShjg1()), TxwGxzxRzsqjlbDO::getShjg1, reqVO.getShjg1())
+ .ge(!GyUtils.isNull(reqVO.getSqsjq()), TxwGxzxRzsqjlbDO::getLrrq, reqVO.getSqsjq())
+ .le(!GyUtils.isNull(reqVO.getSqsjz()), TxwGxzxRzsqjlbDO::getLrrq, reqVO.getSqsjz())
+ .orderByDesc(TxwGxzxRzsqjlbDO::getLrrq);
+ return selectList(wrapper);
+ }
+
+ default List currentQyrzList(String yhuuid){
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda()
+ .eq(TxwGxzxRzsqjlbDO::getLrruuid,yhuuid)
+ .orderByDesc(TxwGxzxRzsqjlbDO::getLrrq);
+ return selectList(wrapper);
+ }
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxShqkbMapper.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxShqkbMapper.java
new file mode 100644
index 0000000..9242aed
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/TxwGxzxShqkbMapper.java
@@ -0,0 +1,43 @@
+package com.css.txw.gxzx.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxxxbDO;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxShqkbDO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.css.txw.gxzx.pojo.vo.GetGxSqListReqVO;
+
+import java.util.List;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_shqkb(审核情况表)】的数据库操作Mapper
+* @createDate 2025-09-12 15:19:45
+* @Entity com.css.txw.gxzx.pojo.domain.TxwGxzxShqkb
+*/
+public interface TxwGxzxShqkbMapper extends BaseMapper {
+
+ default List gxfbList(){
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda().in(TxwGxzxShqkbDO::getYwlxDm,"01","02")
+ .isNull(TxwGxzxShqkbDO::getShjg1);
+ return selectList(wrapper);
+ }
+
+ default Page getGxSqList(GetGxSqListReqVO reqVO){
+ Page page = new Page<>(reqVO.getPageNo(),reqVO.getPageSize());
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda().isNull(TxwGxzxShqkbDO::getShjg1);
+ return selectPage(page,wrapper);
+ }
+
+ default TxwGxzxShqkbDO getByGlidAndYwlx(String gxuuid){
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(TxwGxzxShqkbDO::getGlid,gxuuid);
+ return selectOne(wrapper);
+ }
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/lsjr/GxzxDkbxsqxxMapper.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/lsjr/GxzxDkbxsqxxMapper.java
new file mode 100644
index 0000000..2941e06
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/lsjr/GxzxDkbxsqxxMapper.java
@@ -0,0 +1,15 @@
+package com.css.txw.gxzx.mapper.lsjr;
+
+import org.apache.ibatis.annotations.Param;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.css.txw.gxzx.pojo.domain.lsjr.GxzxDkbxsqxx;
+import com.css.txw.gxzx.pojo.lsjr.XdbxcpsqRequestVO;
+import com.css.txw.gxzx.pojo.vo.lsjr.ProductApplyVO;
+
+public interface GxzxDkbxsqxxMapper extends BaseMapper {
+
+ Page queryXdbxcpsqInfo(Page page, @Param("req") XdbxcpsqRequestVO req);
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/lsjr/GxzxLsjrcpxxMapper.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/lsjr/GxzxLsjrcpxxMapper.java
new file mode 100644
index 0000000..a3b1107
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/lsjr/GxzxLsjrcpxxMapper.java
@@ -0,0 +1,7 @@
+package com.css.txw.gxzx.mapper.lsjr;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.css.txw.gxzx.pojo.domain.lsjr.GxzxLsjrcpxx;
+
+public interface GxzxLsjrcpxxMapper extends BaseMapper {
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/lsjy/GxzxLsjyZcxxMapper.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/lsjy/GxzxLsjyZcxxMapper.java
new file mode 100644
index 0000000..e381c89
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/mapper/lsjy/GxzxLsjyZcxxMapper.java
@@ -0,0 +1,7 @@
+package com.css.txw.gxzx.mapper.lsjy;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.css.txw.gxzx.pojo.domain.lsjy.GxzxLsjyZcxx;
+
+public interface GxzxLsjyZcxxMapper extends BaseMapper {
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxGxbqbDO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxGxbqbDO.java
new file mode 100644
index 0000000..50726ed
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxGxbqbDO.java
@@ -0,0 +1,62 @@
+package com.css.txw.gxzx.pojo.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 供需标签表
+ * @TableName txw_gxzx_gxbqb
+ */
+@TableName(value ="txw_gxzx_gxbqb")
+@Data
+public class TxwGxzxGxbqbDO implements Serializable {
+ /**
+ * UUID||uuid
+ */
+ @TableId(value = "uuid")
+ private String uuid;
+
+ /**
+ * 供需UUID||供需UUID
+ */
+ @TableField(value = "gx_uuid")
+ private String gxUuid;
+
+ /**
+ * 标签UUID
+ */
+ @TableField(value = "bquuid")
+ private String bquuid;
+
+ /**
+ * 标签UUID
+ */
+ @TableField(value = "qyuuid")
+ private String qyuuid;
+
+ /**
+ * 有效标志
+ */
+ @TableField(value = "yxbz")
+ private String yxbz;
+
+ /**
+ * 录入日期
+ */
+ @TableField(value = "lrrq")
+ private Date lrrq;
+
+ /**
+ * 修改日期
+ */
+ @TableField(value = "xgrq")
+ private Date xgrq;
+
+ @TableField(exist = false)
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxGxscbDO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxGxscbDO.java
new file mode 100644
index 0000000..8754770
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxGxscbDO.java
@@ -0,0 +1,44 @@
+package com.css.txw.gxzx.pojo.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 供需收藏表
+ * @TableName txw_gxzx_gxscb
+ */
+@TableName(value ="txw_gxzx_gxscb")
+@Data
+public class TxwGxzxGxscbDO implements Serializable {
+ /**
+ * UUID||uuid
+ */
+ @TableId(value = "uuid")
+ private String uuid;
+
+ /**
+ * 供需UUID||供需UUID
+ */
+ @TableField(value = "gx_uuid")
+ private String gxUuid;
+
+ /**
+ * 用户UUID
+ */
+ @TableField(value = "yh_uuid")
+ private String yhUuid;
+
+ /**
+ * 录入日期
+ */
+ @TableField(value = "lrrq")
+ private Date lrrq;
+
+ @TableField(exist = false)
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxGxxxbDO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxGxxxbDO.java
new file mode 100644
index 0000000..e03b3de
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxGxxxbDO.java
@@ -0,0 +1,177 @@
+package com.css.txw.gxzx.pojo.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 供需信息表
+ * @TableName txw_gxzx_gxxxb
+ */
+@TableName(value ="txw_gxzx_gxxxb")
+@Data
+public class TxwGxzxGxxxbDO implements Serializable {
+ /**
+ * 供需UUID||供需UUID
+ */
+ @TableId(value = "gx_uuid")
+ private String gxUuid;
+
+ /**
+ * 标题
+ */
+ @TableField(value = "bt_1")
+ private String bt1;
+
+ /**
+ * 服务类型||服务类型
+ */
+ @TableField(value = "fwlxjh")
+ private String fwlxjh;
+
+ /**
+ * 所属行业代码
+ */
+ @TableField(value = "sshy")
+ private String sshy;
+
+ /**
+ * 服务范围||服务范围
+ */
+ @TableField(value = "fwfw")
+ private String fwfw;
+
+ /**
+ * 服务描述
+ */
+ @TableField(value = "fwnr")
+ private String fwnr;
+
+ /**
+ * 扩展文件||扩展文件
+ */
+ @TableField(value = "kzwj")
+ private String kzwj;
+
+ /**
+ * 联系人||联系人
+ */
+ @TableField(value = "lxr")
+ private String lxr;
+
+ /**
+ * 联系电话
+ */
+ @TableField(value = "lxdh")
+ private String lxdh;
+
+ /**
+ * 电子邮箱
+ */
+ @TableField(value = "email")
+ private String email;
+
+ /**
+ * 标签合集||标签合集
+ */
+ @TableField(value = "bqjh")
+ private String bqjh;
+
+ /**
+ * 状态
+ */
+ @TableField(value = "zt")
+ private String zt;
+
+ /**
+ * 企业uuid
+ */
+ @TableField(value = "qyuuid")
+ private String qyuuid;
+
+ /**
+ * 企业uuid
+ */
+ @TableField(value = "qymc")
+ private String qymc;
+
+ /**
+ * 纳税人识别号
+ */
+ @TableField(value = "nsrsbh")
+ private String nsrsbh;
+
+ /**
+ * 录入日期
+ */
+ @TableField(value = "lrrq")
+ private Date lrrq;
+
+ /**
+ * 修改日期
+ */
+ @TableField(value = "xgrq")
+ private Date xgrq;
+
+ /**
+ * 修改人UUID
+ */
+ @TableField(value = "xgruuid")
+ private String xgruuid;
+
+ /**
+ * 录入人UUID
+ */
+ @TableField(value = "lrruuid")
+ private String lrruuid;
+
+ /**
+ * 上架状态||上架状态
+ */
+ @TableField(value = "sjzt")
+ private String sjzt;
+
+ /**
+ * 业务类型代码||业务类型代码
+ */
+ @TableField(value = "ywlx_dm")
+ private String ywlxDm;
+
+ /**
+ * 预算范围代码
+ */
+ @TableField(value = "ysfw_dm_1")
+ private String ysfwDm1;
+
+ /**
+ * 期望完成时间
+ */
+ @TableField(value = "qwwcsj")
+ private Date qwwcsj;
+
+ /**
+ * 需求紧急程度代码
+ */
+ @TableField(value = "xqjjcd_dm")
+ private String xqjjcdDm;
+
+ /**
+ * 供给价格
+ */
+ @TableField(value = "gjjg")
+ private BigDecimal gjjg;
+
+ /**
+ * 供给单位代码
+ */
+ @TableField(value = "gjdw_dm")
+ private String gjdwDm;
+
+ @TableField(exist = false)
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxQybqbDO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxQybqbDO.java
new file mode 100644
index 0000000..5d05386
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxQybqbDO.java
@@ -0,0 +1,56 @@
+package com.css.txw.gxzx.pojo.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 企业标签表
+ * @TableName txw_gxzx_qybqb
+ */
+@TableName(value ="txw_gxzx_qybqb")
+@Data
+public class TxwGxzxQybqbDO implements Serializable {
+ /**
+ * UUID||uuid
+ */
+ @TableId(value = "uuid")
+ private String uuid;
+
+ /**
+ * 企业uuid
+ */
+ @TableField(value = "qyuuid")
+ private String qyuuid;
+
+ /**
+ * 标签代码||标签代码
+ */
+ @TableField(value = "bq_dm")
+ private String bqDm;
+
+ /**
+ * 有效标志
+ */
+ @TableField(value = "yxbz")
+ private String yxbz;
+
+ /**
+ * 录入日期
+ */
+ @TableField(value = "lrrq")
+ private Date lrrq;
+
+ /**
+ * 修改日期
+ */
+ @TableField(value = "xgrq")
+ private Date xgrq;
+
+ @TableField(exist = false)
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxRzsqjlbDO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxRzsqjlbDO.java
new file mode 100644
index 0000000..e8a7392
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxRzsqjlbDO.java
@@ -0,0 +1,107 @@
+package com.css.txw.gxzx.pojo.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 入驻申请记录表
+ * @TableName txw_gxzx_rzsqjlb
+ */
+@TableName(value ="txw_gxzx_rzsqjlb")
+@Data
+public class TxwGxzxRzsqjlbDO implements Serializable {
+ /**
+ * UUID||uuid
+ */
+ @TableId(value = "uuid")
+ private String uuid;
+
+ /**
+ * 业务类型代码||业务类型代码
+ */
+ @TableField(value = "ywlx_dm")
+ private String ywlxDm;
+
+ /**
+ * 纳税人识别号
+ */
+ @TableField(value = "nsrsbh")
+ private String nsrsbh;
+
+ /**
+ * 企业名称
+ */
+ @TableField(value = "qymc")
+ private String qymc;
+
+ /**
+ * 手机号码1
+ */
+ @TableField(value = "sjhm1")
+ private String sjhm1;
+
+ /**
+ * 申请理由
+ */
+ @TableField(value = "sqly")
+ private String sqly;
+
+ /**
+ * 录入人UUID
+ */
+ @TableField(value = "lrruuid")
+ private String lrruuid;
+
+ /**
+ * 录入日期
+ */
+ @TableField(value = "lrrq")
+ private Date lrrq;
+
+ /**
+ * 审核人
+ */
+ @TableField(value = "shrsfid")
+ private String shrsfid;
+
+ /**
+ * 审核时间
+ */
+ @TableField(value = "shsj")
+ private Date shsj;
+
+ /**
+ * 审核意见
+ */
+ @TableField(value = "shyj_1")
+ private String shyj1;
+
+ /**
+ * 审核结果
+ */
+ @TableField(value = "shjg_1")
+ private String shjg1;
+
+ @TableField(exist = false)
+ private static final long serialVersionUID = 1L;
+ /**
+ * 登录账号
+ */
+ @TableField(value = "dlzh")
+ private String dlzh;
+ /**
+ * 真实姓名||真实姓名
+ */
+ @TableField(value = "zsxm_1")
+ private String zsxm1;
+ /**
+ * 用户UUID
+ */
+ @TableField(value = "yh_uuid")
+ private String yhUuid;
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxShqkbDO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxShqkbDO.java
new file mode 100644
index 0000000..5d2d39f
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/TxwGxzxShqkbDO.java
@@ -0,0 +1,110 @@
+package com.css.txw.gxzx.pojo.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 审核情况表
+ * @TableName txw_gxzx_shqkb
+ */
+@TableName(value ="txw_gxzx_shqkb")
+@Data
+public class TxwGxzxShqkbDO implements Serializable {
+ /**
+ * UUID||uuid
+ */
+ @TableId(value = "uuid")
+ private String uuid;
+
+ /**
+ * 业务类型代码||业务类型代码
+ */
+ @TableField(value = "ywlx_dm")
+ private String ywlxDm;
+
+ /**
+ * 关联id
+ */
+ @TableField(value = "glid")
+ private String glid;
+
+ /**
+ * 审核结果
+ */
+ @TableField(value = "shjg_1")
+ private String shjg1;
+
+ /**
+ * 审核意见
+ */
+ @TableField(value = "shyj_1")
+ private String shyj1;
+
+ /**
+ * 审核人
+ */
+ @TableField(value = "shrsfid")
+ private String shrsfid;
+
+ /**
+ * 审核时间
+ */
+ @TableField(value = "shsj")
+ private Date shsj;
+
+ /**
+ * 业务渠道代码
+ */
+ @TableField(value = "ywqd_dm")
+ private String ywqdDm;
+
+ /**
+ * 录入日期
+ */
+ @TableField(value = "lrrq")
+ private Date lrrq;
+
+ /**
+ * 修改日期
+ */
+ @TableField(value = "xgrq")
+ private Date xgrq;
+
+ /**
+ * 数据产生地区
+ */
+ @TableField(value = "sjcsdq")
+ private String sjcsdq;
+
+ /**
+ * 数据归属地区
+ */
+ @TableField(value = "sjgsdq")
+ private String sjgsdq;
+
+ /**
+ * 修改人身份id
+ */
+ @TableField(value = "xgrsfid")
+ private String xgrsfid;
+
+ /**
+ * 录入人身份id
+ */
+ @TableField(value = "lrrsfid")
+ private String lrrsfid;
+
+ /**
+ * 数据同步时间
+ */
+ @TableField(value = "sjtb_sj")
+ private Date sjtbSj;
+
+ @TableField(exist = false)
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/lsjr/GxzxDkbxsqxx.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/lsjr/GxzxDkbxsqxx.java
new file mode 100644
index 0000000..9afa1e3
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/lsjr/GxzxDkbxsqxx.java
@@ -0,0 +1,93 @@
+package com.css.txw.gxzx.pojo.domain.lsjr;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+@TableName("txw_gxzx_dkbxsqxx")
+public class GxzxDkbxsqxx {
+ @TableId(value = "squuid")
+ // 申请UUID
+ private String squuid;
+
+ @TableField(value = "sshy_dm")
+ // 业务分类代码 xd:信贷 bx:保险
+ private String sshyDm;
+
+ @TableField(value = "cpuuid")
+ // 藏品uuid||藏品uuid
+ private String cpuuid;
+
+ @TableField(value = "qyuuid")
+ // 企业uuid
+ private String qyuuid;
+
+ @TableField(value = "qymc")
+ // 企业名称
+ private String qymc;
+
+ @TableField(value = "nsrsbh")
+ // 纳税人识别号
+ private String nsrsbh;
+
+ @TableField(value = "lxr")
+ // 联系人||联系人
+ private String lxr;
+
+ @TableField(value = "lxdh")
+ // 联系电话
+ private String lxdh;
+
+ @TableField(value = "kxtsjzl")
+ // 可信碳数据资料||可信碳数据资料
+ private String kxtsjzl;
+
+ @TableField(value = "sqdk_je")
+ // 申请贷款金额||申请贷款金额
+ private String sqdkJe;
+
+ @TableField(value = "sqdkyt")
+ // 申请贷款用途||申请贷款用途
+ private String sqdkyt;
+
+ @TableField(value = "tbje")
+ // 投保金额
+ private String tbje;
+
+ @TableField(value = "bxbzqx")
+ // 保险保障期限
+ private String bxbzqx;
+
+ @TableField(value = "flzl")
+ // 附列资料
+ private String flzl;
+
+ @TableField(value = "zt")
+ // 状态
+ private String zt;
+
+ @TableField(value = "wjmc")
+ // 文件名称
+ private String wjmc;
+
+ @TableField(value = "lrrq")
+ // 录入日期
+ private Date lrrq;
+
+ @TableField(value = "lrruuid")
+ // 录入人UUID
+ private String lrruuid;
+
+ @TableField(value = "xgrq")
+ // 修改日期
+ private Date xgrq;
+
+ @TableField(value = "xgruuid")
+ // 修改人UUID
+ private String xgruuid;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/lsjr/GxzxLsjrcpxx.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/lsjr/GxzxLsjrcpxx.java
new file mode 100644
index 0000000..49cfdf7
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/lsjr/GxzxLsjrcpxx.java
@@ -0,0 +1,97 @@
+package com.css.txw.gxzx.pojo.domain.lsjr;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+@TableName("txw_gxzx_lsjrcpxx")
+public class GxzxLsjrcpxx {
+ @TableId(value = "cpuuid")
+ // 藏品uuid||藏品uuid
+ private String cpuuid;
+
+ @TableField(value = "sshy_dm")
+ // 所属行业代码
+ private String sshyDm;
+
+ @TableField(value = "ywlx_dm")
+ // 业务类型代码||业务类型代码
+ private String ywlxDm;
+
+ @TableField(value = "cpmc")
+ // 成品名称
+ private String cpmc;
+
+ @TableField(value = "qyuuid")
+ // 企业uuid
+ private String qyuuid;
+
+ @TableField(value = "qymc")
+ // 企业名称
+ private String qymc;
+
+ @TableField(value = "edfw")
+ // 额度范围||额度范围
+ private String edfw;
+
+ @TableField(value = "llfw")
+ // 利率范围||利率范围
+ private String llfw;
+
+ @TableField(value = "dkqxfw")
+ // 贷款期限范围||贷款期限范围
+ private String dkqxfw;
+
+ @TableField(value = "bzqxfw")
+ // 保障期限范围||保障期限范围
+ private String bzqxfw;
+
+ @TableField(value = "bfjsfs")
+ // 保费计算方式||保费计算方式
+ private String bfjsfs;
+
+ @TableField(value = "fwcpms")
+ // 服务产品描述||服务产品描述
+ private Object fwcpms;
+
+ @TableField(value = "fprq")
+ // 发布日期
+ private Date fprq;
+
+ @TableField(value = "zt")
+ // 状态
+ private Object zt;
+
+ @TableField(value = "sjzt")
+ // 上架状态||上架状态
+ private Object sjzt;
+
+ @TableField(value = "lrrq")
+ // 录入日期
+ private Date lrrq;
+
+ @TableField(value = "lrruuid")
+ // 录入人UUID
+ private String lrruuid;
+
+ @TableField(value = "xgrq")
+ // 修改日期
+ private Date xgrq;
+
+ @TableField(value = "xgruuid")
+ // 修改人UUID
+ private String xgruuid;
+
+ @TableField(value = "yxlogo")
+ // 圆形logo
+ private String yxlogo;
+
+ @TableField(value = "carbon_type")
+ // 碳类型
+ private Integer carbonType;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/lsjy/GxzxLsjyZcxx.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/lsjy/GxzxLsjyZcxx.java
new file mode 100644
index 0000000..9344b39
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/domain/lsjy/GxzxLsjyZcxx.java
@@ -0,0 +1,99 @@
+package com.css.txw.gxzx.pojo.domain.lsjy;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.css.ggzc.framework.mybatis.core.dataobject.TenantDO;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+@TableName("txw_gxzx_lsjy_zcxx")
+public class GxzxLsjyZcxx {
+ @TableId(value = "zcid")
+ // 资产ID||资产ID
+ private String zcid;
+
+ @TableField(value = "qyuuid")
+ // 企业uuid
+ private String qyuuid;
+
+ @TableField(value = "qymc")
+ // 企业名称
+ private String qymc;
+
+ @TableField(value = "zcmc")
+ // 资产名称||资产名称
+ private String zcmc;
+
+ @TableField(value = "zclxdm")
+ // 资产类型代码||资产类型代码
+ private String zclxdm;
+
+ @TableField(value = "zcxq1")
+ // 资产详情||资产详情
+ private String zcxq1;
+
+ @TableField(value = "zcsl")
+ // 资产数量||资产数量
+ private String zcsl;
+
+ @TableField(value = "zcsysl")
+ // 资产剩余数量||资产剩余数量
+ private String zcsysl;
+
+ @TableField(value = "dj_str")
+ // 单价(字符型)
+ private String djStr;
+
+ @TableField(value = "dj_3")
+ // 单价
+ private BigDecimal dj3;
+
+ @TableField(value = "zcbh")
+ // 资产编号
+ private String zcbh;
+
+ @TableField(value = "lxr")
+ // 联系人
+ private String lxr;
+
+ @TableField(value = "lxdh")
+ // 联系电话
+ private String lxdh;
+
+ @TableField(value = "fbrq")
+ // 发布日期
+ private Date fbrq;
+
+ @TableField(value = "yxqz")
+ // 有效期止
+ private Date yxqz;
+
+ @TableField(value = "zt")
+ // 状态
+ private Object zt;
+
+ @TableField(value = "sjzt")
+ // 上架状态||上架状态
+ private Object sjzt;
+
+ @TableField(value = "lrrq")
+ // 录入日期
+ private Date lrrq;
+
+ @TableField(value = "lrruuid")
+ // 录入人UUID
+ private String lrruuid;
+
+ @TableField(value = "xgrq")
+ // 修改日期
+ private Date xgrq;
+
+ @TableField(value = "xgruuid")
+ // 修改人UUID
+ private String xgruuid;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/dto/GxzxLsjrcpImportDto.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/dto/GxzxLsjrcpImportDto.java
new file mode 100644
index 0000000..dc03b2e
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/dto/GxzxLsjrcpImportDto.java
@@ -0,0 +1,60 @@
+package com.css.txw.gxzx.pojo.dto;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.css.txw.common.pojo.ExcelVerifyInfo;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class GxzxLsjrcpImportDto extends ExcelVerifyInfo implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ @ExcelProperty("序号")
+ private String xh;
+
+ @ExcelProperty("机构名称")
+ private String qymc;
+
+ @ExcelProperty("所属行业")
+ private String sshy;
+
+ @ExcelProperty("产品业务类型")
+ private String ywlxmc;
+
+ @ExcelProperty("碳类型")
+ private String carbonTypeMc;
+
+ @ExcelProperty("产品名称")
+ private String cpmc;
+
+ @ExcelProperty("额度范围")
+ private String edfw;
+
+ @ExcelProperty("利率范围")
+ private String llfw;
+
+ @ExcelProperty("贷款期限范围")
+ private String dkqxfw;
+
+ @ExcelProperty("保障期限范围")
+ private String bzqxfw;
+
+ @ExcelProperty("保费计算方式")
+ private String bfjsfs;
+
+ @ExcelProperty("产品描述")
+ private String fwcpms;
+
+ private String qyuuid;
+
+ private String cpuuid;
+
+ private String sshyDm;
+
+ private String ywlxDm;
+
+ // 碳类型,1.组织碳OC 2.碳⾜迹CFP 3.环境产品声明EPD 4.碳边境调节机制CBAM 5.环境、社会、治理ESG
+ private Integer carbonType;
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/dto/readme.md b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/dto/readme.md
new file mode 100644
index 0000000..bde432c
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/dto/readme.md
@@ -0,0 +1 @@
+# dto包
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GetGxSqListReqVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GetGxSqListReqVO.java
new file mode 100644
index 0000000..3f2f4df
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GetGxSqListReqVO.java
@@ -0,0 +1,48 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import com.css.ggzc.framework.common.pojo.PageParam;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+
+@Data
+public class GetGxSqListReqVO extends PageParam implements Serializable{
+
+ /**
+ * 供需UUID||供需UUID
+ */
+ private String gxUuid;
+
+ /**
+ * 标题
+ */
+ private String bt1;
+
+ /**
+ * 状态
+ */
+ private String zt;
+
+ /**
+ * 企业uuid
+ */
+ private String qymc;
+
+ /**
+ * 上架状态||上架状态
+ */
+ private String sjzt;
+
+ /**
+ * 业务类型代码||业务类型代码
+ */
+ private String ywlxDm;
+
+ private String nsrsbh;
+
+ private String fwlxDm;
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxfbReqVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxfbReqVO.java
new file mode 100644
index 0000000..2a3665a
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxfbReqVO.java
@@ -0,0 +1,138 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+
+@Data
+public class GxfbReqVO implements Serializable {
+ /**
+ * 供需UUID||供需UUID
+ */
+ private String gxUuid;
+
+ /**
+ * 标题
+ */
+ private String bt1;
+
+ /**
+ * 服务类型代码||服务类型代码
+ */
+ private String fwlxjh;
+
+ /**
+ * 所属行业代码
+ */
+ private String sshy;
+
+ /**
+ * 服务范围||服务范围
+ */
+ private String fwfw;
+
+ /**
+ * 服务描述
+ */
+ private String fwnr;
+
+ /**
+ * 扩展文件||扩展文件
+ */
+ private String kzwj;
+
+ /**
+ * 联系人||联系人
+ */
+ private String lxr;
+
+ /**
+ * 联系电话
+ */
+ private String lxdh;
+
+ /**
+ * 电子邮箱
+ */
+ private String email;
+
+ /**
+ * 标签合集||标签合集
+ */
+ private String bqjh;
+
+ /**
+ * 状态
+ */
+ private String zt;
+
+ /**
+ * 企业uuid
+ */
+ private String qyuuid;
+
+ /**
+ * 录入日期
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+ private Date lrrq;
+
+ /**
+ * 修改日期
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+ private Date xgrq;
+
+ /**
+ * 修改人UUID
+ */
+ private String xgruuid;
+
+ /**
+ * 录入人UUID
+ */
+ private String lrruuid;
+
+ /**
+ * 上架状态||上架状态
+ */
+ private String sjzt;
+
+ /**
+ * 业务类型代码||业务类型代码
+ */
+ private String ywlxDm;
+
+ /**
+ * 预算范围代码
+ */
+ private String ysfwDm1;
+
+ /**
+ * 期望完成时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+ private Date qwwcsj;
+
+ /**
+ * 需求紧急程度代码
+ */
+ private String xqjjcdDm;
+
+ /**
+ * 供给价格
+ */
+ private BigDecimal gjjg;
+
+ /**
+ * 供给单位代码
+ */
+ private String gjdwDm;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxscReqVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxscReqVO.java
new file mode 100644
index 0000000..d3770e1
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxscReqVO.java
@@ -0,0 +1,22 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class GxscReqVO implements Serializable {
+ /**
+ * 供需UUID||供需UUID
+ */
+ private String gxUuid;
+
+ /**
+ * 类型
+ */
+ private String type;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxsjReqVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxsjReqVO.java
new file mode 100644
index 0000000..59a4442
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxsjReqVO.java
@@ -0,0 +1,17 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class GxsjReqVO implements Serializable {
+
+ private String gxUuid;
+
+ /**
+ * 上架状态
+ */
+ private String sjzt;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxspReqVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxspReqVO.java
new file mode 100644
index 0000000..0d2fded
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxspReqVO.java
@@ -0,0 +1,24 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class GxspReqVO implements Serializable {
+
+ private String uuid;
+
+ @Schema(description = "审核结果 3-通过 4-拒绝")
+ private String shjg1;
+ @Schema(description = "审核意见")
+ private String shyj1;
+ @Schema(description = "状态")
+ private String zt;
+ private String gxuuid;
+ private String ywlxDm;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxsqResVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxsqResVO.java
new file mode 100644
index 0000000..4896591
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxsqResVO.java
@@ -0,0 +1,138 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class GxsqResVO implements Serializable {
+ /**
+ * 供需UUID||供需UUID
+ */
+ private String gxUuid;
+
+ /**
+ * 标题
+ */
+ private String bt1;
+
+ /**
+ * 服务类型||服务类型
+ */
+ private String fwlxjh;
+
+ /**
+ * 所属行业代码
+ */
+ private String sshy;
+
+ /**
+ * 服务范围||服务范围
+ */
+ private String fwfw;
+
+ /**
+ * 服务描述
+ */
+ private String fwnr;
+
+ /**
+ * 扩展文件||扩展文件
+ */
+ private String kzwj;
+
+ /**
+ * 联系人||联系人
+ */
+ private String lxr;
+
+ /**
+ * 联系电话
+ */
+ private String lxdh;
+
+ /**
+ * 电子邮箱
+ */
+ private String email;
+
+ /**
+ * 标签合集||标签合集
+ */
+ private String bqjh;
+
+ /**
+ * 状态
+ */
+ private String zt;
+
+ /**
+ * 企业uuid
+ */
+ private String qyuuid;
+
+ /**
+ * 企业uuid
+ */
+ private String qymc;
+
+ /**
+ * 录入日期
+ */
+
+ private Date lrrq;
+
+ /**
+ * 修改日期
+ */
+ private Date xgrq;
+
+ /**
+ * 修改人UUID
+ */
+ private String xgruuid;
+
+ /**
+ * 录入人UUID
+ */
+ private String lrruuid;
+
+ /**
+ * 上架状态||上架状态
+ */
+ private String sjzt;
+
+ /**
+ * 业务类型代码||业务类型代码
+ */
+ private String ywlxDm;
+
+ /**
+ * 预算范围代码
+ */
+ private String ysfwDm1;
+
+ /**
+ * 期望完成时间
+ */
+ private Date qwwcsj;
+
+ /**
+ * 需求紧急程度代码
+ */
+ private String xqjjcdDm;
+
+ /**
+ * 供给价格
+ */
+ private BigDecimal gjjg;
+
+ /**
+ * 供给单位代码
+ */
+ private String gjdwDm;
+
+ private String scbz;
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxxxReqVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxxxReqVO.java
new file mode 100644
index 0000000..1f04567
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxxxReqVO.java
@@ -0,0 +1,33 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import com.css.ggzc.framework.common.pojo.PageParam;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+@Data
+public class GxxxReqVO extends PageParam implements Serializable{
+
+ private List qyuuids;
+
+ private List sshy;
+
+ private List fwlxjh;
+
+ private String nr;
+
+ //业务类型
+ private String ywlxDm;
+
+ //收藏标志
+ private String scbz;
+
+ //地区
+ private String dq;
+ //
+ private String fbsjq;
+
+ private String fbsjz;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxxxVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxxxVO.java
new file mode 100644
index 0000000..a59a50f
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/GxxxVO.java
@@ -0,0 +1,143 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class GxxxVO implements Serializable {
+ /**
+ * 供需UUID||供需UUID
+ */
+ private String gxUuid;
+
+ /**
+ * 标题
+ */
+ private String bt1;
+
+ /**
+ * 服务类型||服务类型
+ */
+ private String fwlxjh;
+
+ /**
+ * 所属行业代码
+ */
+ private String sshy;
+
+ /**
+ * 服务范围||服务范围
+ */
+ private String fwfw;
+
+ /**
+ * 服务描述
+ */
+ private String fwnr;
+
+ /**
+ * 扩展文件||扩展文件
+ */
+ private String kzwj;
+
+ /**
+ * 联系人||联系人
+ */
+ private String lxr;
+
+ /**
+ * 联系电话
+ */
+ private String lxdh;
+
+ /**
+ * 电子邮箱
+ */
+ private String email;
+
+ /**
+ * 标签合集||标签合集
+ */
+ private String bqjh;
+
+ /**
+ * 状态
+ */
+ private String zt;
+
+ /**
+ * 企业uuid
+ */
+ private String qyuuid;
+
+ /**
+ * 企业uuid
+ */
+ private String qymc;
+
+ /**
+ * 录入日期
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private Date lrrq;
+
+ /**
+ * 修改日期
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private Date xgrq;
+
+ /**
+ * 修改人UUID
+ */
+ private String xgruuid;
+
+ /**
+ * 录入人UUID
+ */
+ private String lrruuid;
+
+ /**
+ * 上架状态||上架状态
+ */
+ private String sjzt;
+
+ /**
+ * 业务类型代码||业务类型代码
+ */
+ private String ywlxDm;
+
+ /**
+ * 预算范围代码
+ */
+ private String ysfwDm1;
+
+ /**
+ * 期望完成时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private Date qwwcsj;
+
+ /**
+ * 需求紧急程度代码
+ */
+ private String xqjjcdDm;
+
+ /**
+ * 供给价格
+ */
+ private BigDecimal gjjg;
+
+ /**
+ * 供给单位代码
+ */
+ private String gjdwDm;
+
+ private String scbz;
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyRzSpReqVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyRzSpReqVO.java
new file mode 100644
index 0000000..6d85ad3
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyRzSpReqVO.java
@@ -0,0 +1,16 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class QyRzSpReqVO implements Serializable {
+
+ private String uuid;
+
+ private String shjg1;
+
+ private String shyj1;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyRzSqReqVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyRzSqReqVO.java
new file mode 100644
index 0000000..ad14577
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyRzSqReqVO.java
@@ -0,0 +1,18 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class QyRzSqReqVO implements Serializable {
+
+ private String sjhm1;
+
+ private String nsrsbh;
+
+ private String qymc;
+
+ private String sqsm;
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyRzSqxxVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyRzSqxxVO.java
new file mode 100644
index 0000000..79f69c7
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyRzSqxxVO.java
@@ -0,0 +1,40 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+public class QyRzSqxxVO implements Serializable {
+
+ private String uuid;
+
+ private String sjhm1;
+
+ private String nsrsbh;
+
+ private String qymc;
+
+ private String sqly;
+
+ private String lrruuid;
+
+ @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+ private Date lrrq;
+ @Schema(description = "登陆账号")
+ private String dlzh;
+ @Schema(description = "真实姓名")
+ private String zsxm1;
+ @Schema(description = "用户uuid")
+ private String yhUuid;
+ /**
+ * 审核结果
+ */
+ @Schema(description = "审核结果")
+ private String shjg1;
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyrzListReqVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyrzListReqVO.java
new file mode 100644
index 0000000..bafc0cc
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/QyrzListReqVO.java
@@ -0,0 +1,17 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import java.io.Serializable;
+
+import lombok.Data;
+
+@Data
+public class QyrzListReqVO implements Serializable {
+
+ private String nsrsbh;
+
+ private String qymc;
+// 查询条件增加审核状态,申请时间范围
+ private String shjg1;
+ private String sqsjq;
+ private String sqsjz;
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/ShqkxxVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/ShqkxxVO.java
new file mode 100644
index 0000000..2f257f2
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/ShqkxxVO.java
@@ -0,0 +1,75 @@
+package com.css.txw.gxzx.pojo.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 审核情况表
+ * @TableName txw_gxzx_shqkb
+ */
+@Data
+public class ShqkxxVO implements Serializable {
+ /**
+ * UUID||uuid
+ */
+ private String uuid;
+
+ /**
+ * 业务类型代码||业务类型代码
+ */
+ private String ywlxDm;
+
+ /**
+ * 关联id
+ */
+ private String glid;
+
+ /**
+ * 审核结果
+ */
+ private String shjg1;
+
+ /**
+ * 审核意见
+ */
+ private String shyj1;
+
+ /**
+ * 审核人
+ */
+ private String shrsfid;
+
+ /**
+ * 审核时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+ private Date shsj;
+
+ /**
+ * 录入日期
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+ private Date lrrq;
+
+ /**
+ * 修改日期
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+ private Date xgrq;
+
+
+ /**
+ * 修改人身份id
+ */
+ private String xgrsfid;
+
+ /**
+ * 录入人身份id
+ */
+ private String lrrsfid;
+
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/lsjr/ProductApplyVO.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/lsjr/ProductApplyVO.java
new file mode 100644
index 0000000..f28f735
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/pojo/vo/lsjr/ProductApplyVO.java
@@ -0,0 +1,127 @@
+package com.css.txw.gxzx.pojo.vo.lsjr;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+
+/**
+ * 绿色金融贷款保险申请及产品信息vo
+ * @project 碳信网项目
+ * @module 绿色金融贷款保险申请信息
+ * @package com.css.txw.gxzx.pojo.vo.lsjr
+ * @file ProductApplyVO
+ * @createDate 2025-12-24
+ * @title 绿色金融贷款保险申请及产品信息vo
+ * @copyright Copyright (c) 2025 中国软件与技术服务股份有限公司
+ * @company 中国软件与技术服务股份有限公司
+ * @author 崔学志
+ * @version 1.0.0
+ * @history 修订历史(历次修订内容、修订人、修订时间等)
+ */
+
+import lombok.Data;
+import lombok.NoArgsConstructor;
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class ProductApplyVO {
+ @Schema(description = "产品uuid")
+ private String cpuuid;
+
+ @Schema(description = "产品类型", example = "bx")
+ private String sshyDm;
+
+ @Schema(description = "产品类型名称", example = "保险")
+ private String cplxmc;
+
+ @Schema(description = "业务类型代码")
+ private String ywlxDm;
+
+ @Schema(description = "业务类型名称")
+ private String ywlxmc;
+
+ @Schema(description = "产品名称")
+ private String cpmc;
+
+ @Schema(description = "发行机构uuid")
+ private String fxjgid;
+
+ @Schema(description = "发行机构名称")
+ private String fxjgmc;
+
+
+ @Schema(description = "圆形logo")
+ private String yxlogo;
+
+ @Schema(description = "模式")
+ private String module;
+
+ @Schema(description = "碳类型,1.组织碳 OC 2.碳⾜迹CFP 3.环境产品声明EPD 4.碳边境调节机制CBAM " +
+ "5.环境、社会、治理ESG")
+ private Integer carbonType;
+
+ @Schema(description = "碳类型,1.组织碳 OC 2.碳⾜迹CFP 3.环境产品声明EPD 4.碳边境调节机制CBAM " +
+ "5.环境、社会、治理ESG")
+ private String carbonTypeMc;
+
+
+ @Schema(description = "申请UUID")
+ private String squuid;
+
+ @Schema(description = "申请企业id")
+ private String sqqyid;
+
+ @Schema(description = "申请企业名称")
+ private String sqqymc;
+
+ @Schema(description = "申请企业纳税人识别号")
+ private String sqqyNsrsbh;
+
+ @Schema(description = "联系人")
+ private String lxr;
+
+ @Schema(description = "联系电话")
+ private String lxdh;
+
+ @Schema(description = "可信碳数据资料")
+ private String kxtsjzl;
+
+ @Schema(description = "申请贷款金额")
+ private String sqdkJe;
+
+ @Schema(description = "申请贷款用途")
+ private String sqdkyt;
+
+ @Schema(description = "投保金额")
+ private String tbje;
+
+ @Schema(description = "保险保障期限")
+ private String bxbzqx;
+
+ @Schema(description = "附列资料")
+ private String flzl;
+
+ @Schema(description = "状态")
+ private String zt;
+
+ @Schema(description = "文件名称")
+ private String wjmc;
+
+ @Schema(description = "录入日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private String lrrq;
+
+ @Schema(description = "录入人UUID")
+ private String lrruuid;
+
+ @Schema(description = "修改日期")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC+8")
+ private String xgrq;
+
+ @Schema(description = "修改人UUID")
+ private String xgruuid;
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/properties/readme.md b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/properties/readme.md
new file mode 100644
index 0000000..a94e6df
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/properties/readme.md
@@ -0,0 +1 @@
+# 配置类
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxGxbqbService.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxGxbqbService.java
new file mode 100644
index 0000000..1a7d7a8
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxGxbqbService.java
@@ -0,0 +1,15 @@
+package com.css.txw.gxzx.service;
+
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxbqbDO;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_gxbqb(供需标签表)】的数据库操作Service
+* @createDate 2025-09-16 09:46:06
+*/
+public interface TxwGxzxGxbqbService extends IService {
+
+ void updYxbz(String qyuuid);
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxGxscbService.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxGxscbService.java
new file mode 100644
index 0000000..3c7c86d
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxGxscbService.java
@@ -0,0 +1,15 @@
+package com.css.txw.gxzx.service;
+
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxscbDO;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.css.txw.gxzx.pojo.vo.GxscReqVO;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_gxscb(供需收藏表)】的数据库操作Service
+* @createDate 2025-09-19 14:05:38
+*/
+public interface TxwGxzxGxscbService extends IService {
+
+ String gxsc(GxscReqVO reqVO);
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxGxxxbService.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxGxxxbService.java
new file mode 100644
index 0000000..420f182
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxGxxxbService.java
@@ -0,0 +1,25 @@
+package com.css.txw.gxzx.service;
+
+import com.css.ggzc.framework.common.pojo.CommonResult;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxxxbDO;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.css.txw.gxzx.pojo.vo.GxfbReqVO;
+import com.css.txw.gxzx.pojo.vo.GxsjReqVO;
+import com.css.txw.gxzx.pojo.vo.GxspReqVO;
+import com.css.txw.gxzx.pojo.vo.GxxxVO;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_gxxxb(供需信息表)】的数据库操作Service
+* @createDate 2025-09-13 11:26:24
+*/
+public interface TxwGxzxGxxxbService extends IService {
+
+ String gxfb(GxfbReqVO reqVO);
+
+ String gxsj(GxsjReqVO reqVO);
+
+ void gxsp(GxspReqVO reqVO);
+
+ GxxxVO getGxxx(String gxuuid);
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxQybqbService.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxQybqbService.java
new file mode 100644
index 0000000..88f19fc
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxQybqbService.java
@@ -0,0 +1,14 @@
+package com.css.txw.gxzx.service;
+
+import com.css.txw.gxzx.pojo.domain.TxwGxzxQybqbDO;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_qybqb(企业标签表)】的数据库操作Service
+* @createDate 2025-09-15 14:23:40
+*/
+public interface TxwGxzxQybqbService extends IService {
+
+ void updYxbz(String qyuuid);
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxRzsqjlbService.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxRzsqjlbService.java
new file mode 100644
index 0000000..b9586e2
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxRzsqjlbService.java
@@ -0,0 +1,26 @@
+package com.css.txw.gxzx.service;
+
+import com.css.txw.gxzx.pojo.domain.TxwGxzxRzsqjlbDO;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.css.txw.gxzx.pojo.vo.QyRzSpReqVO;
+import com.css.txw.gxzx.pojo.vo.QyRzSqReqVO;
+import com.css.txw.gxzx.pojo.vo.QyRzSqxxVO;
+import com.css.txw.gxzx.pojo.vo.QyrzListReqVO;
+
+import java.util.List;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_rzsqjlb(入驻申请记录表)】的数据库操作Service
+* @createDate 2025-09-12 15:55:04
+*/
+public interface TxwGxzxRzsqjlbService extends IService {
+
+ String qyrzsq(QyRzSqReqVO reqVO);
+
+ String qyrzsp(QyRzSpReqVO reqVO);
+
+ List qyrzList(QyrzListReqVO reqVO);
+
+ List currentQyrzList();
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxShqkbService.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxShqkbService.java
new file mode 100644
index 0000000..7799718
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/TxwGxzxShqkbService.java
@@ -0,0 +1,28 @@
+package com.css.txw.gxzx.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxShqkbDO;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.css.txw.gxzx.pojo.vo.*;
+
+import java.util.List;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_shqkb(审核情况表)】的数据库操作Service
+* @createDate 2025-09-12 15:19:45
+*/
+public interface TxwGxzxShqkbService extends IService {
+
+ List gxfbList();
+
+ String gxfbSp(GxspReqVO reqVO);
+
+ Page gxxxList(GxxxReqVO reqVO);
+
+ List getQyuuidsByBq(GxxxReqVO reqVO);
+
+ Page gxxxListByYh(GxxxReqVO reqVO);
+
+ Page getGxSqList(GetGxSqListReqVO reqVO);
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxGxbqbServiceImpl.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxGxbqbServiceImpl.java
new file mode 100644
index 0000000..3c56a51
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxGxbqbServiceImpl.java
@@ -0,0 +1,34 @@
+package com.css.txw.gxzx.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.css.txw.gxzx.mapper.TxwGxzxQybqbMapper;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxbqbDO;
+import com.css.txw.gxzx.service.TxwGxzxGxbqbService;
+import com.css.txw.gxzx.mapper.TxwGxzxGxbqbMapper;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_gxbqb(供需标签表)】的数据库操作Service实现
+* @createDate 2025-09-16 09:46:06
+*/
+@Service
+public class TxwGxzxGxbqbServiceImpl extends ServiceImpl
+ implements TxwGxzxGxbqbService {
+
+
+ @Resource
+ private TxwGxzxGxbqbMapper gxbqbMapper;
+
+ @Override
+ public void updYxbz(String qyuuid) {
+ gxbqbMapper.updYxbz(qyuuid);
+ }
+
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxGxscbServiceImpl.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxGxscbServiceImpl.java
new file mode 100644
index 0000000..7519962
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxGxscbServiceImpl.java
@@ -0,0 +1,49 @@
+package com.css.txw.gxzx.service.impl;
+
+import cn.hutool.core.util.IdUtil;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.ggzc.framework.common.util.object.BeanUtils;
+import com.css.ggzc.framework.session.SessionUtils;
+import com.css.txw.gxzx.pojo.vo.GxscReqVO;
+import com.css.txw.gxzx.service.TxwGxzxGxscbService;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxscbDO;
+import com.css.txw.gxzx.mapper.TxwGxzxGxscbMapper;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_gxscb(供需收藏表)】的数据库操作Service实现
+* @createDate 2025-09-19 14:05:38
+*/
+@Service
+public class TxwGxzxGxscbServiceImpl extends ServiceImpl
+ implements TxwGxzxGxscbService {
+
+ @Resource
+ private TxwGxzxGxscbMapper gxscbMapper;
+
+ @Override
+ public String gxsc(GxscReqVO reqVO) {
+ if ("add".equals(reqVO.getType())){
+ List byGxuuidandYhuuid = gxscbMapper.getByGxuuidandYhuuid(reqVO.getGxUuid(), SessionUtils.getYhUuid());
+ if (!GyUtils.isNull(byGxuuidandYhuuid)) return "success";
+ TxwGxzxGxscbDO gxscbDO = BeanUtils.toBean(reqVO,TxwGxzxGxscbDO.class);
+ gxscbDO.setUuid(IdUtil.fastSimpleUUID());
+ gxscbDO.setYhUuid(SessionUtils.getYhUuid());
+ gxscbDO.setLrrq(new Date());
+ this.save(gxscbDO);
+ }else if ("remove".equals(reqVO.getType())){
+ gxscbMapper.removeByGxuuidAndYhuuid(reqVO.getGxUuid(),SessionUtils.getYhUuid());
+ }
+ return "success";
+ }
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxGxxxbServiceImpl.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxGxxxbServiceImpl.java
new file mode 100644
index 0000000..84841ce
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxGxxxbServiceImpl.java
@@ -0,0 +1,214 @@
+package com.css.txw.gxzx.service.impl;
+
+import cn.hutool.core.util.IdUtil;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.css.ggzc.framework.cache.utils.CacheUtils;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.ggzc.framework.common.util.object.BeanUtils;
+import com.css.ggzc.framework.session.SessionUtils;
+import com.css.ggzc.framework.xxzx.api.XxzxApi;
+import com.css.ggzc.framework.xxzx.pojo.XxReqVO;
+import com.css.txw.gxzx.mapper.TxwGxzxShqkbMapper;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxbqbDO;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxGxxxbDO;
+import com.css.txw.gxzx.mapper.TxwGxzxGxxxbMapper;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxShqkbDO;
+import com.css.txw.gxzx.pojo.vo.GxfbReqVO;
+import com.css.txw.gxzx.pojo.vo.GxsjReqVO;
+import com.css.txw.gxzx.pojo.vo.GxspReqVO;
+import com.css.txw.gxzx.pojo.vo.GxxxVO;
+import com.css.txw.gxzx.service.TxwGxzxGxbqbService;
+import com.css.txw.gxzx.service.TxwGxzxGxxxbService;
+import com.css.txw.gxzx.service.TxwGxzxShqkbService;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.*;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_gxxxb(供需信息表)】的数据库操作Service实现
+* @createDate 2025-09-13 11:26:24
+*/
+@Service
+public class TxwGxzxGxxxbServiceImpl extends ServiceImpl
+ implements TxwGxzxGxxxbService {
+
+ @Resource
+ private TxwGxzxShqkbService shqkbService;
+
+ @Resource
+ private TxwGxzxShqkbMapper shqkbMapper;
+
+ @Resource
+ private TxwGxzxGxbqbService gxbqbService;
+
+ @Resource
+ private XxzxApi xxzxApi;
+
+ @Transactional
+ @Override
+ public String gxfb(GxfbReqVO reqVO) {
+ TxwGxzxGxxxbDO gxxxbDO = BeanUtils.toBean(reqVO,TxwGxzxGxxxbDO.class);
+ gxxxbDO.setGxUuid(IdUtil.fastSimpleUUID());
+ gxxxbDO.setQyuuid(SessionUtils.getQyuuid());
+ gxxxbDO.setQymc((String) SessionUtils.get("qymc"));
+ gxxxbDO.setNsrsbh(SessionUtils.getNsrsbh());
+ gxxxbDO.setSjzt("N");
+ gxxxbDO.setZt("2");
+ gxxxbDO.setLrrq(new Date());
+ gxxxbDO.setLrruuid(SessionUtils.getYhUuid());
+ save(gxxxbDO);
+ TxwGxzxShqkbDO shqkbDO = new TxwGxzxShqkbDO();
+ shqkbDO.setGlid(gxxxbDO.getGxUuid());
+ shqkbDO.setYwlxDm(reqVO.getYwlxDm());
+ shqkbDO.setUuid(IdUtil.fastSimpleUUID());
+ shqkbDO.setLrrq(new Date());
+ shqkbDO.setLrrsfid(SessionUtils.getYhUuid());
+ shqkbService.save(shqkbDO);
+ String fwlxjh = reqVO.getFwlxjh();
+ saveQybq(gxxxbDO.getGxUuid(),SessionUtils.getQyuuid(), Arrays.asList(fwlxjh.split(",")));
+ String zdspbz = CacheUtils.dm2mc("cs_ggzc_xtcs", "qyrzzdsp");
+ if (!GyUtils.isNull(zdspbz)&&"Y".equals(zdspbz)){
+ GxspReqVO req = new GxspReqVO();
+ req.setGxuuid(gxxxbDO.getGxUuid());
+ req.setYwlxDm(gxxxbDO.getYwlxDm());
+ req.setZt("3");
+ gxsp(req);
+ }
+ return "success";
+ }
+
+ @Override
+ public String gxsj(GxsjReqVO reqVO) {
+ TxwGxzxGxxxbDO gxxxbDO = BeanUtils.toBean(reqVO, TxwGxzxGxxxbDO.class);
+ updateById(gxxxbDO);
+ return "success";
+ }
+
+ private void saveQybq(String gxuuid,String qyuuid,List bqxx){
+ List list = new ArrayList<>();
+ bqxx.forEach(v->{
+ TxwGxzxGxbqbDO gxbqbDO = new TxwGxzxGxbqbDO();
+ gxbqbDO.setGxUuid(gxuuid);
+ gxbqbDO.setUuid(IdUtil.fastSimpleUUID());
+ gxbqbDO.setYxbz("N");
+ gxbqbDO.setBquuid(v);
+ gxbqbDO.setLrrq(new Date());
+ gxbqbDO.setQyuuid(qyuuid);
+ list.add(gxbqbDO);
+ });
+ gxbqbService.saveBatch(list);
+ }
+
+ @Transactional
+ @Override
+ public void gxsp(GxspReqVO reqVO){
+ TxwGxzxShqkbDO shqkbDO = shqkbMapper.getByGlidAndYwlx(reqVO.getGxuuid());
+ TxwGxzxGxxxbDO byId = this.getById(reqVO.getGxuuid());
+ TxwGxzxGxxxbDO gxxxbDO = new TxwGxzxGxxxbDO();
+ gxxxbDO.setGxUuid(reqVO.getGxuuid());
+ LocalDateTime now = LocalDateTime.now();
+
+ // 定义格式
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+
+ // 生成时间字符串
+ String timeString = now.format(formatter);
+ if ("3".equals(reqVO.getShjg1())){
+ gxxxbDO.setSjzt("Y");
+ XxReqVO xxReqVO = new XxReqVO();
+ Map btMap = new HashMap<>();
+ btMap.put("gxbt",byId.getBt1());
+ Map nrMap = new HashMap<>();
+ nrMap.put("gxbt",byId.getBt1());
+ nrMap.put("rq",timeString);
+ xxReqVO.setMbuuid("gxdt_gxsp_sptg");
+ xxReqVO.setXxbtMap(btMap);
+ xxReqVO.setXxnrMap(nrMap);
+ xxReqVO.setYhuuid(shqkbDO.getLrrsfid());
+ xxzxApi.xtxxfb(xxReqVO);
+ }else {
+ XxReqVO xxReqVO = new XxReqVO();
+ Map btMap = new HashMap<>();
+ btMap.put("gxbt",byId.getBt1());
+ Map nrMap = new HashMap<>();
+ nrMap.put("gxbt",byId.getBt1());
+ nrMap.put("rq",timeString);
+ xxReqVO.setMbuuid("gxdt_gxsp_spsb");
+ xxReqVO.setXxbtMap(btMap);
+ xxReqVO.setXxnrMap(nrMap);
+ xxReqVO.setYhuuid(shqkbDO.getLrrsfid());
+ xxzxApi.xtxxfb(xxReqVO);
+ }
+ gxxxbDO.setZt(reqVO.getShjg1());
+ updateById(gxxxbDO);
+
+
+ shqkbDO.setShrsfid(SessionUtils.getYhUuid());
+ shqkbDO.setShjg1(reqVO.getShjg1());
+ shqkbDO.setShyj1(reqVO.getShyj1());
+ shqkbDO.setShsj(new Date());
+ shqkbService.updateById(shqkbDO);
+
+ gxbqbService.updYxbz(reqVO.getGxuuid());
+
+
+ }
+
+ @Override
+ public GxxxVO getGxxx(String gxuuid) {
+ TxwGxzxGxxxbDO gxxxbDO = this.getById(gxuuid);
+ if (GyUtils.isNull(gxxxbDO)) return null;
+ GxxxVO m = BeanUtils.toBean(gxxxbDO, GxxxVO.class);
+ if (!GyUtils.isNull(m.getBqjh())) {
+ String bqjh = m.getBqjh();
+ String[] split = bqjh.split(",");
+ StringBuilder bqjhmc = new StringBuilder();
+ for (String s : split) {
+ String bq = CacheUtils.dm2mc("bq", s);
+ bqjhmc.append(bq).append(",");
+ }
+ bqjhmc.deleteCharAt(bqjhmc.length() - 1);
+ m.setBqjh(bqjhmc.toString());
+ }
+ if (!GyUtils.isNull(m.getFwfw())) {
+ m.setFwfw(CacheUtils.dm2mc("xzqh", m.getFwfw()));
+ }
+ if (!GyUtils.isNull(m.getFwlxjh())){
+ String fwlx = m.getFwlxjh();
+ String[] split = fwlx.split(",");
+ StringBuilder fwlxjhmc = new StringBuilder();
+ for (String s : split) {
+ String fwlxmc = m.getYwlxDm().equals("01")?CacheUtils.dm2mc("fwlx", s):CacheUtils.dm2mc("xqlx", s);
+ fwlxjhmc.append(fwlxmc).append(",");
+ }
+ fwlxjhmc.deleteCharAt(fwlxjhmc.length()-1);
+ m.setFwlxjh(fwlxjhmc.toString());
+ }
+ if (!GyUtils.isNull(m.getGjdwDm())) {
+ m.setGjdwDm(CacheUtils.dm2mc("dw", m.getGjdwDm()));
+ }
+ if (!GyUtils.isNull(m.getSshy())) {
+ m.setSshy(CacheUtils.dm2mc("sshy", m.getSshy()));
+ }
+ if (!GyUtils.isNull(m.getYsfwDm1())) {
+ m.setYsfwDm1(CacheUtils.dm2mc("ysfw", m.getYsfwDm1()));
+ }
+ if (!GyUtils.isNull(m.getXqjjcdDm())) {
+ m.setXqjjcdDm(CacheUtils.dm2mc("jjcd", m.getXqjjcdDm()));
+ }
+ if (!GyUtils.isNull(m.getZt())) {
+ m.setZt(CacheUtils.dm2mc("shzt", m.getZt()));
+ }
+ return m;
+ }
+
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxQybqbServiceImpl.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxQybqbServiceImpl.java
new file mode 100644
index 0000000..1113470
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxQybqbServiceImpl.java
@@ -0,0 +1,31 @@
+package com.css.txw.gxzx.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxQybqbDO;
+import com.css.txw.gxzx.mapper.TxwGxzxQybqbMapper;
+import com.css.txw.gxzx.service.TxwGxzxQybqbService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_qybqb(企业标签表)】的数据库操作Service实现
+* @createDate 2025-09-15 14:23:40
+*/
+@Service
+public class TxwGxzxQybqbServiceImpl extends ServiceImpl
+ implements TxwGxzxQybqbService {
+
+ @Resource
+ private TxwGxzxQybqbMapper qybqbMapper;
+
+ @Override
+ public void updYxbz(String qyuuid) {
+ qybqbMapper.updYxbz(qyuuid);
+ }
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxRzsqjlbServiceImpl.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxRzsqjlbServiceImpl.java
new file mode 100644
index 0000000..7f1abc5
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxRzsqjlbServiceImpl.java
@@ -0,0 +1,132 @@
+package com.css.txw.gxzx.service.impl;
+
+import cn.hutool.core.util.IdUtil;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.css.ggzc.framework.common.pojo.CommonResult;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.ggzc.framework.common.util.object.BeanUtils;
+import com.css.ggzc.framework.session.SessionUtils;
+import com.css.ggzc.framework.xxzx.api.XxzxApi;
+import com.css.ggzc.framework.xxzx.pojo.XxReqVO;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxRzsqjlbDO;
+import com.css.txw.gxzx.pojo.vo.QyRzSqxxVO;
+import com.css.txw.gxzx.pojo.vo.QyrzListReqVO;
+import com.css.txw.mhzc.api.IMhzcApi;
+import com.css.txw.gxzx.mapper.TxwGxzxRzsqjlbMapper;
+import com.css.txw.gxzx.pojo.vo.QyRzSpReqVO;
+import com.css.txw.gxzx.pojo.vo.QyRzSqReqVO;
+import com.css.txw.gxzx.service.TxwGxzxRzsqjlbService;
+import com.css.txw.mhzc.pojo.QyrzReqDTO;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_rzsqjlb(入驻申请记录表)】的数据库操作Service实现
+* @createDate 2025-09-12 15:55:04
+*/
+@Service
+public class TxwGxzxRzsqjlbServiceImpl extends ServiceImpl
+ implements TxwGxzxRzsqjlbService {
+
+ @Resource
+ private TxwGxzxRzsqjlbMapper rzsqjlbMapper;
+
+ @Resource
+ private IMhzcApi iMhzcApi;
+
+ @Resource
+ private XxzxApi xxzxApi;
+
+ @Override
+ public String qyrzsq(QyRzSqReqVO reqVO) {
+ TxwGxzxRzsqjlbDO rzsqjlbDO = BeanUtils.toBean(reqVO,TxwGxzxRzsqjlbDO.class);
+ rzsqjlbDO.setUuid(IdUtil.fastSimpleUUID());
+ rzsqjlbDO.setLrrq(new Date());
+ rzsqjlbDO.setLrruuid(SessionUtils.getYhUuid());
+ rzsqjlbDO.setYwlxDm("01");
+ rzsqjlbDO.setSqly(reqVO.getSqsm());
+
+ rzsqjlbDO.setYhUuid(SessionUtils.getYhUuid());
+ rzsqjlbDO.setDlzh(SessionUtils.getDlzh());
+ rzsqjlbDO.setZsxm1(SessionUtils.getZsxm());
+ this.save(rzsqjlbDO);
+ return "ok";
+ }
+
+ @Transactional
+ @Override
+ public String qyrzsp(QyRzSpReqVO reqVO) {
+ TxwGxzxRzsqjlbDO rzsqjlbDO = getById(reqVO.getUuid());
+ LocalDateTime now = LocalDateTime.now();
+
+ // 定义格式
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+
+ // 生成时间字符串
+ String timeString = now.format(formatter);
+ if ("3".equals(reqVO.getShjg1())){
+ QyrzReqDTO reqDTO = new QyrzReqDTO();
+ reqDTO.setYwlxDm("01");
+ reqDTO.setNsrsbh(rzsqjlbDO.getNsrsbh());
+ CommonResult qyrz = iMhzcApi.qyrz(reqDTO);
+ if (!qyrz.getData().equals("success")) throw new IllegalStateException("企业信息入驻标志修改错误");
+ XxReqVO xxReqVO = new XxReqVO();
+ Map btMap = new HashMap<>();
+ btMap.put("qymc",rzsqjlbDO.getQymc());
+ Map nrMap = new HashMap<>();
+ nrMap.put("qymc",rzsqjlbDO.getQymc());
+ nrMap.put("rq",timeString);
+ xxReqVO.setMbuuid("gxdt_rzsp_sptg");
+ xxReqVO.setXxbtMap(btMap);
+ xxReqVO.setXxnrMap(nrMap);
+ xxReqVO.setYhuuid(rzsqjlbDO.getLrruuid());
+ xxzxApi.xtxxfb(xxReqVO);
+ }else {
+ XxReqVO xxReqVO = new XxReqVO();
+ Map btMap = new HashMap<>();
+ btMap.put("qymc",rzsqjlbDO.getQymc());
+ Map nrMap = new HashMap<>();
+ nrMap.put("qymc",rzsqjlbDO.getQymc());
+ nrMap.put("rq",timeString);
+ xxReqVO.setMbuuid("gxdt_rzsp_spsb");
+ xxReqVO.setXxbtMap(btMap);
+ xxReqVO.setXxnrMap(nrMap);
+ xxReqVO.setYhuuid(rzsqjlbDO.getLrruuid());
+ xxzxApi.xtxxfb(xxReqVO);
+ }
+
+ rzsqjlbDO.setShjg1(reqVO.getShjg1());
+ rzsqjlbDO.setShyj1(reqVO.getShyj1());
+ rzsqjlbDO.setShrsfid(SessionUtils.getYhUuid());
+ rzsqjlbDO.setShsj(new Date());
+ updateById(rzsqjlbDO);
+ return "";
+ }
+
+ @Override
+ public List qyrzList(QyrzListReqVO reqVO) {
+ List txwGxzxRzsqjlbDOS = rzsqjlbMapper.qyrzList(reqVO);
+ if (GyUtils.isNull(txwGxzxRzsqjlbDOS)) return null;
+ return BeanUtils.toBean(txwGxzxRzsqjlbDOS,QyRzSqxxVO.class);
+ }
+
+ @Override
+ public List currentQyrzList() {
+ List txwGxzxRzsqjlbDOS = rzsqjlbMapper.currentQyrzList(SessionUtils.getYhUuid());
+ if (GyUtils.isNull(txwGxzxRzsqjlbDOS)) return null;
+ return BeanUtils.toBean(txwGxzxRzsqjlbDOS,QyRzSqxxVO.class);
+ }
+}
+
+
+
+
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxShqkbServiceImpl.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxShqkbServiceImpl.java
new file mode 100644
index 0000000..5312ba4
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/impl/TxwGxzxShqkbServiceImpl.java
@@ -0,0 +1,271 @@
+package com.css.txw.gxzx.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.css.ggzc.framework.cache.utils.CacheUtils;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.ggzc.framework.common.util.object.BeanUtils;
+import com.css.ggzc.framework.session.SessionUtils;
+import com.css.txw.gxzx.mapper.*;
+import com.css.txw.gxzx.pojo.domain.*;
+import com.css.txw.gxzx.pojo.vo.*;
+import com.css.txw.gxzx.service.TxwGxzxShqkbService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.*;
+import java.util.stream.Collectors;
+
+/**
+* @author AirlH
+* @description 针对表【txw_gxzx_shqkb(审核情况表)】的数据库操作Service实现
+* @createDate 2025-09-12 15:19:45
+*/
+@Service
+public class TxwGxzxShqkbServiceImpl extends ServiceImpl
+ implements TxwGxzxShqkbService {
+
+ @Resource
+ private TxwGxzxShqkbMapper shqkbMapper;
+
+ @Resource
+ private TxwGxzxGxxxbMapper gxxxbMapper;
+
+ @Resource
+ private TxwGxzxGxbqbMapper gxbqbMapper;
+
+ @Resource
+ private TxwGxzxGxscbMapper gxscbMapper;
+
+ @Override
+ public List gxfbList() {
+ List txwGxzxShqkbDOS = shqkbMapper.gxfbList();
+ if (GyUtils.isNull(txwGxzxShqkbDOS)) return null;
+ return BeanUtils.toBean(txwGxzxShqkbDOS, ShqkxxVO.class);
+ }
+
+ @Override
+ public String gxfbSp(GxspReqVO reqVO) {
+ TxwGxzxShqkbDO shqkbDO = getById(reqVO.getUuid());
+ shqkbDO.setShrsfid(SessionUtils.getYhUuid());
+ shqkbDO.setShjg1(reqVO.getShjg1());
+ shqkbDO.setShyj1(reqVO.getShyj1());
+ shqkbDO.setShsj(new Date());
+ updateById(shqkbDO);
+ return "success";
+ }
+
+ @Override
+ public Page gxxxList(GxxxReqVO reqVO) {
+ List byYhuuid = gxscbMapper.getByYhuuid(SessionUtils.getYhUuid());
+ List scgxuuid = GyUtils.isNull(byYhuuid)?new ArrayList<>():byYhuuid.stream().map(TxwGxzxGxscbDO::getGxUuid).collect(Collectors.toList());
+
+ Set gxuuids = new LinkedHashSet<>();
+ if (!GyUtils.isNull(reqVO.getFwlxjh())){
+ List list = gxbqbMapper.getGxuuids(reqVO.getQyuuids(),reqVO.getFwlxjh());
+ if (GyUtils.isNull(list)) return null;
+ gxuuids = list.stream().map(TxwGxzxGxbqbDO::getGxUuid).collect(Collectors.toSet());
+ if (GyUtils.isNull(gxuuids)||gxuuids.size()<1) return null;
+ if (!GyUtils.isNull(reqVO.getScbz())&&"Y".equals(reqVO.getScbz())){
+ gxuuids.retainAll(scgxuuid);
+ if (GyUtils.isNull(gxuuids)) return null;
+ }
+ }else {
+ if (!GyUtils.isNull(reqVO.getScbz())&&"Y".equals(reqVO.getScbz())){
+ gxuuids.addAll(scgxuuid);
+ if (GyUtils.isNull(gxuuids)) return null;
+ }
+ }
+
+ Page txwGxzxGxxxbDOS = gxxxbMapper.gxxxList(reqVO, gxuuids);
+ if (GyUtils.isNull(txwGxzxGxxxbDOS)) return null;
+ List records = txwGxzxGxxxbDOS.getRecords();
+ if (GyUtils.isNull(records)) return null;
+ List gxxxVOS = BeanUtils.toBean(records, GxxxVO.class);
+ List collect = gxxxVOS.stream().map(m -> {
+ m.setScbz("N");
+ if (scgxuuid.contains(m.getGxUuid())) m.setScbz("Y");
+ if (!GyUtils.isNull(m.getBqjh())) {
+ String bqjh = m.getBqjh();
+ String[] split = bqjh.split(",");
+ StringBuilder bqjhmc = new StringBuilder();
+ for (String s : split) {
+ String bq = CacheUtils.dm2mc("bq", s);
+ bqjhmc.append(bq).append(",");
+ }
+ bqjhmc.deleteCharAt(bqjhmc.length() - 1);
+ m.setBqjh(bqjhmc.toString());
+ }
+ if (!GyUtils.isNull(m.getFwfw())) {
+ m.setFwfw(CacheUtils.dm2mc("xzqh", m.getFwfw()));
+ }
+ if (!GyUtils.isNull(m.getFwlxjh())){
+ String fwlx = m.getFwlxjh();
+ String[] split = fwlx.split(",");
+ StringBuilder fwlxjhmc = new StringBuilder();
+ for (String s : split) {
+ String fwlxmc = m.getYwlxDm().equals("01")?CacheUtils.dm2mc("fwlx", s):CacheUtils.dm2mc("xqlx", s);
+ fwlxjhmc.append(fwlxmc).append(",");
+ }
+ fwlxjhmc.deleteCharAt(fwlxjhmc.length()-1);
+ m.setFwlxjh(fwlxjhmc.toString());
+ }
+ if (!GyUtils.isNull(m.getGjdwDm())) {
+ m.setGjdwDm(CacheUtils.dm2mc("dw", m.getGjdwDm()));
+ }
+// if (!GyUtils.isNull(m.getSshy())){
+// m.setSshy(CacheUtils.dm2mc("sshy",m.getSshy()));
+// }
+ if (!GyUtils.isNull(m.getYsfwDm1())) {
+ m.setYsfwDm1(CacheUtils.dm2mc("ysfw", m.getYsfwDm1()));
+ }
+ if (!GyUtils.isNull(m.getXqjjcdDm())) {
+ m.setXqjjcdDm(CacheUtils.dm2mc("jjcd", m.getXqjjcdDm()));
+ }
+ return m;
+ }).collect(Collectors.toList());
+ Page page = new Page<>();
+ page.setRecords(collect);
+ page.setSize(txwGxzxGxxxbDOS.getSize());
+ page.setPages(txwGxzxGxxxbDOS.getPages());
+ page.setTotal(txwGxzxGxxxbDOS.getTotal());
+ page.setCurrent(txwGxzxGxxxbDOS.getCurrent());
+ return page;
+ }
+
+ @Override
+ public List getQyuuidsByBq(GxxxReqVO reqVO) {
+ List list = gxbqbMapper.getQyuuids(reqVO.getFwlxjh());
+ if (GyUtils.isNull(list)) return null;
+ return list.stream().map(TxwGxzxGxbqbDO::getQyuuid).collect(Collectors.toList());
+ }
+
+ @Override
+ public Page gxxxListByYh(GxxxReqVO reqVO) {
+ Page txwGxzxGxxxbDOS = gxxxbMapper.gxxxListByYh(reqVO,SessionUtils.getYhUuid());
+ if (GyUtils.isNull(txwGxzxGxxxbDOS)) return null;
+ List records = txwGxzxGxxxbDOS.getRecords();
+ if (GyUtils.isNull(records)) return null;
+ List gxxxVOS = BeanUtils.toBean(records, GxxxVO.class);
+ List collect = gxxxVOS.stream().map(m -> {
+ if (!GyUtils.isNull(m.getBqjh())) {
+ String bqjh = m.getBqjh();
+ String[] split = bqjh.split(",");
+ StringBuilder bqjhmc = new StringBuilder();
+ for (String s : split) {
+ String bq = CacheUtils.dm2mc("bq", s);
+ bqjhmc.append(bq).append(",");
+ }
+ bqjhmc.deleteCharAt(bqjhmc.length() - 1);
+ m.setBqjh(bqjhmc.toString());
+ }
+ if (!GyUtils.isNull(m.getFwfw())) {
+ m.setFwfw(CacheUtils.dm2mc("xzqh", m.getFwfw()));
+ }
+ if (!GyUtils.isNull(m.getFwlxjh())){
+ String fwlx = m.getFwlxjh();
+ String[] split = fwlx.split(",");
+ StringBuilder fwlxjhmc = new StringBuilder();
+ for (String s : split) {
+ String fwlxmc = m.getYwlxDm().equals("01")?CacheUtils.dm2mc("fwlx", s):CacheUtils.dm2mc("xqlx", s);
+ fwlxjhmc.append(fwlxmc).append(",");
+ }
+ fwlxjhmc.deleteCharAt(fwlxjhmc.length()-1);
+ m.setFwlxjh(fwlxjhmc.toString());
+ }
+ if (!GyUtils.isNull(m.getGjdwDm())) {
+ m.setGjdwDm(CacheUtils.dm2mc("dw", m.getGjdwDm()));
+ }
+ if (!GyUtils.isNull(m.getSshy())) {
+ m.setSshy(CacheUtils.dm2mc("sshy", m.getSshy()));
+ }
+ if (!GyUtils.isNull(m.getYsfwDm1())) {
+ m.setYsfwDm1(CacheUtils.dm2mc("ysfw", m.getYsfwDm1()));
+ }
+ if (!GyUtils.isNull(m.getXqjjcdDm())) {
+ m.setXqjjcdDm(CacheUtils.dm2mc("jjcd", m.getXqjjcdDm()));
+ }
+ if (!GyUtils.isNull(m.getZt())) {
+ m.setZt(CacheUtils.dm2mc("shzt", m.getZt()));
+ }
+ return m;
+ }).collect(Collectors.toList());
+
+ Page page = new Page<>();
+ page.setRecords(collect);
+ page.setSize(txwGxzxGxxxbDOS.getSize());
+ page.setPages(txwGxzxGxxxbDOS.getPages());
+ page.setTotal(txwGxzxGxxxbDOS.getTotal());
+ page.setCurrent(txwGxzxGxxxbDOS.getCurrent());
+ return page;
+ }
+
+ @Override
+ public Page getGxSqList(GetGxSqListReqVO reqVO) {
+ Page gxSqList = gxxxbMapper.getGxSqList(reqVO);
+ if (GyUtils.isNull(gxSqList)) return null;
+ List records = gxSqList.getRecords();
+ List gxxxVOS = BeanUtils.toBean(records, GxxxVO.class);
+ List collect = gxxxVOS.stream().map(m -> {
+ if (!GyUtils.isNull(m.getBqjh())) {
+ String bqjh = m.getBqjh();
+ String[] split = bqjh.split(",");
+ StringBuilder bqjhmc = new StringBuilder();
+ for (String s : split) {
+ String bq = CacheUtils.dm2mc("bq", s);
+ bqjhmc.append(bq).append(",");
+ }
+ bqjhmc.deleteCharAt(bqjhmc.length() - 1);
+ m.setBqjh(bqjhmc.toString());
+ }
+ if (!GyUtils.isNull(m.getFwfw())) {
+ m.setFwfw(CacheUtils.dm2mc("xzqh", m.getFwfw()));
+ }
+ if (!GyUtils.isNull(m.getFwlxjh())){
+ String fwlx = m.getFwlxjh();
+ String[] split = fwlx.split(",");
+ StringBuilder fwlxjhmc = new StringBuilder();
+ for (String s : split) {
+ String fwlxmc = m.getYwlxDm().equals("01")?CacheUtils.dm2mc("fwlx", s):CacheUtils.dm2mc("xqlx", s);
+ fwlxjhmc.append(fwlxmc).append(",");
+ }
+ fwlxjhmc.deleteCharAt(fwlxjhmc.length()-1);
+ m.setFwlxjh(fwlxjhmc.toString());
+ }
+ if (!GyUtils.isNull(m.getGjdwDm())) {
+ m.setGjdwDm(CacheUtils.dm2mc("dw", m.getGjdwDm()));
+ }
+ if (!GyUtils.isNull(m.getSshy())) {
+ m.setSshy(CacheUtils.dm2mc("sshy", m.getSshy()));
+ }
+ if (!GyUtils.isNull(m.getYsfwDm1())) {
+ m.setYsfwDm1(CacheUtils.dm2mc("ysfw", m.getYsfwDm1()));
+ }
+ if (!GyUtils.isNull(m.getXqjjcdDm())) {
+ m.setXqjjcdDm(CacheUtils.dm2mc("jjcd", m.getXqjjcdDm()));
+ }
+ if (!GyUtils.isNull(m.getZt())) {
+ m.setZt(CacheUtils.dm2mc("shzt", m.getZt()));
+ }
+ return m;
+ }).collect(Collectors.toList());
+ Page page = new Page<>();
+ page.setRecords(collect);
+ page.setSize(gxSqList.getSize());
+ page.setPages(gxSqList.getPages());
+ page.setTotal(gxSqList.getTotal());
+ page.setCurrent(gxSqList.getCurrent());
+ return page;
+// Page gxSqList = shqkbMapper.getGxSqList(reqVO);
+// if (GyUtils.isNull(gxSqList)) return null;
+// List records = gxSqList.getRecords();
+// List collect = BeanUtils.toBean(records, GxxxVO.class);
+// Page page = new Page<>();
+// page.setRecords(collect);
+// page.setSize(gxSqList.getSize());
+// page.setPages(gxSqList.getPages());
+// page.setTotal(gxSqList.getTotal());
+// page.setCurrent(gxSqList.getCurrent());
+// return page;
+ }
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/GxzxDkbxsqxxService.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/GxzxDkbxsqxxService.java
new file mode 100644
index 0000000..ab0e8e1
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/GxzxDkbxsqxxService.java
@@ -0,0 +1,12 @@
+package com.css.txw.gxzx.service.lsjr;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.css.ggzc.framework.common.pojo.PageResult;
+import com.css.txw.gxzx.pojo.domain.lsjr.GxzxDkbxsqxx;
+import com.css.txw.gxzx.pojo.lsjr.XdbxcpsqRequestVO;
+import com.css.txw.gxzx.pojo.vo.lsjr.ProductApplyVO;
+
+public interface GxzxDkbxsqxxService extends IService {
+
+ PageResult queryXdbxcpsqInfo(XdbxcpsqRequestVO request);
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/GxzxLsjrService.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/GxzxLsjrService.java
new file mode 100644
index 0000000..8051038
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/GxzxLsjrService.java
@@ -0,0 +1,53 @@
+package com.css.txw.gxzx.service.lsjr;
+
+import com.css.ggzc.framework.cache.vo.DmbDTO;
+import com.css.ggzc.framework.common.pojo.PageResult;
+import com.css.txw.gxzx.pojo.lsjr.*;
+import com.css.txw.gxzx.pojo.vo.GxspReqVO;
+import com.css.txw.gxzx.pojo.vo.ShqkxxVO;
+import com.css.txw.gxzx.pojo.vo.lsjr.ProductApplyVO;
+
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.List;
+
+import javax.validation.Valid;
+
+public interface GxzxLsjrService {
+
+ List queryJgList(YhBxjgcxRequestVO requestVO);
+
+ PageResult queryXdbxcpList(XdbxcpcxRequestVO requestVO);
+
+ GxzxLsjrcpxxDto queryXdbxcpxq(String cpid);
+
+ KxtsjResponseDataDto queryKxtsj(KxtsjRequestVO requestVO);
+
+ String saveDksqxx(GxzxDkbxsqxxDto dto, MultipartFile file);
+
+ String saveTbsqxx(GxzxDkbxsqxxDto dto, MultipartFile file);
+
+ DownloadFileInfoVO querySqFileByid(String squuid);
+
+ String saveOrUpdateCpxx(GxzxLsjrcpxxDto dto);
+
+ boolean delete(String cpid);
+
+ boolean batchDelete(BatchDeleteReqVO reqVO);
+
+ PageResult queryDspXdbxcpList(DspXdbxcpcxRequestVO requestVO);
+
+ String cpSp(GxspReqVO reqVO);
+
+ String cpsxj(CpsxjReqVO reqVO);
+
+ String pldr(MultipartFile file);
+
+ PageResult queryXdbxcpsqList(XdbxcpsqRequestVO requestVO);
+
+ GxzxDkbxsqxxVO queryXdbxcpsqxq(String squuid);
+
+ PageResult queryXdbxcpsqInfo(XdbxcpsqRequestVO request);
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/GxzxLsjrcpxxService.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/GxzxLsjrcpxxService.java
new file mode 100644
index 0000000..b8ccabd
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/GxzxLsjrcpxxService.java
@@ -0,0 +1,7 @@
+package com.css.txw.gxzx.service.lsjr;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.css.txw.gxzx.pojo.domain.lsjr.GxzxLsjrcpxx;
+
+public interface GxzxLsjrcpxxService extends IService {
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/GxzxDkbxsqxxServiceImpl.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/GxzxDkbxsqxxServiceImpl.java
new file mode 100644
index 0000000..7eff5ea
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/GxzxDkbxsqxxServiceImpl.java
@@ -0,0 +1,84 @@
+package com.css.txw.gxzx.service.lsjr.impl;
+
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+import javax.annotation.Resource;
+
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.css.ggzc.framework.cache.utils.CacheUtils;
+import com.css.ggzc.framework.cache.vo.DmbDTO;
+import com.css.ggzc.framework.common.pojo.PageResult;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.ggzc.framework.common.util.json.JsonUtils;
+import com.css.txw.gxzx.mapper.lsjr.GxzxDkbxsqxxMapper;
+import com.css.txw.gxzx.pojo.domain.lsjr.GxzxDkbxsqxx;
+import com.css.txw.gxzx.pojo.domain.lsjr.GxzxLsjrcpxx;
+import com.css.txw.gxzx.pojo.lsjr.GxzxLsjrcpxxDto;
+import com.css.txw.gxzx.pojo.lsjr.XdbxcpsqRequestVO;
+import com.css.txw.gxzx.pojo.vo.lsjr.ProductApplyVO;
+import com.css.txw.gxzx.service.lsjr.GxzxDkbxsqxxService;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+@Service
+public class GxzxDkbxsqxxServiceImpl extends ServiceImpl implements GxzxDkbxsqxxService {
+
+ @Resource
+ private GxzxDkbxsqxxMapper dkbxsqxxMapper;
+ @Override
+ public PageResult queryXdbxcpsqInfo(XdbxcpsqRequestVO requestVO) {
+ PageResult pageResult = new PageResult<>();
+ pageResult.setTotal(0L);
+ Integer pageNum = requestVO.getPageNum();
+ Integer pageSize = requestVO.getPageSize();
+ Page page = new Page<>(pageNum, pageSize);
+ Page sqxxPage= dkbxsqxxMapper.queryXdbxcpsqInfo(page,requestVO);
+// if (GyUtils.isNotNull(sqxxPage)) {
+// pageResult.setTotal(sqxxPage.getTotal());
+// pageResult.setList(sqxxPage.getRecords());
+// }
+ if (GyUtils.isNotNull(sqxxPage) && GyUtils.isNotNull(sqxxPage.getRecords())) {
+ List records = sqxxPage.getRecords();
+ List xdlxList = CacheUtils.getDmbData("LSJR_XDYWLX");
+ List bxlxList = CacheUtils.getDmbData("LSJR_BXYWLX");
+ Map xdlxMap = xdlxList.stream().collect(Collectors.toMap(DmbDTO::getCode, DmbDTO::getCaption));
+ Map bxlxMap = bxlxList.stream().collect(Collectors.toMap(DmbDTO::getCode, DmbDTO::getCaption));
+ List carbonTypeList = CacheUtils.getDmbData("CARBON_TYPE");
+ Map carbonTypeMap = carbonTypeList.stream().collect(Collectors.toMap(DmbDTO::getCode, DmbDTO::getCaption));
+ for (ProductApplyVO dto : records) {
+ String ywlxDm = dto.getYwlxDm();
+ String sshyDm = dto.getSshyDm();
+ String ywlxmc = null;
+ if (GyUtils.isEquals(sshyDm, "xd")) {
+ ywlxmc = xdlxMap.get(ywlxDm);
+ }
+ else {
+ ywlxmc = bxlxMap.get(ywlxDm);
+ }
+ dto.setYwlxmc(ywlxmc);
+ Integer carbonType = dto.getCarbonType();
+ String carbonTypeDesc = carbonTypeMap.get(carbonType + "");
+ dto.setCarbonTypeMc(carbonTypeDesc);
+ // 设置logo
+ String jgid = dto.getFxjgid();
+ String tableName = "xd".equals(sshyDm) ? "LSJRYH" : "LSJRBXJG";
+ String cplxmc = "xd".equals(sshyDm) ? "信贷" : "保险";
+ dto.setCplxmc(cplxmc);
+ Map tableData = CacheUtils.getTableData(tableName, jgid);
+ if (GyUtils.isNotNull(tableData)) {
+ dto.setYxlogo(GyUtils.isNotNull(tableData.get("bz")) ? tableData.get("bz").toString() : null);
+ }
+ }
+ pageResult.setTotal(sqxxPage.getTotal());
+ pageResult.setList(sqxxPage.getRecords());
+ }
+ return pageResult;
+ }
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/GxzxLsjrServiceImpl.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/GxzxLsjrServiceImpl.java
new file mode 100644
index 0000000..d11dcce
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/GxzxLsjrServiceImpl.java
@@ -0,0 +1,544 @@
+package com.css.txw.gxzx.service.lsjr.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.IdUtil;
+import cn.hutool.json.JSONUtil;
+import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.read.builder.ExcelReaderBuilder;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.css.ggzc.framework.cache.utils.CacheUtils;
+import com.css.ggzc.framework.cache.utils.XtcsUtils;
+import com.css.ggzc.framework.cache.vo.DmbDTO;
+import com.css.ggzc.framework.common.exception.RRException;
+import com.css.ggzc.framework.common.exception.ServiceException;
+import com.css.ggzc.framework.common.exception.enums.GlobalErrorCodeConstants;
+import com.css.ggzc.framework.common.pojo.PageResult;
+import com.css.ggzc.framework.common.util.date.DateUtils;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.ggzc.framework.common.util.json.JsonUtils;
+import com.css.ggzc.framework.file.utils.GgzcFileUtils;
+import com.css.ggzc.framework.session.SessionUtils;
+import com.css.txw.common.util.TxwHttpUtils;
+import com.css.txw.gxzx.constants.SjztEnum;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxShqkbDO;
+import com.css.txw.gxzx.pojo.domain.lsjr.GxzxDkbxsqxx;
+import com.css.txw.gxzx.pojo.domain.lsjr.GxzxLsjrcpxx;
+import com.css.txw.gxzx.pojo.dto.GxzxLsjrcpImportDto;
+import com.css.txw.gxzx.pojo.lsjr.*;
+import com.css.txw.gxzx.pojo.vo.GxspReqVO;
+import com.css.txw.gxzx.pojo.vo.ShqkxxVO;
+import com.css.txw.gxzx.pojo.vo.lsjr.ProductApplyVO;
+import com.css.txw.gxzx.service.TxwGxzxShqkbService;
+import com.css.txw.gxzx.service.lsjr.GxzxDkbxsqxxService;
+import com.css.txw.gxzx.service.lsjr.GxzxLsjrService;
+import com.css.txw.gxzx.service.lsjr.GxzxLsjrcpxxService;
+import lombok.SneakyThrows;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.http.HttpMethod;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+import javax.validation.Valid;
+
+import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.*;
+import java.util.stream.Collectors;
+
+@Slf4j
+@Service
+public class GxzxLsjrServiceImpl implements GxzxLsjrService {
+
+ @Resource
+ private GxzxDkbxsqxxService dkbxsqxxService;
+
+ @Resource
+ private GxzxLsjrcpxxService lsjrcpxxService;
+
+ @Resource
+ private TxwGxzxShqkbService txwGxzxShqkbService;
+
+ @Resource
+ private TxwHttpUtils txwHttpUtils;
+
+ @Override
+ public List queryJgList(YhBxjgcxRequestVO requestVO) {
+ String type = requestVO.getType();
+ String tableName = "xd".equals(type) ? "LSJRYH" : "LSJRBXJG";
+ List dtoList = CacheUtils.getDmbData(tableName);
+ if (GyUtils.isNull(dtoList)) {
+ dtoList = new ArrayList<>();
+ }
+ return dtoList;
+ }
+
+ @Override
+ public PageResult queryXdbxcpList(XdbxcpcxRequestVO requestVO) {
+ List list = new ArrayList<>();
+ PageResult pageResult = new PageResult<>();
+ pageResult.setTotal(0L);
+ Integer pageNum = requestVO.getPageNum();
+ Integer pageSize = requestVO.getPageSize();
+ String cpmc = requestVO.getCpmc();
+ List qyidList = requestVO.getQyidList();
+ String type = requestVO.getType();
+ String sxjzt = requestVO.getSxjzt();
+ String module = requestVO.getModule();// 后台维护时只能看自己发布的,产品查询时不限制本企业
+ Page page = new Page<>(pageNum, pageSize);
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda()
+ .eq((!type.contains(",")), GxzxLsjrcpxx::getSshyDm, type)
+ .in((type.contains(",")), GxzxLsjrcpxx::getSshyDm, Arrays.asList(type.split(",")))
+ .in(GyUtils.isNotNull(qyidList), GxzxLsjrcpxx::getQyuuid, qyidList)
+ .like(GyUtils.isNotNull(cpmc), GxzxLsjrcpxx::getCpmc, cpmc)
+ .like(GyUtils.isNotNull(requestVO.getJgmc()), GxzxLsjrcpxx::getQymc, requestVO.getJgmc())
+ .eq(GyUtils.isNotNull(requestVO.getCarbonType()), GxzxLsjrcpxx::getCarbonType, requestVO.getCarbonType())
+ .eq(GyUtils.isNotNull(requestVO.getYwlxDm()), GxzxLsjrcpxx::getYwlxDm, requestVO.getYwlxDm())
+ .eq((GyUtils.isNotNull(sxjzt) && "wh".equals(module)), GxzxLsjrcpxx::getSjzt, sxjzt)
+ .eq((GyUtils.isNull(sxjzt) && !"wh".equals(module)), GxzxLsjrcpxx::getSjzt, SjztEnum.SJ.getCode())
+ .orderByDesc(GxzxLsjrcpxx::getSjzt)
+ .orderByDesc(GxzxLsjrcpxx::getLrrq);
+ Page cpxxPage = lsjrcpxxService.page(page, queryWrapper);
+ if (GyUtils.isNotNull(cpxxPage) && GyUtils.isNotNull(cpxxPage.getRecords())) {
+ List records = cpxxPage.getRecords();
+ list = JsonUtils.toList(JsonUtils.toJson(records), GxzxLsjrcpxxDto.class);
+ String tableName = "xd".equals(type) ? "LSJR_XDYWLX" : "LSJR_BXYWLX";
+ List yelxList = CacheUtils.getDmbData(tableName);
+ Map ywlxMap = yelxList.stream().collect(Collectors.toMap(DmbDTO::getCode, DmbDTO::getCaption));
+ List carbonTypeList = CacheUtils.getDmbData("CARBON_TYPE");
+ Map carbonTypeMap = carbonTypeList.stream().collect(Collectors.toMap(DmbDTO::getCode, DmbDTO::getCaption));
+
+ for (GxzxLsjrcpxxDto dto : list) {
+ String ywlxDm = dto.getYwlxDm();
+ String ywlxmc = ywlxMap.get(ywlxDm);
+ dto.setYwlxmc(ywlxmc);
+ Integer carbonType = dto.getCarbonType();
+ String carbonTypeDesc = carbonTypeMap.get(carbonType + "");
+ dto.setCarbonTypeMc(carbonTypeDesc);
+ // 设置logo
+ String jgid = dto.getQyuuid();
+ String sshyDm = dto.getSshyDm();
+ tableName = "xd".equals(sshyDm) ? "LSJRYH" : "LSJRBXJG";
+ String cplxmc = "xd".equals(sshyDm) ? "信贷" : "保险";
+ dto.setCplxmc(cplxmc);
+ Map tableData = CacheUtils.getTableData(tableName, jgid);
+ if (GyUtils.isNotNull(tableData)) {
+ dto.setYxlogo(GyUtils.isNotNull(tableData.get("bz")) ? tableData.get("bz").toString() : null);
+ }
+ }
+ }
+ pageResult.setTotal(cpxxPage.getTotal());
+ pageResult.setList(list);
+ return pageResult;
+ }
+
+ @Override
+ public GxzxLsjrcpxxDto queryXdbxcpxq(String cpid) {
+ GxzxLsjrcpxx lsjrcpxx = lsjrcpxxService.getById(cpid);
+ if (GyUtils.isNull(lsjrcpxx)) {
+ return null;
+ }
+ GxzxLsjrcpxxDto lsjrcpxxDto = JsonUtils.toBean(JsonUtils.toJson(lsjrcpxx), GxzxLsjrcpxxDto.class);
+ String sshyDm = lsjrcpxxDto.getSshyDm();
+ String tableName = "xd".equals(sshyDm) ? "LSJR_XDYWLX" : "LSJR_BXYWLX";
+ String ywlxmc = CacheUtils.dm2mc(tableName, lsjrcpxxDto.getYwlxDm());
+ lsjrcpxxDto.setYwlxmc(ywlxmc);
+ return lsjrcpxxDto;
+ }
+
+ @Override
+ public KxtsjResponseDataDto queryKxtsj(KxtsjRequestVO requestVO) {
+ KxtsjResponseDataDto responseDataDto = new KxtsjResponseDataDto();
+ List dataList = new ArrayList<>();
+ String kxtcxUrl = CacheUtils.getXtcs("KXTCX_URL");
+// String kxtcxUrl = "https://ctn-web-pre.lingshu.net/api/v1/open/carbon-business/page";
+ KxtsjResponseDto kxtsjResponseDto = null;
+ String responseStr = null;
+ try {
+ String shxydm = SessionUtils.getShxydm();
+ requestVO.setSearch(shxydm);
+ txwHttpUtils.createRestTemplateWithProxy();
+ responseStr = txwHttpUtils.exchange(kxtcxUrl, HttpMethod.POST, JsonUtils.toJson(requestVO), null, String.class);
+ kxtsjResponseDto = JSONUtil.toBean(responseStr, KxtsjResponseDto.class);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ if (GyUtils.isNull(kxtsjResponseDto) || GyUtils.isNull(kxtsjResponseDto.getData())) {
+ responseDataDto.setPages("1");
+ responseDataDto.setSize(requestVO.getPageSize() + "");
+ responseDataDto.setTotal("0");
+ responseDataDto.setCurrent(requestVO.getCurrentPage() + "");
+ responseDataDto.setRecords(dataList);
+ } else {
+ responseDataDto = kxtsjResponseDto.getData();
+ String current = responseDataDto.getCurrent();
+ String size = responseDataDto.getSize();
+ int start = 1;
+ if (GyUtils.isNotNull(current) && !"1".equals(current)) {
+ int pageSize = Integer.valueOf(size);
+ int pageNum = Integer.valueOf(current);
+ start = pageNum * pageSize + 1;
+ }
+ List dtoList = CacheUtils.getDmbData("CARBON_TYPE");
+ Map typeMap = dtoList.stream().collect(Collectors.toMap(DmbDTO::getCode, DmbDTO::getCaption));
+ for (KxtsjRecordsDto dto : responseDataDto.getRecords()) {
+ dto.setXh(start);
+ dto.setCarbonTypeDesc(typeMap.get(dto.getCarbonType() + ""));
+ start++;
+ }
+ }
+ return responseDataDto;
+ }
+
+ @SneakyThrows
+ @Override
+ public String saveDksqxx(GxzxDkbxsqxxDto dto, MultipartFile file) {
+ // 生成唯一文件名
+ String originalFilename = file.getOriginalFilename();
+ String fileExt = originalFilename.substring(originalFilename.lastIndexOf("."));
+ String newFilename = UUID.randomUUID() + fileExt;
+ // 创建存储目录
+ String yearMonth = DateUtils.toDateStrByFormat(new Date(), "yyyyMM");
+ String day = DateUtils.toDateStrByFormat(new Date(), "dd");
+ String qyuuid = SessionUtils.getQyuuid();
+ String qymc = SessionUtils.get("qymc").toString();
+ String nsrsbh = SessionUtils.getNsrsbh();
+ String bakFilePath = "gxzx" + File.separator + "lsjr" + File.separator + "dksq" + File.separator + qyuuid
+ + File.separator + yearMonth + File.separator + day + File.separator + newFilename;
+ String uploadPath = GgzcFileUtils.upload(file.getBytes(), bakFilePath, file.getContentType());
+ GxzxDkbxsqxx dkbxsqxx = new GxzxDkbxsqxx();
+ dkbxsqxx.setSquuid(IdUtil.fastSimpleUUID());
+ dkbxsqxx.setSshyDm("xd");
+ dkbxsqxx.setFlzl(uploadPath);
+ dkbxsqxx.setCpuuid(dto.getCpuuid());
+ dkbxsqxx.setKxtsjzl(JsonUtils.toJson(dto.getKxtsjzl()));
+ dkbxsqxx.setLxr(dto.getLxr());
+ dkbxsqxx.setLxdh(dto.getLxdh());
+ dkbxsqxx.setQyuuid(qyuuid);
+ dkbxsqxx.setQymc(qymc);
+ dkbxsqxx.setNsrsbh(nsrsbh);
+ dkbxsqxx.setZt("2");
+ dkbxsqxx.setWjmc(originalFilename);
+ String sfsh = XtcsUtils.getXtcs("LSJR_SFSH", "Y");
+ if ("N".equals(sfsh)) {
+ dkbxsqxx.setZt("3");
+ }
+ dkbxsqxx.setSqdkJe(dto.getSqdkJe());
+ dkbxsqxx.setSqdkyt(dto.getSqdkyt());
+ dkbxsqxx.setLrruuid(qyuuid);
+ dkbxsqxx.setLrrq(new Date());
+ dkbxsqxxService.save(dkbxsqxx);
+ TxwGxzxShqkbDO shqkbDO = new TxwGxzxShqkbDO();
+ shqkbDO.setUuid(IdUtil.fastSimpleUUID());
+ shqkbDO.setYwlxDm("dk");
+ shqkbDO.setGlid(dkbxsqxx.getSquuid());
+ shqkbDO.setLrrq(new Date());
+ shqkbDO.setLrrsfid(qyuuid);
+ txwGxzxShqkbService.save(shqkbDO);
+ return dkbxsqxx.getSquuid();
+ }
+
+ @SneakyThrows
+ @Override
+ public String saveTbsqxx(GxzxDkbxsqxxDto dto, MultipartFile file) {
+ // 生成唯一文件名
+ String originalFilename = file.getOriginalFilename();
+ String fileExt = originalFilename.substring(originalFilename.lastIndexOf("."));
+ String newFilename = UUID.randomUUID() + fileExt;
+ // 创建存储目录
+ String yearMonth = DateUtils.toDateStrByFormat(new Date(), "yyyyMM");
+ String day = DateUtils.toDateStrByFormat(new Date(), "dd");
+ String qyuuid = SessionUtils.getQyuuid();
+ String qymc = SessionUtils.get("qymc").toString();
+ String nsrsbh = SessionUtils.getNsrsbh();
+ String bakFilePath = "gxzx" + File.separator + "lsjr" + File.separator + "tbsq" + File.separator + qyuuid
+ + File.separator + yearMonth + File.separator + day + File.separator + newFilename;
+ String uploadPath = GgzcFileUtils.upload(file.getBytes(), bakFilePath, file.getContentType());
+ GxzxDkbxsqxx dkbxsqxx = new GxzxDkbxsqxx();
+ dkbxsqxx.setSquuid(IdUtil.fastSimpleUUID());
+ dkbxsqxx.setSshyDm("bx");
+ dkbxsqxx.setFlzl(uploadPath);
+ dkbxsqxx.setCpuuid(dto.getCpuuid());
+ dkbxsqxx.setKxtsjzl(JsonUtils.toJson(dto.getKxtsjzl()));
+ dkbxsqxx.setLxr(dto.getLxr());
+ dkbxsqxx.setLxdh(dto.getLxdh());
+ dkbxsqxx.setQyuuid(qyuuid);
+ dkbxsqxx.setQymc(qymc);
+ dkbxsqxx.setNsrsbh(nsrsbh);
+ dkbxsqxx.setZt("2");
+ dkbxsqxx.setWjmc(originalFilename);
+ String sfsh = XtcsUtils.getXtcs("LSJR_SFSH", "Y");
+ if ("N".equals(sfsh)) {
+ dkbxsqxx.setZt("3");
+ }
+ dkbxsqxx.setTbje(dto.getTbje());
+ dkbxsqxx.setBxbzqx(dto.getBxbzqx());
+ dkbxsqxx.setLrruuid(qyuuid);
+ dkbxsqxx.setLrrq(new Date());
+ dkbxsqxxService.save(dkbxsqxx);
+ TxwGxzxShqkbDO shqkbDO = new TxwGxzxShqkbDO();
+ shqkbDO.setUuid(IdUtil.fastSimpleUUID());
+ shqkbDO.setYwlxDm("bx");
+ shqkbDO.setGlid(dkbxsqxx.getSquuid());
+ shqkbDO.setLrrq(new Date());
+ shqkbDO.setLrrsfid(qyuuid);
+ txwGxzxShqkbService.save(shqkbDO);
+ return dkbxsqxx.getSquuid();
+ }
+
+ @Override
+ public DownloadFileInfoVO querySqFileByid(String squuid) {
+ GxzxDkbxsqxx dkbxsqxx = dkbxsqxxService.getById(squuid);
+ if (GyUtils.isNull(dkbxsqxx)) {
+ throw new ServiceException(GlobalErrorCodeConstants.ERROR.getCode(), "未发现符合条件的申请信息!");
+ }
+ byte[] content = GgzcFileUtils.getContent(dkbxsqxx.getFlzl());
+ DownloadFileInfoVO downloadFileInfoVO = new DownloadFileInfoVO();
+ downloadFileInfoVO.setFileName(dkbxsqxx.getWjmc());
+ downloadFileInfoVO.setFileByte(content);
+ return downloadFileInfoVO;
+ }
+
+ @SneakyThrows
+ @Override
+ public String saveOrUpdateCpxx(GxzxLsjrcpxxDto dto) {
+ String qyuuid = SessionUtils.getQyuuid();
+ String cpuuid = dto.getCpuuid();
+ String module = dto.getModule();// 管理员模式可直接修改产品信息,去掉只能修改本企业产品信息限制
+ if (GyUtils.isNotNull(cpuuid)) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda()
+ .eq(GxzxLsjrcpxx::getCpuuid, cpuuid)
+// .eq(!"manager".equals(module), GxzxLsjrcpxx::getQyuuid, qyuuid)
+ .last("limit 1");
+ GxzxLsjrcpxx one = lsjrcpxxService.getOne(queryWrapper);
+ if (GyUtils.isNull(one)) {
+ throw new RRException("未查询到符合修改条件的产品信息数据");
+ }
+ dto.setXgrq(new Date());
+ dto.setXgruuid(qyuuid);
+ } else {
+ cpuuid = IdUtil.fastSimpleUUID();
+ dto.setCpuuid(cpuuid);
+ dto.setLrrq(new Date());
+ dto.setLrruuid(qyuuid);
+ // 设置logo
+ String jgid = dto.getQyuuid();
+ String sshyDm = dto.getSshyDm();
+ String tableName = "xd".equals(sshyDm) ? "LSJRYH" : "LSJRBXJG";
+ Map tableData = CacheUtils.getTableData(tableName, jgid);
+ if (GyUtils.isNotNull(tableData)) {
+ dto.setYxlogo(GyUtils.isNotNull(tableData.get("bz")) ? tableData.get("bz").toString() : null);
+ }
+ }
+ GxzxLsjrcpxx cpxx = BeanUtil.toBean(dto, GxzxLsjrcpxx.class);
+ cpxx.setZt("2");
+ cpxx.setSjzt("0");
+ cpxx.setFprq(null);
+ String sfsh = XtcsUtils.getXtcs("LSJR_SFSH", "Y");
+ if ("N".equals(sfsh)) {
+ cpxx.setZt("3");
+ cpxx.setSjzt("1");
+ cpxx.setFprq(new Date());
+ } else {
+ TxwGxzxShqkbDO shqkbDO = new TxwGxzxShqkbDO();
+ shqkbDO.setUuid(IdUtil.fastSimpleUUID());
+ shqkbDO.setYwlxDm(cpxx.getSshyDm());
+ shqkbDO.setGlid(cpxx.getCpuuid());
+ shqkbDO.setLrrq(new Date());
+ shqkbDO.setLrrsfid(qyuuid);
+ txwGxzxShqkbService.save(shqkbDO);
+ }
+ lsjrcpxxService.saveOrUpdate(cpxx);
+ return cpxx.getCpuuid();
+ }
+
+ @Override
+ public boolean delete(String cpid) {
+ boolean result = lsjrcpxxService.removeById(cpid);
+ return result;
+ }
+
+ @Override
+ public boolean batchDelete(BatchDeleteReqVO reqVO) {
+ String cpuuids = reqVO.getCpuuids();
+ boolean b = lsjrcpxxService.removeBatchByIds(Arrays.asList(cpuuids.split(",")));
+ return b;
+ }
+
+ @Override
+ public PageResult queryDspXdbxcpList(DspXdbxcpcxRequestVO requestVO) {
+ List list = new ArrayList<>();
+ PageResult pageResult = new PageResult<>();
+ pageResult.setTotal(0L);
+ Integer pageNum = requestVO.getPageNum();
+ Integer pageSize = requestVO.getPageSize();
+ List qyidList = requestVO.getQyidList();
+ List typeList = requestVO.getTypeList();
+ Page page = new Page<>(pageNum, pageSize);
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda()
+ .in(GyUtils.isNotNull(typeList), TxwGxzxShqkbDO::getYwlxDm, typeList)
+ .in(GyUtils.isNotNull(qyidList), TxwGxzxShqkbDO::getLrrsfid, qyidList)
+ .orderByDesc(TxwGxzxShqkbDO::getLrrq)
+ .orderByAsc(TxwGxzxShqkbDO::getShjg1);
+ Page cpxxPage = txwGxzxShqkbService.page(page, queryWrapper);
+ if (GyUtils.isNotNull(cpxxPage) && GyUtils.isNotNull(cpxxPage.getRecords())) {
+ List records = cpxxPage.getRecords();
+ list = JsonUtils.toList(JsonUtils.toJson(records), ShqkxxVO.class);
+ }
+ pageResult.setTotal(cpxxPage.getTotal());
+ pageResult.setList(list);
+ return pageResult;
+ }
+
+ @Override
+ public String cpSp(GxspReqVO reqVO) {
+ TxwGxzxShqkbDO shqkbDO = txwGxzxShqkbService.getById(reqVO.getUuid());
+ shqkbDO.setShrsfid(SessionUtils.getYhUuid());
+ shqkbDO.setShjg1(reqVO.getShjg1());
+ shqkbDO.setShyj1(reqVO.getShyj1());
+ shqkbDO.setShsj(new Date());
+ txwGxzxShqkbService.updateById(shqkbDO);
+ return "success";
+ }
+
+ @Override
+ public String cpsxj(CpsxjReqVO reqVO) {
+ String cpuuid = reqVO.getCpuuid();
+ List cpuuidList = Arrays.asList(cpuuid.split(","));
+ UpdateWrapper updateWrapper = new UpdateWrapper<>();
+ updateWrapper.lambda()
+ .set(GxzxLsjrcpxx::getSjzt, reqVO.getSjzt())
+ .set(GxzxLsjrcpxx::getXgrq, new Date())
+ .set(GxzxLsjrcpxx::getXgruuid, SessionUtils.getYhUuid())
+ .in(GxzxLsjrcpxx::getCpuuid, cpuuidList);
+ lsjrcpxxService.update(updateWrapper);
+ return "success";
+ }
+
+ @Override
+ public String pldr(MultipartFile file) {
+ String originalFilename = file.getOriginalFilename();
+ //校验文件
+ if (!originalFilename.toLowerCase().contains(".xlsx") && !originalFilename.toLowerCase().contains(".xls")) {
+ throw new ServiceException(GlobalErrorCodeConstants.ERROR.getCode(), "导入的文件格式系统不支持,当前仅支持excel格式文件");
+ }
+ try (InputStream inputStream = new ByteArrayInputStream(file.getBytes())) {
+ List dtoList = this.validImportProductData(inputStream); //主表
+
+ if (CollectionUtils.isEmpty(dtoList)) {
+ throw new ServiceException(GlobalErrorCodeConstants.ERROR.getCode(), "导入的文件中未检测到产品信息");
+ }
+ List spList = new ArrayList<>();
+ List cpxxList = BeanUtil.copyToList(dtoList, GxzxLsjrcpxx.class);
+ for (GxzxLsjrcpxx cpxx : cpxxList) {
+ cpxx.setLrrq(new Date());
+ cpxx.setLrruuid(SessionUtils.getYhUuid());
+ // 设置logo
+ String jgid = cpxx.getQyuuid();
+ String sshyDm = cpxx.getSshyDm();
+ String tableName = "xd".equals(sshyDm) ? "LSJRYH" : "LSJRBXJG";
+ Map tableData = CacheUtils.getTableData(tableName, jgid);
+ if (GyUtils.isNotNull(tableData)) {
+ cpxx.setYxlogo(GyUtils.isNotNull(tableData.get("bz")) ? tableData.get("bz").toString() : null);
+ }
+ cpxx.setZt("2");
+ cpxx.setSjzt("0");
+ cpxx.setFprq(null);
+ String sfsh = XtcsUtils.getXtcs("LSJR_SFSH", "Y");
+ if ("N".equals(sfsh)) {
+ cpxx.setZt("3");
+ cpxx.setSjzt("1");
+ cpxx.setFprq(new Date());
+ } else {
+ TxwGxzxShqkbDO shqkbDO = new TxwGxzxShqkbDO();
+ shqkbDO.setUuid(IdUtil.fastSimpleUUID());
+ shqkbDO.setYwlxDm(cpxx.getSshyDm());
+ shqkbDO.setGlid(cpxx.getCpuuid());
+ shqkbDO.setLrrq(new Date());
+ shqkbDO.setLrrsfid(SessionUtils.getYhUuid());
+ spList.add(shqkbDO);
+ }
+ }
+ if (GyUtils.isNotNull(spList)) {
+ txwGxzxShqkbService.saveBatch(spList);
+ }
+ lsjrcpxxService.saveBatch(cpxxList); //1:处理成功
+ } catch (Exception e) {
+ throw new ServiceException(GlobalErrorCodeConstants.ERROR.getCode(), "处理导入数据失败");
+ }
+ return "导入成功";
+ }
+
+ private List validImportProductData(InputStream inputStream) {
+ try {
+ LsjrcpImportListener listener = new LsjrcpImportListener();
+ ExcelReaderBuilder readerBuilder = EasyExcel.read(inputStream, GxzxLsjrcpImportDto.class, listener);
+ readerBuilder.sheet().sheetNo(0).headRowNumber(2).doRead();// 设置表头在第3行
+ List successList = listener.getSuccessList();
+ List failList = listener.getFailedList();
+ log.info("产品信息导入校验结果:{}/{}", successList.size(), successList.size() + failList.size());
+ if (failList.size() > 0) {
+ String errorMsg = "产品信息校验结果:";
+ errorMsg += failList.stream().map(e -> "
第" + (e.getRowNum() + 1) + "行:" + e.getErrorMsg()).collect(Collectors.joining("\n"));
+ log.info(errorMsg);
+ throw new ServiceException(GlobalErrorCodeConstants.ERROR.getCode(), errorMsg);
+ } else {
+ return successList;
+ }
+ } catch (Exception e) {
+ log.error("客户批量导入校验异常:", e);
+ throw new ServiceException(GlobalErrorCodeConstants.ERROR.getCode(), e.getMessage());
+ }
+ }
+
+ @Override
+ public PageResult queryXdbxcpsqList(XdbxcpsqRequestVO requestVO) {
+ List list = new ArrayList<>();
+ PageResult pageResult = new PageResult<>();
+ pageResult.setTotal(0L);
+ Integer pageNum = requestVO.getPageNum();
+ Integer pageSize = requestVO.getPageSize();
+ Page page = new Page<>(pageNum, pageSize);
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda()
+ .eq(GyUtils.isNotNull(requestVO.getCpuuid()),GxzxDkbxsqxx::getCpuuid, requestVO.getCpuuid())
+ .orderByDesc(GxzxDkbxsqxx::getZt)
+ .orderByDesc(GxzxDkbxsqxx::getLrrq);
+ Page sqxxPage = dkbxsqxxService.page(page, queryWrapper);
+ if (GyUtils.isNotNull(sqxxPage) && GyUtils.isNotNull(sqxxPage.getRecords())) {
+ list = BeanUtil.copyToList(sqxxPage.getRecords(), GxzxDkbxsqxxVO.class);
+ }
+ pageResult.setTotal(sqxxPage.getTotal());
+ pageResult.setList(list);
+ return pageResult;
+ }
+
+ @Override
+ public GxzxDkbxsqxxVO queryXdbxcpsqxq(String squuid) {
+ GxzxDkbxsqxx dkbxsqxx = dkbxsqxxService.getById(squuid);
+ GxzxDkbxsqxxVO dkbxsqxxVO = BeanUtil.toBean(dkbxsqxx, GxzxDkbxsqxxVO.class);
+ return dkbxsqxxVO;
+ }
+
+ private String getBase64(MultipartFile file) throws IOException {
+ // 获取文件的字节数组
+ byte[] fileBytes = file.getBytes();
+ // 使用Base64编码
+ String base64String = Base64.getEncoder().encodeToString(fileBytes);
+ return base64String;
+ }
+
+ @Override
+ public PageResult queryXdbxcpsqInfo(XdbxcpsqRequestVO request) {
+ return dkbxsqxxService.queryXdbxcpsqInfo(request);
+ }
+
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/GxzxLsjrcpxxServiceImpl.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/GxzxLsjrcpxxServiceImpl.java
new file mode 100644
index 0000000..7a43cc1
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/GxzxLsjrcpxxServiceImpl.java
@@ -0,0 +1,15 @@
+package com.css.txw.gxzx.service.lsjr.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.css.txw.gxzx.mapper.lsjr.GxzxLsjrcpxxMapper;
+import com.css.txw.gxzx.pojo.domain.lsjr.GxzxLsjrcpxx;
+import com.css.txw.gxzx.service.lsjr.GxzxLsjrcpxxService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+@Slf4j
+@Service
+public class GxzxLsjrcpxxServiceImpl extends ServiceImpl implements GxzxLsjrcpxxService {
+
+
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/LsjrcpImportListener.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/LsjrcpImportListener.java
new file mode 100644
index 0000000..f7cdf27
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjr/impl/LsjrcpImportListener.java
@@ -0,0 +1,161 @@
+package com.css.txw.gxzx.service.lsjr.impl;
+
+import cn.hutool.core.util.IdUtil;
+import com.alibaba.excel.context.AnalysisContext;
+import com.alibaba.excel.event.AnalysisEventListener;
+import com.css.ggzc.framework.cache.utils.CacheUtils;
+import com.css.ggzc.framework.cache.vo.DmbDTO;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.txw.gxzx.pojo.dto.GxzxLsjrcpImportDto;
+import lombok.extern.slf4j.Slf4j;
+
+import java.io.UnsupportedEncodingException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+@Slf4j
+public class LsjrcpImportListener extends AnalysisEventListener {
+
+ private List successList = new ArrayList<>();
+ private List failedList = new ArrayList<>();
+
+ @Override
+ public void invoke(GxzxLsjrcpImportDto importData, AnalysisContext analysisContext) {
+ log.debug("读取到一条数据:" + importData);
+ StringBuilder errorMsg = new StringBuilder();
+ importData.setCpuuid(IdUtil.fastSimpleUUID());
+ try {
+ // 这里可以添加更多的验证逻辑
+ String sshy = importData.getSshy();
+ if (GyUtils.isNull(sshy)) {
+ errorMsg.append("【所属行业】不能为空;");
+ } else if (!GyUtils.isNull(sshy) && (!"银行".equals(sshy) && !"保险".equals(sshy))) {
+ errorMsg.append("【所属行业】必须为银行或保险;");
+ } else {
+ importData.setSshyDm("银行".equals(sshy) ? "xd" : "bx");
+ }
+ String ywlxmc = importData.getYwlxmc();
+ if (GyUtils.isNull(ywlxmc)) {
+ errorMsg.append("【产品业务类型】不能为空;");
+ } else if (!GyUtils.isNull(sshy) && ("银行".equals(sshy) || "保险".equals(sshy))) {
+ String tableName = "银行".equals(sshy) ? "LSJR_XDYWLX" : "LSJR_BXYWLX";
+ List ywlxList = CacheUtils.getDmbData(tableName);
+ Map ywlxMap = ywlxList.stream().collect(Collectors.toMap(DmbDTO::getCaption, DmbDTO::getCode));
+ String ywlxDm = ywlxMap.get(ywlxmc);
+ if (GyUtils.isNull(ywlxDm)) {
+ errorMsg.append("【产品业务类型】未定义;");
+ } else {
+ importData.setYwlxDm(ywlxDm);
+ }
+ }
+ String cpmc = importData.getCpmc();
+ if (GyUtils.isNull(cpmc)) {
+ errorMsg.append("【产品名称】不能为空;");
+ } else if (!GyUtils.isNull(cpmc) && !isValidInput(cpmc, 60)) {
+ errorMsg.append("【产品名称】限制 60 个字符;");
+ }
+ if("银行".equals(sshy)){
+ String edfw = importData.getEdfw();
+ if (GyUtils.isNull(edfw)) {
+ errorMsg.append("【额度范围】不能为空;");
+ } else if (!GyUtils.isNull(edfw) && !isValidInput(edfw, 60)) {
+ errorMsg.append("【额度范围】限制 60 个字符;");
+ }
+ String llfw = importData.getLlfw();
+ if (GyUtils.isNull(llfw)) {
+ errorMsg.append("【利率范围】不能为空;");
+ } else if (!GyUtils.isNull(llfw) && !isValidInput(llfw, 60)) {
+ errorMsg.append("【利率范围】限制 60 个字符;");
+ }
+ String dkqxfw = importData.getDkqxfw();
+ if (GyUtils.isNull(dkqxfw)) {
+ errorMsg.append("【贷款期限范围】不能为空;");
+ } else if (!GyUtils.isNull(dkqxfw) && !isValidInput(dkqxfw, 60)) {
+ errorMsg.append("【贷款期限范围】限制 60 个字符;");
+ }
+ }
+ if("保险".equals(sshy)){
+ String bzqxfw = importData.getBzqxfw();
+ if (GyUtils.isNull(bzqxfw)) {
+ errorMsg.append("【保障期限范围】不能为空;");
+ } else if (!GyUtils.isNull(bzqxfw) && !isValidInput(bzqxfw, 60)) {
+ errorMsg.append("【保障期限范围】限制 60 个字符;");
+ }
+ String bfjsfs = importData.getBfjsfs();
+ if (GyUtils.isNull(bfjsfs)) {
+ errorMsg.append("【保费计算方式】不能为空;");
+ } else if (!GyUtils.isNull(bfjsfs) && !isValidInput(bfjsfs, 60)) {
+ errorMsg.append("【保费计算方式】限制 60 个字符;");
+ }
+ }
+
+ String carbonTypeMc = importData.getCarbonTypeMc();
+ if (GyUtils.isNull(carbonTypeMc)) {
+ errorMsg.append("【碳类型】不能为空;");
+ } else {
+ List ywlxList = CacheUtils.getDmbData("CARBON_TYPE");
+ Map tlxMap = ywlxList.stream().collect(Collectors.toMap(DmbDTO::getCaption, DmbDTO::getCode));
+ String tlxDm = tlxMap.get(carbonTypeMc);
+ if (GyUtils.isNull(tlxDm)) {
+ errorMsg.append("【碳类型】未定义;");
+ } else {
+ importData.setCarbonType(Integer.valueOf(tlxDm));
+ }
+ }
+ String qymc = importData.getQymc();
+ if (GyUtils.isNull(qymc)) {
+ errorMsg.append("【机构名称】不能为空;");
+ } else if (!GyUtils.isNull(sshy) && ("银行".equals(sshy) || "保险".equals(sshy))) {
+ String tableName = "银行".equals(sshy) ? "LSJRYH" : "LSJRBXJG";
+ List jgList = CacheUtils.getDmbData(tableName);
+ Map jgMap = jgList.stream().collect(Collectors.toMap(DmbDTO::getCaption, DmbDTO::getCode));
+ String jgDm = jgMap.get(qymc);
+ if (GyUtils.isNull(jgDm)) {
+ errorMsg.append("【机构名称】未定义;");
+ } else {
+ importData.setQyuuid(jgDm);
+ }
+ }
+ String fwcpms = importData.getFwcpms();
+ if (GyUtils.isNull(fwcpms)) {
+ errorMsg.append("【产品描述】不能为空;");
+ } else if (!GyUtils.isNull(fwcpms) && !isValidInput(fwcpms, 1000)) {
+ errorMsg.append("【产品描述】限制 1000 个字符;");
+ }
+ } catch (Exception e) {
+ errorMsg.append(e.getMessage());
+ }
+ if (errorMsg.length() > 0) {
+ importData.setRowNum(analysisContext.readRowHolder().getRowIndex());
+ importData.setErrorMsg(errorMsg.toString());
+ failedList.add(importData);
+ } else {
+ successList.add(importData);
+ }
+ }
+
+ private boolean isValidInput(String input, int num) throws UnsupportedEncodingException {
+ if (input == null) {
+ return true;
+ }
+ byte[] bytes = input.getBytes("GBK");
+ int charCount = bytes.length;
+ return charCount <= num;
+ }
+
+ @Override
+ public void doAfterAllAnalysed(AnalysisContext analysisContext) {
+ // 进行代码转换
+ log.debug("所有数据解析完成!");
+ }
+
+ public List getSuccessList() {
+ return successList;
+ }
+
+ public List getFailedList() {
+ return failedList;
+ }
+}
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjy/GxzxLsjyZcxxService.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjy/GxzxLsjyZcxxService.java
new file mode 100644
index 0000000..9e5b93d
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjy/GxzxLsjyZcxxService.java
@@ -0,0 +1,33 @@
+package com.css.txw.gxzx.service.lsjy;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.css.ggzc.framework.cache.vo.DmbDTO;
+import com.css.ggzc.framework.common.pojo.PageResult;
+import com.css.txw.gxzx.pojo.domain.lsjy.GxzxLsjyZcxx;
+import com.css.txw.gxzx.pojo.lsjy.BatchDeleteZcxxReqVO;
+import com.css.txw.gxzx.pojo.lsjy.GxzxLsjyZcxxDto;
+import com.css.txw.gxzx.pojo.lsjy.ZcsxjReqVO;
+import com.css.txw.gxzx.pojo.lsjy.ZcxxcxRequestVO;
+import com.css.txw.gxzx.pojo.vo.GxspReqVO;
+import com.css.txw.gxzx.pojo.vo.ShqkxxVO;
+
+import java.util.List;
+
+public interface GxzxLsjyZcxxService extends IService {
+
+ List queryZclxList();
+
+ PageResultqueryZcxxList(ZcxxcxRequestVO requestVO);
+
+ GxzxLsjyZcxxDto queryZcxxxq(String zcid);
+
+ String saveOrUpdate(GxzxLsjyZcxxDto dto);
+
+ boolean batchDelete(BatchDeleteZcxxReqVO reqVO);
+
+ PageResult queryDspZcxxList(ZcxxcxRequestVO requestVO);
+
+ String zcSp(GxspReqVO reqVO);
+
+ String zcsxj(ZcsxjReqVO reqVO);
+}
\ No newline at end of file
diff --git a/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjy/impl/GxzxLsjyZcxxServiceImpl.java b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjy/impl/GxzxLsjyZcxxServiceImpl.java
new file mode 100644
index 0000000..0dea8ec
--- /dev/null
+++ b/txw-gxzx/txw-gxzx-service-biz/src/main/java/com/css/txw/gxzx/service/lsjy/impl/GxzxLsjyZcxxServiceImpl.java
@@ -0,0 +1,242 @@
+package com.css.txw.gxzx.service.lsjy.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.IdUtil;
+import cn.hutool.core.util.NumberUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.css.ggzc.framework.cache.utils.CacheUtils;
+import com.css.ggzc.framework.cache.utils.XtcsUtils;
+import com.css.ggzc.framework.cache.vo.DmbDTO;
+import com.css.ggzc.framework.common.exception.RRException;
+import com.css.ggzc.framework.common.pojo.PageResult;
+import com.css.ggzc.framework.common.util.gy.GyUtils;
+import com.css.ggzc.framework.common.util.json.JsonUtils;
+import com.css.ggzc.framework.session.SessionUtils;
+import com.css.txw.gxzx.constants.SjztEnum;
+import com.css.txw.gxzx.mapper.lsjy.GxzxLsjyZcxxMapper;
+import com.css.txw.gxzx.pojo.domain.TxwGxzxShqkbDO;
+import com.css.txw.gxzx.pojo.domain.lsjy.GxzxLsjyZcxx;
+import com.css.txw.gxzx.pojo.lsjy.BatchDeleteZcxxReqVO;
+import com.css.txw.gxzx.pojo.lsjy.GxzxLsjyZcxxDto;
+import com.css.txw.gxzx.pojo.lsjy.ZcsxjReqVO;
+import com.css.txw.gxzx.pojo.lsjy.ZcxxcxRequestVO;
+import com.css.txw.gxzx.pojo.vo.GxspReqVO;
+import com.css.txw.gxzx.pojo.vo.ShqkxxVO;
+import com.css.txw.gxzx.service.TxwGxzxShqkbService;
+import com.css.txw.gxzx.service.lsjy.GxzxLsjyZcxxService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.util.*;
+import java.util.stream.Collectors;
+
+@Slf4j
+@Service
+public class GxzxLsjyZcxxServiceImpl extends ServiceImpl implements GxzxLsjyZcxxService {
+
+ @Resource
+ private TxwGxzxShqkbService txwGxzxShqkbService;
+
+ @Resource
+ private TxwGxzxShqkbService shqkbService;
+
+ @Override
+ public List queryZclxList() {
+ String tableName = "LSJY_ZCLX";
+ List dtoList = CacheUtils.getDmbData(tableName);
+ if (GyUtils.isNull(dtoList)) {
+ dtoList = new ArrayList<>();
+ }
+ return dtoList;
+ }
+
+ @Override
+ public PageResult queryZcxxList(ZcxxcxRequestVO requestVO) {
+ List list = new ArrayList<>();
+ PageResult pageResult = new PageResult<>();
+ pageResult.setTotal(0L);
+ Integer pageNum = requestVO.getPageNum();
+ Integer pageSize = requestVO.getPageSize();
+ String zclxdm = requestVO.getZclxdm();
+ BigDecimal zddj = requestVO.getZddj(); // 最低价
+ BigDecimal zgdj = requestVO.getZgdj(); // 最高价
+ String nsrsbh = requestVO.getNsrsbh();
+ String nsrmc = requestVO.getNsrmc();
+ String yxqz = requestVO.getYxqz();
+ String module = requestVO.getModule();
+ String sxjzt = requestVO.getSxjzt();
+ String qyuuid = SessionUtils.getQyuuid();
+ Page page = new Page<>(pageNum, pageSize);
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda()
+ // 绿色交易或者后台管理页面查询时只查询审批通过的数据
+ // .eq((GyUtils.isNull(module) || "wh".equals(module)), GxzxLsjyZcxx::getZt, "3")
+ // 审批页面只查询待审批数据
+ .eq((GyUtils.isNotNull(module) && "sp".equals(module)), GxzxLsjyZcxx::getZt, "2")
+ // 绿色交易页面只查询上架数据
+ .eq(GyUtils.isNull(module), GxzxLsjyZcxx::getSjzt, SjztEnum.SJ.getCode())
+ // 门户中心 查询自己填加的数据
+ .eq(GyUtils.isEquals(module, "yhwh"), GxzxLsjyZcxx::getLrruuid, qyuuid)
+ .eq(GyUtils.isNotNull(zclxdm),GxzxLsjyZcxx::getZclxdm, zclxdm)
+ .eq(GyUtils.isNotNull(nsrsbh), GxzxLsjyZcxx::getQyuuid, nsrsbh)
+ .like(GyUtils.isNotNull(nsrmc), GxzxLsjyZcxx::getQymc, nsrmc)
+ .ge(GyUtils.isNotNull(zddj),GxzxLsjyZcxx::getDj3, zddj)
+ .le(GyUtils.isNotNull(zgdj), GxzxLsjyZcxx::getDj3, zgdj)
+ .le(GyUtils.isNotNull(yxqz), GxzxLsjyZcxx::getYxqz, yxqz)
+ .eq(GyUtils.isNotNull(sxjzt), GxzxLsjyZcxx::getSjzt, sxjzt)
+ .eq(GyUtils.isNotNull(requestVO.getZt()), GxzxLsjyZcxx::getZt, requestVO.getZt())
+ .orderByDesc(GxzxLsjyZcxx::getXgrq);
+ Page zcxxPage = this.page(page, queryWrapper);
+ if (GyUtils.isNotNull(zcxxPage) && GyUtils.isNotNull(zcxxPage.getRecords())) {
+ List records = zcxxPage.getRecords();
+ list = JsonUtils.toList(JsonUtils.toJson(records), GxzxLsjyZcxxDto.class);
+ String tableName = "LSJY_ZCLX";
+ List dtoList = CacheUtils.getDmbData(tableName);
+ Map zclxMap = dtoList.stream().collect(Collectors.toMap(DmbDTO::getCode, DmbDTO::getCaption));
+ for (GxzxLsjyZcxxDto dto : list) {
+ String zclxdm1 = dto.getZclxdm();
+ String zclxmc = zclxMap.get(zclxdm1);
+ dto.setZclxmc(zclxmc);
+ }
+ }
+ pageResult.setTotal(zcxxPage.getTotal());
+ pageResult.setList(list);
+ return pageResult;
+ }
+
+ @Override
+ public GxzxLsjyZcxxDto queryZcxxxq(String zcid) {
+ GxzxLsjyZcxx zcxx = this.getById(zcid);
+ GxzxLsjyZcxxDto zcxxDto = JsonUtils.toBean(JsonUtils.toJson(zcxx), GxzxLsjyZcxxDto.class);
+ String tableName = "LSJY_ZCLX";
+ String zclxmc = CacheUtils.dm2mc(tableName, zcxxDto.getZclxdm());
+ zcxxDto.setZclxmc(zclxmc);
+ return zcxxDto;
+ }
+
+ @Override
+ public String saveOrUpdate(GxzxLsjyZcxxDto dto) {
+ String qyuuid = SessionUtils.getQyuuid();
+ String qymc = SessionUtils.get("qymc").toString();
+ String shxydm = SessionUtils.getShxydm();
+ String zcid = dto.getZcid();
+ String module = dto.getModule();// 管理员模式可直接修改产品信息,去掉只能修改本企业产品信息限制
+ if (GyUtils.isNotNull(zcid)) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda()
+ .eq(GxzxLsjyZcxx::getZcid, zcid)
+ .eq(!"manager".equals(module), GxzxLsjyZcxx::getQyuuid, qyuuid)
+ .last("limit 1");
+ GxzxLsjyZcxx one = this.getOne(queryWrapper);
+ if (GyUtils.isNull(one)) {
+ throw new RRException("未查询到符合修改条件的资产数据");
+ }
+ dto.setQymc(qymc);
+ dto.setXgrq(new Date());
+ dto.setXgruuid(qyuuid);
+ dto.setDj3(NumberUtil.toBigDecimal(dto.getDjStr()));
+ } else {
+ zcid = IdUtil.fastSimpleUUID();
+ dto.setZcid(zcid);
+ dto.setQymc(qymc);
+ dto.setQyuuid(shxydm);
+ dto.setZcsysl(dto.getZcsl());
+ dto.setLrrq(new Date());
+ dto.setXgrq(dto.getLrrq());
+ dto.setLrruuid(qyuuid);
+ dto.setDj3(NumberUtil.toBigDecimal(dto.getDjStr()));
+ }
+ GxzxLsjyZcxx zcxx = BeanUtil.toBean(dto, GxzxLsjyZcxx.class);
+ zcxx.setZt("2");
+ zcxx.setSjzt(SjztEnum.WSJ.getCode());
+ zcxx.setFbrq(null);
+ String sfsh = XtcsUtils.getXtcs("LSJR_SFSH", "Y");
+ if ("N".equals(sfsh)) {
+ zcxx.setZt("3");
+ zcxx.setSjzt(SjztEnum.SJ.getCode());
+ zcxx.setFbrq(new Date());
+ } else {
+ TxwGxzxShqkbDO shqkbDO = new TxwGxzxShqkbDO();
+ shqkbDO.setUuid(IdUtil.fastSimpleUUID());
+ shqkbDO.setYwlxDm("zc");
+ shqkbDO.setGlid(zcxx.getZcid());
+ shqkbDO.setLrrq(new Date());
+ shqkbDO.setLrrsfid(qyuuid);
+ txwGxzxShqkbService.save(shqkbDO);
+ }
+ this.saveOrUpdate(zcxx);
+ return zcxx.getZcid();
+ }
+
+ @Override
+ public boolean batchDelete(BatchDeleteZcxxReqVO reqVO) {
+ String zcuuids = reqVO.getZcuuids();
+ boolean b = this.removeBatchByIds(Arrays.asList(zcuuids.split(",")));
+ return b;
+ }
+
+ @Override
+ public PageResult queryDspZcxxList(ZcxxcxRequestVO requestVO) {
+ List list = new ArrayList<>();
+ PageResult pageResult = new PageResult<>();
+ pageResult.setTotal(0L);
+ Integer pageNum = requestVO.getPageNum();
+ Integer pageSize = requestVO.getPageSize();
+ Page page = new Page<>(pageNum, pageSize);
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda()
+ .eq(TxwGxzxShqkbDO::getYwlxDm, "zc")
+ .orderByDesc(TxwGxzxShqkbDO::getLrrq)
+ .orderByAsc(TxwGxzxShqkbDO::getShjg1);
+ Page cpxxPage = txwGxzxShqkbService.page(page, queryWrapper);
+ if (GyUtils.isNotNull(cpxxPage) && GyUtils.isNotNull(cpxxPage.getRecords())) {
+ List