Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
eRoadSun
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张富洋
eRoadSun
Commits
bc2e88e2
Commit
bc2e88e2
authored
Jan 05, 2026
by
张富洋
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'e路阳光子系统' into 'master'
E路阳光子系统 See merge request
!1
parents
2ed3c35c
33944c10
Changes
24
Show whitespace changes
Inline
Side-by-side
Showing
24 changed files
with
904 additions
and
1 deletion
+904
-1
pom.xml
pom.xml
+6
-0
DemoApplication.java
src/main/java/com/example/demo/DemoApplication.java
+1
-0
OpenApiConfig.java
src/main/java/com/example/demo/config/OpenApiConfig.java
+29
-0
ERoadController.java
...ain/java/com/example/demo/controller/ERoadController.java
+46
-0
ERoadPushBid.java
src/main/java/com/example/demo/dto/ERoadPushBid.java
+15
-0
ERoadPushTender.java
src/main/java/com/example/demo/dto/ERoadPushTender.java
+14
-0
SupervisorPlatformResponse.java
...java/com/example/demo/dto/SupervisorPlatformResponse.java
+11
-0
YwBiddingfileSimilarityDetailRequest.java
...xample/demo/dto/YwBiddingfileSimilarityDetailRequest.java
+41
-0
YwBiddingfileSimilarityInfoRequest.java
.../example/demo/dto/YwBiddingfileSimilarityInfoRequest.java
+68
-0
YwBidfileReviewDetailRequest.java
...va/com/example/demo/dto/YwBidfileReviewDetailRequest.java
+71
-0
YwBidfileReviewInfoRequest.java
...java/com/example/demo/dto/YwBidfileReviewInfoRequest.java
+48
-0
YwBiddingfileSimilarityDetail.java
...om/example/demo/entity/YwBiddingfileSimilarityDetail.java
+53
-0
YwBiddingfileSimilarityInfo.java
.../com/example/demo/entity/YwBiddingfileSimilarityInfo.java
+85
-0
YwBidfileReviewDetail.java
...n/java/com/example/demo/entity/YwBidfileReviewDetail.java
+82
-0
YwBidfileReviewInfo.java
...ain/java/com/example/demo/entity/YwBidfileReviewInfo.java
+66
-0
YwBiddingfileSimilarityDetailRepository.java
...o/repository/YwBiddingfileSimilarityDetailRepository.java
+13
-0
YwBiddingfileSimilarityInfoRepository.java
...emo/repository/YwBiddingfileSimilarityInfoRepository.java
+11
-0
YwBidfileReviewDetailRepository.java
...mple/demo/repository/YwBidfileReviewDetailRepository.java
+15
-0
YwBidfileReviewInfoRepository.java
...xample/demo/repository/YwBidfileReviewInfoRepository.java
+11
-0
ERoadService.java
src/main/java/com/example/demo/service/ERoadService.java
+176
-0
application-dev.yaml
src/main/resources/application-dev.yaml
+14
-0
application-local.yaml
src/main/resources/application-local.yaml
+14
-0
application-prod.yaml
src/main/resources/application-prod.yaml
+14
-0
application.properties
src/main/resources/application.properties
+0
-1
No files found.
pom.xml
View file @
bc2e88e2
...
...
@@ -68,6 +68,12 @@
<artifactId>
spring-boot-starter-webmvc-test
</artifactId>
<scope>
test
</scope>
</dependency>
<dependency>
<groupId>
org.springdoc
</groupId>
<artifactId>
springdoc-openapi-starter-webmvc-ui
</artifactId>
<version>
2.5.0
</version>
</dependency>
</dependencies>
<build>
...
...
src/main/java/com/example/demo/DemoApplication.java
View file @
bc2e88e2
...
...
@@ -8,6 +8,7 @@ public class DemoApplication {
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
DemoApplication
.
class
,
args
);
}
}
src/main/java/com/example/demo/config/OpenApiConfig.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
config
;
import
io.swagger.v3.oas.models.OpenAPI
;
import
io.swagger.v3.oas.models.info.Contact
;
import
io.swagger.v3.oas.models.info.Info
;
import
io.swagger.v3.oas.models.info.License
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
@Configuration
public
class
OpenApiConfig
{
@Bean
public
OpenAPI
customOpenAPI
()
{
return
new
OpenAPI
()
.
info
(
new
Info
()
.
title
(
"Spring Boot MySQL API 文档"
)
.
version
(
"1.0"
)
.
description
(
"Spring Boot 项目 API 文档"
)
.
contact
(
new
Contact
()
.
name
(
"开发者"
)
.
email
(
"developer@example.com"
)
.
url
(
"https://example.com"
))
.
license
(
new
License
()
.
name
(
"Apache 2.0"
)
.
url
(
"https://springdoc.org"
))
.
termsOfService
(
"https://example.com/terms"
));
}
}
\ No newline at end of file
src/main/java/com/example/demo/controller/ERoadController.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
controller
;
import
com.example.demo.dto.ERoadPushBid
;
import
com.example.demo.dto.ERoadPushTender
;
import
com.example.demo.dto.SupervisorPlatformResponse
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.*
;
import
com.example.demo.service.ERoadService
;
@RestController
@RequestMapping
(
"/api/eRoad"
)
@RequiredArgsConstructor
@Tag
(
name
=
"e路阳光"
)
public
class
ERoadController
{
private
final
ERoadService
eService
;
@PostMapping
(
"/writeSimilarityDetailAndInfo"
)
@Operation
(
description
=
"写入投标文件雷同分析表和雷同明细"
,
summary
=
"写入投标文件雷同分析表和雷同明细"
)
public
ResponseEntity
<?>
writeSimilarityDetail
(
@RequestBody
ERoadPushTender
request
){
String
infoMessage
=
eService
.
writeSimilarityInfo
(
request
.
getYwBiddingfileSimilarityInfoRequest
());
String
detailMessage
=
eService
.
writeSimilarityDetail
(
request
.
getYwBiddingfileSimilarityDetailRequest
());
SupervisorPlatformResponse
response
=
new
SupervisorPlatformResponse
();
response
.
setMsg
(
infoMessage
+
";"
+
detailMessage
);
return
ResponseEntity
.
ok
(
response
);
}
@PostMapping
(
"/writeReviewDetailAndInfo"
)
@Operation
(
description
=
"写入招标文件审查基础表和明细结果表"
,
summary
=
"写入招标文件审查基础表和明细结果表"
)
public
ResponseEntity
<?>
writeReviewDetail
(
@RequestBody
ERoadPushBid
request
){
String
infoMessage
=
eService
.
batchWriteReviewDetail
(
request
.
getYwBidfileReviewDetailListRequest
());
String
detailMessage
=
eService
.
writeReviewInfo
(
request
.
getYwBidfileReviewInfoRequest
());
SupervisorPlatformResponse
response
=
new
SupervisorPlatformResponse
();
response
.
setMsg
(
infoMessage
+
";"
+
detailMessage
);
return
ResponseEntity
.
ok
(
response
);
}
}
src/main/java/com/example/demo/dto/ERoadPushBid.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
dto
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
ERoadPushBid
{
private
YwBidfileReviewInfoRequest
ywBidfileReviewInfoRequest
;
private
List
<
YwBidfileReviewDetailRequest
>
ywBidfileReviewDetailListRequest
;
}
src/main/java/com/example/demo/dto/ERoadPushTender.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
dto
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
ERoadPushTender
{
private
YwBiddingfileSimilarityInfoRequest
ywBiddingfileSimilarityInfoRequest
;
private
List
<
YwBiddingfileSimilarityDetailRequest
>
ywBiddingfileSimilarityDetailRequest
;
}
src/main/java/com/example/demo/dto/SupervisorPlatformResponse.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
dto
;
import
lombok.Data
;
@Data
public
class
SupervisorPlatformResponse
{
private
String
code
;
private
String
msg
;
private
String
resTime
;
private
Object
data
;
}
\ No newline at end of file
src/main/java/com/example/demo/dto/YwBiddingfileSimilarityDetailRequest.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
dto
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
@Data
public
class
YwBiddingfileSimilarityDetailRequest
{
@Schema
(
description
=
"行唯一标识"
,
example
=
"550e8400-e29b-41d4-a716-446655440000"
)
private
String
rowguid
;
@Schema
(
description
=
"标段名称"
,
example
=
"XX高速公路建设项目第1标段"
,
required
=
true
)
private
String
biaoduanname
;
@Schema
(
description
=
"标段编号"
,
example
=
"BD-2023-001"
,
required
=
true
)
private
String
biaoduanno
;
@Schema
(
description
=
"投标单位名称"
,
example
=
"XX建设集团有限公司"
,
required
=
true
)
private
String
danweiname
;
@Schema
(
description
=
"投标单位统一社会信用代码"
,
example
=
"91330100MA2J5R1234"
,
required
=
true
)
private
String
danweiguid
;
@Schema
(
description
=
"文件雷同状态 0否 1是"
,
example
=
"1"
,
allowableValues
=
{
"0"
,
"1"
}
)
private
Integer
similaritystatus
;
@Schema
(
description
=
"雷同单位数量"
,
example
=
"3"
,
minimum
=
"0"
)
private
Integer
similarityorgnum
;
@Schema
(
description
=
"数据推送时间"
,
example
=
"2023-12-15T14:30:00"
,
pattern
=
"yyyy-MM-dd'T'HH:mm:ss"
)
private
String
senddate
;
}
src/main/java/com/example/demo/dto/YwBiddingfileSimilarityInfoRequest.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
dto
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.math.BigDecimal
;
@Data
public
class
YwBiddingfileSimilarityInfoRequest
{
@Schema
(
description
=
"行唯一标识"
,
example
=
"550e8400-e29b-41d4-a716-446655440000"
,
maxLength
=
50
)
private
String
rowguid
;
@Schema
(
description
=
"标段名称"
,
example
=
"XX高速公路第1标段"
,
required
=
true
,
maxLength
=
500
)
private
String
biaoduanname
;
@Schema
(
description
=
"标段编号"
,
example
=
"BD2023001"
,
required
=
true
,
maxLength
=
50
)
private
String
biaoduanno
;
@Schema
(
description
=
"项目名称"
,
example
=
"XX高速公路建设项目"
,
required
=
true
,
maxLength
=
500
)
private
String
projectname
;
@Schema
(
description
=
"项目编号"
,
example
=
"XM2023001"
,
required
=
true
,
maxLength
=
50
)
private
String
projectno
;
@Schema
(
description
=
"1:交通 2:水利 3:住建"
,
example
=
"1"
,
required
=
true
,
maxLength
=
50
)
private
String
projectjiaoyitype
;
@Schema
(
description
=
"招标单位名称"
,
example
=
"XX省交通建设集团有限公司"
,
maxLength
=
200
)
private
String
jianshedanwei
;
@Schema
(
description
=
"招标代理名称"
,
example
=
"XX招标代理有限公司"
,
maxLength
=
200
)
private
String
dailiname
;
@Schema
(
description
=
"中标单位统一社会信用代码"
,
example
=
"91330100MA2J5R1234"
,
maxLength
=
50
)
private
String
zhongbiaodanweiguid
;
@Schema
(
description
=
"中标单位名称"
,
example
=
"XX建设集团有限公司"
,
required
=
true
,
maxLength
=
200
)
private
String
zhongbiaodanwei
;
@Schema
(
description
=
"中标金额(元)"
,
example
=
"125000000.00"
)
private
BigDecimal
zhongbiaojine
;
@Schema
(
description
=
"开标时间"
,
example
=
"2023-06-15T09:30:00"
)
private
String
kaibiaodate
;
@Schema
(
description
=
"报告生成日期"
,
example
=
"2023-06-20T14:00:00"
)
private
String
reportdate
;
@Schema
(
description
=
"投标单位文件数量"
,
example
=
"15"
)
private
Integer
bidfilenum
;
@Schema
(
description
=
"雷同投标文件数"
,
example
=
"3"
)
private
Integer
similarityfilenum
;
@Schema
(
description
=
"文件疑似雷同点数"
,
example
=
"125"
)
private
Integer
similaritynum
;
@Schema
(
description
=
"雷同性风险分析报告地址"
,
example
=
"http://example.com/reports/risk_analysis_2023001.pdf"
,
required
=
true
,
maxLength
=
200
)
private
String
url
;
@Schema
(
description
=
"数据推送时间"
,
example
=
"2023-06-21T10:00:00"
)
private
String
senddate
;
}
src/main/java/com/example/demo/dto/YwBidfileReviewDetailRequest.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
dto
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.math.BigDecimal
;
@Data
public
class
YwBidfileReviewDetailRequest
{
@Schema
(
description
=
"行唯一标识"
,
example
=
"550e8400-e29b-41d4-a716-446655440000"
)
private
String
rowguid
;
@Schema
(
description
=
"标段名称"
,
example
=
"XX市轨道交通3号线二期工程土建施工02标段"
,
maxLength
=
500
)
private
String
biaoduanname
;
@Schema
(
description
=
"标段编号"
,
example
=
"BD202312-002"
)
private
String
biaoduanno
;
@Schema
(
description
=
"审查类型 1.错敏词检查 2.一致性检查 3.合规性检查"
,
example
=
"1"
,
allowableValues
=
{
"1"
,
"2"
,
"3"
})
private
String
checktype
;
@Schema
(
description
=
"检查次数"
,
example
=
"3"
,
minimum
=
"0"
,
defaultValue
=
"0"
)
private
Integer
checktimes
;
@Schema
(
description
=
"存疑点数"
,
example
=
"15"
,
minimum
=
"0"
)
private
Integer
storagepoint
;
@Schema
(
description
=
"反馈数"
,
example
=
"12"
,
minimum
=
"0"
)
private
Integer
feedbacknum
;
@Schema
(
description
=
"未反馈数"
,
example
=
"3"
,
minimum
=
"0"
)
private
Integer
unfeedbackednum
;
@Schema
(
description
=
"采纳建议数"
,
example
=
"8"
,
minimum
=
"0"
)
private
Integer
adoptednum
;
@Schema
(
description
=
"准确率"
,
example
=
"0.8750"
,
minimum
=
"0"
,
maximum
=
"1"
)
private
BigDecimal
accuracy
;
@Schema
(
description
=
"数据推送时间"
,
example
=
"2023-12-15T14:30:00"
,
pattern
=
"yyyy-MM-dd'T'HH:mm:ss"
)
private
String
senddate
;
}
src/main/java/com/example/demo/dto/YwBidfileReviewInfoRequest.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
dto
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
@Data
public
class
YwBidfileReviewInfoRequest
{
@Schema
(
description
=
"行唯一标识"
,
example
=
"123e4567-e89b-12d3-a456-426614174000"
)
private
String
rowguid
;
@Schema
(
description
=
"标段名称"
,
example
=
"XX高速公路建设项目第1标段"
,
required
=
true
)
private
String
biaoduanname
;
@Schema
(
description
=
"标段编号"
,
example
=
"BD-2023-001"
,
required
=
true
)
private
String
biaoduanno
;
@Schema
(
description
=
"招标单位名称"
,
example
=
"XX省交通建设集团有限公司"
)
private
String
jianshedanwei
;
@Schema
(
description
=
"招标代理名称"
,
example
=
"XX招标代理有限公司"
)
private
String
dailiname
;
@Schema
(
description
=
"错敏词审查日期"
,
example
=
"2023-12-15T09:30:00"
)
private
String
wordcheckdate
;
@Schema
(
description
=
"一致性审查日期"
,
example
=
"2023-12-16T10:30:00"
)
private
String
consistencycheckdate
;
@Schema
(
description
=
"合规性审查日期"
,
example
=
"2023-12-17T11:30:00"
)
private
String
compliancecheckdate
;
@Schema
(
description
=
"审查范围1.错敏词检查 2.一致性检查 3.合规性检查 英文分号隔开,如:1;2;3"
,
example
=
"1;2;3"
)
private
String
checkscope
;
@Schema
(
description
=
"组织名称"
,
example
=
"XX审查中心"
,
required
=
true
)
private
String
organization
;
@Schema
(
description
=
"审查报告地址"
,
example
=
"http://example.com/reports/check_report_2023001.pdf"
,
required
=
true
)
private
String
url
;
@Schema
(
description
=
"数据推送时间"
,
example
=
"2023-12-18T14:00:00"
)
private
String
senddate
;
}
src/main/java/com/example/demo/entity/YwBiddingfileSimilarityDetail.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
entity
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
jakarta.persistence.*
;
import
lombok.Data
;
import
java.time.LocalDateTime
;
@Entity
@Table
(
name
=
"yw_biddingfile_similaritydetail"
)
@Data
@Schema
(
description
=
"投标文件雷同明细"
)
public
class
YwBiddingfileSimilarityDetail
{
@Id
@Column
(
length
=
50
)
@Schema
(
description
=
"行唯一标识"
,
example
=
"550e8400-e29b-41d4-a716-446655440000"
)
private
String
rowguid
;
@Column
(
length
=
500
,
nullable
=
false
)
@Schema
(
description
=
"标段名称"
,
example
=
"XX高速公路建设项目第1标段"
,
required
=
true
)
private
String
biaoduanname
;
@Column
(
length
=
50
,
nullable
=
false
)
@Schema
(
description
=
"标段编号"
,
example
=
"BD-2023-001"
,
required
=
true
)
private
String
biaoduanno
;
@Column
(
length
=
500
,
nullable
=
false
)
@Schema
(
description
=
"投标单位名称"
,
example
=
"XX建设集团有限公司"
,
required
=
true
)
private
String
danweiname
;
@Column
(
length
=
50
)
@Schema
(
description
=
"投标单位统一社会信用代码"
,
example
=
"91330100MA2J5R1234"
)
private
String
danweiguid
;
@Schema
(
description
=
"文件雷同状态 0否 1是"
,
example
=
"1"
,
allowableValues
=
{
"0"
,
"1"
}
)
private
Integer
similaritystatus
;
@Schema
(
description
=
"雷同单位数量"
,
example
=
"3"
,
minimum
=
"0"
)
private
Integer
similarityorgnum
;
@Schema
(
description
=
"数据推送时间"
,
example
=
"2023-12-15T14:30:00"
,
pattern
=
"yyyy-MM-dd'T'HH:mm:ss"
)
private
LocalDateTime
senddate
;
}
\ No newline at end of file
src/main/java/com/example/demo/entity/YwBiddingfileSimilarityInfo.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
entity
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
jakarta.persistence.*
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
@Entity
@Data
@Table
(
name
=
"yw_biddingfile_similarityinfo"
)
@Schema
(
name
=
"投标文件雷同分析表"
)
public
class
YwBiddingfileSimilarityInfo
{
@Id
@Column
(
length
=
50
)
@Schema
(
description
=
"行唯一标识"
,
example
=
"550e8400-e29b-41d4-a716-446655440000"
,
maxLength
=
50
)
private
String
rowguid
;
@Column
(
length
=
500
,
nullable
=
false
)
@Schema
(
description
=
"标段名称"
,
example
=
"XX高速公路第1标段"
,
required
=
true
,
maxLength
=
500
)
private
String
biaoduanname
;
@Column
(
length
=
50
,
nullable
=
false
)
@Schema
(
description
=
"标段编号"
,
example
=
"BD2023001"
,
required
=
true
,
maxLength
=
50
)
private
String
biaoduanno
;
@Column
(
length
=
500
,
nullable
=
false
)
@Schema
(
description
=
"项目名称"
,
example
=
"XX高速公路建设项目"
,
required
=
true
,
maxLength
=
500
)
private
String
projectname
;
@Column
(
length
=
50
,
nullable
=
false
)
@Schema
(
description
=
"项目编号"
,
example
=
"XM2023001"
,
required
=
true
,
maxLength
=
50
)
private
String
projectno
;
@Column
(
length
=
50
,
nullable
=
false
)
@Schema
(
description
=
"1:交通 2:水利 3:住建"
,
example
=
"1"
,
required
=
true
,
maxLength
=
50
)
private
String
projectjiaoyitype
;
@Column
(
length
=
200
)
@Schema
(
description
=
"招标单位名称"
,
example
=
"XX省交通建设集团有限公司"
,
maxLength
=
200
)
private
String
jianshedanwei
;
@Column
(
length
=
200
)
@Schema
(
description
=
"招标代理名称"
,
example
=
"XX招标代理有限公司"
,
maxLength
=
200
)
private
String
dailiname
;
@Column
(
length
=
50
)
@Schema
(
description
=
"中标单位统一社会信用代码"
,
example
=
"91330100MA2J5R1234"
,
maxLength
=
50
)
private
String
zhongbiaodanweiguid
;
@Column
(
length
=
200
,
nullable
=
false
)
@Schema
(
description
=
"中标单位名称"
,
example
=
"XX建设集团有限公司"
,
required
=
true
,
maxLength
=
200
)
private
String
zhongbiaodanwei
;
@Column
(
precision
=
20
,
scale
=
8
)
@Schema
(
description
=
"中标金额(元)"
,
example
=
"125000000.00"
)
private
BigDecimal
zhongbiaojine
;
@Schema
(
description
=
"开标时间"
,
example
=
"2023-06-15T09:30:00"
)
private
LocalDateTime
kaibiaodate
;
@Schema
(
description
=
"报告生成日期"
,
example
=
"2023-06-20T14:00:00"
)
private
LocalDateTime
reportdate
;
@Schema
(
description
=
"投标单位文件数量"
,
example
=
"15"
)
private
Integer
bidfilenum
;
@Schema
(
description
=
"雷同投标文件数"
,
example
=
"3"
)
private
Integer
similarityfilenum
;
@Schema
(
description
=
"文件疑似雷同点数"
,
example
=
"125"
)
private
Integer
similaritynum
;
@Column
(
length
=
200
,
nullable
=
false
)
@Schema
(
description
=
"雷同性风险分析报告地址"
,
example
=
"http://example.com/reports/risk_analysis_2023001.pdf"
,
required
=
true
,
maxLength
=
200
)
private
String
url
;
@Schema
(
description
=
"数据推送时间"
,
example
=
"2023-06-21T10:00:00"
)
private
LocalDateTime
senddate
;
}
src/main/java/com/example/demo/entity/YwBidfileReviewDetail.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
entity
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
jakarta.persistence.*
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
@Entity
@Data
@Table
(
name
=
"yw_bidfile_reviewdetail"
)
@Schema
(
name
=
"招标文件审查明细结果表"
)
public
class
YwBidfileReviewDetail
{
@Id
@Column
(
length
=
50
)
@Schema
(
description
=
"行唯一标识"
,
example
=
"550e8400-e29b-41d4-a716-446655440000"
)
private
String
rowguid
;
@Column
(
length
=
500
,
nullable
=
false
)
@Schema
(
description
=
"标段名称"
,
example
=
"XX市轨道交通3号线二期工程土建施工02标段"
,
maxLength
=
500
)
private
String
biaoduanname
;
@Column
(
length
=
50
,
nullable
=
false
)
@Schema
(
description
=
"标段编号"
,
example
=
"BD202312-002"
)
private
String
biaoduanno
;
@Column
(
length
=
2
,
nullable
=
false
)
@Schema
(
description
=
"审查类型 1.错敏词检查 2.一致性检查 3.合规性检查"
,
example
=
"1"
,
allowableValues
=
{
"1"
,
"2"
,
"3"
})
private
String
checktype
;
@Schema
(
description
=
"检查次数"
,
example
=
"3"
,
minimum
=
"0"
,
defaultValue
=
"0"
)
private
Integer
checktimes
;
@Schema
(
description
=
"存疑点数"
,
example
=
"15"
,
minimum
=
"0"
)
private
Integer
storagepoint
;
@Schema
(
description
=
"反馈数"
,
example
=
"12"
,
minimum
=
"0"
)
private
Integer
feedbacknum
;
@Schema
(
description
=
"未反馈数"
,
example
=
"3"
,
minimum
=
"0"
)
private
Integer
unfeedbackednum
;
@Schema
(
description
=
"采纳建议数"
,
example
=
"8"
,
minimum
=
"0"
)
private
Integer
adoptednum
;
@Schema
(
description
=
"准确率"
,
example
=
"0.8750"
,
minimum
=
"0"
,
maximum
=
"1"
)
@Column
(
precision
=
20
,
scale
=
8
)
private
BigDecimal
accuracy
;
@Schema
(
description
=
"数据推送时间"
,
example
=
"2023-12-15T14:30:00"
,
pattern
=
"yyyy-MM-dd'T'HH:mm:ss"
)
private
LocalDateTime
senddate
;
}
src/main/java/com/example/demo/entity/YwBidfileReviewInfo.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
entity
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
jakarta.persistence.*
;
import
lombok.Data
;
import
org.hibernate.annotations.DynamicUpdate
;
import
java.time.LocalDateTime
;
@Entity
@Data
@DynamicUpdate
@Schema
(
name
=
"招标文件审查基础表"
)
@Table
(
name
=
"yw_bidfile_reviewinfo"
)
public
class
YwBidfileReviewInfo
{
@Id
@Column
(
length
=
50
)
@Schema
(
description
=
"行唯一标识"
,
example
=
"123e4567-e89b-12d3-a456-426614174000"
)
private
String
rowguid
;
@Column
(
length
=
500
,
nullable
=
false
)
@Schema
(
description
=
"标段名称"
,
example
=
"XX高速公路建设项目第1标段"
,
required
=
true
)
private
String
biaoduanname
;
@Column
(
length
=
50
,
nullable
=
false
)
@Schema
(
description
=
"标段编号"
,
example
=
"BD-2023-001"
,
required
=
true
)
private
String
biaoduanno
;
@Column
(
length
=
200
)
@Schema
(
description
=
"招标单位名称"
,
example
=
"XX省交通建设集团有限公司"
)
private
String
jianshedanwei
;
@Column
(
length
=
200
)
@Schema
(
description
=
"招标代理名称"
,
example
=
"XX招标代理有限公司"
)
private
String
dailiname
;
@Schema
(
description
=
"错敏词审查日期"
,
example
=
"2023-12-15T09:30:00"
)
private
LocalDateTime
wordcheckdate
;
@Schema
(
description
=
"一致性审查日期"
,
example
=
"2023-12-16T10:30:00"
)
private
LocalDateTime
consistencycheckdate
;
@Schema
(
description
=
"合规性审查日期"
,
example
=
"2023-12-17T11:30:00"
)
private
LocalDateTime
compliancecheckdate
;
@Column
(
length
=
50
,
nullable
=
false
)
@Schema
(
description
=
"审查范围1.错敏词检查 2.一致性检查 3.合规性检查 英文分号隔开,如:1;2;3"
,
example
=
"1;2;3"
)
private
String
checkscope
;
@Column
(
length
=
200
,
nullable
=
false
)
@Schema
(
description
=
"组织名称"
,
example
=
"XX审查中心"
,
required
=
true
)
private
String
organization
;
@Column
(
length
=
200
,
nullable
=
false
)
@Schema
(
description
=
"审查报告地址"
,
example
=
"http://example.com/reports/check_report_2023001.pdf"
,
required
=
true
)
private
String
url
;
@Schema
(
description
=
"数据推送时间"
,
example
=
"2023-12-18T14:00:00"
)
private
LocalDateTime
senddate
;
}
src/main/java/com/example/demo/repository/YwBiddingfileSimilarityDetailRepository.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
repository
;
import
com.example.demo.entity.YwBiddingfileSimilarityDetail
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
java.util.List
;
public
interface
YwBiddingfileSimilarityDetailRepository
extends
JpaRepository
<
YwBiddingfileSimilarityDetail
,
Long
>
{
List
<
YwBiddingfileSimilarityDetail
>
findByBiaoduanno
(
String
biaoduanno
);
List
<
YwBiddingfileSimilarityDetail
>
findByBiaoduannoAndDanweiguid
(
String
biaoduanno
,
String
danweiguid
);
}
src/main/java/com/example/demo/repository/YwBiddingfileSimilarityInfoRepository.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
repository
;
import
com.example.demo.entity.YwBiddingfileSimilarityInfo
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
java.util.List
;
public
interface
YwBiddingfileSimilarityInfoRepository
extends
JpaRepository
<
YwBiddingfileSimilarityInfo
,
Long
>
{
List
<
YwBiddingfileSimilarityInfo
>
findByBiaoduanno
(
String
biaoduanno
);
}
src/main/java/com/example/demo/repository/YwBidfileReviewDetailRepository.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
repository
;
import
com.example.demo.entity.YwBiddingfileSimilarityDetail
;
import
com.example.demo.entity.YwBidfileReviewDetail
;
import
com.example.demo.entity.YwBidfileReviewInfo
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
java.util.List
;
public
interface
YwBidfileReviewDetailRepository
extends
JpaRepository
<
YwBidfileReviewDetail
,
Long
>
{
List
<
YwBidfileReviewDetail
>
findByBiaoduanno
(
String
biaoduanno
);
List
<
YwBidfileReviewDetail
>
findByBiaoduannoAndChecktype
(
String
biaoduanno
,
String
checktype
);
}
src/main/java/com/example/demo/repository/YwBidfileReviewInfoRepository.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
repository
;
import
com.example.demo.entity.YwBidfileReviewInfo
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
java.util.List
;
public
interface
YwBidfileReviewInfoRepository
extends
JpaRepository
<
YwBidfileReviewInfo
,
Long
>
{
List
<
YwBidfileReviewInfo
>
findByBiaoduanno
(
String
biaoduanno
);
}
src/main/java/com/example/demo/service/ERoadService.java
0 → 100644
View file @
bc2e88e2
package
com
.
example
.
demo
.
service
;
import
com.example.demo.dto.*
;
import
com.example.demo.entity.YwBiddingfileSimilarityDetail
;
import
com.example.demo.entity.YwBiddingfileSimilarityInfo
;
import
com.example.demo.entity.YwBidfileReviewDetail
;
import
com.example.demo.entity.YwBidfileReviewInfo
;
import
com.example.demo.repository.YwBiddingfileSimilarityDetailRepository
;
import
com.example.demo.repository.YwBiddingfileSimilarityInfoRepository
;
import
com.example.demo.repository.YwBidfileReviewDetailRepository
;
import
com.example.demo.repository.YwBidfileReviewInfoRepository
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.CollectionUtils
;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@Service
@RequiredArgsConstructor
public
class
ERoadService
{
private
final
YwBiddingfileSimilarityDetailRepository
similarityDetailRepository
;
private
final
YwBiddingfileSimilarityInfoRepository
similarityInfoRepository
;
private
final
YwBidfileReviewDetailRepository
reviewDetailRepository
;
private
final
YwBidfileReviewInfoRepository
reviewInfoRepository
;
private
final
YwBidfileReviewInfoRepository
ywBidfileReviewInfoRepository
;
private
final
YwBiddingfileSimilarityInfoRepository
ywBiddingfileSimilarityInfoRepository
;
private
final
YwBiddingfileSimilarityDetailRepository
ywBiddingfileSimilarityDetailRepository
;
private
YwBiddingfileSimilarityDetail
convertToEntitySimilarDetail
(
YwBiddingfileSimilarityDetailRequest
request
){
YwBiddingfileSimilarityDetail
entity
=
new
YwBiddingfileSimilarityDetail
();
// 复制属性
BeanUtils
.
copyProperties
(
request
,
entity
,
"senddate"
);
if
(
request
.
getSenddate
()
!=
null
)
{
entity
.
setSenddate
(
LocalDateTime
.
parse
(
request
.
getSenddate
()));
}
List
<
YwBiddingfileSimilarityDetail
>
ywBiddingfileSimilarityDetails
=
ywBiddingfileSimilarityDetailRepository
.
findByBiaoduannoAndDanweiguid
(
entity
.
getBiaoduanno
(),
entity
.
getDanweiguid
());
if
(!
ywBiddingfileSimilarityDetails
.
isEmpty
()){
entity
.
setRowguid
(
ywBiddingfileSimilarityDetails
.
get
(
0
).
getRowguid
());
}
return
entity
;
}
/**
* 转换Request为Entity
*/
private
YwBiddingfileSimilarityInfo
convertToEntitySimilarInfo
(
YwBiddingfileSimilarityInfoRequest
request
)
{
YwBiddingfileSimilarityInfo
entity
=
new
YwBiddingfileSimilarityInfo
();
// 复制属性
BeanUtils
.
copyProperties
(
request
,
entity
,
"kaibiaodate"
,
"reportdate"
,
"senddate"
);
// 处理日期
if
(
request
.
getSenddate
()
!=
null
)
{
entity
.
setSenddate
(
LocalDateTime
.
parse
(
request
.
getSenddate
()));
}
if
(
request
.
getReportdate
()
!=
null
)
{
entity
.
setReportdate
(
LocalDateTime
.
parse
(
request
.
getReportdate
()));
}
if
(
request
.
getKaibiaodate
()
!=
null
)
{
entity
.
setKaibiaodate
(
LocalDateTime
.
parse
(
request
.
getKaibiaodate
()));
}
List
<
YwBiddingfileSimilarityInfo
>
ywBiddingfileSimilarityInfos
=
ywBiddingfileSimilarityInfoRepository
.
findByBiaoduanno
(
entity
.
getBiaoduanno
());
if
(!
ywBiddingfileSimilarityInfos
.
isEmpty
()){
entity
.
setRowguid
(
ywBiddingfileSimilarityInfos
.
get
(
0
).
getRowguid
());
}
return
entity
;
}
public
String
writeSimilarityDetail
(
List
<
YwBiddingfileSimilarityDetailRequest
>
request
){
if
(
request
==
null
)
{
return
"投标文件雷同明细不能为空"
;
}
List
<
YwBiddingfileSimilarityDetail
>
entity
=
convertToEntitySimilarityList
(
request
);
ywBiddingfileSimilarityDetailRepository
.
saveAll
(
entity
);
return
"投标文件雷同明细更新成功"
;
}
public
String
writeSimilarityInfo
(
YwBiddingfileSimilarityInfoRequest
request
){
if
(
request
==
null
)
{
return
"投标文件雷同分析表不能为空"
;
}
YwBiddingfileSimilarityInfo
entity
=
convertToEntitySimilarInfo
(
request
);
ywBiddingfileSimilarityInfoRepository
.
save
(
entity
);
return
"投标文件雷同分析表更新成功"
;
}
/**
* 转换Request为Entity
*/
private
YwBidfileReviewDetail
convertToEntity
(
YwBidfileReviewDetailRequest
request
)
{
YwBidfileReviewDetail
entity
=
new
YwBidfileReviewDetail
();
// 复制属性
BeanUtils
.
copyProperties
(
request
,
entity
,
"senddate"
);
// 处理日期
if
(
request
.
getSenddate
()
!=
null
)
{
entity
.
setSenddate
(
LocalDateTime
.
parse
(
request
.
getSenddate
()));
}
List
<
YwBidfileReviewDetail
>
ywBidfileReviewDetail
=
reviewDetailRepository
.
findByBiaoduannoAndChecktype
(
entity
.
getBiaoduanno
(),
entity
.
getChecktype
());
if
(!
ywBidfileReviewDetail
.
isEmpty
()){
entity
.
setRowguid
(
ywBidfileReviewDetail
.
get
(
0
).
getRowguid
());
}
return
entity
;
}
private
YwBidfileReviewInfo
convertToEntityInfo
(
YwBidfileReviewInfoRequest
request
)
{
YwBidfileReviewInfo
entity
=
new
YwBidfileReviewInfo
();
// 复制属性
BeanUtils
.
copyProperties
(
request
,
entity
,
"senddate"
,
"complianceCheckDate"
,
"consistencyCheckDate"
,
"wordCheckDate"
);
// 处理日期
if
(
request
.
getSenddate
()
!=
null
)
{
entity
.
setSenddate
(
LocalDateTime
.
parse
(
request
.
getSenddate
()));
}
if
(
request
.
getCompliancecheckdate
()!=
null
){
entity
.
setCompliancecheckdate
(
LocalDateTime
.
parse
(
request
.
getCompliancecheckdate
()));
}
if
(
request
.
getConsistencycheckdate
()!=
null
){
entity
.
setConsistencycheckdate
(
LocalDateTime
.
parse
(
request
.
getConsistencycheckdate
()));
}
if
(
request
.
getWordcheckdate
()!=
null
){
entity
.
setWordcheckdate
(
LocalDateTime
.
parse
(
request
.
getWordcheckdate
()));
}
return
entity
;
}
/**
* 批量转换
*/
private
List
<
YwBidfileReviewDetail
>
convertToEntityList
(
List
<
YwBidfileReviewDetailRequest
>
requests
)
{
return
requests
.
stream
()
.
map
(
this
::
convertToEntity
)
.
collect
(
Collectors
.
toList
());
}
private
List
<
YwBiddingfileSimilarityDetail
>
convertToEntitySimilarityList
(
List
<
YwBiddingfileSimilarityDetailRequest
>
requests
)
{
return
requests
.
stream
()
.
map
(
this
::
convertToEntitySimilarDetail
)
.
collect
(
Collectors
.
toList
());
}
/**
* 批量保存
*/
public
String
batchWriteReviewDetail
(
List
<
YwBidfileReviewDetailRequest
>
requests
)
{
if
(
CollectionUtils
.
isEmpty
(
requests
))
{
return
"招标文件审查基础表信息不能为空"
;
}
List
<
YwBidfileReviewDetail
>
entities
=
convertToEntityList
(
requests
);
reviewDetailRepository
.
saveAll
(
entities
);
return
"招标文件审查基础表信息更新成功"
;
}
public
String
writeReviewInfo
(
YwBidfileReviewInfoRequest
request
){
SupervisorPlatformResponse
supervisorPlatformResponse
=
new
SupervisorPlatformResponse
();
if
(
request
==
null
)
{
return
"招标文件审查明细结果表不能为空"
;
}
YwBidfileReviewInfo
entity
=
convertToEntityInfo
(
request
);
List
<
YwBidfileReviewInfo
>
ywBidfileReviewInfo
=
ywBidfileReviewInfoRepository
.
findByBiaoduanno
(
entity
.
getBiaoduanno
());
if
(!
ywBidfileReviewInfo
.
isEmpty
()){
entity
.
setRowguid
(
ywBidfileReviewInfo
.
get
(
0
).
getRowguid
());
}
reviewInfoRepository
.
save
(
entity
);
return
"招标文件审查明细结果表更新成功"
;
}
}
src/main/resources/application-dev.yaml
0 → 100644
View file @
bc2e88e2
spring
:
datasource
:
url
:
jdbc:mysql://49.77.204.17:4516/aielu_dev
username
:
aiall
password
:
Axbp2Puy3V
driver-class-name
:
com.mysql.cj.jdbc.Driver
jpa
:
hibernate
:
ddl-auto
:
update
show-sql
:
true
properties
:
hibernate
:
dialect
:
org.hibernate.dialect.MySQLDialect
\ No newline at end of file
src/main/resources/application-local.yaml
0 → 100644
View file @
bc2e88e2
spring
:
datasource
:
url
:
jdbc:mysql://49.77.204.17:4516/aielu_dev
username
:
aiall
password
:
Axbp2Puy3V
driver-class-name
:
com.mysql.cj.jdbc.Driver
jpa
:
hibernate
:
ddl-auto
:
update
show-sql
:
true
properties
:
hibernate
:
dialect
:
org.hibernate.dialect.MySQLDialect
\ No newline at end of file
src/main/resources/application-prod.yaml
0 → 100644
View file @
bc2e88e2
spring
:
datasource
:
url
:
jdbc:mysql://49.77.204.17:4516/aielu_prod
username
:
aiall
password
:
Axbp2Puy3V
driver-class-name
:
com.mysql.cj.jdbc.Driver
jpa
:
hibernate
:
ddl-auto
:
update
show-sql
:
true
properties
:
hibernate
:
dialect
:
org.hibernate.dialect.MySQLDialect
\ No newline at end of file
src/main/resources/application.properties
deleted
100644 → 0
View file @
2ed3c35c
spring.application.name
=
demo
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment